@capgo/capacitor-data-storage-sqlite 6.0.2 → 6.0.4

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 (33) hide show
  1. package/android/build.gradle +1 -1
  2. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite/CapacitorDataStorageSqlite.java → capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlite.java} +7 -7
  3. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite/CapacitorDataStorageSqlitePlugin.java → capgocapacitordatastoragesqlite/CapgoCapacitorDataStorageSqlitePlugin.java} +5 -5
  4. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/RetHandler.java +1 -1
  5. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/Data.java +1 -1
  6. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/Global.java +1 -1
  7. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/ImportExportJson/JsonStore.java +1 -1
  8. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/ImportExportJson/JsonTable.java +1 -1
  9. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/ImportExportJson/JsonValue.java +1 -1
  10. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/StorageDatabaseHelper.java +4 -4
  11. package/android/src/main/java/com/jeep/plugin/capacitor/{capacitordatastoragesqlite → capgocapacitordatastoragesqlite}/cdssUtils/UtilsSQLCipher.java +1 -1
  12. package/dist/docs.json +2 -2
  13. package/dist/esm/definitions.d.ts +1 -1
  14. package/dist/esm/definitions.js.map +1 -1
  15. package/dist/esm/index.d.ts +3 -3
  16. package/dist/esm/index.js +3 -3
  17. package/dist/esm/index.js.map +1 -1
  18. package/dist/esm/web.d.ts +2 -2
  19. package/dist/esm/web.js +1 -1
  20. package/dist/esm/web.js.map +1 -1
  21. package/dist/plugin.cjs.js +5 -5
  22. package/dist/plugin.cjs.js.map +1 -1
  23. package/dist/plugin.js +6 -6
  24. package/dist/plugin.js.map +1 -1
  25. package/electron/dist/plugin.js +3 -3
  26. package/electron/dist/plugin.js.map +1 -1
  27. package/ios/Plugin/{CapacitorDataStorageSqlite.swift → CapgoCapacitorDataStorageSqlite.swift} +68 -68
  28. package/ios/Plugin/{CapacitorDataStorageSqlitePlugin.m → CapgoCapacitorDataStorageSqlitePlugin.m} +1 -1
  29. package/ios/Plugin/{CapacitorDataStorageSqlitePlugin.swift → CapgoCapacitorDataStorageSqlitePlugin.swift} +24 -24
  30. package/package.json +3 -3
  31. package/readme.md +11 -11
  32. package/CapacitorDataStorageSqlite.podspec +0 -18
  33. /package/ios/Plugin/{CapacitorDataStorageSqlitePlugin.h → CapgoCapacitorDataStorageSqlitePlugin.h} +0 -0
package/dist/plugin.js CHANGED
@@ -1,8 +1,8 @@
1
- var capacitorCapacitorDataStorageSqlite = (function (exports, core, localForage) {
1
+ var capacitorCapgoCapacitorDataStorageSqlite = (function (exports, core, localForage) {
2
2
  'use strict';
3
3
 
4
- const CapacitorDataStorageSqlite = core.registerPlugin("CapacitorDataStorageSqlite", {
5
- web: () => Promise.resolve().then(function () { return web; }).then((m) => new m.CapacitorDataStorageSqliteWeb()),
4
+ const CapgoCapacitorDataStorageSqlite = core.registerPlugin("CapgoCapacitorDataStorageSqlite", {
5
+ web: () => Promise.resolve().then(function () { return web; }).then((m) => new m.CapgoCapacitorDataStorageSqliteWeb()),
6
6
  electron: () => window.CapacitorCustomPlatform.plugins
7
7
  .CapacitorDataStorageSqlite,
8
8
  });
@@ -331,7 +331,7 @@ var capacitorCapacitorDataStorageSqlite = (function (exports, core, localForage)
331
331
  return true;
332
332
  };
333
333
 
334
- class CapacitorDataStorageSqliteWeb extends core.WebPlugin {
334
+ class CapgoCapacitorDataStorageSqliteWeb extends core.WebPlugin {
335
335
  async echo(options) {
336
336
  const ret = {};
337
337
  ret.value = options.value ? options.value : "";
@@ -624,10 +624,10 @@ var capacitorCapacitorDataStorageSqlite = (function (exports, core, localForage)
624
624
 
625
625
  var web = /*#__PURE__*/Object.freeze({
626
626
  __proto__: null,
627
- CapacitorDataStorageSqliteWeb: CapacitorDataStorageSqliteWeb
627
+ CapgoCapacitorDataStorageSqliteWeb: CapgoCapacitorDataStorageSqliteWeb
628
628
  });
629
629
 
630
- exports.CapacitorDataStorageSqlite = CapacitorDataStorageSqlite;
630
+ exports.CapgoCapacitorDataStorageSqlite = CapgoCapacitorDataStorageSqlite;
631
631
 
632
632
  return exports;
633
633
 
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web-utils/Data.js","esm/web-utils/StorageDatabaseHelper.js","esm/web-utils/json-utils.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\nconst CapacitorDataStorageSqlite = registerPlugin(\"CapacitorDataStorageSqlite\", {\n web: () => import(\"./web\").then((m) => new m.CapacitorDataStorageSqliteWeb()),\n electron: () => window.CapacitorCustomPlatform.plugins\n .CapacitorDataStorageSqlite,\n});\nexport * from \"./definitions\";\nexport { CapacitorDataStorageSqlite };\n//# sourceMappingURL=index.js.map","export class Data {\n}\n//# sourceMappingURL=Data.js.map","//import LocalForage from 'jeep-localforage';\nimport localForage from \"localforage\";\nimport { Data } from \"./Data\";\n//const DATABASE: string = \"storageIDB\";\n//const STORAGESTORE: string = \"storage_store\";\nexport class StorageDatabaseHelper {\n constructor(dbName, tableName) {\n this._db = null;\n const res = this.openStore(dbName, tableName);\n if (res) {\n this._dbName = dbName;\n this._tableName = tableName;\n }\n else {\n this._dbName = \"\";\n this._tableName = \"\";\n throw new Error(\"openStore return false\");\n }\n }\n openStore(dbName, tableName) {\n let ret = false;\n const config = this.setConfig(dbName, tableName);\n this._db = localForage.createInstance(config);\n if (this._db != null) {\n this._dbName = dbName;\n ret = true;\n }\n return ret;\n }\n setConfig(dbName, tableName) {\n const config = {\n name: dbName,\n storeName: tableName,\n driver: [localForage.INDEXEDDB, localForage.WEBSQL],\n version: 1,\n };\n return config;\n }\n async setTable(tableName) {\n const res = this.openStore(this._dbName, tableName);\n if (res) {\n return Promise.resolve();\n }\n else {\n return Promise.reject(new Error(\"openStore return false\"));\n }\n }\n async isTable(table) {\n if (this._db == null) {\n return Promise.reject(`isTable: this.db is null`);\n }\n try {\n let ret = false;\n const tables = await this.tables();\n if (tables.includes(table))\n ret = true;\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async tables() {\n return new Promise((resolve, reject) => {\n // Let us open our database\n const DBOpenRequest = window.indexedDB.open(this._dbName);\n // these two event handlers act on the database being opened successfully, or not\n DBOpenRequest.onerror = () => {\n return reject(`Error loading database ${this._dbName}`);\n };\n DBOpenRequest.onsuccess = () => {\n let result = [];\n const db = DBOpenRequest.result;\n const retList = db.objectStoreNames;\n const values = Object.values(retList);\n for (const val of values) {\n if (val.substring(0, 12) != \"local-forage\") {\n result = [...result, val];\n }\n }\n return resolve(result);\n };\n });\n }\n async set(data) {\n try {\n await this._db.setItem(data.name, data.value);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async get(name) {\n try {\n const value = await this._db.getItem(name);\n const data = new Data();\n data.name = name;\n data.value = value;\n return Promise.resolve(data);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async remove(name) {\n return this._db\n .removeItem(name)\n .then(() => {\n return Promise.resolve();\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async clear() {\n return this._db\n .clear()\n .then(() => {\n return Promise.resolve();\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async keys() {\n return this._db\n .keys()\n .then((keys) => {\n return Promise.resolve(keys);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async values() {\n const values = [];\n return this._db\n .iterate((value) => {\n values.push(value);\n })\n .then(() => {\n return Promise.resolve(values);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async keysvalues() {\n const keysvalues = [];\n return this._db\n .iterate((value, key) => {\n const data = new Data();\n data.name = key;\n data.value = value;\n keysvalues.push(data);\n })\n .then(() => {\n return Promise.resolve(keysvalues);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async iskey(name) {\n return this.get(name)\n .then((data) => {\n if (data.value != null) {\n return Promise.resolve(true);\n }\n else {\n return Promise.resolve(false);\n }\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async importJson(values) {\n let changes = 0;\n for (const val of values) {\n try {\n const data = new Data();\n data.name = val.key;\n data.value = val.value;\n await this.set(data);\n changes += 1;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n return Promise.resolve(changes);\n }\n async exportJson() {\n const retJson = {};\n const prevTableName = this._tableName;\n try {\n retJson.database = this._dbName.slice(0, -3);\n retJson.encrypted = false;\n retJson.tables = [];\n // get the table list\n const tables = await this.tables();\n for (const table of tables) {\n this._tableName = table;\n const retTable = {};\n retTable.name = table;\n retTable.values = [];\n const res = this.openStore(this._dbName, this._tableName);\n if (res) {\n const dataTable = await this.keysvalues();\n for (const tdata of dataTable) {\n const retData = {};\n if (tdata.name != null) {\n retData.key = tdata.name;\n retData.value = tdata.value;\n retTable.values = [...retTable.values, retData];\n }\n else {\n return Promise.reject(\"Data.name is undefined\");\n }\n }\n retJson.tables = [...retJson.tables, retTable];\n }\n else {\n const msg = `Could not open ${this._dbName} ${this._tableName} `;\n this._tableName = prevTableName;\n return Promise.reject(msg);\n }\n }\n this._tableName = prevTableName;\n const res = this.openStore(this._dbName, this._tableName);\n if (res) {\n return Promise.resolve(retJson);\n }\n else {\n const msg = `Could not open ${this._dbName} ${this._tableName} `;\n return Promise.reject(msg);\n }\n }\n catch (err) {\n this._tableName = prevTableName;\n return Promise.reject(err);\n }\n }\n}\n//# sourceMappingURL=StorageDatabaseHelper.js.map","/**\n * IsJsonSQLite\n * @param obj\n */\nexport const isJsonStore = (obj) => {\n const keyFirstLevel = [\"database\", \"encrypted\", \"tables\"];\n if (obj == null ||\n (Object.keys(obj).length === 0 && obj.constructor === Object))\n return false;\n for (const key of Object.keys(obj)) {\n if (keyFirstLevel.indexOf(key) === -1)\n return false;\n if (key === \"database\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"encrypted\" && typeof obj[key] != \"boolean\")\n return false;\n if (key === \"tables\" && typeof obj[key] != \"object\")\n return false;\n if (key === \"tables\") {\n for (const oKey of obj[key]) {\n const retTable = isTable(oKey);\n if (!retTable)\n return false;\n }\n }\n }\n return true;\n};\n/**\n * IsTable\n * @param obj\n */\nexport const isTable = (obj) => {\n const keyTableLevel = [\"name\", \"values\"];\n if (obj == null ||\n (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)\n return false;\n if (key === \"name\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"values\" && typeof obj[key] != \"object\")\n return false;\n if (key === \"values\") {\n for (const oKey of obj[key]) {\n const retValue = isValue(oKey);\n if (!retValue)\n return false;\n }\n }\n }\n return true;\n};\n/**\n * IsValue\n * @param obj\n */\nexport const isValue = (obj) => {\n const keyTableLevel = [\"key\", \"value\"];\n if (obj == null ||\n (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)\n return false;\n if (key === \"key\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"value\" && typeof obj[key] != \"string\")\n return false;\n }\n return true;\n};\n//# sourceMappingURL=json-utils.js.map","import { WebPlugin } from \"@capacitor/core\";\nimport { Data } from \"./web-utils/Data\";\nimport { StorageDatabaseHelper } from \"./web-utils/StorageDatabaseHelper\";\nimport { isJsonStore } from \"./web-utils/json-utils\";\nexport class CapacitorDataStorageSqliteWeb extends WebPlugin {\n async echo(options) {\n const ret = {};\n ret.value = options.value ? options.value : \"\";\n return ret;\n }\n async openStore(options) {\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 }\n catch (err) {\n return Promise.reject(`OpenStore: ${err.message}`);\n }\n }\n async closeStore(options) {\n throw new Error(`Method closeStore not implemented. ${options}`);\n }\n async isStoreOpen(options) {\n throw new Error(`Method isStoreOpen not implemented. ${options}`);\n }\n async isStoreExists(options) {\n throw new Error(`Method isStoreExists not implemented. ${options}`);\n }\n async setTable(options) {\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 }\n catch (err) {\n return Promise.reject(`SetTable: ${err.message}`);\n }\n }\n else {\n return Promise.reject(\"SetTable: Must open a store first\");\n }\n }\n async set(options) {\n const key = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Set: Must provide key as string\");\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 = new Data();\n data.name = key;\n data.value = value;\n try {\n await this.mDb.set(data);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(`Set: ${err.message}`);\n }\n }\n async get(options) {\n const key = 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 = await this.mDb.get(key);\n if ((data === null || data === void 0 ? void 0 : data.value) != null) {\n return Promise.resolve({ value: data.value });\n }\n else {\n return Promise.resolve({ value: \"\" });\n }\n }\n catch (err) {\n return Promise.reject(`Get: ${err.message}`);\n }\n }\n async remove(options) {\n const key = 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 }\n catch (err) {\n return Promise.reject(`Remove: ${err.message}`);\n }\n }\n async clear() {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(`Clear: ${err.message}`);\n }\n }\n async iskey(options) {\n const key = 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 = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(`Iskey: ${err.message}`);\n }\n }\n async keys() {\n try {\n const ret = await this.mDb.keys();\n return Promise.resolve({ keys: ret });\n }\n catch (err) {\n return Promise.reject(`Keys: ${err.message}`);\n }\n }\n async values() {\n try {\n const ret = await this.mDb.values();\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(`Values: ${err.message}`);\n }\n }\n async filtervalues(options) {\n const filter = options.filter;\n if (filter == null || typeof filter != \"string\") {\n return Promise.reject(\"Filtervalues: Must provide filter as string\");\n }\n let regFilter;\n if (filter.startsWith(\"%\")) {\n regFilter = new RegExp(\"^\" + filter.substring(1), \"i\");\n }\n else if (filter.endsWith(\"%\")) {\n regFilter = new RegExp(filter.slice(0, -1) + \"$\", \"i\");\n }\n else {\n regFilter = new RegExp(filter, \"i\");\n }\n try {\n const ret = [];\n const results = 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 }\n else {\n return Promise.reject(`Filtervalues: result.value is null`);\n }\n }\n }\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(`Filtervalues: ${err.message}`);\n }\n }\n async keysvalues() {\n try {\n const ret = [];\n const results = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && result.value != null) {\n const res = { key: result.name, value: result.value };\n ret.push(res);\n }\n else {\n return Promise.reject(`Keysvalues: result.name/value are null`);\n }\n }\n return Promise.resolve({ keysvalues: ret });\n }\n catch (err) {\n return Promise.reject(`Keysvalues: ${err.message}`);\n }\n }\n async deleteStore(options) {\n throw new Error(`Method deleteStore not implemented. ${options}`);\n }\n async isTable(options) {\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 }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async tables() {\n try {\n const ret = await this.mDb.tables();\n return Promise.resolve({ tables: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteTable(options) {\n throw new Error(`Method deleteTable not implemented. ${options}`);\n }\n async importFromJson(options) {\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 if (options === null || options === void 0 ? void 0 : options.jsonstring) {\n const jsonStrObj = 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 = 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 = this.mDb.openStore(dbName, tableName);\n if (bRet) {\n // Import the JsonSQLite Object\n if (table === null || table === void 0 ? void 0 : table.values) {\n const changes = await this.mDb.importJson(table.values);\n totalChanges += changes;\n }\n }\n else {\n return Promise.reject(`Open store: ${dbName} : table: ${tableName} failed`);\n }\n }\n catch (err) {\n return Promise.reject(`ImportFromJson: ${err.message}`);\n }\n }\n return Promise.resolve({ changes: totalChanges });\n }\n else {\n return Promise.reject(\"Must provide a json object\");\n }\n }\n async isJsonValid(options) {\n const keys = Object.keys(options);\n if (!keys.includes(\"jsonstring\")) {\n return Promise.reject(\"Must provide a json object\");\n }\n if (options === null || options === void 0 ? void 0 : options.jsonstring) {\n const jsonStrObj = 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 }\n else {\n return Promise.resolve({ result: true });\n }\n }\n else {\n return Promise.reject(\"Must provide in options a stringify Json Object\");\n }\n }\n async exportToJson() {\n try {\n const ret = await this.mDb.exportJson();\n return Promise.resolve({ export: ret });\n }\n catch (err) {\n return Promise.reject(`exportToJson: ${err}`);\n }\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web-utils/Data.js","esm/web-utils/StorageDatabaseHelper.js","esm/web-utils/json-utils.js","esm/web.js"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\nconst CapgoCapacitorDataStorageSqlite = registerPlugin(\"CapgoCapacitorDataStorageSqlite\", {\n web: () => import(\"./web\").then((m) => new m.CapgoCapacitorDataStorageSqliteWeb()),\n electron: () => window.CapacitorCustomPlatform.plugins\n .CapacitorDataStorageSqlite,\n});\nexport * from \"./definitions\";\nexport { CapgoCapacitorDataStorageSqlite };\n//# sourceMappingURL=index.js.map","export class Data {\n}\n//# sourceMappingURL=Data.js.map","//import LocalForage from 'jeep-localforage';\nimport localForage from \"localforage\";\nimport { Data } from \"./Data\";\n//const DATABASE: string = \"storageIDB\";\n//const STORAGESTORE: string = \"storage_store\";\nexport class StorageDatabaseHelper {\n constructor(dbName, tableName) {\n this._db = null;\n const res = this.openStore(dbName, tableName);\n if (res) {\n this._dbName = dbName;\n this._tableName = tableName;\n }\n else {\n this._dbName = \"\";\n this._tableName = \"\";\n throw new Error(\"openStore return false\");\n }\n }\n openStore(dbName, tableName) {\n let ret = false;\n const config = this.setConfig(dbName, tableName);\n this._db = localForage.createInstance(config);\n if (this._db != null) {\n this._dbName = dbName;\n ret = true;\n }\n return ret;\n }\n setConfig(dbName, tableName) {\n const config = {\n name: dbName,\n storeName: tableName,\n driver: [localForage.INDEXEDDB, localForage.WEBSQL],\n version: 1,\n };\n return config;\n }\n async setTable(tableName) {\n const res = this.openStore(this._dbName, tableName);\n if (res) {\n return Promise.resolve();\n }\n else {\n return Promise.reject(new Error(\"openStore return false\"));\n }\n }\n async isTable(table) {\n if (this._db == null) {\n return Promise.reject(`isTable: this.db is null`);\n }\n try {\n let ret = false;\n const tables = await this.tables();\n if (tables.includes(table))\n ret = true;\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async tables() {\n return new Promise((resolve, reject) => {\n // Let us open our database\n const DBOpenRequest = window.indexedDB.open(this._dbName);\n // these two event handlers act on the database being opened successfully, or not\n DBOpenRequest.onerror = () => {\n return reject(`Error loading database ${this._dbName}`);\n };\n DBOpenRequest.onsuccess = () => {\n let result = [];\n const db = DBOpenRequest.result;\n const retList = db.objectStoreNames;\n const values = Object.values(retList);\n for (const val of values) {\n if (val.substring(0, 12) != \"local-forage\") {\n result = [...result, val];\n }\n }\n return resolve(result);\n };\n });\n }\n async set(data) {\n try {\n await this._db.setItem(data.name, data.value);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async get(name) {\n try {\n const value = await this._db.getItem(name);\n const data = new Data();\n data.name = name;\n data.value = value;\n return Promise.resolve(data);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async remove(name) {\n return this._db\n .removeItem(name)\n .then(() => {\n return Promise.resolve();\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async clear() {\n return this._db\n .clear()\n .then(() => {\n return Promise.resolve();\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async keys() {\n return this._db\n .keys()\n .then((keys) => {\n return Promise.resolve(keys);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async values() {\n const values = [];\n return this._db\n .iterate((value) => {\n values.push(value);\n })\n .then(() => {\n return Promise.resolve(values);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async keysvalues() {\n const keysvalues = [];\n return this._db\n .iterate((value, key) => {\n const data = new Data();\n data.name = key;\n data.value = value;\n keysvalues.push(data);\n })\n .then(() => {\n return Promise.resolve(keysvalues);\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async iskey(name) {\n return this.get(name)\n .then((data) => {\n if (data.value != null) {\n return Promise.resolve(true);\n }\n else {\n return Promise.resolve(false);\n }\n })\n .catch((error) => {\n return Promise.reject(error);\n });\n }\n async importJson(values) {\n let changes = 0;\n for (const val of values) {\n try {\n const data = new Data();\n data.name = val.key;\n data.value = val.value;\n await this.set(data);\n changes += 1;\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n return Promise.resolve(changes);\n }\n async exportJson() {\n const retJson = {};\n const prevTableName = this._tableName;\n try {\n retJson.database = this._dbName.slice(0, -3);\n retJson.encrypted = false;\n retJson.tables = [];\n // get the table list\n const tables = await this.tables();\n for (const table of tables) {\n this._tableName = table;\n const retTable = {};\n retTable.name = table;\n retTable.values = [];\n const res = this.openStore(this._dbName, this._tableName);\n if (res) {\n const dataTable = await this.keysvalues();\n for (const tdata of dataTable) {\n const retData = {};\n if (tdata.name != null) {\n retData.key = tdata.name;\n retData.value = tdata.value;\n retTable.values = [...retTable.values, retData];\n }\n else {\n return Promise.reject(\"Data.name is undefined\");\n }\n }\n retJson.tables = [...retJson.tables, retTable];\n }\n else {\n const msg = `Could not open ${this._dbName} ${this._tableName} `;\n this._tableName = prevTableName;\n return Promise.reject(msg);\n }\n }\n this._tableName = prevTableName;\n const res = this.openStore(this._dbName, this._tableName);\n if (res) {\n return Promise.resolve(retJson);\n }\n else {\n const msg = `Could not open ${this._dbName} ${this._tableName} `;\n return Promise.reject(msg);\n }\n }\n catch (err) {\n this._tableName = prevTableName;\n return Promise.reject(err);\n }\n }\n}\n//# sourceMappingURL=StorageDatabaseHelper.js.map","/**\n * IsJsonSQLite\n * @param obj\n */\nexport const isJsonStore = (obj) => {\n const keyFirstLevel = [\"database\", \"encrypted\", \"tables\"];\n if (obj == null ||\n (Object.keys(obj).length === 0 && obj.constructor === Object))\n return false;\n for (const key of Object.keys(obj)) {\n if (keyFirstLevel.indexOf(key) === -1)\n return false;\n if (key === \"database\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"encrypted\" && typeof obj[key] != \"boolean\")\n return false;\n if (key === \"tables\" && typeof obj[key] != \"object\")\n return false;\n if (key === \"tables\") {\n for (const oKey of obj[key]) {\n const retTable = isTable(oKey);\n if (!retTable)\n return false;\n }\n }\n }\n return true;\n};\n/**\n * IsTable\n * @param obj\n */\nexport const isTable = (obj) => {\n const keyTableLevel = [\"name\", \"values\"];\n if (obj == null ||\n (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)\n return false;\n if (key === \"name\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"values\" && typeof obj[key] != \"object\")\n return false;\n if (key === \"values\") {\n for (const oKey of obj[key]) {\n const retValue = isValue(oKey);\n if (!retValue)\n return false;\n }\n }\n }\n return true;\n};\n/**\n * IsValue\n * @param obj\n */\nexport const isValue = (obj) => {\n const keyTableLevel = [\"key\", \"value\"];\n if (obj == null ||\n (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)\n return false;\n if (key === \"key\" && typeof obj[key] != \"string\")\n return false;\n if (key === \"value\" && typeof obj[key] != \"string\")\n return false;\n }\n return true;\n};\n//# sourceMappingURL=json-utils.js.map","import { WebPlugin } from \"@capacitor/core\";\nimport { Data } from \"./web-utils/Data\";\nimport { StorageDatabaseHelper } from \"./web-utils/StorageDatabaseHelper\";\nimport { isJsonStore } from \"./web-utils/json-utils\";\nexport class CapgoCapacitorDataStorageSqliteWeb extends WebPlugin {\n async echo(options) {\n const ret = {};\n ret.value = options.value ? options.value : \"\";\n return ret;\n }\n async openStore(options) {\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 }\n catch (err) {\n return Promise.reject(`OpenStore: ${err.message}`);\n }\n }\n async closeStore(options) {\n throw new Error(`Method closeStore not implemented. ${options}`);\n }\n async isStoreOpen(options) {\n throw new Error(`Method isStoreOpen not implemented. ${options}`);\n }\n async isStoreExists(options) {\n throw new Error(`Method isStoreExists not implemented. ${options}`);\n }\n async setTable(options) {\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 }\n catch (err) {\n return Promise.reject(`SetTable: ${err.message}`);\n }\n }\n else {\n return Promise.reject(\"SetTable: Must open a store first\");\n }\n }\n async set(options) {\n const key = options.key;\n if (key == null || typeof key != \"string\") {\n return Promise.reject(\"Set: Must provide key as string\");\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 = new Data();\n data.name = key;\n data.value = value;\n try {\n await this.mDb.set(data);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(`Set: ${err.message}`);\n }\n }\n async get(options) {\n const key = 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 = await this.mDb.get(key);\n if ((data === null || data === void 0 ? void 0 : data.value) != null) {\n return Promise.resolve({ value: data.value });\n }\n else {\n return Promise.resolve({ value: \"\" });\n }\n }\n catch (err) {\n return Promise.reject(`Get: ${err.message}`);\n }\n }\n async remove(options) {\n const key = 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 }\n catch (err) {\n return Promise.reject(`Remove: ${err.message}`);\n }\n }\n async clear() {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(`Clear: ${err.message}`);\n }\n }\n async iskey(options) {\n const key = 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 = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(`Iskey: ${err.message}`);\n }\n }\n async keys() {\n try {\n const ret = await this.mDb.keys();\n return Promise.resolve({ keys: ret });\n }\n catch (err) {\n return Promise.reject(`Keys: ${err.message}`);\n }\n }\n async values() {\n try {\n const ret = await this.mDb.values();\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(`Values: ${err.message}`);\n }\n }\n async filtervalues(options) {\n const filter = options.filter;\n if (filter == null || typeof filter != \"string\") {\n return Promise.reject(\"Filtervalues: Must provide filter as string\");\n }\n let regFilter;\n if (filter.startsWith(\"%\")) {\n regFilter = new RegExp(\"^\" + filter.substring(1), \"i\");\n }\n else if (filter.endsWith(\"%\")) {\n regFilter = new RegExp(filter.slice(0, -1) + \"$\", \"i\");\n }\n else {\n regFilter = new RegExp(filter, \"i\");\n }\n try {\n const ret = [];\n const results = 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 }\n else {\n return Promise.reject(`Filtervalues: result.value is null`);\n }\n }\n }\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(`Filtervalues: ${err.message}`);\n }\n }\n async keysvalues() {\n try {\n const ret = [];\n const results = await this.mDb.keysvalues();\n for (const result of results) {\n if (result.name != null && result.value != null) {\n const res = { key: result.name, value: result.value };\n ret.push(res);\n }\n else {\n return Promise.reject(`Keysvalues: result.name/value are null`);\n }\n }\n return Promise.resolve({ keysvalues: ret });\n }\n catch (err) {\n return Promise.reject(`Keysvalues: ${err.message}`);\n }\n }\n async deleteStore(options) {\n throw new Error(`Method deleteStore not implemented. ${options}`);\n }\n async isTable(options) {\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 }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async tables() {\n try {\n const ret = await this.mDb.tables();\n return Promise.resolve({ tables: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteTable(options) {\n throw new Error(`Method deleteTable not implemented. ${options}`);\n }\n async importFromJson(options) {\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 if (options === null || options === void 0 ? void 0 : options.jsonstring) {\n const jsonStrObj = 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 = 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 = this.mDb.openStore(dbName, tableName);\n if (bRet) {\n // Import the JsonSQLite Object\n if (table === null || table === void 0 ? void 0 : table.values) {\n const changes = await this.mDb.importJson(table.values);\n totalChanges += changes;\n }\n }\n else {\n return Promise.reject(`Open store: ${dbName} : table: ${tableName} failed`);\n }\n }\n catch (err) {\n return Promise.reject(`ImportFromJson: ${err.message}`);\n }\n }\n return Promise.resolve({ changes: totalChanges });\n }\n else {\n return Promise.reject(\"Must provide a json object\");\n }\n }\n async isJsonValid(options) {\n const keys = Object.keys(options);\n if (!keys.includes(\"jsonstring\")) {\n return Promise.reject(\"Must provide a json object\");\n }\n if (options === null || options === void 0 ? void 0 : options.jsonstring) {\n const jsonStrObj = 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 }\n else {\n return Promise.resolve({ result: true });\n }\n }\n else {\n return Promise.reject(\"Must provide in options a stringify Json Object\");\n }\n }\n async exportToJson() {\n try {\n const ret = await this.mDb.exportJson();\n return Promise.resolve({ export: ret });\n }\n catch (err) {\n return Promise.reject(`exportToJson: ${err}`);\n }\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
@@ -723,11 +723,11 @@ var jsonUtils = {};
723
723
  } (jsonUtils));
724
724
 
725
725
  Object.defineProperty(src, "__esModule", { value: true });
726
- exports.CapacitorDataStorageSqlite = src.CapacitorDataStorageSqlite = void 0;
726
+ exports.CapgoCapacitorDataStorageSqlite = src.CapgoCapacitorDataStorageSqlite = void 0;
727
727
  const Data_1 = Data$1;
728
728
  const StorageDatabaseHelper_1 = StorageDatabaseHelper$1;
729
729
  const json_utils_1 = jsonUtils;
730
- class CapacitorDataStorageSqlite {
730
+ class CapgoCapacitorDataStorageSqlite {
731
731
  constructor() {
732
732
  this.mDb = new StorageDatabaseHelper_1.StorageDatabaseHelper();
733
733
  }
@@ -1038,7 +1038,7 @@ class CapacitorDataStorageSqlite {
1038
1038
  }
1039
1039
  }
1040
1040
  }
1041
- exports.CapacitorDataStorageSqlite = src.CapacitorDataStorageSqlite = CapacitorDataStorageSqlite;
1041
+ exports.CapgoCapacitorDataStorageSqlite = src.CapgoCapacitorDataStorageSqlite = CapgoCapacitorDataStorageSqlite;
1042
1042
 
1043
1043
  exports.default = src;
1044
1044
  //# sourceMappingURL=plugin.js.map