@capgo/capacitor-data-storage-sqlite 6.0.59 → 7.1.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.
- package/CapgoCapacitorDataStorageSqlite.podspec +2 -2
- package/Package.swift +30 -0
- package/README.md +724 -0
- package/android/build.gradle +11 -11
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlite.java +290 -320
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlitePlugin.java +373 -388
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/RetHandler.java +97 -97
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/Data.java +3 -3
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/Global.java +2 -2
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonStore.java +108 -110
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonTable.java +78 -80
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonValue.java +62 -64
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/StorageDatabaseHelper.java +557 -624
- package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/UtilsSQLCipher.java +103 -144
- package/dist/docs.json +0 -64
- package/dist/esm/definitions.d.ts +0 -19
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +5 -6
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/web-utils/StorageDatabaseHelper.d.ts +2 -2
- package/dist/esm/web-utils/StorageDatabaseHelper.js +8 -8
- package/dist/esm/web-utils/StorageDatabaseHelper.js.map +1 -1
- package/dist/esm/web-utils/json-utils.js +15 -18
- package/dist/esm/web-utils/json-utils.js.map +1 -1
- package/dist/esm/web.d.ts +2 -3
- package/dist/esm/web.js +37 -44
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +56 -67
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +56 -67
- package/dist/plugin.js.map +1 -1
- package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/CapgoCapacitorDataStorageSqlitePlugin.swift +27 -10
- package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/StorageDatabaseHelper.swift +1 -1
- package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsFile.swift +1 -1
- package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsSQLCipher.swift +3 -3
- package/ios/Tests/CapgoCapacitorDataStorageSqlitePluginTests/CapacitorDataStorageSqlitePluginTests.swift +13 -0
- package/package.json +34 -38
- package/electron/dist/plugin.js +0 -1044
- package/electron/dist/plugin.js.map +0 -1
- package/ios/Plugin/CapgoCapacitorDataStorageSqlitePlugin.h +0 -10
- package/ios/Plugin/CapgoCapacitorDataStorageSqlitePlugin.m +0 -29
- package/ios/Plugin/Info.plist +0 -24
- package/readme.md +0 -210
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/CapgoCapacitorDataStorageSqlite.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Data.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Global.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/ImportExportJson/JsonStore.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/ReturnHandler.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/Blob.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsBinding.swift +0 -0
- /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsEncryption.swift +0 -0
|
@@ -3,20 +3,19 @@
|
|
|
3
3
|
* @param obj
|
|
4
4
|
*/
|
|
5
5
|
export const isJsonStore = (obj) => {
|
|
6
|
-
const keyFirstLevel = [
|
|
7
|
-
if (obj == null ||
|
|
8
|
-
(Object.keys(obj).length === 0 && obj.constructor === Object))
|
|
6
|
+
const keyFirstLevel = ['database', 'encrypted', 'tables'];
|
|
7
|
+
if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object))
|
|
9
8
|
return false;
|
|
10
9
|
for (const key of Object.keys(obj)) {
|
|
11
10
|
if (keyFirstLevel.indexOf(key) === -1)
|
|
12
11
|
return false;
|
|
13
|
-
if (key ===
|
|
12
|
+
if (key === 'database' && typeof obj[key] != 'string')
|
|
14
13
|
return false;
|
|
15
|
-
if (key ===
|
|
14
|
+
if (key === 'encrypted' && typeof obj[key] != 'boolean')
|
|
16
15
|
return false;
|
|
17
|
-
if (key ===
|
|
16
|
+
if (key === 'tables' && typeof obj[key] != 'object')
|
|
18
17
|
return false;
|
|
19
|
-
if (key ===
|
|
18
|
+
if (key === 'tables') {
|
|
20
19
|
for (const oKey of obj[key]) {
|
|
21
20
|
const retTable = isTable(oKey);
|
|
22
21
|
if (!retTable)
|
|
@@ -31,19 +30,18 @@ export const isJsonStore = (obj) => {
|
|
|
31
30
|
* @param obj
|
|
32
31
|
*/
|
|
33
32
|
export const isTable = (obj) => {
|
|
34
|
-
const keyTableLevel = [
|
|
35
|
-
if (obj == null ||
|
|
36
|
-
(Object.keys(obj).length === 0 && obj.constructor === Object)) {
|
|
33
|
+
const keyTableLevel = ['name', 'values'];
|
|
34
|
+
if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object)) {
|
|
37
35
|
return false;
|
|
38
36
|
}
|
|
39
37
|
for (const key of Object.keys(obj)) {
|
|
40
38
|
if (keyTableLevel.indexOf(key) === -1)
|
|
41
39
|
return false;
|
|
42
|
-
if (key ===
|
|
40
|
+
if (key === 'name' && typeof obj[key] != 'string')
|
|
43
41
|
return false;
|
|
44
|
-
if (key ===
|
|
42
|
+
if (key === 'values' && typeof obj[key] != 'object')
|
|
45
43
|
return false;
|
|
46
|
-
if (key ===
|
|
44
|
+
if (key === 'values') {
|
|
47
45
|
for (const oKey of obj[key]) {
|
|
48
46
|
const retValue = isValue(oKey);
|
|
49
47
|
if (!retValue)
|
|
@@ -58,17 +56,16 @@ export const isTable = (obj) => {
|
|
|
58
56
|
* @param obj
|
|
59
57
|
*/
|
|
60
58
|
export const isValue = (obj) => {
|
|
61
|
-
const keyTableLevel = [
|
|
62
|
-
if (obj == null ||
|
|
63
|
-
(Object.keys(obj).length === 0 && obj.constructor === Object)) {
|
|
59
|
+
const keyTableLevel = ['key', 'value'];
|
|
60
|
+
if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object)) {
|
|
64
61
|
return false;
|
|
65
62
|
}
|
|
66
63
|
for (const key of Object.keys(obj)) {
|
|
67
64
|
if (keyTableLevel.indexOf(key) === -1)
|
|
68
65
|
return false;
|
|
69
|
-
if (key ===
|
|
66
|
+
if (key === 'key' && typeof obj[key] != 'string')
|
|
70
67
|
return false;
|
|
71
|
-
if (key ===
|
|
68
|
+
if (key === 'value' && typeof obj[key] != 'string')
|
|
72
69
|
return false;
|
|
73
70
|
}
|
|
74
71
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-utils.js","sourceRoot":"","sources":["../../../src/web-utils/json-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAW,EAAE;IAC/C,MAAM,aAAa,GAAa,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpE,
|
|
1
|
+
{"version":3,"file":"json-utils.js","sourceRoot":"","sources":["../../../src/web-utils/json-utils.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * IsJsonSQLite\n * @param obj\n */\nexport const isJsonStore = (obj: any): boolean => {\n const keyFirstLevel: string[] = ['database', 'encrypted', 'tables'];\n if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object)) return false;\n for (const key of Object.keys(obj)) {\n if (keyFirstLevel.indexOf(key) === -1) return false;\n if (key === 'database' && typeof obj[key] != 'string') return false;\n if (key === 'encrypted' && typeof obj[key] != 'boolean') return false;\n if (key === 'tables' && typeof obj[key] != 'object') return false;\n if (key === 'tables') {\n for (const oKey of obj[key]) {\n const retTable: boolean = isTable(oKey);\n if (!retTable) return false;\n }\n }\n }\n return true;\n};\n/**\n * IsTable\n * @param obj\n */\nexport const isTable = (obj: any): boolean => {\n const keyTableLevel: string[] = ['name', 'values'];\n if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object)) {\n return false;\n }\n for (const key of Object.keys(obj)) {\n if (keyTableLevel.indexOf(key) === -1) return false;\n if (key === 'name' && typeof obj[key] != 'string') return false;\n if (key === 'values' && typeof obj[key] != 'object') return false;\n if (key === 'values') {\n for (const oKey of obj[key]) {\n const retValue: boolean = isValue(oKey);\n if (!retValue) return false;\n }\n }\n }\n return true;\n};\n/**\n * IsValue\n * @param obj\n */\nexport const isValue = (obj: any): boolean => {\n const keyTableLevel: string[] = ['key', 'value'];\n if (obj == null || (Object.keys(obj).length === 0 && obj.constructor === Object)) {\n return false;\n }\n for (const key of Object.keys(obj)) {\n if (keyTableLevel.indexOf(key) === -1) return false;\n if (key === 'key' && typeof obj[key] != 'string') return false;\n if (key === 'value' && typeof obj[key] != 'string') return false;\n }\n return true;\n};\n"]}
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { WebPlugin } from
|
|
2
|
-
import type { CapgoCapacitorDataStorageSqlitePlugin,
|
|
1
|
+
import { WebPlugin } from '@capacitor/core';
|
|
2
|
+
import type { CapgoCapacitorDataStorageSqlitePlugin, capDataStorageOptions, capDataStorageResult, capFilterStorageOptions, capKeysResult, capKeysValuesResult, capTablesResult, capOpenStorageOptions, capTableStorageOptions, capValueResult, capValuesResult, capStorageOptions, capStoreJson, capDataStorageChanges, capStoreImportOptions } from './definitions';
|
|
3
3
|
export declare class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin implements CapgoCapacitorDataStorageSqlitePlugin {
|
|
4
4
|
private mDb;
|
|
5
|
-
echo(options: capEchoOptions): Promise<capEchoResult>;
|
|
6
5
|
openStore(options: capOpenStorageOptions): Promise<void>;
|
|
7
6
|
closeStore(options: capStorageOptions): Promise<void>;
|
|
8
7
|
isStoreOpen(options: capStorageOptions): Promise<capDataStorageResult>;
|
package/dist/esm/web.js
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
import { WebPlugin } from
|
|
2
|
-
import { Data } from
|
|
3
|
-
import { StorageDatabaseHelper } from
|
|
4
|
-
import { isJsonStore } from
|
|
1
|
+
import { WebPlugin } from '@capacitor/core';
|
|
2
|
+
import { Data } from './web-utils/Data';
|
|
3
|
+
import { StorageDatabaseHelper } from './web-utils/StorageDatabaseHelper';
|
|
4
|
+
import { isJsonStore } from './web-utils/json-utils';
|
|
5
5
|
export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
6
|
-
async echo(options) {
|
|
7
|
-
const ret = {};
|
|
8
|
-
ret.value = options.value ? options.value : "";
|
|
9
|
-
return ret;
|
|
10
|
-
}
|
|
11
6
|
async openStore(options) {
|
|
12
|
-
const dbName = options.database ? `${options.database}IDB` :
|
|
13
|
-
const tableName = options.table ? options.table :
|
|
7
|
+
const dbName = options.database ? `${options.database}IDB` : 'storageIDB';
|
|
8
|
+
const tableName = options.table ? options.table : 'storage_store';
|
|
14
9
|
try {
|
|
15
10
|
this.mDb = new StorageDatabaseHelper(dbName, tableName);
|
|
16
11
|
return Promise.resolve();
|
|
@@ -31,7 +26,7 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
31
26
|
async setTable(options) {
|
|
32
27
|
const tableName = options.table;
|
|
33
28
|
if (tableName == null) {
|
|
34
|
-
return Promise.reject(
|
|
29
|
+
return Promise.reject('SetTable: Must provide a table name');
|
|
35
30
|
}
|
|
36
31
|
if (this.mDb) {
|
|
37
32
|
try {
|
|
@@ -43,17 +38,17 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
43
38
|
}
|
|
44
39
|
}
|
|
45
40
|
else {
|
|
46
|
-
return Promise.reject(
|
|
41
|
+
return Promise.reject('SetTable: Must open a store first');
|
|
47
42
|
}
|
|
48
43
|
}
|
|
49
44
|
async set(options) {
|
|
50
45
|
const key = options.key;
|
|
51
|
-
if (key == null || typeof key !=
|
|
52
|
-
return Promise.reject(
|
|
46
|
+
if (key == null || typeof key != 'string') {
|
|
47
|
+
return Promise.reject('Set: Must provide key as string');
|
|
53
48
|
}
|
|
54
49
|
const value = options.value ? options.value : null;
|
|
55
|
-
if (value == null || typeof value !=
|
|
56
|
-
return Promise.reject(
|
|
50
|
+
if (value == null || typeof value != 'string') {
|
|
51
|
+
return Promise.reject('Set: Must provide value as string');
|
|
57
52
|
}
|
|
58
53
|
const data = new Data();
|
|
59
54
|
data.name = key;
|
|
@@ -68,8 +63,8 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
68
63
|
}
|
|
69
64
|
async get(options) {
|
|
70
65
|
const key = options.key;
|
|
71
|
-
if (key == null || typeof key !=
|
|
72
|
-
return Promise.reject(
|
|
66
|
+
if (key == null || typeof key != 'string') {
|
|
67
|
+
return Promise.reject('Get: Must provide key as string');
|
|
73
68
|
}
|
|
74
69
|
try {
|
|
75
70
|
const data = await this.mDb.get(key);
|
|
@@ -77,7 +72,7 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
77
72
|
return Promise.resolve({ value: data.value });
|
|
78
73
|
}
|
|
79
74
|
else {
|
|
80
|
-
return Promise.resolve({ value:
|
|
75
|
+
return Promise.resolve({ value: '' });
|
|
81
76
|
}
|
|
82
77
|
}
|
|
83
78
|
catch (err) {
|
|
@@ -86,8 +81,8 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
86
81
|
}
|
|
87
82
|
async remove(options) {
|
|
88
83
|
const key = options.key;
|
|
89
|
-
if (key == null || typeof key !=
|
|
90
|
-
return Promise.reject(
|
|
84
|
+
if (key == null || typeof key != 'string') {
|
|
85
|
+
return Promise.reject('Remove: Must provide key as string');
|
|
91
86
|
}
|
|
92
87
|
try {
|
|
93
88
|
await this.mDb.remove(key);
|
|
@@ -108,8 +103,8 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
108
103
|
}
|
|
109
104
|
async iskey(options) {
|
|
110
105
|
const key = options.key;
|
|
111
|
-
if (key == null || typeof key !=
|
|
112
|
-
return Promise.reject(
|
|
106
|
+
if (key == null || typeof key != 'string') {
|
|
107
|
+
return Promise.reject('Iskey: Must provide key as string');
|
|
113
108
|
}
|
|
114
109
|
try {
|
|
115
110
|
const ret = await this.mDb.iskey(key);
|
|
@@ -139,18 +134,18 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
139
134
|
}
|
|
140
135
|
async filtervalues(options) {
|
|
141
136
|
const filter = options.filter;
|
|
142
|
-
if (filter == null || typeof filter !=
|
|
143
|
-
return Promise.reject(
|
|
137
|
+
if (filter == null || typeof filter != 'string') {
|
|
138
|
+
return Promise.reject('Filtervalues: Must provide filter as string');
|
|
144
139
|
}
|
|
145
140
|
let regFilter;
|
|
146
|
-
if (filter.startsWith(
|
|
147
|
-
regFilter = new RegExp(
|
|
141
|
+
if (filter.startsWith('%')) {
|
|
142
|
+
regFilter = new RegExp('^' + filter.substring(1), 'i');
|
|
148
143
|
}
|
|
149
|
-
else if (filter.endsWith(
|
|
150
|
-
regFilter = new RegExp(filter.slice(0, -1) +
|
|
144
|
+
else if (filter.endsWith('%')) {
|
|
145
|
+
regFilter = new RegExp(filter.slice(0, -1) + '$', 'i');
|
|
151
146
|
}
|
|
152
147
|
else {
|
|
153
|
-
regFilter = new RegExp(filter,
|
|
148
|
+
regFilter = new RegExp(filter, 'i');
|
|
154
149
|
}
|
|
155
150
|
try {
|
|
156
151
|
const ret = [];
|
|
@@ -196,7 +191,7 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
196
191
|
async isTable(options) {
|
|
197
192
|
const table = options.table;
|
|
198
193
|
if (table == null) {
|
|
199
|
-
return Promise.reject(
|
|
194
|
+
return Promise.reject('Must provide a Table Name');
|
|
200
195
|
}
|
|
201
196
|
try {
|
|
202
197
|
const ret = await this.mDb.isTable(table);
|
|
@@ -220,8 +215,8 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
220
215
|
}
|
|
221
216
|
async importFromJson(options) {
|
|
222
217
|
const keys = Object.keys(options);
|
|
223
|
-
if (!keys.includes(
|
|
224
|
-
return Promise.reject(
|
|
218
|
+
if (!keys.includes('jsonstring')) {
|
|
219
|
+
return Promise.reject('Must provide a json object');
|
|
225
220
|
}
|
|
226
221
|
let totalChanges = 0;
|
|
227
222
|
if (options === null || options === void 0 ? void 0 : options.jsonstring) {
|
|
@@ -229,14 +224,12 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
229
224
|
const jsonObj = JSON.parse(jsonStrObj);
|
|
230
225
|
const isValid = isJsonStore(jsonObj);
|
|
231
226
|
if (!isValid) {
|
|
232
|
-
return Promise.reject(
|
|
227
|
+
return Promise.reject('Must provide a valid JsonSQLite Object');
|
|
233
228
|
}
|
|
234
229
|
const vJsonObj = jsonObj;
|
|
235
|
-
const dbName = vJsonObj.database
|
|
236
|
-
? `${vJsonObj.database}IDB`
|
|
237
|
-
: "storageIDB";
|
|
230
|
+
const dbName = vJsonObj.database ? `${vJsonObj.database}IDB` : 'storageIDB';
|
|
238
231
|
for (const table of vJsonObj.tables) {
|
|
239
|
-
const tableName = table.name ? table.name :
|
|
232
|
+
const tableName = table.name ? table.name : 'storage_store';
|
|
240
233
|
try {
|
|
241
234
|
this.mDb = new StorageDatabaseHelper(dbName, tableName);
|
|
242
235
|
// Open the database
|
|
@@ -259,27 +252,27 @@ export class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {
|
|
|
259
252
|
return Promise.resolve({ changes: totalChanges });
|
|
260
253
|
}
|
|
261
254
|
else {
|
|
262
|
-
return Promise.reject(
|
|
255
|
+
return Promise.reject('Must provide a json object');
|
|
263
256
|
}
|
|
264
257
|
}
|
|
265
258
|
async isJsonValid(options) {
|
|
266
259
|
const keys = Object.keys(options);
|
|
267
|
-
if (!keys.includes(
|
|
268
|
-
return Promise.reject(
|
|
260
|
+
if (!keys.includes('jsonstring')) {
|
|
261
|
+
return Promise.reject('Must provide a json object');
|
|
269
262
|
}
|
|
270
263
|
if (options === null || options === void 0 ? void 0 : options.jsonstring) {
|
|
271
264
|
const jsonStrObj = options.jsonstring;
|
|
272
265
|
const jsonObj = JSON.parse(jsonStrObj);
|
|
273
266
|
const isValid = isJsonStore(jsonObj);
|
|
274
267
|
if (!isValid) {
|
|
275
|
-
return Promise.reject(
|
|
268
|
+
return Promise.reject('Stringify Json Object not Valid');
|
|
276
269
|
}
|
|
277
270
|
else {
|
|
278
271
|
return Promise.resolve({ result: true });
|
|
279
272
|
}
|
|
280
273
|
}
|
|
281
274
|
else {
|
|
282
|
-
return Promise.reject(
|
|
275
|
+
return Promise.reject('Must provide in options a stringify Json Object');
|
|
283
276
|
}
|
|
284
277
|
}
|
|
285
278
|
async exportToJson() {
|
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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","sourcesContent":["import { WebPlugin } from \"@capacitor/core\";\n\nimport type {\n CapgoCapacitorDataStorageSqlitePlugin,\n capEchoOptions,\n capEchoResult,\n capDataStorageOptions,\n capDataStorageResult,\n capFilterStorageOptions,\n capKeysResult,\n capKeysValuesResult,\n capTablesResult,\n capOpenStorageOptions,\n capTableStorageOptions,\n capValueResult,\n capValuesResult,\n capStorageOptions,\n JsonStore,\n capStoreJson,\n capDataStorageChanges,\n capStoreImportOptions,\n} from \"./definitions\";\nimport { Data } from \"./web-utils/Data\";\nimport { StorageDatabaseHelper } from \"./web-utils/StorageDatabaseHelper\";\nimport { isJsonStore } from \"./web-utils/json-utils\";\n\nexport class CapgoCapacitorDataStorageSqliteWeb\n extends WebPlugin\n implements CapgoCapacitorDataStorageSqlitePlugin\n{\n private mDb!: StorageDatabaseHelper;\n\n async echo(options: capEchoOptions): Promise<capEchoResult> {\n const ret: capEchoResult = {} as capEchoResult;\n ret.value = options.value ? options.value : \"\";\n return ret;\n }\n\n async openStore(options: capOpenStorageOptions): Promise<void> {\n const dbName = options.database ? `${options.database}IDB` : \"storageIDB\";\n const tableName = options.table ? options.table : \"storage_store\";\n try {\n this.mDb = new StorageDatabaseHelper(dbName, tableName);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`OpenStore: ${err.message}`);\n }\n }\n async closeStore(options: capStorageOptions): Promise<void> {\n throw new Error(`Method closeStore not implemented. ${options}`);\n }\n async isStoreOpen(options: capStorageOptions): Promise<capDataStorageResult> {\n throw new Error(`Method isStoreOpen not implemented. ${options}`);\n }\n async isStoreExists(\n options: capStorageOptions,\n ): Promise<capDataStorageResult> {\n throw new Error(`Method isStoreExists not implemented. ${options}`);\n }\n async setTable(options: capTableStorageOptions): Promise<void> {\n const tableName = options.table;\n if (tableName == null) {\n return Promise.reject(\"SetTable: Must provide a table name\");\n }\n if (this.mDb) {\n try {\n await this.mDb.setTable(tableName);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`SetTable: ${err.message}`);\n }\n } else {\n return Promise.reject(\"SetTable: Must open a store first\");\n }\n }\n async set(options: capDataStorageOptions): Promise<void> {\n const key: string = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Set: Must provide key as string\");\n }\n\n const value = options.value ? options.value : null;\n if (value == null || typeof value != \"string\") {\n return Promise.reject(\"Set: Must provide value as string\");\n }\n const data: Data = new Data();\n data.name = key;\n data.value = value;\n try {\n await this.mDb.set(data);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Set: ${err.message}`);\n }\n }\n async get(options: capDataStorageOptions): Promise<capValueResult> {\n const key: string = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Get: Must provide key as string\");\n }\n try {\n const data: Data = await this.mDb.get(key);\n if (data?.value != null) {\n return Promise.resolve({ value: data.value });\n } else {\n return Promise.resolve({ value: \"\" });\n }\n } catch (err: any) {\n return Promise.reject(`Get: ${err.message}`);\n }\n }\n async remove(options: capDataStorageOptions): Promise<void> {\n const key: string = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Remove: Must provide key as string\");\n }\n try {\n await this.mDb.remove(key);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Remove: ${err.message}`);\n }\n }\n async clear(): Promise<void> {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Clear: ${err.message}`);\n }\n }\n async iskey(options: capDataStorageOptions): Promise<capDataStorageResult> {\n const key: string = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Iskey: Must provide key as string\");\n }\n try {\n const ret: boolean = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n } catch (err: any) {\n return Promise.reject(`Iskey: ${err.message}`);\n }\n }\n async keys(): Promise<capKeysResult> {\n try {\n const ret: string[] = await this.mDb.keys();\n return Promise.resolve({ keys: ret });\n } catch (err: any) {\n return Promise.reject(`Keys: ${err.message}`);\n }\n }\n async values(): Promise<capValuesResult> {\n try {\n const ret: string[] = await this.mDb.values();\n return Promise.resolve({ values: ret });\n } catch (err: any) {\n return Promise.reject(`Values: ${err.message}`);\n }\n }\n async filtervalues(\n options: capFilterStorageOptions,\n ): Promise<capValuesResult> {\n const filter: string = options.filter;\n if (filter == null || typeof filter != \"string\") {\n return Promise.reject(\"Filtervalues: Must provide filter as string\");\n }\n let regFilter: RegExp;\n if (filter.startsWith(\"%\")) {\n regFilter = new RegExp(\"^\" + filter.substring(1), \"i\");\n } else if (filter.endsWith(\"%\")) {\n regFilter = new RegExp(filter.slice(0, -1) + \"$\", \"i\");\n } else {\n regFilter = new RegExp(filter, \"i\");\n }\n try {\n const ret: string[] = [];\n\n const results: Data[] = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && regFilter.test(result.name)) {\n if (result.value != null) {\n ret.push(result.value);\n } else {\n return Promise.reject(`Filtervalues: result.value is null`);\n }\n }\n }\n return Promise.resolve({ values: ret });\n } catch (err: any) {\n return Promise.reject(`Filtervalues: ${err.message}`);\n }\n }\n async keysvalues(): Promise<capKeysValuesResult> {\n try {\n const ret: any[] = [];\n const results: Data[] = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && result.value != null) {\n const res: any = { key: result.name, value: result.value };\n ret.push(res);\n } else {\n return Promise.reject(`Keysvalues: result.name/value are null`);\n }\n }\n return Promise.resolve({ keysvalues: ret });\n } catch (err: any) {\n return Promise.reject(`Keysvalues: ${err.message}`);\n }\n }\n async deleteStore(options: capOpenStorageOptions): Promise<void> {\n throw new Error(`Method deleteStore not implemented. ${options}`);\n }\n async isTable(\n options: capTableStorageOptions,\n ): Promise<capDataStorageResult> {\n const table = options.table;\n if (table == null) {\n return Promise.reject(\"Must provide a Table Name\");\n }\n try {\n const ret = await this.mDb.isTable(table);\n return Promise.resolve({ result: ret });\n } catch (err) {\n return Promise.reject(err);\n }\n }\n async tables(): Promise<capTablesResult> {\n try {\n const ret = await this.mDb.tables();\n return Promise.resolve({ tables: ret });\n } catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteTable(options: capTableStorageOptions): Promise<void> {\n throw new Error(`Method deleteTable not implemented. ${options}`);\n }\n async importFromJson(\n options: capStoreImportOptions,\n ): Promise<capDataStorageChanges> {\n const keys = Object.keys(options);\n if (!keys.includes(\"jsonstring\")) {\n return Promise.reject(\"Must provide a json object\");\n }\n let totalChanges = 0;\n\n if (options?.jsonstring) {\n const jsonStrObj: string = options.jsonstring;\n const jsonObj = JSON.parse(jsonStrObj);\n const isValid = isJsonStore(jsonObj);\n if (!isValid) {\n return Promise.reject(\"Must provide a valid JsonSQLite Object\");\n }\n const vJsonObj: JsonStore = jsonObj;\n const dbName = vJsonObj.database\n ? `${vJsonObj.database}IDB`\n : \"storageIDB\";\n for (const table of vJsonObj.tables) {\n const tableName = table.name ? table.name : \"storage_store\";\n try {\n this.mDb = new StorageDatabaseHelper(dbName, tableName);\n // Open the database\n const bRet: boolean = this.mDb.openStore(dbName, tableName);\n if (bRet) {\n // Import the JsonSQLite Object\n if (table?.values) {\n const changes = await this.mDb.importJson(table.values);\n totalChanges += changes;\n }\n } else {\n return Promise.reject(\n `Open store: ${dbName} : table: ${tableName} failed`,\n );\n }\n } catch (err: any) {\n return Promise.reject(`ImportFromJson: ${err.message}`);\n }\n }\n return Promise.resolve({ changes: totalChanges });\n } else {\n return Promise.reject(\"Must provide a json object\");\n }\n }\n async isJsonValid(\n options: capStoreImportOptions,\n ): Promise<capDataStorageResult> {\n const keys = Object.keys(options);\n if (!keys.includes(\"jsonstring\")) {\n return Promise.reject(\"Must provide a json object\");\n }\n if (options?.jsonstring) {\n const jsonStrObj: string = options.jsonstring;\n const jsonObj = JSON.parse(jsonStrObj);\n const isValid = isJsonStore(jsonObj);\n if (!isValid) {\n return Promise.reject(\"Stringify Json Object not Valid\");\n } else {\n return Promise.resolve({ result: true });\n }\n } else {\n return Promise.reject(\"Must provide in options a stringify Json Object\");\n }\n }\n async exportToJson(): Promise<capStoreJson> {\n try {\n const ret: JsonStore = await this.mDb.exportJson();\n return Promise.resolve({ export: ret });\n } catch (err) {\n return Promise.reject(`exportToJson: ${err}`);\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n CapgoCapacitorDataStorageSqlitePlugin,\n capDataStorageOptions,\n capDataStorageResult,\n capFilterStorageOptions,\n capKeysResult,\n capKeysValuesResult,\n capTablesResult,\n capOpenStorageOptions,\n capTableStorageOptions,\n capValueResult,\n capValuesResult,\n capStorageOptions,\n JsonStore,\n capStoreJson,\n capDataStorageChanges,\n capStoreImportOptions,\n} from './definitions';\nimport { Data } from './web-utils/Data';\nimport { StorageDatabaseHelper } from './web-utils/StorageDatabaseHelper';\nimport { isJsonStore } from './web-utils/json-utils';\n\nexport class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin implements CapgoCapacitorDataStorageSqlitePlugin {\n private mDb!: StorageDatabaseHelper;\n\n async openStore(options: capOpenStorageOptions): Promise<void> {\n const dbName = options.database ? `${options.database}IDB` : 'storageIDB';\n const tableName = options.table ? options.table : 'storage_store';\n try {\n this.mDb = new StorageDatabaseHelper(dbName, tableName);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`OpenStore: ${err.message}`);\n }\n }\n async closeStore(options: capStorageOptions): Promise<void> {\n throw new Error(`Method closeStore not implemented. ${options}`);\n }\n async isStoreOpen(options: capStorageOptions): Promise<capDataStorageResult> {\n throw new Error(`Method isStoreOpen not implemented. ${options}`);\n }\n async isStoreExists(options: capStorageOptions): Promise<capDataStorageResult> {\n throw new Error(`Method isStoreExists not implemented. ${options}`);\n }\n async setTable(options: capTableStorageOptions): Promise<void> {\n const tableName = options.table;\n if (tableName == null) {\n return Promise.reject('SetTable: Must provide a table name');\n }\n if (this.mDb) {\n try {\n await this.mDb.setTable(tableName);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`SetTable: ${err.message}`);\n }\n } else {\n return Promise.reject('SetTable: Must open a store first');\n }\n }\n async set(options: capDataStorageOptions): Promise<void> {\n const key: string = options.key;\n if (key == null || typeof key != 'string') {\n return Promise.reject('Set: Must provide key as string');\n }\n\n const value = options.value ? options.value : null;\n if (value == null || typeof value != 'string') {\n return Promise.reject('Set: Must provide value as string');\n }\n const data: Data = new Data();\n data.name = key;\n data.value = value;\n try {\n await this.mDb.set(data);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Set: ${err.message}`);\n }\n }\n async get(options: capDataStorageOptions): Promise<capValueResult> {\n const key: string = options.key;\n if (key == null || typeof key != 'string') {\n return Promise.reject('Get: Must provide key as string');\n }\n try {\n const data: Data = await this.mDb.get(key);\n if (data?.value != null) {\n return Promise.resolve({ value: data.value });\n } else {\n return Promise.resolve({ value: '' });\n }\n } catch (err: any) {\n return Promise.reject(`Get: ${err.message}`);\n }\n }\n async remove(options: capDataStorageOptions): Promise<void> {\n const key: string = options.key;\n if (key == null || typeof key != 'string') {\n return Promise.reject('Remove: Must provide key as string');\n }\n try {\n await this.mDb.remove(key);\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Remove: ${err.message}`);\n }\n }\n async clear(): Promise<void> {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n } catch (err: any) {\n return Promise.reject(`Clear: ${err.message}`);\n }\n }\n async iskey(options: capDataStorageOptions): Promise<capDataStorageResult> {\n const key: string = options.key;\n if (key == null || typeof key != 'string') {\n return Promise.reject('Iskey: Must provide key as string');\n }\n try {\n const ret: boolean = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n } catch (err: any) {\n return Promise.reject(`Iskey: ${err.message}`);\n }\n }\n async keys(): Promise<capKeysResult> {\n try {\n const ret: string[] = await this.mDb.keys();\n return Promise.resolve({ keys: ret });\n } catch (err: any) {\n return Promise.reject(`Keys: ${err.message}`);\n }\n }\n async values(): Promise<capValuesResult> {\n try {\n const ret: string[] = await this.mDb.values();\n return Promise.resolve({ values: ret });\n } catch (err: any) {\n return Promise.reject(`Values: ${err.message}`);\n }\n }\n async filtervalues(options: capFilterStorageOptions): Promise<capValuesResult> {\n const filter: string = options.filter;\n if (filter == null || typeof filter != 'string') {\n return Promise.reject('Filtervalues: Must provide filter as string');\n }\n let regFilter: RegExp;\n if (filter.startsWith('%')) {\n regFilter = new RegExp('^' + filter.substring(1), 'i');\n } else if (filter.endsWith('%')) {\n regFilter = new RegExp(filter.slice(0, -1) + '$', 'i');\n } else {\n regFilter = new RegExp(filter, 'i');\n }\n try {\n const ret: string[] = [];\n\n const results: Data[] = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && regFilter.test(result.name)) {\n if (result.value != null) {\n ret.push(result.value);\n } else {\n return Promise.reject(`Filtervalues: result.value is null`);\n }\n }\n }\n return Promise.resolve({ values: ret });\n } catch (err: any) {\n return Promise.reject(`Filtervalues: ${err.message}`);\n }\n }\n async keysvalues(): Promise<capKeysValuesResult> {\n try {\n const ret: any[] = [];\n const results: Data[] = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && result.value != null) {\n const res: any = { key: result.name, value: result.value };\n ret.push(res);\n } else {\n return Promise.reject(`Keysvalues: result.name/value are null`);\n }\n }\n return Promise.resolve({ keysvalues: ret });\n } catch (err: any) {\n return Promise.reject(`Keysvalues: ${err.message}`);\n }\n }\n async deleteStore(options: capOpenStorageOptions): Promise<void> {\n throw new Error(`Method deleteStore not implemented. ${options}`);\n }\n async isTable(options: capTableStorageOptions): Promise<capDataStorageResult> {\n const table = options.table;\n if (table == null) {\n return Promise.reject('Must provide a Table Name');\n }\n try {\n const ret = await this.mDb.isTable(table);\n return Promise.resolve({ result: ret });\n } catch (err) {\n return Promise.reject(err);\n }\n }\n async tables(): Promise<capTablesResult> {\n try {\n const ret = await this.mDb.tables();\n return Promise.resolve({ tables: ret });\n } catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteTable(options: capTableStorageOptions): Promise<void> {\n throw new Error(`Method deleteTable not implemented. ${options}`);\n }\n async importFromJson(options: capStoreImportOptions): Promise<capDataStorageChanges> {\n const keys = Object.keys(options);\n if (!keys.includes('jsonstring')) {\n return Promise.reject('Must provide a json object');\n }\n let totalChanges = 0;\n\n if (options?.jsonstring) {\n const jsonStrObj: string = options.jsonstring;\n const jsonObj = JSON.parse(jsonStrObj);\n const isValid = isJsonStore(jsonObj);\n if (!isValid) {\n return Promise.reject('Must provide a valid JsonSQLite Object');\n }\n const vJsonObj: JsonStore = jsonObj;\n const dbName = vJsonObj.database ? `${vJsonObj.database}IDB` : 'storageIDB';\n for (const table of vJsonObj.tables) {\n const tableName = table.name ? table.name : 'storage_store';\n try {\n this.mDb = new StorageDatabaseHelper(dbName, tableName);\n // Open the database\n const bRet: boolean = this.mDb.openStore(dbName, tableName);\n if (bRet) {\n // Import the JsonSQLite Object\n if (table?.values) {\n const changes = await this.mDb.importJson(table.values);\n totalChanges += changes;\n }\n } else {\n return Promise.reject(`Open store: ${dbName} : table: ${tableName} failed`);\n }\n } catch (err: any) {\n return Promise.reject(`ImportFromJson: ${err.message}`);\n }\n }\n return Promise.resolve({ changes: totalChanges });\n } else {\n return Promise.reject('Must provide a json object');\n }\n }\n async isJsonValid(options: capStoreImportOptions): Promise<capDataStorageResult> {\n const keys = Object.keys(options);\n if (!keys.includes('jsonstring')) {\n return Promise.reject('Must provide a json object');\n }\n if (options?.jsonstring) {\n const jsonStrObj: string = options.jsonstring;\n const jsonObj = JSON.parse(jsonStrObj);\n const isValid = isJsonStore(jsonObj);\n if (!isValid) {\n return Promise.reject('Stringify Json Object not Valid');\n } else {\n return Promise.resolve({ result: true });\n }\n } else {\n return Promise.reject('Must provide in options a stringify Json Object');\n }\n }\n async exportToJson(): Promise<capStoreJson> {\n try {\n const ret: JsonStore = await this.mDb.exportJson();\n return Promise.resolve({ export: ret });\n } catch (err) {\n return Promise.reject(`exportToJson: ${err}`);\n }\n }\n}\n"]}
|