@unvired/react-native-wrapper-sdk 0.0.17 → 0.0.19
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/database/DatabaseService.d.ts +40 -83
- package/dist/lib/database/DatabaseService.d.ts.map +1 -1
- package/dist/lib/database/DatabaseService.js +18 -118
- package/dist/lib/file/FileService.d.ts +23 -0
- package/dist/lib/file/FileService.d.ts.map +1 -1
- package/dist/lib/file/FileService.js +16 -0
- package/dist/lib/storage/StorageService.d.ts +13 -0
- package/dist/lib/storage/StorageService.d.ts.map +1 -0
- package/dist/lib/storage/StorageService.js +19 -0
- package/package.json +8 -8
- package/src/lib/database/DatabaseService.ts +32 -127
- package/src/lib/file/FileService.ts +38 -1
- package/src/lib/storage/StorageService.ts +27 -0
|
@@ -1,86 +1,43 @@
|
|
|
1
|
+
export interface IDatabaseAdapter {
|
|
2
|
+
create(options: {
|
|
3
|
+
userId: string;
|
|
4
|
+
}, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
5
|
+
execute(options: any, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
6
|
+
executeStatementOnPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
7
|
+
selectFromPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
8
|
+
createDatabase(dbPath: string, callback: () => void): void;
|
|
9
|
+
getDBFilePath(options: {
|
|
10
|
+
dbType: string;
|
|
11
|
+
}, callback: (path: string) => void): void;
|
|
12
|
+
saveWebDB(options: {
|
|
13
|
+
userId: string;
|
|
14
|
+
}, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
15
|
+
exportWebDB(options: {
|
|
16
|
+
userId: string;
|
|
17
|
+
}, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
18
|
+
deleteUserData(options: {
|
|
19
|
+
userId: string;
|
|
20
|
+
}, callback: () => void, errorCallback: (error: any) => void): void;
|
|
21
|
+
}
|
|
1
22
|
export declare class DatabaseService {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* @param isHeader Whether the data is a header or an item
|
|
22
|
-
*/
|
|
23
|
-
insertOrUpdate(tableName: string, structureObject: any, isHeader: boolean): Promise<any>;
|
|
24
|
-
/**
|
|
25
|
-
* Deletes data from the database
|
|
26
|
-
* @param tableName Name of the table
|
|
27
|
-
* @param whereClause Optional SQL where clause
|
|
28
|
-
*/
|
|
29
|
-
delete(tableName: string, whereClause?: string): Promise<any>;
|
|
30
|
-
/**
|
|
31
|
-
* Updates data in the database
|
|
32
|
-
* @param tableName Name of the table
|
|
33
|
-
* @param updatedObject Object with updated values
|
|
34
|
-
* @param whereClause SQL where clause identifying rows to update
|
|
35
|
-
*/
|
|
36
|
-
update(tableName: string, updatedObject: any, whereClause: any): Promise<any>;
|
|
37
|
-
/**
|
|
38
|
-
* Executes a raw SQL statement
|
|
39
|
-
* @param query SQL query
|
|
40
|
-
*/
|
|
41
|
-
executeStatement(query: string): Promise<any>;
|
|
42
|
-
/**
|
|
43
|
-
* Begins a transaction
|
|
44
|
-
*/
|
|
45
|
-
beginTransaction(): Promise<void>;
|
|
46
|
-
/**
|
|
47
|
-
* Ends (commits) a transaction
|
|
48
|
-
*/
|
|
49
|
-
endTransaction(): Promise<void>;
|
|
50
|
-
/**
|
|
51
|
-
* Rolls back a transaction
|
|
52
|
-
*/
|
|
53
|
-
rollbackTransaction(): Promise<void>;
|
|
54
|
-
/**
|
|
55
|
-
* Creates a save point
|
|
56
|
-
* @param savePoint Name of the save point
|
|
57
|
-
*/
|
|
58
|
-
createSavePoint(savePoint: string): Promise<void>;
|
|
59
|
-
/**
|
|
60
|
-
* Releases a save point
|
|
61
|
-
* @param savePoint Name of the save point
|
|
62
|
-
*/
|
|
63
|
-
releaseSavePoint(savePoint: string): Promise<void>;
|
|
64
|
-
/**
|
|
65
|
-
* Rolls back to a save point
|
|
66
|
-
* @param savePoint Name of the save point
|
|
67
|
-
*/
|
|
68
|
-
rollbackToSavePoint(savePoint: string): Promise<void>;
|
|
69
|
-
/**
|
|
70
|
-
* Saves Web Data (Browser only)
|
|
71
|
-
*/
|
|
72
|
-
saveWebData(): Promise<void>;
|
|
73
|
-
/**
|
|
74
|
-
* Exports Web Data
|
|
75
|
-
*/
|
|
76
|
-
exportWebData(): Promise<void>;
|
|
77
|
-
/**
|
|
78
|
-
* Prepares database for export
|
|
79
|
-
*/
|
|
80
|
-
prepareDatabaseForExport(): Promise<void>;
|
|
81
|
-
/**
|
|
82
|
-
* Gets the database directory path
|
|
83
|
-
*/
|
|
84
|
-
getDatabasePath(): Promise<string>;
|
|
23
|
+
create(options: {
|
|
24
|
+
userId: string;
|
|
25
|
+
}, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
26
|
+
execute(options: any, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
27
|
+
executeStatementOnPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
28
|
+
selectFromPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
29
|
+
createDatabase(dbPath: string, callback: () => void): void;
|
|
30
|
+
getDBFilePath(options: {
|
|
31
|
+
dbType: string;
|
|
32
|
+
}, callback: (path: string) => void): void;
|
|
33
|
+
saveWebDB(options: {
|
|
34
|
+
userId: string;
|
|
35
|
+
}, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
36
|
+
exportWebDB(options: {
|
|
37
|
+
userId: string;
|
|
38
|
+
}, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
39
|
+
deleteUserData(options: {
|
|
40
|
+
userId: string;
|
|
41
|
+
}, callback: () => void, errorCallback: (error: any) => void): void;
|
|
85
42
|
}
|
|
86
43
|
//# sourceMappingURL=DatabaseService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseService.d.ts","sourceRoot":"","sources":["../../../src/lib/database/DatabaseService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DatabaseService.d.ts","sourceRoot":"","sources":["../../../src/lib/database/DatabaseService.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,132 +3,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DatabaseService = void 0;
|
|
4
4
|
const unvired_ts_core_sdk_1 = require("@unvired/unvired-ts-core-sdk");
|
|
5
5
|
class DatabaseService {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
create(options, successCallback, errorCallback) {
|
|
7
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().create(options, successCallback, errorCallback);
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
* @param tableName Name of the table
|
|
12
|
-
* @param whereClause Optional SQL where clause
|
|
13
|
-
*/
|
|
14
|
-
async select(tableName, whereClause) {
|
|
15
|
-
return this.db.select(tableName, whereClause);
|
|
9
|
+
execute(options, successCallback, errorCallback) {
|
|
10
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().execute(options, successCallback, errorCallback);
|
|
16
11
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
* @param tableName Name of the table
|
|
20
|
-
* @param structureObject Data object to insert
|
|
21
|
-
* @param isHeader Whether the data is a header or an item
|
|
22
|
-
*/
|
|
23
|
-
async insert(tableName, structureObject, isHeader) {
|
|
24
|
-
return this.db.insert(tableName, structureObject, isHeader);
|
|
12
|
+
executeStatementOnPath(dbPath, sqlQuery, callback) {
|
|
13
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().executeStatementOnPath(dbPath, sqlQuery, callback);
|
|
25
14
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
* @param tableName Name of the table
|
|
29
|
-
* @param structureObject Data object to insert or update
|
|
30
|
-
* @param isHeader Whether the data is a header or an item
|
|
31
|
-
*/
|
|
32
|
-
async insertOrUpdate(tableName, structureObject, isHeader) {
|
|
33
|
-
return this.db.insertOrUpdate(tableName, structureObject, isHeader);
|
|
15
|
+
selectFromPath(dbPath, sqlQuery, callback) {
|
|
16
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().selectFromPath(dbPath, sqlQuery, callback);
|
|
34
17
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
* @param tableName Name of the table
|
|
38
|
-
* @param whereClause Optional SQL where clause
|
|
39
|
-
*/
|
|
40
|
-
async delete(tableName, whereClause) {
|
|
41
|
-
return this.db.delete(tableName, whereClause);
|
|
18
|
+
createDatabase(dbPath, callback) {
|
|
19
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().createDatabase(dbPath, callback);
|
|
42
20
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
* @param tableName Name of the table
|
|
46
|
-
* @param updatedObject Object with updated values
|
|
47
|
-
* @param whereClause SQL where clause identifying rows to update
|
|
48
|
-
*/
|
|
49
|
-
async update(tableName, updatedObject, whereClause) {
|
|
50
|
-
return this.db.update(tableName, updatedObject, whereClause);
|
|
21
|
+
getDBFilePath(options, callback) {
|
|
22
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().getDBFilePath(options, callback);
|
|
51
23
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
* @param query SQL query
|
|
55
|
-
*/
|
|
56
|
-
async executeStatement(query) {
|
|
57
|
-
return this.db.executeStatement(query);
|
|
24
|
+
saveWebDB(options, callback, errorCallback) {
|
|
25
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().saveWebDB(options, callback, errorCallback);
|
|
58
26
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
*/
|
|
62
|
-
async beginTransaction() {
|
|
63
|
-
return this.db.beginTransaction();
|
|
27
|
+
exportWebDB(options, callback, errorCallback) {
|
|
28
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().exportWebDB(options, callback, errorCallback);
|
|
64
29
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
*/
|
|
68
|
-
async endTransaction() {
|
|
69
|
-
return this.db.endTransaction();
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Rolls back a transaction
|
|
73
|
-
*/
|
|
74
|
-
async rollbackTransaction() {
|
|
75
|
-
return this.db.rollbackTransaction();
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Creates a save point
|
|
79
|
-
* @param savePoint Name of the save point
|
|
80
|
-
*/
|
|
81
|
-
async createSavePoint(savePoint) {
|
|
82
|
-
return this.db.createSavePoint(savePoint);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Releases a save point
|
|
86
|
-
* @param savePoint Name of the save point
|
|
87
|
-
*/
|
|
88
|
-
async releaseSavePoint(savePoint) {
|
|
89
|
-
return this.db.releaseSavePoint(savePoint);
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Rolls back to a save point
|
|
93
|
-
* @param savePoint Name of the save point
|
|
94
|
-
*/
|
|
95
|
-
async rollbackToSavePoint(savePoint) {
|
|
96
|
-
return this.db.rollbackToSavePoint(savePoint);
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Saves Web Data (Browser only)
|
|
100
|
-
*/
|
|
101
|
-
async saveWebData() {
|
|
102
|
-
if (unvired_ts_core_sdk_1.FrameworkHelper.getPlatform() === 'browser') {
|
|
103
|
-
return unvired_ts_core_sdk_1.DatabaseManager.getInstance().saveWebData();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Exports Web Data
|
|
108
|
-
*/
|
|
109
|
-
async exportWebData() {
|
|
110
|
-
return unvired_ts_core_sdk_1.DatabaseManager.getInstance().exportWebData();
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Prepares database for export
|
|
114
|
-
*/
|
|
115
|
-
async prepareDatabaseForExport() {
|
|
116
|
-
return unvired_ts_core_sdk_1.SettingsHelper.prepareDatabaseForExport();
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Gets the database directory path
|
|
120
|
-
*/
|
|
121
|
-
async getDatabasePath() {
|
|
122
|
-
return new Promise((resolve, reject) => {
|
|
123
|
-
try {
|
|
124
|
-
const adapter = unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter();
|
|
125
|
-
// @ts-ignore - The type might be mismatch in d.ts but logical flow is correct
|
|
126
|
-
adapter.getDBFilePath({ dbType: unvired_ts_core_sdk_1.DatabaseType.AppDb }, (path) => resolve(path));
|
|
127
|
-
}
|
|
128
|
-
catch (e) {
|
|
129
|
-
reject(e);
|
|
130
|
-
}
|
|
131
|
-
});
|
|
30
|
+
deleteUserData(options, callback, errorCallback) {
|
|
31
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().deleteUserData(options, callback, errorCallback);
|
|
132
32
|
}
|
|
133
33
|
}
|
|
134
34
|
exports.DatabaseService = DatabaseService;
|
|
@@ -1,4 +1,27 @@
|
|
|
1
|
+
export interface IDirectoryReader {
|
|
2
|
+
readEntries(successCallback: (entries: IFileEntry[]) => void, errorCallback: (error: any) => void): void;
|
|
3
|
+
}
|
|
4
|
+
export interface IFileEntry {
|
|
5
|
+
fullPath: string;
|
|
6
|
+
nativeURL: string;
|
|
7
|
+
isDirectory?: boolean;
|
|
8
|
+
remove(callback: () => void, errorCallback: (error: any) => void): void;
|
|
9
|
+
removeRecursively(callback: () => void, errorCallback: (error: any) => void): void;
|
|
10
|
+
createReader(): IDirectoryReader;
|
|
11
|
+
getDirectory?(path: string, options: {
|
|
12
|
+
create: boolean;
|
|
13
|
+
}, callback: (entry: IFileEntry) => void, errorCallback: (error: any) => void): void;
|
|
14
|
+
getFile?(path: string, options: {
|
|
15
|
+
create: boolean;
|
|
16
|
+
}, callback: (entry: IFileEntry) => void, errorCallback: (error: any) => void): void;
|
|
17
|
+
file?(callback: (file: File) => void, errorCallback: (error: any) => void): void;
|
|
18
|
+
createWriter?(callback: (writer: any) => void, errorCallback: (error: any) => void): void;
|
|
19
|
+
}
|
|
1
20
|
export declare class FileService {
|
|
21
|
+
getDocumentDirectory(): string;
|
|
22
|
+
resolveLocalFileSystemURL(url: string): Promise<IFileEntry>;
|
|
23
|
+
getFolderBasedOnUserId(userId: string): Promise<string>;
|
|
24
|
+
deleteUserFolder(userId: string): Promise<void>;
|
|
2
25
|
/**
|
|
3
26
|
* Gets the directory used for storing attachments
|
|
4
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/lib/file/FileService.ts"],"names":[],"mappings":"AAEA,qBAAa,WAAW;
|
|
1
|
+
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/lib/file/FileService.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FileService = void 0;
|
|
4
4
|
const unvired_ts_core_sdk_1 = require("@unvired/unvired-ts-core-sdk");
|
|
5
5
|
class FileService {
|
|
6
|
+
getDocumentDirectory() {
|
|
7
|
+
// @ts-ignore
|
|
8
|
+
return unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().getDocumentDirectory();
|
|
9
|
+
}
|
|
10
|
+
resolveLocalFileSystemURL(url) {
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
return unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().resolveLocalFileSystemURL(url);
|
|
13
|
+
}
|
|
14
|
+
async getFolderBasedOnUserId(userId) {
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
return await unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().getFolderBasedOnUserId(userId);
|
|
17
|
+
}
|
|
18
|
+
async deleteUserFolder(userId) {
|
|
19
|
+
// @ts-ignore
|
|
20
|
+
await unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().deleteUserFolder(userId);
|
|
21
|
+
}
|
|
6
22
|
// AttachmentService is not exported from the SDK, so we cannot expose start/stop here directly.
|
|
7
23
|
// If background sync control is needed, it might be via SyncEngine or other means.
|
|
8
24
|
/**
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface IStorageAdapter {
|
|
2
|
+
getItem(key: string): void;
|
|
3
|
+
setItem(key: string, value: string): void;
|
|
4
|
+
removeItem(key: string): void;
|
|
5
|
+
clear(): void;
|
|
6
|
+
}
|
|
7
|
+
export declare class StorageService {
|
|
8
|
+
getItem(key: string): void;
|
|
9
|
+
setItem(key: string, value: string): void;
|
|
10
|
+
removeItem(key: string): void;
|
|
11
|
+
clear(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=StorageService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorageService.d.ts","sourceRoot":"","sources":["../../../src/lib/storage/StorageService.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,KAAK,IAAI,IAAI,CAAC;CACjB;AAED,qBAAa,cAAc;IAEvB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI7B,KAAK,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StorageService = void 0;
|
|
4
|
+
const unvired_ts_core_sdk_1 = require("@unvired/unvired-ts-core-sdk");
|
|
5
|
+
class StorageService {
|
|
6
|
+
getItem(key) {
|
|
7
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().getItem(key);
|
|
8
|
+
}
|
|
9
|
+
setItem(key, value) {
|
|
10
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().setItem(key, value);
|
|
11
|
+
}
|
|
12
|
+
removeItem(key) {
|
|
13
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().removeItem(key);
|
|
14
|
+
}
|
|
15
|
+
clear() {
|
|
16
|
+
unvired_ts_core_sdk_1.PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().clear();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.StorageService = StorageService;
|
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.19",
|
|
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",
|
|
@@ -23,17 +23,17 @@
|
|
|
23
23
|
"author": "Unvired Inc.",
|
|
24
24
|
"license": "UNLICENSED",
|
|
25
25
|
"peerDependencies": {
|
|
26
|
+
"@op-engineering/op-sqlite": "^15.2.5",
|
|
27
|
+
"@react-native-async-storage/async-storage": "^2.2.0",
|
|
28
|
+
"@react-native-firebase/messaging": "^21.8.1",
|
|
26
29
|
"react": ">=18",
|
|
27
30
|
"react-native": ">=0.73",
|
|
28
|
-
"react-native-fs": "^2.20.0",
|
|
29
31
|
"react-native-device-info": "^15.0.1",
|
|
30
|
-
"
|
|
31
|
-
"react-native-zip-archive": "^7.0.2"
|
|
32
|
-
"@react-native-firebase/messaging": "^21.8.1",
|
|
33
|
-
"@react-native-async-storage/async-storage": "^2.2.0"
|
|
32
|
+
"react-native-fs": "^2.20.0",
|
|
33
|
+
"react-native-zip-archive": "^7.0.2"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@unvired/unvired-ts-core-sdk": "^0.0.
|
|
36
|
+
"@unvired/unvired-ts-core-sdk": "^0.0.18",
|
|
37
37
|
"axios": "^1.6.5",
|
|
38
38
|
"crypto-js": "^4.2.0",
|
|
39
39
|
"uuid": "^9.0.1"
|
|
@@ -58,4 +58,4 @@
|
|
|
58
58
|
"publishConfig": {
|
|
59
59
|
"access": "public"
|
|
60
60
|
}
|
|
61
|
-
}
|
|
61
|
+
}
|
|
@@ -1,148 +1,53 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PlatformManager } from '@unvired/unvired-ts-core-sdk';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export interface IDatabaseAdapter {
|
|
5
|
+
create(options: { userId: string }, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
6
|
+
execute(options: any, successCallback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
7
|
+
executeStatementOnPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
8
|
+
selectFromPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void;
|
|
9
|
+
createDatabase(dbPath: string, callback: () => void): void;
|
|
10
|
+
getDBFilePath(options: { dbType: string }, callback: (path: string) => void): void;
|
|
11
|
+
saveWebDB(options: { userId: string }, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
12
|
+
exportWebDB(options: { userId: string }, callback: (result: any) => void, errorCallback: (error: any) => void): void;
|
|
13
|
+
deleteUserData(options: { userId: string }, callback: () => void, errorCallback: (error: any) => void): void;
|
|
14
|
+
}
|
|
2
15
|
|
|
3
16
|
export class DatabaseService {
|
|
4
|
-
private db: AppDatabaseManager;
|
|
5
|
-
|
|
6
|
-
constructor() {
|
|
7
|
-
this.db = AppDatabaseManager.getInstance();
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Selects data from the database
|
|
12
|
-
* @param tableName Name of the table
|
|
13
|
-
* @param whereClause Optional SQL where clause
|
|
14
|
-
*/
|
|
15
|
-
async select(tableName: string, whereClause?: string): Promise<any> {
|
|
16
|
-
return this.db.select(tableName, whereClause);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Inserts data into the database
|
|
21
|
-
* @param tableName Name of the table
|
|
22
|
-
* @param structureObject Data object to insert
|
|
23
|
-
* @param isHeader Whether the data is a header or an item
|
|
24
|
-
*/
|
|
25
|
-
async insert(tableName: string, structureObject: any, isHeader: boolean): Promise<any> {
|
|
26
|
-
return this.db.insert(tableName, structureObject, isHeader);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Inserts or updates data in the database
|
|
31
|
-
* @param tableName Name of the table
|
|
32
|
-
* @param structureObject Data object to insert or update
|
|
33
|
-
* @param isHeader Whether the data is a header or an item
|
|
34
|
-
*/
|
|
35
|
-
async insertOrUpdate(tableName: string, structureObject: any, isHeader: boolean): Promise<any> {
|
|
36
|
-
return this.db.insertOrUpdate(tableName, structureObject, isHeader);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Deletes data from the database
|
|
41
|
-
* @param tableName Name of the table
|
|
42
|
-
* @param whereClause Optional SQL where clause
|
|
43
|
-
*/
|
|
44
|
-
async delete(tableName: string, whereClause?: string): Promise<any> {
|
|
45
|
-
return this.db.delete(tableName, whereClause);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Updates data in the database
|
|
50
|
-
* @param tableName Name of the table
|
|
51
|
-
* @param updatedObject Object with updated values
|
|
52
|
-
* @param whereClause SQL where clause identifying rows to update
|
|
53
|
-
*/
|
|
54
|
-
async update(tableName: string, updatedObject: any, whereClause: any): Promise<any> {
|
|
55
|
-
return this.db.update(tableName, updatedObject, whereClause);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Executes a raw SQL statement
|
|
60
|
-
* @param query SQL query
|
|
61
|
-
*/
|
|
62
|
-
async executeStatement(query: string): Promise<any> {
|
|
63
|
-
return this.db.executeStatement(query);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* Begins a transaction
|
|
68
|
-
*/
|
|
69
|
-
async beginTransaction(): Promise<void> {
|
|
70
|
-
return this.db.beginTransaction();
|
|
71
|
-
}
|
|
72
17
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
*/
|
|
76
|
-
async endTransaction(): Promise<void> {
|
|
77
|
-
return this.db.endTransaction();
|
|
18
|
+
create(options: { userId: string }, successCallback: (result: any) => void, errorCallback: (error: any) => void): void {
|
|
19
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().create(options, successCallback, errorCallback);
|
|
78
20
|
}
|
|
79
21
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
*/
|
|
83
|
-
async rollbackTransaction(): Promise<void> {
|
|
84
|
-
return this.db.rollbackTransaction();
|
|
22
|
+
execute(options: any, successCallback: (result: any) => void, errorCallback: (error: any) => void): void {
|
|
23
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().execute(options, successCallback, errorCallback);
|
|
85
24
|
}
|
|
86
25
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
* @param savePoint Name of the save point
|
|
90
|
-
*/
|
|
91
|
-
async createSavePoint(savePoint: string): Promise<void> {
|
|
92
|
-
return this.db.createSavePoint(savePoint);
|
|
26
|
+
executeStatementOnPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void {
|
|
27
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().executeStatementOnPath(dbPath, sqlQuery, callback);
|
|
93
28
|
}
|
|
94
29
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
* @param savePoint Name of the save point
|
|
98
|
-
*/
|
|
99
|
-
async releaseSavePoint(savePoint: string): Promise<void> {
|
|
100
|
-
return this.db.releaseSavePoint(savePoint);
|
|
30
|
+
selectFromPath(dbPath: string, sqlQuery: string, callback: (result: any) => void): void {
|
|
31
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().selectFromPath(dbPath, sqlQuery, callback);
|
|
101
32
|
}
|
|
102
33
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
* @param savePoint Name of the save point
|
|
106
|
-
*/
|
|
107
|
-
async rollbackToSavePoint(savePoint: string): Promise<void> {
|
|
108
|
-
return this.db.rollbackToSavePoint(savePoint);
|
|
34
|
+
createDatabase(dbPath: string, callback: () => void): void {
|
|
35
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().createDatabase(dbPath, callback);
|
|
109
36
|
}
|
|
110
37
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
*/
|
|
114
|
-
async saveWebData(): Promise<void> {
|
|
115
|
-
if (FrameworkHelper.getPlatform() === 'browser') {
|
|
116
|
-
return DatabaseManager.getInstance().saveWebData();
|
|
117
|
-
}
|
|
38
|
+
getDBFilePath(options: { dbType: string }, callback: (path: string) => void): void {
|
|
39
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().getDBFilePath(options, callback);
|
|
118
40
|
}
|
|
119
41
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
*/
|
|
123
|
-
async exportWebData(): Promise<void> {
|
|
124
|
-
return DatabaseManager.getInstance().exportWebData();
|
|
42
|
+
saveWebDB(options: { userId: string }, callback: (result: any) => void, errorCallback: (error: any) => void): void {
|
|
43
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().saveWebDB(options, callback, errorCallback);
|
|
125
44
|
}
|
|
126
45
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
*/
|
|
130
|
-
async prepareDatabaseForExport(): Promise<void> {
|
|
131
|
-
return SettingsHelper.prepareDatabaseForExport();
|
|
46
|
+
exportWebDB(options: { userId: string }, callback: (result: any) => void, errorCallback: (error: any) => void): void {
|
|
47
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().exportWebDB(options, callback, errorCallback);
|
|
132
48
|
}
|
|
133
49
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
*/
|
|
137
|
-
async getDatabasePath(): Promise<string> {
|
|
138
|
-
return new Promise((resolve, reject) => {
|
|
139
|
-
try {
|
|
140
|
-
const adapter = PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter();
|
|
141
|
-
// @ts-ignore - The type might be mismatch in d.ts but logical flow is correct
|
|
142
|
-
adapter.getDBFilePath({ dbType: DatabaseType.AppDb }, (path) => resolve(path));
|
|
143
|
-
} catch (e) {
|
|
144
|
-
reject(e);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
50
|
+
deleteUserData(options: { userId: string }, callback: () => void, errorCallback: (error: any) => void): void {
|
|
51
|
+
PlatformManager.getInstance().getPlatformAdapter().getDatabaseAdapter().deleteUserData(options, callback, errorCallback);
|
|
147
52
|
}
|
|
148
53
|
}
|
|
@@ -1,7 +1,44 @@
|
|
|
1
|
-
import { AttachmentHelper, AttachmentQHelper, ServiceConstants, AppDatabaseManager } from '@unvired/unvired-ts-core-sdk';
|
|
1
|
+
import { AttachmentHelper, AttachmentQHelper, ServiceConstants, AppDatabaseManager, PlatformManager } from '@unvired/unvired-ts-core-sdk';
|
|
2
|
+
|
|
3
|
+
export interface IDirectoryReader {
|
|
4
|
+
readEntries(successCallback: (entries: IFileEntry[]) => void, errorCallback: (error: any) => void): void;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export interface IFileEntry {
|
|
8
|
+
fullPath: string;
|
|
9
|
+
nativeURL: string;
|
|
10
|
+
isDirectory?: boolean;
|
|
11
|
+
remove(callback: () => void, errorCallback: (error: any) => void): void;
|
|
12
|
+
removeRecursively(callback: () => void, errorCallback: (error: any) => void): void;
|
|
13
|
+
createReader(): IDirectoryReader;
|
|
14
|
+
getDirectory?(path: string, options: { create: boolean }, callback: (entry: IFileEntry) => void, errorCallback: (error: any) => void): void;
|
|
15
|
+
getFile?(path: string, options: { create: boolean }, callback: (entry: IFileEntry) => void, errorCallback: (error: any) => void): void;
|
|
16
|
+
file?(callback: (file: File) => void, errorCallback: (error: any) => void): void;
|
|
17
|
+
createWriter?(callback: (writer: any) => void, errorCallback: (error: any) => void): void;
|
|
18
|
+
}
|
|
2
19
|
|
|
3
20
|
export class FileService {
|
|
4
21
|
|
|
22
|
+
getDocumentDirectory(): string {
|
|
23
|
+
// @ts-ignore
|
|
24
|
+
return PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().getDocumentDirectory();
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
resolveLocalFileSystemURL(url: string): Promise<IFileEntry> {
|
|
28
|
+
// @ts-ignore
|
|
29
|
+
return PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().resolveLocalFileSystemURL(url);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async getFolderBasedOnUserId(userId: string): Promise<string> {
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
return await PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().getFolderBasedOnUserId(userId);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
async deleteUserFolder(userId: string): Promise<void> {
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
await PlatformManager.getInstance().getPlatformAdapter().getFileAdapter().deleteUserFolder(userId);
|
|
40
|
+
}
|
|
41
|
+
|
|
5
42
|
// AttachmentService is not exported from the SDK, so we cannot expose start/stop here directly.
|
|
6
43
|
// If background sync control is needed, it might be via SyncEngine or other means.
|
|
7
44
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { PlatformManager } from '@unvired/unvired-ts-core-sdk';
|
|
2
|
+
|
|
3
|
+
export interface IStorageAdapter {
|
|
4
|
+
getItem(key: string): void;
|
|
5
|
+
setItem(key: string, value: string): void;
|
|
6
|
+
removeItem(key: string): void;
|
|
7
|
+
clear(): void;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export class StorageService {
|
|
11
|
+
|
|
12
|
+
getItem(key: string): void {
|
|
13
|
+
PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().getItem(key);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
setItem(key: string, value: string): void {
|
|
17
|
+
PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().setItem(key, value);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
removeItem(key: string): void {
|
|
21
|
+
PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().removeItem(key);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
clear(): void {
|
|
25
|
+
PlatformManager.getInstance().getPlatformAdapter().getStorageAdapter().clear();
|
|
26
|
+
}
|
|
27
|
+
}
|