
capacitor-data-storage-sqlite
CAPACITOR 3
Capacitor Data Storage SQlite Plugin is a custom Native Capacitor plugin providing a key-value permanent store for simple data of type string only to SQLite on IOS, Android and Electron platforms and to IndexDB for the Web platform.
To store `JSON object`, you should manage conversion through `JSON.stringify` before storing and `JSON.parse` when retrieving the data To store `number`, use the same procedure, with `number.toString()` and `Number()`. For both IOS and Android platforms, the store can be encrypted. The plugin uses SQLCipher for encryption with a `passphrase`. ## Databases Location ### Android in **data/data/YOUR_PACKAGE/databases** ### IOS in **the Document folder of YOUR_APPLICATION** ### Electron in **YourApplication/Electron/Databases** ## Methods IndexcapOpenStorageOptions | : capOpenStorageOptions |
**Since:** 0.0.1
--------------------
### closeStore(...)
```typescript
closeStore(options: capStorageOptions) => PromisecapStorageOptions | : capStorageOptions |
**Since:** 3.0.0
--------------------
### isStoreOpen(...)
```typescript
isStoreOpen(options: capStorageOptions) => PromisecapStorageOptions | : capStorageOptions |
**Returns:** Promise<capDataStorageResult>
**Since:** 3.0.0
--------------------
### isStoreExists(...)
```typescript
isStoreExists(options: capStorageOptions) => PromisecapStorageOptions | : capStorageOptions |
**Returns:** Promise<capDataStorageResult>
**Since:** 3.0.0
--------------------
### deleteStore(...)
```typescript
deleteStore(options: capOpenStorageOptions) => PromisecapOpenStorageOptions | : capOpenStorageOptions |
**Since:** 0.0.1
--------------------
### setTable(...)
```typescript
setTable(options: capTableStorageOptions) => PromisecapTableStorageOptions | : capTableStorageOptions |
**Since:** 0.0.1
--------------------
### set(...)
```typescript
set(options: capDataStorageOptions) => PromisecapDataStorageOptions | : capDataStorageOptions |
**Since:** 0.0.1
--------------------
### get(...)
```typescript
get(options: capDataStorageOptions) => PromisecapDataStorageOptions | : capDataStorageOptions |
**Returns:** Promise<capValueResult>
**Since:** 0.0.1
--------------------
### remove(...)
```typescript
remove(options: capDataStorageOptions) => PromisecapDataStorageOptions | : capDataStorageOptions |
**Since:** 0.0.1
--------------------
### clear()
```typescript
clear() => PromisecapDataStorageOptions | : capDataStorageOptions |
**Returns:** Promise<capDataStorageResult>
**Since:** 0.0.1
--------------------
### keys()
```typescript
keys() => PromisePromise<capKeysResult>
**Since:** 0.0.1
--------------------
### values()
```typescript
values() => PromisePromise<capValuesResult>
**Since:** 0.0.1
--------------------
### filtervalues(...)
```typescript
filtervalues(options: capFilterStorageOptions) => PromisecapFilterStorageOptions | : capFilterStorageOptions |
**Returns:** Promise<capValuesResult>
**Since:** 2.4.2
--------------------
### keysvalues()
```typescript
keysvalues() => PromisePromise<capKeysValuesResult>
**Since:** 0.0.1
--------------------
### isTable(...)
```typescript
isTable(options: capTableStorageOptions) => PromisecapTableStorageOptions | : capTableStorageOptions |
**Returns:** Promise<capDataStorageResult>
**Since:** 3.0.0
--------------------
### tables()
```typescript
tables() => PromisePromise<capTablesResult>
**Since:** 3.0.0
--------------------
### deleteTable(...)
```typescript
deleteTable(options: capTableStorageOptions) => PromisecapTableStorageOptions | : capTableStorageOptions |
**Since:** 3.0.0
--------------------
### importFromJson(...)
```typescript
importFromJson(options: capStoreImportOptions) => PromisecapStoreImportOptions |
**Returns:** Promise<capDataStorageChanges>
**Since:** 3.2.0
--------------------
### isJsonValid(...)
```typescript
isJsonValid(options: capStoreImportOptions) => PromisecapStoreImportOptions |
**Returns:** Promise<capDataStorageResult>
**Since:** 3.2.0
--------------------
### exportToJson()
```typescript
exportToJson() => PromisePromise<capStoreJson>
**Since:** 3.2.0
--------------------
### Interfaces
#### capEchoResult
| Prop | Type | Description |
| ----------- | ------------------- | --------------- |
| **`value`** | string | String returned |
#### capEchoOptions
| Prop | Type | Description |
| ----------- | ------------------- | ------------------- |
| **`value`** | string | String to be echoed |
#### capOpenStorageOptions
| Prop | Type | Description |
| --------------- | -------------------- | --------------------------------------------------------------------------- |
| **`database`** | string | The storage database name |
| **`table`** | string | The storage table name |
| **`encrypted`** | boolean | Set to true for database encryption |
| **`mode`** | string | * Set the mode for database encryption ["encryption", "secret","newsecret"] |
#### capStorageOptions
| Prop | Type | Description |
| -------------- | ------------------- | ---------------- |
| **`database`** | string | The storage name |
#### capDataStorageResult
| Prop | Type | Description |
| ------------- | -------------------- | --------------------------------------------- |
| **`result`** | boolean | result set to true when successful else false |
| **`message`** | string | a returned message |
#### capTableStorageOptions
| Prop | Type | Description |
| ----------- | ------------------- | ---------------------- |
| **`table`** | string | The storage table name |
#### capDataStorageOptions
| Prop | Type | Description |
| ----------- | ------------------- | ---------------------------- |
| **`key`** | string | The data name |
| **`value`** | string | The data value when required |
#### capValueResult
| Prop | Type | Description |
| ----------- | ------------------- | ----------------------------------- |
| **`value`** | string | the data value for a given data key |
#### capKeysResult
| Prop | Type | Description |
| ---------- | --------------------- | ----------------------------- |
| **`keys`** | string[] | the data key list as an Array |
#### capValuesResult
| Prop | Type | Description |
| ------------ | --------------------- | -------------------------------- |
| **`values`** | string[] | the data values list as an Array |
#### capFilterStorageOptions
| Prop | Type | Description |
| ------------ | ------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| **`filter`** | string | The filter data for filtering keys ['%filter', 'filter', 'filter%'] for [starts with filter, contains filter, ends with filter] |
#### capKeysValuesResult
| Prop | Type | Description |
| ---------------- | ------------------ | ------------------------------------------------------------------ |
| **`keysvalues`** | any[] | the data keys/values list as an Array of {key:string,value:string} |
#### capTablesResult
| Prop | Type | Description |
| ------------ | --------------------- | --------------------------- |
| **`tables`** | string[] | the tables list as an Array |
#### capDataStorageChanges
| Prop | Type | Description |
| ------------- | ------------------- | ---------------------------------------------------- |
| **`changes`** | number | the number of changes from an importFromJson command |
#### capStoreImportOptions
| Prop | Type | Description |
| ---------------- | ------------------- | ----------------------------- |
| **`jsonstring`** | string | Set the JSON object to import |
#### capStoreJson
| Prop | Type | Description |
| ------------ | ----------------------------------------------- | --------------------- |
| **`export`** | JsonStore | an export JSON object |
#### JsonStore
| Prop | Type | Description |
| --------------- | ------------------------ | ------------------------------------------------------------ |
| **`database`** | string | The database name |
| **`encrypted`** | boolean | Set to true (database encryption) / false iOS & Android only |
| **`tables`** | JsonTable[] | * Array of Table (JsonTable) |
#### JsonTable
| Prop | Type | Description |
| ------------ | ------------------------------------ | ------------------------------------------------------------------------------ |
| **`name`** | string | The database name |
| **`values`** | capDataStorageOptions[] | * Array of Values (capDataStorageOptions) |