@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.
Files changed (52) hide show
  1. package/CapgoCapacitorDataStorageSqlite.podspec +2 -2
  2. package/Package.swift +30 -0
  3. package/README.md +724 -0
  4. package/android/build.gradle +11 -11
  5. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlite.java +290 -320
  6. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlitePlugin.java +373 -388
  7. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/RetHandler.java +97 -97
  8. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/Data.java +3 -3
  9. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/Global.java +2 -2
  10. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonStore.java +108 -110
  11. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonTable.java +78 -80
  12. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/ImportExportJson/JsonValue.java +62 -64
  13. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/StorageDatabaseHelper.java +557 -624
  14. package/android/src/main/java/com/jeep/plugin/capacitor/capgocapacitordatastoragesqlite/cdssUtils/UtilsSQLCipher.java +103 -144
  15. package/dist/docs.json +0 -64
  16. package/dist/esm/definitions.d.ts +0 -19
  17. package/dist/esm/definitions.js.map +1 -1
  18. package/dist/esm/index.d.ts +2 -2
  19. package/dist/esm/index.js +5 -6
  20. package/dist/esm/index.js.map +1 -1
  21. package/dist/esm/web-utils/StorageDatabaseHelper.d.ts +2 -2
  22. package/dist/esm/web-utils/StorageDatabaseHelper.js +8 -8
  23. package/dist/esm/web-utils/StorageDatabaseHelper.js.map +1 -1
  24. package/dist/esm/web-utils/json-utils.js +15 -18
  25. package/dist/esm/web-utils/json-utils.js.map +1 -1
  26. package/dist/esm/web.d.ts +2 -3
  27. package/dist/esm/web.js +37 -44
  28. package/dist/esm/web.js.map +1 -1
  29. package/dist/plugin.cjs.js +56 -67
  30. package/dist/plugin.cjs.js.map +1 -1
  31. package/dist/plugin.js +56 -67
  32. package/dist/plugin.js.map +1 -1
  33. package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/CapgoCapacitorDataStorageSqlitePlugin.swift +27 -10
  34. package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/StorageDatabaseHelper.swift +1 -1
  35. package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsFile.swift +1 -1
  36. package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsSQLCipher.swift +3 -3
  37. package/ios/Tests/CapgoCapacitorDataStorageSqlitePluginTests/CapacitorDataStorageSqlitePluginTests.swift +13 -0
  38. package/package.json +34 -38
  39. package/electron/dist/plugin.js +0 -1044
  40. package/electron/dist/plugin.js.map +0 -1
  41. package/ios/Plugin/CapgoCapacitorDataStorageSqlitePlugin.h +0 -10
  42. package/ios/Plugin/CapgoCapacitorDataStorageSqlitePlugin.m +0 -29
  43. package/ios/Plugin/Info.plist +0 -24
  44. package/readme.md +0 -210
  45. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/CapgoCapacitorDataStorageSqlite.swift +0 -0
  46. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Data.swift +0 -0
  47. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Global.swift +0 -0
  48. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/ImportExportJson/JsonStore.swift +0 -0
  49. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/ReturnHandler.swift +0 -0
  50. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/Blob.swift +0 -0
  51. /package/ios/{Plugin → Sources/CapgoCapacitorDataStorageSqlitePlugin}/Utils/UtilsBinding.swift +0 -0
  52. /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 = ["database", "encrypted", "tables"];
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 === "database" && typeof obj[key] != "string")
12
+ if (key === 'database' && typeof obj[key] != 'string')
14
13
  return false;
15
- if (key === "encrypted" && typeof obj[key] != "boolean")
14
+ if (key === 'encrypted' && typeof obj[key] != 'boolean')
16
15
  return false;
17
- if (key === "tables" && typeof obj[key] != "object")
16
+ if (key === 'tables' && typeof obj[key] != 'object')
18
17
  return false;
19
- if (key === "tables") {
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 = ["name", "values"];
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 === "name" && typeof obj[key] != "string")
40
+ if (key === 'name' && typeof obj[key] != 'string')
43
41
  return false;
44
- if (key === "values" && typeof obj[key] != "object")
42
+ if (key === 'values' && typeof obj[key] != 'object')
45
43
  return false;
46
- if (key === "values") {
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 = ["key", "value"];
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 === "key" && typeof obj[key] != "string")
66
+ if (key === 'key' && typeof obj[key] != 'string')
70
67
  return false;
71
- if (key === "value" && typeof obj[key] != "string")
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":"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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 (\n obj == null ||\n (Object.keys(obj).length === 0 && obj.constructor === Object)\n )\n 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 (\n obj == null ||\n (Object.keys(obj).length === 0 && obj.constructor === Object)\n ) {\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 (\n obj == null ||\n (Object.keys(obj).length === 0 && obj.constructor === Object)\n ) {\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"]}
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 "@capacitor/core";
2
- import type { CapgoCapacitorDataStorageSqlitePlugin, capEchoOptions, capEchoResult, capDataStorageOptions, capDataStorageResult, capFilterStorageOptions, capKeysResult, capKeysValuesResult, capTablesResult, capOpenStorageOptions, capTableStorageOptions, capValueResult, capValuesResult, capStorageOptions, capStoreJson, capDataStorageChanges, capStoreImportOptions } from "./definitions";
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 "@capacitor/core";
2
- import { Data } from "./web-utils/Data";
3
- import { StorageDatabaseHelper } from "./web-utils/StorageDatabaseHelper";
4
- import { isJsonStore } from "./web-utils/json-utils";
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` : "storageIDB";
13
- const tableName = options.table ? options.table : "storage_store";
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("SetTable: Must provide a table name");
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("SetTable: Must open a store first");
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 != "string") {
52
- return Promise.reject("Set: Must provide key as string");
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 != "string") {
56
- return Promise.reject("Set: Must provide value as string");
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 != "string") {
72
- return Promise.reject("Get: Must provide key as string");
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 != "string") {
90
- return Promise.reject("Remove: Must provide key as string");
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 != "string") {
112
- return Promise.reject("Iskey: Must provide key as string");
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 != "string") {
143
- return Promise.reject("Filtervalues: Must provide filter as string");
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("^" + filter.substring(1), "i");
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) + "$", "i");
144
+ else if (filter.endsWith('%')) {
145
+ regFilter = new RegExp(filter.slice(0, -1) + '$', 'i');
151
146
  }
152
147
  else {
153
- regFilter = new RegExp(filter, "i");
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("Must provide a Table Name");
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("jsonstring")) {
224
- return Promise.reject("Must provide a json object");
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("Must provide a valid JsonSQLite Object");
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 : "storage_store";
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("Must provide a json object");
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("jsonstring")) {
268
- return Promise.reject("Must provide a json object");
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("Stringify Json Object not Valid");
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("Must provide in options a stringify Json Object");
275
+ return Promise.reject('Must provide in options a stringify Json Object');
283
276
  }
284
277
  }
285
278
  async exportToJson() {
@@ -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"]}