@unvired/react-native-wrapper-sdk 0.0.24 → 0.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/auth/AuthBuilder.js +6 -3
- package/dist/lib/auth/AuthService.d.ts.map +1 -1
- package/dist/lib/auth/AuthService.js +3 -5
- package/dist/lib/file/FileService.d.ts +41 -0
- package/dist/lib/file/FileService.d.ts.map +1 -1
- package/dist/lib/file/FileService.js +111 -0
- package/package.json +1 -1
- package/src/lib/auth/AuthBuilder.ts +6 -6
- package/src/lib/auth/AuthService.ts +3 -5
- package/src/lib/file/FileService.ts +147 -0
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.LoginType = exports.LoginParameters = void 0;
|
|
4
|
-
const
|
|
7
|
+
const authenticationService_1 = __importDefault(require("@unvired/unvired-ts-core-sdk/authenticationService"));
|
|
5
8
|
/**
|
|
6
9
|
* LoginParameters class - Local definition to avoid module resolution issues
|
|
7
10
|
*/
|
|
@@ -115,8 +118,8 @@ class AuthBuilder {
|
|
|
115
118
|
return this;
|
|
116
119
|
}
|
|
117
120
|
execute() {
|
|
118
|
-
//
|
|
119
|
-
const authService =
|
|
121
|
+
// Use the imported singleton instance directly
|
|
122
|
+
const authService = authenticationService_1.default;
|
|
120
123
|
switch (this.method) {
|
|
121
124
|
case 'login':
|
|
122
125
|
return authService.login(this.loginParameters);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/AuthService.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC;;GAEG;AACH,qBAAa,WAAW;IAEpB;;OAEG;IACH,KAAK,IAAI,WAAW;IAIpB;;OAEG;IACH,uBAAuB,IAAI,WAAW;IAItC;;OAEG;IACH,iBAAiB,IAAI,WAAW;IAIhC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/AuthService.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC;;GAEG;AACH,qBAAa,WAAW;IAEpB;;OAEG;IACH,KAAK,IAAI,WAAW;IAIpB;;OAEG;IACH,uBAAuB,IAAI,WAAW;IAItC;;OAEG;IACH,iBAAiB,IAAI,WAAW;IAIhC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC;IAI5B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC;CAGlC"}
|
|
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.AuthService = void 0;
|
|
7
7
|
const AuthBuilder_1 = __importDefault(require("./AuthBuilder"));
|
|
8
|
-
const
|
|
8
|
+
const authenticationService_1 = __importDefault(require("@unvired/unvired-ts-core-sdk/authenticationService"));
|
|
9
9
|
/**
|
|
10
10
|
* Service for handling Authentication operations
|
|
11
11
|
*/
|
|
@@ -32,15 +32,13 @@ class AuthService {
|
|
|
32
32
|
* Logout method - Logs out the current user
|
|
33
33
|
*/
|
|
34
34
|
async logout() {
|
|
35
|
-
|
|
36
|
-
return authService.logout();
|
|
35
|
+
return authenticationService_1.default.logout();
|
|
37
36
|
}
|
|
38
37
|
/**
|
|
39
38
|
* Clear all data
|
|
40
39
|
*/
|
|
41
40
|
async clearData() {
|
|
42
|
-
|
|
43
|
-
return authService.clearData();
|
|
41
|
+
return authenticationService_1.default.clearData();
|
|
44
42
|
}
|
|
45
43
|
}
|
|
46
44
|
exports.AuthService = AuthService;
|
|
@@ -44,5 +44,46 @@ export declare class FileService {
|
|
|
44
44
|
* @param filePath Absolute path to the file
|
|
45
45
|
*/
|
|
46
46
|
fileExists(filePath: string): Promise<boolean>;
|
|
47
|
+
/**
|
|
48
|
+
* Creates a directory
|
|
49
|
+
* @param dirPath Parent directory path
|
|
50
|
+
* @param dirName Directory name to create
|
|
51
|
+
*/
|
|
52
|
+
createDirectory(dirPath: string, dirName: string): Promise<IFileEntry>;
|
|
53
|
+
/**
|
|
54
|
+
* Lists files and directories in a directory
|
|
55
|
+
* @param dirPath Directory path to list
|
|
56
|
+
*/
|
|
57
|
+
listDirectory(dirPath: string): Promise<IFileEntry[]>;
|
|
58
|
+
/**
|
|
59
|
+
* Deletes a directory and all its contents
|
|
60
|
+
* @param dirPath Directory path to delete
|
|
61
|
+
*/
|
|
62
|
+
deleteDirectory(dirPath: string): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Copies a file
|
|
65
|
+
* @param sourcePath Source file path
|
|
66
|
+
* @param destDir Destination directory path
|
|
67
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
68
|
+
*/
|
|
69
|
+
copyFile(sourcePath: string, destDir: string, newName?: string): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Moves/renames a file
|
|
72
|
+
* @param sourcePath Source file path
|
|
73
|
+
* @param destDir Destination directory path
|
|
74
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
75
|
+
*/
|
|
76
|
+
moveFile(sourcePath: string, destDir: string, newName?: string): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Gets file information (size, modification date, etc.)
|
|
79
|
+
* @param filePath File path
|
|
80
|
+
*/
|
|
81
|
+
getFileInfo(filePath: string): Promise<any>;
|
|
82
|
+
/**
|
|
83
|
+
* Appends data to an existing file
|
|
84
|
+
* @param filePath File path
|
|
85
|
+
* @param data Data to append
|
|
86
|
+
*/
|
|
87
|
+
appendToFile(filePath: string, data: ArrayBuffer | string): Promise<void>;
|
|
47
88
|
}
|
|
48
89
|
//# sourceMappingURL=FileService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/lib/file/FileService.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC7B,WAAW,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;CAC5G;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACxE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACnF,YAAY,IAAI,gBAAgB,CAAC;IACjC,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5I,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACvI,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACjF,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;CAC7F;AAED,qBAAa,WAAW;IAEpB,oBAAoB,IAAI,MAAM;IAK9B,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAKrD,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKvD,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD;;;OAGG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAgC9D;;;;;OAKG;IACG,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsDtG;;;OAGG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD;;;OAGG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/lib/file/FileService.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC7B,WAAW,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;CAC5G;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACxE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACnF,YAAY,IAAI,gBAAgB,CAAC;IACjC,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5I,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACvI,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IACjF,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;CAC7F;AAED,qBAAa,WAAW;IAEpB,oBAAoB,IAAI,MAAM;IAK9B,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAKrD,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKvD,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD;;;OAGG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAgC9D;;;;;OAKG;IACG,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsDtG;;;OAGG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzD;;;OAGG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IASpD;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAkB5E;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAY3D;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD;;;;;OAKG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWpF;;;;;OAKG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpF;;;OAGG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBjD;;;;OAIG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAqClF"}
|
|
@@ -152,5 +152,116 @@ class FileService {
|
|
|
152
152
|
return false;
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
+
/**
|
|
156
|
+
* Creates a directory
|
|
157
|
+
* @param dirPath Parent directory path
|
|
158
|
+
* @param dirName Directory name to create
|
|
159
|
+
*/
|
|
160
|
+
async createDirectory(dirPath, dirName) {
|
|
161
|
+
const parentEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
162
|
+
return new Promise((resolve, reject) => {
|
|
163
|
+
if (!parentEntry.getDirectory) {
|
|
164
|
+
reject(new Error('getDirectory() method not available on entry'));
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
parentEntry.getDirectory(dirName, { create: true }, (dirEntry) => resolve(dirEntry), (error) => reject(error));
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Lists files and directories in a directory
|
|
172
|
+
* @param dirPath Directory path to list
|
|
173
|
+
*/
|
|
174
|
+
async listDirectory(dirPath) {
|
|
175
|
+
const dirEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
176
|
+
return new Promise((resolve, reject) => {
|
|
177
|
+
const reader = dirEntry.createReader();
|
|
178
|
+
reader.readEntries((entries) => resolve(entries), (error) => reject(error));
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Deletes a directory and all its contents
|
|
183
|
+
* @param dirPath Directory path to delete
|
|
184
|
+
*/
|
|
185
|
+
async deleteDirectory(dirPath) {
|
|
186
|
+
const dirEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
187
|
+
return new Promise((resolve, reject) => {
|
|
188
|
+
dirEntry.removeRecursively(() => resolve(), (error) => reject(error));
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Copies a file
|
|
193
|
+
* @param sourcePath Source file path
|
|
194
|
+
* @param destDir Destination directory path
|
|
195
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
196
|
+
*/
|
|
197
|
+
async copyFile(sourcePath, destDir, newName) {
|
|
198
|
+
// Read source file
|
|
199
|
+
const content = await this.readExternalFile(sourcePath);
|
|
200
|
+
// Get source file name if newName not provided
|
|
201
|
+
const fileName = newName || sourcePath.split('/').pop() || 'file';
|
|
202
|
+
// Write to destination
|
|
203
|
+
await this.writeExternalFile(destDir, fileName, content);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Moves/renames a file
|
|
207
|
+
* @param sourcePath Source file path
|
|
208
|
+
* @param destDir Destination directory path
|
|
209
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
210
|
+
*/
|
|
211
|
+
async moveFile(sourcePath, destDir, newName) {
|
|
212
|
+
// Copy file to destination
|
|
213
|
+
await this.copyFile(sourcePath, destDir, newName);
|
|
214
|
+
// Delete source file
|
|
215
|
+
await this.deleteExternalFile(sourcePath);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Gets file information (size, modification date, etc.)
|
|
219
|
+
* @param filePath File path
|
|
220
|
+
*/
|
|
221
|
+
async getFileInfo(filePath) {
|
|
222
|
+
const fileEntry = await this.resolveLocalFileSystemURL(filePath);
|
|
223
|
+
return new Promise((resolve, reject) => {
|
|
224
|
+
if (!fileEntry.file) {
|
|
225
|
+
reject(new Error('file() method not available on entry'));
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
fileEntry.file((fileMetadata) => resolve(fileMetadata), (error) => reject(error));
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Appends data to an existing file
|
|
233
|
+
* @param filePath File path
|
|
234
|
+
* @param data Data to append
|
|
235
|
+
*/
|
|
236
|
+
async appendToFile(filePath, data) {
|
|
237
|
+
// Convert data to string if it's ArrayBuffer
|
|
238
|
+
let content;
|
|
239
|
+
if (data instanceof ArrayBuffer) {
|
|
240
|
+
const decoder = new TextDecoder();
|
|
241
|
+
content = decoder.decode(data);
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
content = data;
|
|
245
|
+
}
|
|
246
|
+
const fileEntry = await this.resolveLocalFileSystemURL(filePath);
|
|
247
|
+
return new Promise((resolve, reject) => {
|
|
248
|
+
if (!fileEntry.createWriter) {
|
|
249
|
+
reject(new Error('createWriter() method not available on file entry'));
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
fileEntry.createWriter((writer) => {
|
|
253
|
+
writer.onwriteend = () => {
|
|
254
|
+
resolve();
|
|
255
|
+
};
|
|
256
|
+
writer.onerror = (error) => {
|
|
257
|
+
reject(error);
|
|
258
|
+
};
|
|
259
|
+
// Append the content
|
|
260
|
+
writer.append(content);
|
|
261
|
+
}, (error) => {
|
|
262
|
+
reject(error);
|
|
263
|
+
});
|
|
264
|
+
});
|
|
265
|
+
}
|
|
155
266
|
}
|
|
156
267
|
exports.FileService = FileService;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unvired/react-native-wrapper-sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.26",
|
|
4
4
|
"description": "Unvired SDK for React Native - Enterprise mobile platform SDK with authentication, sync, and offline database",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import AuthenticationServiceInstance from '@unvired/unvired-ts-core-sdk/authenticationService';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* LoginParameters class - Local definition to avoid module resolution issues
|
|
@@ -160,16 +160,16 @@ export default class AuthBuilder implements PromiseLike<any> {
|
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
private execute(): Promise<any> {
|
|
163
|
-
//
|
|
164
|
-
const authService =
|
|
163
|
+
// Use the imported singleton instance directly
|
|
164
|
+
const authService = AuthenticationServiceInstance;
|
|
165
165
|
|
|
166
166
|
switch (this.method) {
|
|
167
167
|
case 'login':
|
|
168
|
-
return authService.login(this.loginParameters);
|
|
168
|
+
return authService.login(this.loginParameters as any);
|
|
169
169
|
case 'authenticateAndActivate':
|
|
170
|
-
return authService.authenticateAndActivate(this.loginParameters);
|
|
170
|
+
return authService.authenticateAndActivate(this.loginParameters as any);
|
|
171
171
|
case 'authenticateLocal':
|
|
172
|
-
return authService.authenticateLocal(this.loginParameters);
|
|
172
|
+
return authService.authenticateLocal(this.loginParameters as any);
|
|
173
173
|
default:
|
|
174
174
|
return Promise.reject(new Error(`Unknown method: ${this.method}`));
|
|
175
175
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import AuthBuilder from './AuthBuilder';
|
|
2
|
-
import
|
|
2
|
+
import AuthenticationServiceInstance from '@unvired/unvired-ts-core-sdk/authenticationService';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Service for handling Authentication operations
|
|
@@ -31,15 +31,13 @@ export class AuthService {
|
|
|
31
31
|
* Logout method - Logs out the current user
|
|
32
32
|
*/
|
|
33
33
|
async logout(): Promise<any> {
|
|
34
|
-
|
|
35
|
-
return authService.logout();
|
|
34
|
+
return AuthenticationServiceInstance.logout();
|
|
36
35
|
}
|
|
37
36
|
|
|
38
37
|
/**
|
|
39
38
|
* Clear all data
|
|
40
39
|
*/
|
|
41
40
|
async clearData(): Promise<any> {
|
|
42
|
-
|
|
43
|
-
return authService.clearData();
|
|
41
|
+
return AuthenticationServiceInstance.clearData();
|
|
44
42
|
}
|
|
45
43
|
}
|
|
@@ -163,4 +163,151 @@ export class FileService {
|
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
+
/**
|
|
167
|
+
* Creates a directory
|
|
168
|
+
* @param dirPath Parent directory path
|
|
169
|
+
* @param dirName Directory name to create
|
|
170
|
+
*/
|
|
171
|
+
async createDirectory(dirPath: string, dirName: string): Promise<IFileEntry> {
|
|
172
|
+
const parentEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
173
|
+
|
|
174
|
+
return new Promise((resolve, reject) => {
|
|
175
|
+
if (!parentEntry.getDirectory) {
|
|
176
|
+
reject(new Error('getDirectory() method not available on entry'));
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
parentEntry.getDirectory(
|
|
181
|
+
dirName,
|
|
182
|
+
{ create: true },
|
|
183
|
+
(dirEntry: IFileEntry) => resolve(dirEntry),
|
|
184
|
+
(error: any) => reject(error)
|
|
185
|
+
);
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Lists files and directories in a directory
|
|
191
|
+
* @param dirPath Directory path to list
|
|
192
|
+
*/
|
|
193
|
+
async listDirectory(dirPath: string): Promise<IFileEntry[]> {
|
|
194
|
+
const dirEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
195
|
+
|
|
196
|
+
return new Promise((resolve, reject) => {
|
|
197
|
+
const reader = dirEntry.createReader();
|
|
198
|
+
reader.readEntries(
|
|
199
|
+
(entries: IFileEntry[]) => resolve(entries),
|
|
200
|
+
(error: any) => reject(error)
|
|
201
|
+
);
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Deletes a directory and all its contents
|
|
207
|
+
* @param dirPath Directory path to delete
|
|
208
|
+
*/
|
|
209
|
+
async deleteDirectory(dirPath: string): Promise<void> {
|
|
210
|
+
const dirEntry = await this.resolveLocalFileSystemURL(dirPath);
|
|
211
|
+
|
|
212
|
+
return new Promise((resolve, reject) => {
|
|
213
|
+
dirEntry.removeRecursively(
|
|
214
|
+
() => resolve(),
|
|
215
|
+
(error: any) => reject(error)
|
|
216
|
+
);
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* Copies a file
|
|
222
|
+
* @param sourcePath Source file path
|
|
223
|
+
* @param destDir Destination directory path
|
|
224
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
225
|
+
*/
|
|
226
|
+
async copyFile(sourcePath: string, destDir: string, newName?: string): Promise<void> {
|
|
227
|
+
// Read source file
|
|
228
|
+
const content = await this.readExternalFile(sourcePath);
|
|
229
|
+
|
|
230
|
+
// Get source file name if newName not provided
|
|
231
|
+
const fileName = newName || sourcePath.split('/').pop() || 'file';
|
|
232
|
+
|
|
233
|
+
// Write to destination
|
|
234
|
+
await this.writeExternalFile(destDir, fileName, content);
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Moves/renames a file
|
|
239
|
+
* @param sourcePath Source file path
|
|
240
|
+
* @param destDir Destination directory path
|
|
241
|
+
* @param newName New file name (optional, keeps original name if not provided)
|
|
242
|
+
*/
|
|
243
|
+
async moveFile(sourcePath: string, destDir: string, newName?: string): Promise<void> {
|
|
244
|
+
// Copy file to destination
|
|
245
|
+
await this.copyFile(sourcePath, destDir, newName);
|
|
246
|
+
|
|
247
|
+
// Delete source file
|
|
248
|
+
await this.deleteExternalFile(sourcePath);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* Gets file information (size, modification date, etc.)
|
|
253
|
+
* @param filePath File path
|
|
254
|
+
*/
|
|
255
|
+
async getFileInfo(filePath: string): Promise<any> {
|
|
256
|
+
const fileEntry = await this.resolveLocalFileSystemURL(filePath);
|
|
257
|
+
|
|
258
|
+
return new Promise((resolve, reject) => {
|
|
259
|
+
if (!fileEntry.file) {
|
|
260
|
+
reject(new Error('file() method not available on entry'));
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
fileEntry.file(
|
|
265
|
+
(fileMetadata: any) => resolve(fileMetadata),
|
|
266
|
+
(error: any) => reject(error)
|
|
267
|
+
);
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* Appends data to an existing file
|
|
273
|
+
* @param filePath File path
|
|
274
|
+
* @param data Data to append
|
|
275
|
+
*/
|
|
276
|
+
async appendToFile(filePath: string, data: ArrayBuffer | string): Promise<void> {
|
|
277
|
+
// Convert data to string if it's ArrayBuffer
|
|
278
|
+
let content: string;
|
|
279
|
+
if (data instanceof ArrayBuffer) {
|
|
280
|
+
const decoder = new TextDecoder();
|
|
281
|
+
content = decoder.decode(data);
|
|
282
|
+
} else {
|
|
283
|
+
content = data;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
const fileEntry = await this.resolveLocalFileSystemURL(filePath);
|
|
287
|
+
|
|
288
|
+
return new Promise((resolve, reject) => {
|
|
289
|
+
if (!fileEntry.createWriter) {
|
|
290
|
+
reject(new Error('createWriter() method not available on file entry'));
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
fileEntry.createWriter(
|
|
295
|
+
(writer: any) => {
|
|
296
|
+
writer.onwriteend = () => {
|
|
297
|
+
resolve();
|
|
298
|
+
};
|
|
299
|
+
writer.onerror = (error: any) => {
|
|
300
|
+
reject(error);
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
// Append the content
|
|
304
|
+
writer.append(content);
|
|
305
|
+
},
|
|
306
|
+
(error: any) => {
|
|
307
|
+
reject(error);
|
|
308
|
+
}
|
|
309
|
+
);
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
|
|
166
313
|
}
|