@capgo/capacitor-data-storage-sqlite 6.0.23 → 6.0.25

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.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.cjs.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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"}
1
+ {"version":3,"file":"plugin.cjs.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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"}
@@ -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 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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"}
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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sources":["../build/electron/src/electron-utils/Data.js","../build/electron/src/electron-utils/UtilsSQLite.js","../build/electron/src/electron-utils/StorageDatabaseHelper.js","../build/electron/src/electron-utils/json-utils.js","../build/electron/src/index.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Data = void 0;\nclass Data {\n}\nexports.Data = Data;\n//# sourceMappingURL=Data.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UtilsSQLite = void 0;\nclass UtilsSQLite {\n constructor() {\n this.pathDB = \"./DataStorage\";\n this.Path = null;\n this.NodeFs = null;\n this.SQLite3 = null;\n this.Path = require(\"path\");\n this.NodeFs = require(\"fs\");\n this.SQLite3 = require(\"sqlite3\");\n }\n async connection(dbName, readOnly) {\n const flags = readOnly\n ? this.SQLite3.OPEN_READONLY\n : this.SQLite3.OPEN_CREATE | this.SQLite3.OPEN_READWRITE;\n // get the path for the database\n try {\n const dbPath = await this.getDBPath(dbName);\n const dbOpen = new this.SQLite3.Database(dbPath, flags);\n return Promise.resolve(dbOpen);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async getWritableDatabase(dbName) {\n const db = await this.connection(dbName, false /*,secret*/);\n return db;\n }\n async getReadableDatabase(dbName) {\n const db = await this.connection(dbName, true /*,secret*/);\n return db;\n }\n isFileExists(dbName) {\n const dbFolder = this.pathDB;\n const path = this.Path.join(dbFolder, dbName);\n let ret = false;\n try {\n if (this.NodeFs.existsSync(path)) {\n ret = true;\n }\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async getDBPath(dbName) {\n let retPath = null;\n const dbFolder = this.pathDB;\n retPath = this.Path.join(dbFolder, dbName);\n try {\n if (!this.NodeFs.existsSync(dbFolder)) {\n await this.mkdirSyncRecursive(dbFolder);\n }\n return Promise.resolve(retPath);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async mkdirSyncRecursive(directory) {\n const path = directory.replace(/\\/$/, \"\").split(\"/\");\n for (let i = 1; i <= path.length; i++) {\n const segment = path.slice(0, i).join(\"/\");\n segment.length > 0 && !this.NodeFs.existsSync(segment)\n ? this.NodeFs.mkdirSync(segment)\n : null;\n }\n return;\n }\n}\nexports.UtilsSQLite = UtilsSQLite;\n//# sourceMappingURL=UtilsSQLite.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StorageDatabaseHelper = void 0;\nconst Data_1 = require(\"./Data\");\nconst UtilsSQLite_1 = require(\"./UtilsSQLite\");\nconst COL_ID = \"id\";\nconst COL_NAME = \"name\";\nconst COL_VALUE = \"value\";\nclass StorageDatabaseHelper {\n constructor() {\n this.Path = null;\n this.NodeFs = null;\n this.isOpen = false;\n this.Path = require(\"path\");\n this.NodeFs = require(\"fs\");\n this._utils = new UtilsSQLite_1.UtilsSQLite();\n }\n async openStore(dbName, tableName) {\n try {\n this.db = await this._utils.connection(dbName, false);\n if (this.db !== null) {\n await this._createTable(tableName);\n this.dbName = dbName;\n this.tableName = tableName;\n this.isOpen = true;\n return Promise.resolve();\n }\n else {\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.reject(`connection to store ${dbName}`);\n }\n }\n catch (err) {\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.reject(err);\n }\n }\n async closeStore(dbName) {\n if (dbName === this.dbName && this.isOpen && this.db != null) {\n try {\n await this.db.close();\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n return Promise.reject(`Store ${dbName} not opened`);\n }\n }\n async isStoreExists(dbName) {\n let ret = false;\n try {\n ret = await this._utils.isFileExists(dbName);\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async _createTable(tableName) {\n const CREATE_STORAGE_TABLE = \"CREATE TABLE IF NOT EXISTS \" +\n tableName +\n \"(\" +\n COL_ID +\n \" INTEGER PRIMARY KEY AUTOINCREMENT,\" + // Define a primary key\n COL_NAME +\n \" TEXT NOT NULL UNIQUE,\" +\n COL_VALUE +\n \" TEXT\" +\n \")\";\n try {\n if (this.db != null) {\n return this.db.run(CREATE_STORAGE_TABLE, async (err) => {\n if (err) {\n return Promise.reject(`Error: in createTable ${err.message}`);\n }\n else {\n try {\n await this._createIndex(tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n });\n }\n else {\n return Promise.reject(`connection to store ${this.dbName}`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async _createIndex(tableName) {\n const idx = `index_${tableName}_on_${COL_NAME}`;\n const CREATE_INDEX_NAME = \"CREATE INDEX IF NOT EXISTS \" +\n idx +\n \" ON \" +\n tableName +\n \" (\" +\n COL_NAME +\n \")\";\n try {\n if (this.db != null) {\n return this.db.run(CREATE_INDEX_NAME, async (err) => {\n if (err) {\n return Promise.reject(`Error: in createIndex ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.reject(`connection to store ${this.dbName}`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async setTable(tableName) {\n try {\n await this._createTable(tableName);\n this.tableName = tableName;\n return Promise.resolve();\n }\n catch (err) {\n this.tableName = \"\";\n return Promise.reject(err);\n }\n }\n // Insert a data into the database\n async set(data) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in set`);\n }\n try {\n // Check if data.name does not exist otherwise update it\n const res = await this.get(data.name);\n if (res.id != null) {\n // exists so update it\n await this.update(data);\n return Promise.resolve();\n }\n else {\n // does not exist add it\n const DATA_INSERT = `INSERT INTO \"${this.tableName}\" \n (\"${COL_NAME}\", \"${COL_VALUE}\") \n VALUES (?, ?)`;\n return this.db.run(DATA_INSERT, [data.name, data.value], (err) => {\n if (err) {\n return Promise.reject(`Data INSERT: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // get a Data\n async get(name) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in get`);\n }\n const DATA_SELECT_QUERY = `SELECT * FROM ${this.tableName} WHERE ${COL_NAME} = '${name}'`;\n this.db.all(DATA_SELECT_QUERY, (err, rows) => {\n if (err) {\n const data = new Data_1.Data();\n data.id = null;\n resolve(data);\n }\n else {\n let data = new Data_1.Data();\n if (rows.length >= 1) {\n data = rows[0];\n }\n else {\n data.id = null;\n }\n resolve(data);\n }\n });\n });\n }\n // update a Data\n async update(data) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in update`);\n }\n const DATA_UPDATE = `UPDATE \"${this.tableName}\" \n SET \"${COL_VALUE}\" = ? WHERE \"${COL_NAME}\" = ?`;\n this.db.run(DATA_UPDATE, [data.value, data.name], (err) => {\n if (err) {\n reject(`Data UPDATE: ${err.message}`);\n }\n else {\n resolve();\n }\n });\n });\n }\n // isKey exists\n async iskey(name) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in clear`);\n }\n try {\n const res = await this.get(name);\n if (res.id != null) {\n return Promise.resolve(true);\n }\n else {\n return Promise.resolve(false);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // remove a key\n async remove(name) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in clear`);\n }\n try {\n const res = await this.get(name);\n if (res.id != null) {\n const DATA_DELETE = `DELETE FROM \"${this.tableName}\" \n WHERE \"${COL_NAME}\" = ?`;\n return this.db.run(DATA_DELETE, name, (err) => {\n if (err) {\n return Promise.reject(`Data DELETE: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.reject(`REMOVE key does not exist`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // remove all keys\n async clear() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n const DATA_DELETE = `DELETE FROM \"${this.tableName}\"`;\n this.db.exec(DATA_DELETE, (err) => {\n if (err) {\n reject(`Data CLEAR: ${err.message}`);\n }\n else {\n // set back the key primary index to 0\n const DATA_UPDATE = `UPDATE SQLITE_SEQUENCE SET SEQ = ? `;\n this.db.run(DATA_UPDATE, 0, (err) => {\n if (err) {\n reject(`Data UPDATE SQLITE_SEQUENCE: ${err.message}`);\n }\n else {\n resolve();\n }\n });\n }\n });\n });\n }\n async keys() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_KEYS = `SELECT \"${COL_NAME}\" FROM `;\n SELECT_KEYS += `\"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_KEYS, (err, rows) => {\n if (err) {\n reject(`Keys: ${err.message}`);\n }\n else {\n let arKeys = [];\n for (let i = 0; i < rows.length; i++) {\n arKeys = [...arKeys, rows[i].name];\n if (i === rows.length - 1) {\n resolve(arKeys);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async values() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_VALUES = `SELECT \"${COL_VALUE}\" FROM `;\n SELECT_VALUES += `\"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_VALUES, (err, rows) => {\n if (err) {\n reject(`Values: ${err.message}`);\n }\n else {\n let arValues = [];\n for (let i = 0; i < rows.length; i++) {\n arValues = [...arValues, rows[i].value];\n if (i === rows.length - 1) {\n resolve(arValues);\n }\n }\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async filtervalues(filter) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n if (!filter.startsWith(\"%\") && !filter.endsWith(\"%\")) {\n filter = \"%\" + filter + \"%\";\n }\n let SELECT_VALUES = `SELECT \"${COL_VALUE}\" FROM `;\n SELECT_VALUES += `\"${this.tableName}\" WHERE name `;\n SELECT_VALUES += `LIKE \"${filter}\" ORDER BY ${COL_NAME}`;\n this.db.all(SELECT_VALUES, (err, rows) => {\n if (err) {\n reject(`FilterValues: ${err.message}`);\n }\n else {\n let arValues = [];\n for (let i = 0; i < rows.length; i++) {\n arValues = [...arValues, rows[i].value];\n if (i === rows.length - 1) {\n resolve(arValues);\n }\n }\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async keysvalues() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_KEYSVALUES = `SELECT \"${COL_NAME}\" , \"${COL_VALUE}\"`;\n SELECT_KEYSVALUES += ` FROM \"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_KEYSVALUES, (err, rows) => {\n if (err) {\n reject(`KeysValues: ${err.message}`);\n }\n else {\n resolve(rows);\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async deleteStore(dbName) {\n const dbPath = this.Path.join(this._utils.pathDB, dbName);\n try {\n this.NodeFs.unlinkSync(dbPath);\n //file removed\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async isTable(table) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`isTable: this.db is null`);\n }\n try {\n let ret = false;\n const SELECT_TABLES = \"SELECT name FROM sqlite_master \" + \"WHERE TYPE='table';\";\n this.db.all(SELECT_TABLES, (err, rows) => {\n if (err) {\n reject(`isTable: ${err.message}`);\n }\n else {\n let arTables = [];\n for (let i = 0; i < rows.length; i++) {\n arTables = [...arTables, rows[i].name];\n if (i === rows.length - 1) {\n if (arTables.includes(table))\n ret = true;\n resolve(ret);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async tables() {\n return new Promise((resolve, reject) => {\n try {\n const SELECT_TABLES = \"SELECT name FROM sqlite_master \" +\n \"WHERE TYPE='table' ORDER BY name;\";\n this.db.all(SELECT_TABLES, (err, rows) => {\n if (err) {\n reject(`tables: ${err.message}`);\n }\n else {\n let arTables = [];\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].name != \"sqlite_sequence\") {\n arTables = [...arTables, rows[i].name];\n }\n if (i === rows.length - 1) {\n resolve(arTables);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async deleteTable(table) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in deleteTable`);\n }\n try {\n const ret = await this.isTable(table);\n if (ret) {\n const DROP_STMT = `DROP TABLE IF EXISTS ${table};`;\n return this.db.exec(DROP_STMT, (err) => {\n if (err) {\n return Promise.reject(`deleteTable: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.resolve();\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async importJson(values) {\n let changes = 0;\n for (const val of values) {\n try {\n const data = new Data_1.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 try {\n const prevTableName = this.tableName;\n retJson.database = this.dbName.slice(0, -9);\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 dataTable = await this.keysvalues();\n for (const tdata of dataTable) {\n const retData = {};\n retData.key = tdata.name;\n retData.value = tdata.value;\n retTable.values = [...retTable.values, retData];\n }\n retJson.tables = [...retJson.tables, retTable];\n }\n this.tableName = prevTableName;\n return Promise.resolve(retJson);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexports.StorageDatabaseHelper = StorageDatabaseHelper;\n//# sourceMappingURL=StorageDatabaseHelper.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValue = exports.isTable = exports.isJsonStore = void 0;\n/**\n * IsJsonSQLite\n * @param obj\n */\nconst 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 = (0, exports.isTable)(oKey);\n if (!retTable)\n return false;\n }\n }\n }\n return true;\n};\nexports.isJsonStore = isJsonStore;\n/**\n * IsTable\n * @param obj\n */\nconst 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 = (0, exports.isValue)(oKey);\n if (!retValue)\n return false;\n }\n }\n }\n return true;\n};\nexports.isTable = isTable;\n/**\n * IsValue\n * @param obj\n */\nconst 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};\nexports.isValue = isValue;\n//# sourceMappingURL=json-utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CapgoCapacitorDataStorageSqlite = void 0;\nconst Data_1 = require(\"./electron-utils/Data\");\nconst StorageDatabaseHelper_1 = require(\"./electron-utils/StorageDatabaseHelper\");\nconst json_utils_1 = require(\"./electron-utils/json-utils\");\nclass CapgoCapacitorDataStorageSqlite {\n constructor() {\n this.mDb = new StorageDatabaseHelper_1.StorageDatabaseHelper();\n }\n async echo(options) {\n const ret = {};\n ret.value = options.value ? options.value : \"\";\n return Promise.resolve(ret);\n }\n async openStore(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n const tableName = options.table ? options.table : \"storage_store\";\n try {\n await this.mDb.openStore(dbName, tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async closeStore(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n if (this.mDb.dbName === dbName && this.mDb.isOpen) {\n try {\n await this.mDb.closeStore(dbName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n return Promise.resolve();\n }\n }\n async isStoreOpen(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n let ret = false;\n if (this.mDb.dbName === dbName && this.mDb.isOpen) {\n ret = true;\n }\n return Promise.resolve({ result: ret });\n }\n async isStoreExists(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n let ret = false;\n try {\n ret = await this.mDb.isStoreExists(dbName);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async setTable(options) {\n const tableName = options.table;\n if (tableName == null) {\n return Promise.reject(\"Must provide a table name\");\n }\n try {\n await this.mDb.setTable(tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(\"Must open a store first\");\n }\n }\n async set(options) {\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n const value = options.value;\n if (value == null) {\n return Promise.reject(\"Must provide value\");\n }\n const data = new Data_1.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(err);\n }\n }\n async get(options) {\n let ret;\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n try {\n const data = await this.mDb.get(key);\n ret = (data === null || data === void 0 ? void 0 : data.id) != null ? data.value : \"\";\n return Promise.resolve({ value: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async remove(options) {\n try {\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n await this.mDb.remove(key);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async clear() {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async iskey(options) {\n let ret;\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n try {\n ret = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(err);\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(err);\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(err);\n }\n }\n async filtervalues(options) {\n const filter = options.filter;\n if (filter == null || typeof filter != \"string\") {\n return Promise.reject(\"Must Must provide filter as string\");\n }\n try {\n const ret = await this.mDb.filtervalues(filter);\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async keysvalues() {\n const ret = [];\n try {\n const results = await this.mDb.keysvalues();\n for (const result of results) {\n const res = { key: result.name, value: result.value };\n ret.push(res);\n }\n return Promise.resolve({ keysvalues: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteStore(options) {\n let dbName = options.database;\n if (dbName == null) {\n return Promise.reject(\"Must provide a Database Name\");\n }\n dbName = `${options.database}SQLite.db`;\n try {\n await this.mDb.deleteStore(dbName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\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 const table = options.table;\n if (table == null) {\n return Promise.reject(\"Must provide a Table Name\");\n }\n try {\n await this.mDb.deleteTable(table);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\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 = (0, json_utils_1.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}SQLite.db`\n : \"storageSQLite.db\";\n for (const table of vJsonObj.tables) {\n const tableName = table.name ? table.name : \"storage_store\";\n try {\n // Open the database\n await this.mDb.openStore(dbName, tableName);\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 catch (err) {\n return Promise.reject(`ImportFromJson: ${err}`);\n }\n finally {\n await this.mDb.closeStore(dbName);\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 = (0, json_utils_1.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.message}`);\n }\n }\n}\nexports.CapgoCapacitorDataStorageSqlite = CapgoCapacitorDataStorageSqlite;\n//# sourceMappingURL=index.js.map"],"names":["Data_1","UtilsSQLite_1","StorageDatabaseHelper_1","require$$0","require$$1","require$$2","require$$3","CapgoCapacitorDataStorageSqlite_1"],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sources":["../build/electron/src/electron-utils/Data.js","../build/electron/src/electron-utils/UtilsSQLite.js","../build/electron/src/electron-utils/StorageDatabaseHelper.js","../build/electron/src/electron-utils/json-utils.js","../build/electron/src/index.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Data = void 0;\nclass Data {\n}\nexports.Data = Data;\n//# sourceMappingURL=Data.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UtilsSQLite = void 0;\nclass UtilsSQLite {\n constructor() {\n this.pathDB = \"./DataStorage\";\n this.Path = null;\n this.NodeFs = null;\n this.SQLite3 = null;\n this.Path = require(\"path\");\n this.NodeFs = require(\"fs\");\n this.SQLite3 = require(\"sqlite3\");\n }\n async connection(dbName, readOnly) {\n const flags = readOnly\n ? this.SQLite3.OPEN_READONLY\n : this.SQLite3.OPEN_CREATE | this.SQLite3.OPEN_READWRITE;\n // get the path for the database\n try {\n const dbPath = await this.getDBPath(dbName);\n const dbOpen = new this.SQLite3.Database(dbPath, flags);\n return Promise.resolve(dbOpen);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async getWritableDatabase(dbName) {\n const db = await this.connection(dbName, false /*,secret*/);\n return db;\n }\n async getReadableDatabase(dbName) {\n const db = await this.connection(dbName, true /*,secret*/);\n return db;\n }\n isFileExists(dbName) {\n const dbFolder = this.pathDB;\n const path = this.Path.join(dbFolder, dbName);\n let ret = false;\n try {\n if (this.NodeFs.existsSync(path)) {\n ret = true;\n }\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async getDBPath(dbName) {\n let retPath = null;\n const dbFolder = this.pathDB;\n retPath = this.Path.join(dbFolder, dbName);\n try {\n if (!this.NodeFs.existsSync(dbFolder)) {\n await this.mkdirSyncRecursive(dbFolder);\n }\n return Promise.resolve(retPath);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async mkdirSyncRecursive(directory) {\n const path = directory.replace(/\\/$/, \"\").split(\"/\");\n for (let i = 1; i <= path.length; i++) {\n const segment = path.slice(0, i).join(\"/\");\n segment.length > 0 && !this.NodeFs.existsSync(segment)\n ? this.NodeFs.mkdirSync(segment)\n : null;\n }\n return;\n }\n}\nexports.UtilsSQLite = UtilsSQLite;\n//# sourceMappingURL=UtilsSQLite.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StorageDatabaseHelper = void 0;\nconst Data_1 = require(\"./Data\");\nconst UtilsSQLite_1 = require(\"./UtilsSQLite\");\nconst COL_ID = \"id\";\nconst COL_NAME = \"name\";\nconst COL_VALUE = \"value\";\nclass StorageDatabaseHelper {\n constructor() {\n this.Path = null;\n this.NodeFs = null;\n this.isOpen = false;\n this.Path = require(\"path\");\n this.NodeFs = require(\"fs\");\n this._utils = new UtilsSQLite_1.UtilsSQLite();\n }\n async openStore(dbName, tableName) {\n try {\n this.db = await this._utils.connection(dbName, false);\n if (this.db !== null) {\n await this._createTable(tableName);\n this.dbName = dbName;\n this.tableName = tableName;\n this.isOpen = true;\n return Promise.resolve();\n }\n else {\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.reject(`connection to store ${dbName}`);\n }\n }\n catch (err) {\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.reject(err);\n }\n }\n async closeStore(dbName) {\n if (dbName === this.dbName && this.isOpen && this.db != null) {\n try {\n await this.db.close();\n this.dbName = \"\";\n this.tableName = \"\";\n this.isOpen = false;\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n return Promise.reject(`Store ${dbName} not opened`);\n }\n }\n async isStoreExists(dbName) {\n let ret = false;\n try {\n ret = await this._utils.isFileExists(dbName);\n return Promise.resolve(ret);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async _createTable(tableName) {\n const CREATE_STORAGE_TABLE = \"CREATE TABLE IF NOT EXISTS \" +\n tableName +\n \"(\" +\n COL_ID +\n \" INTEGER PRIMARY KEY AUTOINCREMENT,\" + // Define a primary key\n COL_NAME +\n \" TEXT NOT NULL UNIQUE,\" +\n COL_VALUE +\n \" TEXT\" +\n \")\";\n try {\n if (this.db != null) {\n return this.db.run(CREATE_STORAGE_TABLE, async (err) => {\n if (err) {\n return Promise.reject(`Error: in createTable ${err.message}`);\n }\n else {\n try {\n await this._createIndex(tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n });\n }\n else {\n return Promise.reject(`connection to store ${this.dbName}`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async _createIndex(tableName) {\n const idx = `index_${tableName}_on_${COL_NAME}`;\n const CREATE_INDEX_NAME = \"CREATE INDEX IF NOT EXISTS \" +\n idx +\n \" ON \" +\n tableName +\n \" (\" +\n COL_NAME +\n \")\";\n try {\n if (this.db != null) {\n return this.db.run(CREATE_INDEX_NAME, async (err) => {\n if (err) {\n return Promise.reject(`Error: in createIndex ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.reject(`connection to store ${this.dbName}`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async setTable(tableName) {\n try {\n await this._createTable(tableName);\n this.tableName = tableName;\n return Promise.resolve();\n }\n catch (err) {\n this.tableName = \"\";\n return Promise.reject(err);\n }\n }\n // Insert a data into the database\n async set(data) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in set`);\n }\n try {\n // Check if data.name does not exist otherwise update it\n const res = await this.get(data.name);\n if (res.id != null) {\n // exists so update it\n await this.update(data);\n return Promise.resolve();\n }\n else {\n // does not exist add it\n const DATA_INSERT = `INSERT INTO \"${this.tableName}\" \n (\"${COL_NAME}\", \"${COL_VALUE}\") \n VALUES (?, ?)`;\n return this.db.run(DATA_INSERT, [data.name, data.value], (err) => {\n if (err) {\n return Promise.reject(`Data INSERT: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // get a Data\n async get(name) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in get`);\n }\n const DATA_SELECT_QUERY = `SELECT * FROM ${this.tableName} WHERE ${COL_NAME} = '${name}'`;\n this.db.all(DATA_SELECT_QUERY, (err, rows) => {\n if (err) {\n const data = new Data_1.Data();\n data.id = null;\n resolve(data);\n }\n else {\n let data = new Data_1.Data();\n if (rows.length >= 1) {\n data = rows[0];\n }\n else {\n data.id = null;\n }\n resolve(data);\n }\n });\n });\n }\n // update a Data\n async update(data) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in update`);\n }\n const DATA_UPDATE = `UPDATE \"${this.tableName}\" \n SET \"${COL_VALUE}\" = ? WHERE \"${COL_NAME}\" = ?`;\n this.db.run(DATA_UPDATE, [data.value, data.name], (err) => {\n if (err) {\n reject(`Data UPDATE: ${err.message}`);\n }\n else {\n resolve();\n }\n });\n });\n }\n // isKey exists\n async iskey(name) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in clear`);\n }\n try {\n const res = await this.get(name);\n if (res.id != null) {\n return Promise.resolve(true);\n }\n else {\n return Promise.resolve(false);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // remove a key\n async remove(name) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in clear`);\n }\n try {\n const res = await this.get(name);\n if (res.id != null) {\n const DATA_DELETE = `DELETE FROM \"${this.tableName}\" \n WHERE \"${COL_NAME}\" = ?`;\n return this.db.run(DATA_DELETE, name, (err) => {\n if (err) {\n return Promise.reject(`Data DELETE: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.reject(`REMOVE key does not exist`);\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n // remove all keys\n async clear() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n const DATA_DELETE = `DELETE FROM \"${this.tableName}\"`;\n this.db.exec(DATA_DELETE, (err) => {\n if (err) {\n reject(`Data CLEAR: ${err.message}`);\n }\n else {\n // set back the key primary index to 0\n const DATA_UPDATE = `UPDATE SQLITE_SEQUENCE SET SEQ = ? `;\n this.db.run(DATA_UPDATE, 0, (err) => {\n if (err) {\n reject(`Data UPDATE SQLITE_SEQUENCE: ${err.message}`);\n }\n else {\n resolve();\n }\n });\n }\n });\n });\n }\n async keys() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_KEYS = `SELECT \"${COL_NAME}\" FROM `;\n SELECT_KEYS += `\"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_KEYS, (err, rows) => {\n if (err) {\n reject(`Keys: ${err.message}`);\n }\n else {\n let arKeys = [];\n for (let i = 0; i < rows.length; i++) {\n arKeys = [...arKeys, rows[i].name];\n if (i === rows.length - 1) {\n resolve(arKeys);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async values() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_VALUES = `SELECT \"${COL_VALUE}\" FROM `;\n SELECT_VALUES += `\"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_VALUES, (err, rows) => {\n if (err) {\n reject(`Values: ${err.message}`);\n }\n else {\n let arValues = [];\n for (let i = 0; i < rows.length; i++) {\n arValues = [...arValues, rows[i].value];\n if (i === rows.length - 1) {\n resolve(arValues);\n }\n }\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async filtervalues(filter) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n if (!filter.startsWith(\"%\") && !filter.endsWith(\"%\")) {\n filter = \"%\" + filter + \"%\";\n }\n let SELECT_VALUES = `SELECT \"${COL_VALUE}\" FROM `;\n SELECT_VALUES += `\"${this.tableName}\" WHERE name `;\n SELECT_VALUES += `LIKE \"${filter}\" ORDER BY ${COL_NAME}`;\n this.db.all(SELECT_VALUES, (err, rows) => {\n if (err) {\n reject(`FilterValues: ${err.message}`);\n }\n else {\n let arValues = [];\n for (let i = 0; i < rows.length; i++) {\n arValues = [...arValues, rows[i].value];\n if (i === rows.length - 1) {\n resolve(arValues);\n }\n }\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async keysvalues() {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`this.db is null in clear`);\n }\n try {\n let SELECT_KEYSVALUES = `SELECT \"${COL_NAME}\" , \"${COL_VALUE}\"`;\n SELECT_KEYSVALUES += ` FROM \"${this.tableName}\" ORDER BY ${COL_NAME};`;\n this.db.all(SELECT_KEYSVALUES, (err, rows) => {\n if (err) {\n reject(`KeysValues: ${err.message}`);\n }\n else {\n resolve(rows);\n }\n });\n }\n catch (err) {\n reject(err);\n }\n });\n }\n async deleteStore(dbName) {\n const dbPath = this.Path.join(this._utils.pathDB, dbName);\n try {\n this.NodeFs.unlinkSync(dbPath);\n //file removed\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async isTable(table) {\n return new Promise((resolve, reject) => {\n if (this.db == null) {\n reject(`isTable: this.db is null`);\n }\n try {\n let ret = false;\n const SELECT_TABLES = \"SELECT name FROM sqlite_master \" + \"WHERE TYPE='table';\";\n this.db.all(SELECT_TABLES, (err, rows) => {\n if (err) {\n reject(`isTable: ${err.message}`);\n }\n else {\n let arTables = [];\n for (let i = 0; i < rows.length; i++) {\n arTables = [...arTables, rows[i].name];\n if (i === rows.length - 1) {\n if (arTables.includes(table))\n ret = true;\n resolve(ret);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async tables() {\n return new Promise((resolve, reject) => {\n try {\n const SELECT_TABLES = \"SELECT name FROM sqlite_master \" +\n \"WHERE TYPE='table' ORDER BY name;\";\n this.db.all(SELECT_TABLES, (err, rows) => {\n if (err) {\n reject(`tables: ${err.message}`);\n }\n else {\n let arTables = [];\n for (let i = 0; i < rows.length; i++) {\n if (rows[i].name != \"sqlite_sequence\") {\n arTables = [...arTables, rows[i].name];\n }\n if (i === rows.length - 1) {\n resolve(arTables);\n }\n }\n }\n });\n }\n catch (err) {\n return Promise.reject(err);\n }\n });\n }\n async deleteTable(table) {\n if (this.db == null) {\n return Promise.reject(`this.db is null in deleteTable`);\n }\n try {\n const ret = await this.isTable(table);\n if (ret) {\n const DROP_STMT = `DROP TABLE IF EXISTS ${table};`;\n return this.db.exec(DROP_STMT, (err) => {\n if (err) {\n return Promise.reject(`deleteTable: ${err.message}`);\n }\n else {\n return Promise.resolve();\n }\n });\n }\n else {\n return Promise.resolve();\n }\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async importJson(values) {\n let changes = 0;\n for (const val of values) {\n try {\n const data = new Data_1.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 try {\n const prevTableName = this.tableName;\n retJson.database = this.dbName.slice(0, -9);\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 dataTable = await this.keysvalues();\n for (const tdata of dataTable) {\n const retData = {};\n retData.key = tdata.name;\n retData.value = tdata.value;\n retTable.values = [...retTable.values, retData];\n }\n retJson.tables = [...retJson.tables, retTable];\n }\n this.tableName = prevTableName;\n return Promise.resolve(retJson);\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n}\nexports.StorageDatabaseHelper = StorageDatabaseHelper;\n//# sourceMappingURL=StorageDatabaseHelper.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValue = exports.isTable = exports.isJsonStore = void 0;\n/**\n * IsJsonSQLite\n * @param obj\n */\nconst 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 = (0, exports.isTable)(oKey);\n if (!retTable)\n return false;\n }\n }\n }\n return true;\n};\nexports.isJsonStore = isJsonStore;\n/**\n * IsTable\n * @param obj\n */\nconst 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 = (0, exports.isValue)(oKey);\n if (!retValue)\n return false;\n }\n }\n }\n return true;\n};\nexports.isTable = isTable;\n/**\n * IsValue\n * @param obj\n */\nconst 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};\nexports.isValue = isValue;\n//# sourceMappingURL=json-utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CapgoCapacitorDataStorageSqlite = void 0;\nconst Data_1 = require(\"./electron-utils/Data\");\nconst StorageDatabaseHelper_1 = require(\"./electron-utils/StorageDatabaseHelper\");\nconst json_utils_1 = require(\"./electron-utils/json-utils\");\nclass CapgoCapacitorDataStorageSqlite {\n constructor() {\n this.mDb = new StorageDatabaseHelper_1.StorageDatabaseHelper();\n }\n async echo(options) {\n const ret = {};\n ret.value = options.value ? options.value : \"\";\n return Promise.resolve(ret);\n }\n async openStore(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n const tableName = options.table ? options.table : \"storage_store\";\n try {\n await this.mDb.openStore(dbName, tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async closeStore(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n if (this.mDb.dbName === dbName && this.mDb.isOpen) {\n try {\n await this.mDb.closeStore(dbName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n else {\n return Promise.resolve();\n }\n }\n async isStoreOpen(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n let ret = false;\n if (this.mDb.dbName === dbName && this.mDb.isOpen) {\n ret = true;\n }\n return Promise.resolve({ result: ret });\n }\n async isStoreExists(options) {\n const dbName = options.database\n ? `${options.database}SQLite.db`\n : \"storageSQLite.db\";\n let ret = false;\n try {\n ret = await this.mDb.isStoreExists(dbName);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async setTable(options) {\n const tableName = options.table;\n if (tableName == null) {\n return Promise.reject(\"Must provide a table name\");\n }\n try {\n await this.mDb.setTable(tableName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(\"Must open a store first\");\n }\n }\n async set(options) {\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n const value = options.value;\n if (value == null) {\n return Promise.reject(\"Must provide value\");\n }\n const data = new Data_1.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(err);\n }\n }\n async get(options) {\n let ret;\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n try {\n const data = await this.mDb.get(key);\n ret = (data === null || data === void 0 ? void 0 : data.id) != null ? data.value : \"\";\n return Promise.resolve({ value: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async remove(options) {\n try {\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n await this.mDb.remove(key);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async clear() {\n try {\n await this.mDb.clear();\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async iskey(options) {\n let ret;\n const key = options.key;\n if (key == null) {\n return Promise.reject(\"Must provide key\");\n }\n try {\n ret = await this.mDb.iskey(key);\n return Promise.resolve({ result: ret });\n }\n catch (err) {\n return Promise.reject(err);\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(err);\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(err);\n }\n }\n async filtervalues(options) {\n const filter = options.filter;\n if (filter == null || typeof filter != \"string\") {\n return Promise.reject(\"Must Must provide filter as string\");\n }\n try {\n const ret = await this.mDb.filtervalues(filter);\n return Promise.resolve({ values: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async keysvalues() {\n const ret = [];\n try {\n const results = await this.mDb.keysvalues();\n for (const result of results) {\n const res = { key: result.name, value: result.value };\n ret.push(res);\n }\n return Promise.resolve({ keysvalues: ret });\n }\n catch (err) {\n return Promise.reject(err);\n }\n }\n async deleteStore(options) {\n let dbName = options.database;\n if (dbName == null) {\n return Promise.reject(\"Must provide a Database Name\");\n }\n dbName = `${options.database}SQLite.db`;\n try {\n await this.mDb.deleteStore(dbName);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\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 const table = options.table;\n if (table == null) {\n return Promise.reject(\"Must provide a Table Name\");\n }\n try {\n await this.mDb.deleteTable(table);\n return Promise.resolve();\n }\n catch (err) {\n return Promise.reject(err);\n }\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 = (0, json_utils_1.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}SQLite.db`\n : \"storageSQLite.db\";\n for (const table of vJsonObj.tables) {\n const tableName = table.name ? table.name : \"storage_store\";\n try {\n // Open the database\n await this.mDb.openStore(dbName, tableName);\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 catch (err) {\n return Promise.reject(`ImportFromJson: ${err}`);\n }\n finally {\n await this.mDb.closeStore(dbName);\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 = (0, json_utils_1.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.message}`);\n }\n }\n}\nexports.CapgoCapacitorDataStorageSqlite = CapgoCapacitorDataStorageSqlite;\n//# sourceMappingURL=index.js.map"],"names":["Data_1","UtilsSQLite_1","StorageDatabaseHelper_1","require$$0","require$$1","require$$2","require$$3","CapgoCapacitorDataStorageSqlite_1"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@capgo/capacitor-data-storage-sqlite",
3
- "version": "6.0.23",
3
+ "version": "6.0.25",
4
4
  "description": "SQLite Storage of key/value strings pair",
5
5
  "main": "dist/plugin.cjs.js",
6
6
  "module": "dist/esm/index.js",