@mgarlik/datastore 0.1.19 → 0.1.20

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.
@@ -145,10 +145,8 @@ var SQLite = class {
145
145
  async dropTable(table) {
146
146
  try {
147
147
  systemLog("sql", "dropTable", table);
148
- console.time("[SQL] dropTable");
149
148
  const db = await this.getDb();
150
149
  const result = await db.runAsync(`DROP TABLE ${table}`);
151
- console.timeEnd("[SQL] dropTable");
152
150
  return result;
153
151
  } catch (error) {
154
152
  throw error;
@@ -179,19 +177,15 @@ var SQLite = class {
179
177
  async resetDatabase() {
180
178
  try {
181
179
  systemLog("sql", "Reset database", this.dbName);
182
- console.time("DELETING");
183
180
  systemLog("sql", "Closing");
184
181
  const db = await this.getDb();
185
182
  await db.closeAsync();
186
183
  systemLog("sql", "Deleting");
187
184
  await SQL.deleteDatabaseAsync(this.dbName);
188
- console.timeEnd("DELETING");
189
- console.time("INIT");
190
185
  this.db = null;
191
186
  systemLog("sql", "Zacinam inicializovat databazi databaze");
192
187
  await this.initDB();
193
188
  systemLog("sql", "Inicializovana databaze");
194
- console.timeEnd("INIT");
195
189
  } catch (e) {
196
190
  systemLogError("sql", "[resetDatabase]", e);
197
191
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/expo-sqlite.ts","../src/database.ts","../src/log.ts"],"sourcesContent":["export { SQLite as ExpoSQLiteStorage } from \"./database\";\n\nimport { SQLite } from \"./database\";\n\n/**\n * Vytvoří výchozí Expo SQLite adapter pro DataStoreProvider.\n *\n * @param name Volitelný název SQLite databázového souboru.\n */\nexport function createExpoSQLiteStorage(name?: string) {\n return new SQLite(name);\n}","import * as SQL from \"expo-sqlite\";\nimport { systemLog, systemLogError } from \"./log\";\nimport type { DataStoreStorage } from \"./storage\";\n\nexport class SQLite implements DataStoreStorage {\n dbName: string;\n private db: SQL.SQLiteDatabase | null = null;\n\n constructor(name?: string) {\n this.dbName = name || \"modelaz.db\";\n this.initDB();\n }\n\n private async initDB(): Promise<void> {\n if (!this.db) {\n try {\n systemLog(\"sql\", \"[initDB]\");\n this.db = await SQL.openDatabaseAsync(this.dbName);\n // await this.createTable(\"documents\", \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\");\n // await this.createTable(\"logs\", \"time TEXT PRIMARY KEY, module TEXT, message TEXT\");\n await this.createTables({\n documents: \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\",\n // logs: \"time TEXT PRIMARY KEY, module TEXT, message TEXT\",\n });\n // await this.createTable(\"providers\", \"id TEXT PRIMARY KEY, data TEXT, lastUpdate TEXT\");\n // await this.db?.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (e) {\n console.log(\"INITDB ERROR\", e);\n // systemLogError(\"sql\", \"[initDB]\", e);\n throw e;\n }\n }\n }\n\n private async getDb(): Promise<SQL.SQLiteDatabase> {\n if (!this.db) {\n await this.initDB();\n }\n\n if (!this.db) {\n throw new Error(\"Database is not initialized\");\n }\n\n return this.db;\n }\n\n private async createTable(table: string, tableSchema: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTable]\", table);\n const db = await this.getDb();\n const result = await db.runAsync(`CREATE TABLE IF NOT EXISTS '${table}' (${tableSchema})`);\n systemLog(\"sql\", \"[createTable] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n private async createTables(tables: { [key: string]: string }): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTables]\", tables);\n const query = Object.entries(tables).reduce((acc, [table, schema]) => {\n return acc + `CREATE TABLE IF NOT EXISTS '${table}' (${schema});`;\n }, \"\");\n // console.log(\"Query: \", query);\n const db = await this.getDb();\n const result = await db.runAsync(query);\n systemLog(\"sql\", \"[createTables] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n\n /**\n * Smazani starych logu\n */\n private async deleteLogs(): Promise<void> {\n systemLog(\"sql\", \"[query] delete old Logs\", this.db);\n try {\n const db = await this.getDb();\n await db.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (error) {\n throw error;\n }\n }\n\n public async read<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n // Smazani starych zaznamu z logu\n systemLog(\"sql\", \"[read]\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", \"[read] result \", result.length);\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[read]\", e);\n throw e;\n }\n }\n\n public async query<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n systemLog(\"sql\", \"[query]->\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", result);\n return result;\n } catch (error) {\n console.error(\"INSERT ERROR\", error);\n systemLogError(\"sql\", error);\n throw error;\n }\n }\n\n public async dropTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"dropTable\", table);\n console.time(\"[SQL] dropTable\");\n const db = await this.getDb();\n const result = await db.runAsync(`DROP TABLE ${table}`);\n console.timeEnd(\"[SQL] dropTable\");\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async emptyTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", `[emptyTable]`, table);\n const db = await this.getDb();\n const result = await db.runAsync(`DELETE FROM '${table}'`);\n systemLog(\"sql\", \"[emptyTable] result\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async getTables() {\n systemLog(\"sql\", \"Jdu zkusit nacist tabulky z \", JSON.stringify(this.dbName));\n try {\n const db = await this.getDb();\n const result = await db.getAllAsync('SELECT name FROM sqlite_master WHERE type=\"table\"');\n systemLog(\"sql\", \"DB Result:\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async resetDatabase() {\n try {\n systemLog(\"sql\", \"Reset database\", this.dbName);\n console.time(\"DELETING\");\n systemLog(\"sql\", \"Closing\");\n const db = await this.getDb();\n await db.closeAsync();\n systemLog(\"sql\", \"Deleting\");\n await SQL.deleteDatabaseAsync(this.dbName);\n console.timeEnd(\"DELETING\");\n console.time(\"INIT\");\n this.db = null;\n systemLog(\"sql\", \"Zacinam inicializovat databazi databaze\");\n await this.initDB();\n systemLog(\"sql\", \"Inicializovana databaze\");\n console.timeEnd(\"INIT\");\n } catch (e) {\n systemLogError(\"sql\", \"[resetDatabase]\", e);\n }\n }\n}\n","export function systemLog(..._args: unknown[]): void {\n // No-op by default in the package. Consumers can wrap these calls if needed.\n}\n\nexport function systemLogError(...args: unknown[]): void {\n if (typeof console !== \"undefined\" && typeof console.error === \"function\") {\n console.error(...args);\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/expo-sqlite.ts","../src/database.ts","../src/log.ts"],"sourcesContent":["export { SQLite as ExpoSQLiteStorage } from \"./database\";\n\nimport { SQLite } from \"./database\";\n\n/**\n * Vytvoří výchozí Expo SQLite adapter pro DataStoreProvider.\n *\n * @param name Volitelný název SQLite databázového souboru.\n */\nexport function createExpoSQLiteStorage(name?: string) {\n return new SQLite(name);\n}","import * as SQL from \"expo-sqlite\";\nimport { systemLog, systemLogError } from \"./log\";\nimport type { DataStoreStorage } from \"./storage\";\n\nexport class SQLite implements DataStoreStorage {\n dbName: string;\n private db: SQL.SQLiteDatabase | null = null;\n\n constructor(name?: string) {\n this.dbName = name || \"modelaz.db\";\n this.initDB();\n }\n\n private async initDB(): Promise<void> {\n if (!this.db) {\n try {\n systemLog(\"sql\", \"[initDB]\");\n this.db = await SQL.openDatabaseAsync(this.dbName);\n // await this.createTable(\"documents\", \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\");\n // await this.createTable(\"logs\", \"time TEXT PRIMARY KEY, module TEXT, message TEXT\");\n await this.createTables({\n documents: \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\",\n // logs: \"time TEXT PRIMARY KEY, module TEXT, message TEXT\",\n });\n // await this.createTable(\"providers\", \"id TEXT PRIMARY KEY, data TEXT, lastUpdate TEXT\");\n // await this.db?.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (e) {\n console.log(\"INITDB ERROR\", e);\n // systemLogError(\"sql\", \"[initDB]\", e);\n throw e;\n }\n }\n }\n\n private async getDb(): Promise<SQL.SQLiteDatabase> {\n if (!this.db) {\n await this.initDB();\n }\n\n if (!this.db) {\n throw new Error(\"Database is not initialized\");\n }\n\n return this.db;\n }\n\n private async createTable(table: string, tableSchema: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTable]\", table);\n const db = await this.getDb();\n const result = await db.runAsync(`CREATE TABLE IF NOT EXISTS '${table}' (${tableSchema})`);\n systemLog(\"sql\", \"[createTable] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n private async createTables(tables: { [key: string]: string }): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTables]\", tables);\n const query = Object.entries(tables).reduce((acc, [table, schema]) => {\n return acc + `CREATE TABLE IF NOT EXISTS '${table}' (${schema});`;\n }, \"\");\n // console.log(\"Query: \", query);\n const db = await this.getDb();\n const result = await db.runAsync(query);\n systemLog(\"sql\", \"[createTables] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n\n /**\n * Smazani starych logu\n */\n private async deleteLogs(): Promise<void> {\n systemLog(\"sql\", \"[query] delete old Logs\", this.db);\n try {\n const db = await this.getDb();\n await db.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (error) {\n throw error;\n }\n }\n\n public async read<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n // Smazani starych zaznamu z logu\n systemLog(\"sql\", \"[read]\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", \"[read] result \", result.length);\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[read]\", e);\n throw e;\n }\n }\n\n public async query<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n systemLog(\"sql\", \"[query]->\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", result);\n return result;\n } catch (error) {\n console.error(\"INSERT ERROR\", error);\n systemLogError(\"sql\", error);\n throw error;\n }\n }\n\n public async dropTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"dropTable\", table);\n // console.time(\"[SQL] dropTable\");\n const db = await this.getDb();\n const result = await db.runAsync(`DROP TABLE ${table}`);\n // console.timeEnd(\"[SQL] dropTable\");\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async emptyTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", `[emptyTable]`, table);\n const db = await this.getDb();\n const result = await db.runAsync(`DELETE FROM '${table}'`);\n systemLog(\"sql\", \"[emptyTable] result\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async getTables() {\n systemLog(\"sql\", \"Jdu zkusit nacist tabulky z \", JSON.stringify(this.dbName));\n try {\n const db = await this.getDb();\n const result = await db.getAllAsync('SELECT name FROM sqlite_master WHERE type=\"table\"');\n systemLog(\"sql\", \"DB Result:\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async resetDatabase() {\n try {\n systemLog(\"sql\", \"Reset database\", this.dbName);\n // console.time(\"DELETING\");\n systemLog(\"sql\", \"Closing\");\n const db = await this.getDb();\n await db.closeAsync();\n systemLog(\"sql\", \"Deleting\");\n await SQL.deleteDatabaseAsync(this.dbName);\n // console.timeEnd(\"DELETING\");\n // console.time(\"INIT\");\n this.db = null;\n systemLog(\"sql\", \"Zacinam inicializovat databazi databaze\");\n await this.initDB();\n systemLog(\"sql\", \"Inicializovana databaze\");\n // console.timeEnd(\"INIT\");\n } catch (e) {\n systemLogError(\"sql\", \"[resetDatabase]\", e);\n }\n }\n}\n","export function systemLog(..._args: unknown[]): void {\n // No-op by default in the package. Consumers can wrap these calls if needed.\n}\n\nexport function systemLogError(...args: unknown[]): void {\n if (typeof console !== \"undefined\" && typeof console.error === \"function\") {\n console.error(...args);\n }\n}\n"],"mappings":"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","names":[]}
@@ -102,10 +102,8 @@ var SQLite = class {
102
102
  async dropTable(table) {
103
103
  try {
104
104
  systemLog("sql", "dropTable", table);
105
- console.time("[SQL] dropTable");
106
105
  const db = await this.getDb();
107
106
  const result = await db.runAsync(`DROP TABLE ${table}`);
108
- console.timeEnd("[SQL] dropTable");
109
107
  return result;
110
108
  } catch (error) {
111
109
  throw error;
@@ -136,19 +134,15 @@ var SQLite = class {
136
134
  async resetDatabase() {
137
135
  try {
138
136
  systemLog("sql", "Reset database", this.dbName);
139
- console.time("DELETING");
140
137
  systemLog("sql", "Closing");
141
138
  const db = await this.getDb();
142
139
  await db.closeAsync();
143
140
  systemLog("sql", "Deleting");
144
141
  await SQL.deleteDatabaseAsync(this.dbName);
145
- console.timeEnd("DELETING");
146
- console.time("INIT");
147
142
  this.db = null;
148
143
  systemLog("sql", "Zacinam inicializovat databazi databaze");
149
144
  await this.initDB();
150
145
  systemLog("sql", "Inicializovana databaze");
151
- console.timeEnd("INIT");
152
146
  } catch (e) {
153
147
  systemLogError("sql", "[resetDatabase]", e);
154
148
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/database.ts","../src/expo-sqlite.ts"],"sourcesContent":["import * as SQL from \"expo-sqlite\";\nimport { systemLog, systemLogError } from \"./log\";\nimport type { DataStoreStorage } from \"./storage\";\n\nexport class SQLite implements DataStoreStorage {\n dbName: string;\n private db: SQL.SQLiteDatabase | null = null;\n\n constructor(name?: string) {\n this.dbName = name || \"modelaz.db\";\n this.initDB();\n }\n\n private async initDB(): Promise<void> {\n if (!this.db) {\n try {\n systemLog(\"sql\", \"[initDB]\");\n this.db = await SQL.openDatabaseAsync(this.dbName);\n // await this.createTable(\"documents\", \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\");\n // await this.createTable(\"logs\", \"time TEXT PRIMARY KEY, module TEXT, message TEXT\");\n await this.createTables({\n documents: \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\",\n // logs: \"time TEXT PRIMARY KEY, module TEXT, message TEXT\",\n });\n // await this.createTable(\"providers\", \"id TEXT PRIMARY KEY, data TEXT, lastUpdate TEXT\");\n // await this.db?.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (e) {\n console.log(\"INITDB ERROR\", e);\n // systemLogError(\"sql\", \"[initDB]\", e);\n throw e;\n }\n }\n }\n\n private async getDb(): Promise<SQL.SQLiteDatabase> {\n if (!this.db) {\n await this.initDB();\n }\n\n if (!this.db) {\n throw new Error(\"Database is not initialized\");\n }\n\n return this.db;\n }\n\n private async createTable(table: string, tableSchema: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTable]\", table);\n const db = await this.getDb();\n const result = await db.runAsync(`CREATE TABLE IF NOT EXISTS '${table}' (${tableSchema})`);\n systemLog(\"sql\", \"[createTable] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n private async createTables(tables: { [key: string]: string }): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTables]\", tables);\n const query = Object.entries(tables).reduce((acc, [table, schema]) => {\n return acc + `CREATE TABLE IF NOT EXISTS '${table}' (${schema});`;\n }, \"\");\n // console.log(\"Query: \", query);\n const db = await this.getDb();\n const result = await db.runAsync(query);\n systemLog(\"sql\", \"[createTables] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n\n /**\n * Smazani starych logu\n */\n private async deleteLogs(): Promise<void> {\n systemLog(\"sql\", \"[query] delete old Logs\", this.db);\n try {\n const db = await this.getDb();\n await db.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (error) {\n throw error;\n }\n }\n\n public async read<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n // Smazani starych zaznamu z logu\n systemLog(\"sql\", \"[read]\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", \"[read] result \", result.length);\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[read]\", e);\n throw e;\n }\n }\n\n public async query<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n systemLog(\"sql\", \"[query]->\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", result);\n return result;\n } catch (error) {\n console.error(\"INSERT ERROR\", error);\n systemLogError(\"sql\", error);\n throw error;\n }\n }\n\n public async dropTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"dropTable\", table);\n console.time(\"[SQL] dropTable\");\n const db = await this.getDb();\n const result = await db.runAsync(`DROP TABLE ${table}`);\n console.timeEnd(\"[SQL] dropTable\");\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async emptyTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", `[emptyTable]`, table);\n const db = await this.getDb();\n const result = await db.runAsync(`DELETE FROM '${table}'`);\n systemLog(\"sql\", \"[emptyTable] result\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async getTables() {\n systemLog(\"sql\", \"Jdu zkusit nacist tabulky z \", JSON.stringify(this.dbName));\n try {\n const db = await this.getDb();\n const result = await db.getAllAsync('SELECT name FROM sqlite_master WHERE type=\"table\"');\n systemLog(\"sql\", \"DB Result:\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async resetDatabase() {\n try {\n systemLog(\"sql\", \"Reset database\", this.dbName);\n console.time(\"DELETING\");\n systemLog(\"sql\", \"Closing\");\n const db = await this.getDb();\n await db.closeAsync();\n systemLog(\"sql\", \"Deleting\");\n await SQL.deleteDatabaseAsync(this.dbName);\n console.timeEnd(\"DELETING\");\n console.time(\"INIT\");\n this.db = null;\n systemLog(\"sql\", \"Zacinam inicializovat databazi databaze\");\n await this.initDB();\n systemLog(\"sql\", \"Inicializovana databaze\");\n console.timeEnd(\"INIT\");\n } catch (e) {\n systemLogError(\"sql\", \"[resetDatabase]\", e);\n }\n }\n}\n","export { SQLite as ExpoSQLiteStorage } from \"./database\";\n\nimport { SQLite } from \"./database\";\n\n/**\n * Vytvoří výchozí Expo SQLite adapter pro DataStoreProvider.\n *\n * @param name Volitelný název SQLite databázového souboru.\n */\nexport function createExpoSQLiteStorage(name?: string) {\n return new SQLite(name);\n}"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/database.ts","../src/expo-sqlite.ts"],"sourcesContent":["import * as SQL from \"expo-sqlite\";\nimport { systemLog, systemLogError } from \"./log\";\nimport type { DataStoreStorage } from \"./storage\";\n\nexport class SQLite implements DataStoreStorage {\n dbName: string;\n private db: SQL.SQLiteDatabase | null = null;\n\n constructor(name?: string) {\n this.dbName = name || \"modelaz.db\";\n this.initDB();\n }\n\n private async initDB(): Promise<void> {\n if (!this.db) {\n try {\n systemLog(\"sql\", \"[initDB]\");\n this.db = await SQL.openDatabaseAsync(this.dbName);\n // await this.createTable(\"documents\", \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\");\n // await this.createTable(\"logs\", \"time TEXT PRIMARY KEY, module TEXT, message TEXT\");\n await this.createTables({\n documents: \"id TEXT PRIMARY KEY, data TEXT, model TEXT, lastUpdate TEXT\",\n // logs: \"time TEXT PRIMARY KEY, module TEXT, message TEXT\",\n });\n // await this.createTable(\"providers\", \"id TEXT PRIMARY KEY, data TEXT, lastUpdate TEXT\");\n // await this.db?.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (e) {\n console.log(\"INITDB ERROR\", e);\n // systemLogError(\"sql\", \"[initDB]\", e);\n throw e;\n }\n }\n }\n\n private async getDb(): Promise<SQL.SQLiteDatabase> {\n if (!this.db) {\n await this.initDB();\n }\n\n if (!this.db) {\n throw new Error(\"Database is not initialized\");\n }\n\n return this.db;\n }\n\n private async createTable(table: string, tableSchema: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTable]\", table);\n const db = await this.getDb();\n const result = await db.runAsync(`CREATE TABLE IF NOT EXISTS '${table}' (${tableSchema})`);\n systemLog(\"sql\", \"[createTable] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n private async createTables(tables: { [key: string]: string }): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"[createTables]\", tables);\n const query = Object.entries(tables).reduce((acc, [table, schema]) => {\n return acc + `CREATE TABLE IF NOT EXISTS '${table}' (${schema});`;\n }, \"\");\n // console.log(\"Query: \", query);\n const db = await this.getDb();\n const result = await db.runAsync(query);\n systemLog(\"sql\", \"[createTables] result: \", JSON.stringify(result));\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[createTable]\", e);\n throw e;\n }\n }\n\n /**\n * Smazani starych logu\n */\n private async deleteLogs(): Promise<void> {\n systemLog(\"sql\", \"[query] delete old Logs\", this.db);\n try {\n const db = await this.getDb();\n await db.runAsync(`DELETE FROM logs WHERE strftime('%s', 'now') - strftime('%s', time) > 3600`);\n } catch (error) {\n throw error;\n }\n }\n\n public async read<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n // Smazani starych zaznamu z logu\n systemLog(\"sql\", \"[read]\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", \"[read] result \", result.length);\n return result;\n } catch (e) {\n systemLogError(\"sql\", \"[read]\", e);\n throw e;\n }\n }\n\n public async query<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]> {\n try {\n systemLog(\"sql\", \"[query]->\", query);\n const db = await this.getDb();\n const result = args === undefined ? await db.getAllAsync<T>(query) : await db.getAllAsync<T>(query, args);\n systemLog(\"sql\", result);\n return result;\n } catch (error) {\n console.error(\"INSERT ERROR\", error);\n systemLogError(\"sql\", error);\n throw error;\n }\n }\n\n public async dropTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", \"dropTable\", table);\n // console.time(\"[SQL] dropTable\");\n const db = await this.getDb();\n const result = await db.runAsync(`DROP TABLE ${table}`);\n // console.timeEnd(\"[SQL] dropTable\");\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async emptyTable(table: string): Promise<SQL.SQLiteRunResult> {\n try {\n systemLog(\"sql\", `[emptyTable]`, table);\n const db = await this.getDb();\n const result = await db.runAsync(`DELETE FROM '${table}'`);\n systemLog(\"sql\", \"[emptyTable] result\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async getTables() {\n systemLog(\"sql\", \"Jdu zkusit nacist tabulky z \", JSON.stringify(this.dbName));\n try {\n const db = await this.getDb();\n const result = await db.getAllAsync('SELECT name FROM sqlite_master WHERE type=\"table\"');\n systemLog(\"sql\", \"DB Result:\", result);\n return result;\n } catch (error) {\n throw error;\n }\n }\n\n public async resetDatabase() {\n try {\n systemLog(\"sql\", \"Reset database\", this.dbName);\n // console.time(\"DELETING\");\n systemLog(\"sql\", \"Closing\");\n const db = await this.getDb();\n await db.closeAsync();\n systemLog(\"sql\", \"Deleting\");\n await SQL.deleteDatabaseAsync(this.dbName);\n // console.timeEnd(\"DELETING\");\n // console.time(\"INIT\");\n this.db = null;\n systemLog(\"sql\", \"Zacinam inicializovat databazi databaze\");\n await this.initDB();\n systemLog(\"sql\", \"Inicializovana databaze\");\n // console.timeEnd(\"INIT\");\n } catch (e) {\n systemLogError(\"sql\", \"[resetDatabase]\", e);\n }\n }\n}\n","export { SQLite as ExpoSQLiteStorage } from \"./database\";\n\nimport { SQLite } from \"./database\";\n\n/**\n * Vytvoří výchozí Expo SQLite adapter pro DataStoreProvider.\n *\n * @param name Volitelný název SQLite databázového souboru.\n */\nexport function createExpoSQLiteStorage(name?: string) {\n return new SQLite(name);\n}"],"mappings":"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","names":[]}
package/dist/index.cjs CHANGED
@@ -658,7 +658,6 @@ var saveData = async ({
658
658
  dateUpdate,
659
659
  SQLite
660
660
  }) => {
661
- console.time(`[SQL] saveData ${providerId}`);
662
661
  const batchSize = 8e3;
663
662
  const placeholders = "(?,?,?,?)";
664
663
  var i = 0;
@@ -674,7 +673,6 @@ var saveData = async ({
674
673
  const row = await SQLite.query(`INSERT OR REPLACE INTO documents (id, data, model, lastUpdate) VALUES ${placeholdersArray}`, values);
675
674
  systemLog("axios", "saveData result: ", JSON.stringify(row));
676
675
  }
677
- console.timeEnd(`[SQL] saveData ${providerId}`);
678
676
  };
679
677
  var serializeParams = (params) => {
680
678
  return Object.fromEntries(
@@ -895,7 +893,6 @@ var useFilteredDocuments = (filter) => {
895
893
  setFilter(filter);
896
894
  }, [JSON.stringify(filter)]);
897
895
  (0, import_react.useEffect)(() => {
898
- console.time("Filter");
899
896
  if (activeFilter && documents && Object.keys(documents).length > 0 && Object.keys(activeFilter).length > 0) {
900
897
  const result = dataStoreFilterObject(documents, activeFilter);
901
898
  const dataArray = Object.keys(result).map((id) => ({
@@ -904,7 +901,6 @@ var useFilteredDocuments = (filter) => {
904
901
  }));
905
902
  if (!(0, import_isEqual.default)(data, dataArray)) setData(dataArray);
906
903
  }
907
- console.timeEnd("Filter");
908
904
  }, [activeFilter, documents]);
909
905
  return { documents: data || documents, setFilter };
910
906
  };
@@ -1172,7 +1168,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1172
1168
  socket.disconnect();
1173
1169
  }, [socket]);
1174
1170
  const resetDataStore = (0, import_react.useCallback)(async () => {
1175
- console.time("[DSP] resetDataStore");
1176
1171
  if (persistenceStorage?.emptyTable) {
1177
1172
  await persistenceStorage.emptyTable("documents");
1178
1173
  }
@@ -1181,7 +1176,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1181
1176
  setDocuments({});
1182
1177
  setCounterProviders({});
1183
1178
  setCounterDocuments({});
1184
- console.timeEnd("[DSP] resetDataStore");
1185
1179
  }, [persistenceStorage]);
1186
1180
  const resetProvider = (0, import_react.useCallback)(
1187
1181
  async (provider) => {
@@ -1231,7 +1225,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1231
1225
  if (dispatcher.actions.length > 0) {
1232
1226
  let result;
1233
1227
  const timeCode = uuid();
1234
- console.time(`Dispatcher ${dispatcher.actions[0].action} ${timeCode}`);
1235
1228
  setDispatcher((prev) => ({ ...prev, isBussy: true }));
1236
1229
  const item = dispatcher.actions[0];
1237
1230
  switch (item.action) {
@@ -1274,7 +1267,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1274
1267
  isBussy: false,
1275
1268
  actions: prev.actions.slice(1)
1276
1269
  }));
1277
- console.timeEnd(`Dispatcher ${dispatcher.actions[0].action} ${timeCode}`);
1278
1270
  }
1279
1271
  }
1280
1272
  if (!dispatcher.isBussy) processDispatcher();
@@ -1293,7 +1285,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1293
1285
  const documentsToPersist = [];
1294
1286
  const documentIdsToDelete = [];
1295
1287
  setDocuments((prev) => {
1296
- console.time("updateDocuments");
1297
1288
  let newDocs = { ...prev };
1298
1289
  if (Array.isArray(uDocuments)) {
1299
1290
  uDocuments.forEach((document) => {
@@ -1365,7 +1356,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1365
1356
  }
1366
1357
  }
1367
1358
  }
1368
- console.timeEnd("updateDocuments");
1369
1359
  return newDocs;
1370
1360
  });
1371
1361
  const unique = uuid();
@@ -1411,7 +1401,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1411
1401
  var isProvidersUpdated = false;
1412
1402
  const rand = uuid();
1413
1403
  setProviders((prev) => {
1414
- console.time("[DSP UPDATE PROVIDERS INSIDE]");
1415
1404
  var newProviders = { ...prev };
1416
1405
  Object.keys(newProviders).forEach((key) => {
1417
1406
  const provider = newProviders[key];
@@ -1466,31 +1455,23 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1466
1455
  }
1467
1456
  newProviders[key] = providerNext;
1468
1457
  });
1469
- console.timeEnd("[DSP UPDATE PROVIDERS INSIDE]");
1470
- console.time("[DSP UPDATE DOCUMENTS OUTSIDE]");
1471
1458
  setDocuments((prev2) => {
1472
- console.time("[DSP UPDATE DOCUMENTS INSIDE]");
1473
1459
  if (prev2[documentId]) {
1474
1460
  if (listeningProviders === 0) {
1475
1461
  const newD = { ...prev2 };
1476
1462
  delete newD[documentId];
1477
- console.timeEnd("[DSP UPDATE DOCUMENTS INSIDE]");
1478
1463
  return newD;
1479
1464
  } else {
1480
- console.timeEnd("[DSP UPDATE DOCUMENTS INSIDE]");
1481
1465
  return {
1482
1466
  ...prev2,
1483
1467
  [documentId]: mergeWithNullDeletion(prev2[documentId], dataWithDocumentId)
1484
1468
  };
1485
1469
  }
1486
1470
  } else if (listeningProviders > 0) {
1487
- console.timeEnd("[DSP UPDATE DOCUMENTS INSIDE]");
1488
1471
  return { ...prev2, [documentId]: mergeWithNullDeletion(void 0, dataWithDocumentId) };
1489
1472
  }
1490
- console.timeEnd("[DSP UPDATE DOCUMENTS INSIDE]");
1491
1473
  return prev2;
1492
1474
  });
1493
- console.timeEnd("[DSP UPDATE DOCUMENTS OUTSIDE]");
1494
1475
  return newProviders;
1495
1476
  });
1496
1477
  if (isProvidersUpdated) {
@@ -1814,11 +1795,9 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1814
1795
  isPersisting: !!newItem.isPersisting && !!persistenceStorage,
1815
1796
  SQLite: persistenceStorage || void 0
1816
1797
  });
1817
- console.error("[DataStoreProvider] registerProvider:dataFromSource ", { id: newItem.id, dataFromSource });
1818
1798
  var dataList = [];
1819
1799
  var items = {};
1820
1800
  const dataS = Array.isArray(dataFromSource) ? dataFromSource : [dataFromSource];
1821
- console.error("[DataStoreProvider] registerProvider:dataS ", { id: newItem.id, dataS });
1822
1801
  dataS.forEach((item) => {
1823
1802
  if (!item) return;
1824
1803
  const { id: itId, ...data } = item;
@@ -1833,7 +1812,6 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1833
1812
  items[normalizedId] = data;
1834
1813
  }
1835
1814
  });
1836
- console.error("[DataStoreProvider] registerProvider:dataList ", { id: newItem.id, dataList });
1837
1815
  setCounterDocuments((prev) => {
1838
1816
  const newC = { ...prev };
1839
1817
  dataList.forEach((itemId) => {
@@ -1862,10 +1840,7 @@ var DataStoreProvider = (0, import_react.forwardRef)(
1862
1840
  [id]: 1
1863
1841
  }));
1864
1842
  if (provider.dataSource?.socketListeners) {
1865
- console.error("[DataStoreProvider] registerProvider:registering sockets ", {
1866
- id: newItem.id,
1867
- socketListeners: provider.dataSource.socketListeners
1868
- });
1843
+ console.log("TATATATA");
1869
1844
  registerProviderSockets(provider.dataSource.socketListeners, provider.dataSource.filter);
1870
1845
  }
1871
1846
  } catch (error) {