stream-chat-react-native-core 8.13.18 → 8.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +4 -1
  2. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  3. package/lib/commonjs/components/Chat/Chat.js +10 -23
  4. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  5. package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js +64 -0
  6. package/lib/commonjs/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -0
  7. package/lib/commonjs/index.js +7 -0
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/mock-builders/DB/mock.js +13 -1
  10. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  11. package/lib/commonjs/store/OfflineDB.js +15 -2
  12. package/lib/commonjs/store/OfflineDB.js.map +1 -1
  13. package/lib/commonjs/store/SqliteClient.js +94 -10
  14. package/lib/commonjs/store/SqliteClient.js.map +1 -1
  15. package/lib/commonjs/test-utils/BetterSqlite.js +3 -2
  16. package/lib/commonjs/test-utils/BetterSqlite.js.map +1 -1
  17. package/lib/commonjs/version.json +1 -1
  18. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +4 -1
  19. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  20. package/lib/module/components/Chat/Chat.js +10 -23
  21. package/lib/module/components/Chat/Chat.js.map +1 -1
  22. package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js +64 -0
  23. package/lib/module/components/Chat/hooks/useInitializeOfflineDb.js.map +1 -0
  24. package/lib/module/index.js +7 -0
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/mock-builders/DB/mock.js +13 -1
  27. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  28. package/lib/module/store/OfflineDB.js +15 -2
  29. package/lib/module/store/OfflineDB.js.map +1 -1
  30. package/lib/module/store/SqliteClient.js +94 -10
  31. package/lib/module/store/SqliteClient.js.map +1 -1
  32. package/lib/module/test-utils/BetterSqlite.js +3 -2
  33. package/lib/module/test-utils/BetterSqlite.js.map +1 -1
  34. package/lib/module/version.json +1 -1
  35. package/lib/typescript/components/ChannelList/hooks/usePaginatedChannels.d.ts.map +1 -1
  36. package/lib/typescript/components/Chat/Chat.d.ts +44 -0
  37. package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
  38. package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts +27 -0
  39. package/lib/typescript/components/Chat/hooks/useInitializeOfflineDb.d.ts.map +1 -0
  40. package/lib/typescript/hooks/useTranslatedMessage.d.ts.map +1 -1
  41. package/lib/typescript/index.d.ts +1 -1
  42. package/lib/typescript/index.d.ts.map +1 -1
  43. package/lib/typescript/store/OfflineDB.d.ts +16 -1
  44. package/lib/typescript/store/OfflineDB.d.ts.map +1 -1
  45. package/lib/typescript/store/SqliteClient.d.ts +61 -0
  46. package/lib/typescript/store/SqliteClient.d.ts.map +1 -1
  47. package/lib/typescript/test-utils/BetterSqlite.d.ts.map +1 -1
  48. package/package.json +2 -2
  49. package/src/components/ChannelList/__tests__/ChannelList.test.js +87 -20
  50. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +11 -6
  51. package/src/components/Chat/Chat.tsx +52 -18
  52. package/src/components/Chat/__tests__/ChatOfflineDbEncryption.test.tsx +248 -0
  53. package/src/components/Chat/hooks/useInitializeOfflineDb.ts +109 -0
  54. package/src/index.ts +1 -1
  55. package/src/mock-builders/DB/mock.ts +16 -1
  56. package/src/store/OfflineDB.ts +38 -3
  57. package/src/store/SqliteClient.ts +185 -1
  58. package/src/store/__tests__/SqliteClient.test.ts +258 -0
  59. package/src/test-utils/BetterSqlite.js +4 -1
  60. package/src/version.json +1 -1
@@ -4,11 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  exports.sqliteMock = void 0;
6
6
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
7
+ var _fs = require("fs");
7
8
  var _betterSqlite = _interopRequireDefault(require("better-sqlite3"));
9
+ var _process$env$JEST_WOR;
8
10
  var db;
11
+ var testDbName = `foobar-${(_process$env$JEST_WOR = process.env.JEST_WORKER_ID) != null ? _process$env$JEST_WOR : '0'}.db`;
9
12
  var sqliteMock = exports.sqliteMock = {
13
+ isSQLCipher: function isSQLCipher() {
14
+ return true;
15
+ },
10
16
  open: function open() {
11
- db = new _betterSqlite.default('foobar.db');
17
+ db = new _betterSqlite.default(testDbName);
12
18
  return {
13
19
  close: function close() {
14
20
  db.close();
@@ -17,6 +23,12 @@ var sqliteMock = exports.sqliteMock = {
17
23
  status: 0
18
24
  };
19
25
  },
26
+ delete: function _delete() {
27
+ db.close();
28
+ (0, _fs.rmSync)(testDbName, {
29
+ force: true
30
+ });
31
+ },
20
32
  execute: function () {
21
33
  var _execute = (0, _asyncToGenerator2.default)(function* (queryInput, params) {
22
34
  var query = queryInput.trim().toLowerCase();
@@ -1 +1 @@
1
- {"version":3,"names":["_betterSqlite","_interopRequireDefault","require","db","sqliteMock","exports","open","Sqlite3","close","message","status","execute","_execute","_asyncToGenerator2","default","queryInput","params","query","trim","toLowerCase","stmt","prepare","result","indexOf","modifiedParams","map","p","Number","Promise","resolve","all","rows","pragmaQueryTokens","split","pragma","run","undefined","_x","_x2","apply","arguments","executeBatch","_executeBatch","queriesArr","_loop","queryAndParams","staus","_x3"],"sourceRoot":"../../../../src","sources":["mock-builders/DB/mock.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_fs","require","_betterSqlite","_interopRequireDefault","_process$env$JEST_WOR","db","testDbName","process","env","JEST_WORKER_ID","sqliteMock","exports","isSQLCipher","open","Sqlite3","close","message","status","delete","rmSync","force","execute","_execute","_asyncToGenerator2","default","queryInput","params","query","trim","toLowerCase","stmt","prepare","result","indexOf","modifiedParams","map","p","Number","Promise","resolve","all","rows","pragmaQueryTokens","split","pragma","run","undefined","_x","_x2","apply","arguments","executeBatch","_executeBatch","queriesArr","_loop","queryAndParams","staus","_x3"],"sourceRoot":"../../../../src","sources":["mock-builders/DB/mock.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
5
  exports.OfflineDB = void 0;
6
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
7
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
7
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
8
9
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
@@ -18,7 +19,8 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
18
19
  var OfflineDB = exports.OfflineDB = function (_AbstractOfflineDB) {
19
20
  function OfflineDB(_ref) {
20
21
  var _this;
21
- var client = _ref.client;
22
+ var client = _ref.client,
23
+ getEncryptionKey = _ref.getEncryptionKey;
22
24
  (0, _classCallCheck2.default)(this, OfflineDB);
23
25
  _this = _callSuper(this, OfflineDB, [{
24
26
  client: client
@@ -106,7 +108,18 @@ var OfflineDB = exports.OfflineDB = function (_AbstractOfflineDB) {
106
108
  _this.channelExists = api.channelExists;
107
109
  _this.resetDB = _SqliteClient.SqliteClient.resetDB;
108
110
  _this.executeSqlBatch = _SqliteClient.SqliteClient.executeSqlBatch;
109
- _this.initializeDB = _SqliteClient.SqliteClient.initializeDatabase;
111
+ _this.initializeDB = (0, _asyncToGenerator2.default)(function* () {
112
+ _this.initializationError = undefined;
113
+ try {
114
+ return yield _SqliteClient.SqliteClient.initializeDatabase();
115
+ } catch (error) {
116
+ if (error instanceof _SqliteClient.SqliteClientError) {
117
+ _this.initializationError = error;
118
+ }
119
+ throw error;
120
+ }
121
+ });
122
+ _SqliteClient.SqliteClient.getEncryptionKey = getEncryptionKey;
110
123
  return _this;
111
124
  }
112
125
  (0, _inherits2.default)(OfflineDB, _AbstractOfflineDB);
@@ -1 +1 @@
1
- {"version":3,"names":["_streamChat","require","api","_interopRequireWildcard","_SqliteClient","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_callSuper","o","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","OfflineDB","exports","_AbstractOfflineDB","_ref","_this","client","_classCallCheck2","upsertCidsForQuery","upsertChannels","upsertUserSyncStatus","_ref2","userId","lastSyncedAt","execute","currentUserId","upsertAppSettings","_ref3","appSettings","upsertPoll","upsertDraft","getDraft","deleteDraft","upsertChannelData","upsertReads","upsertMessages","upsertMembers","updateMessage","getChannels","_ref4","cids","channelIds","getChannelsForQuery","_ref5","filters","sort","getChannelsForFilterSort","getAllChannelCids","getAllChannelIds","getLastSyncedAt","_ref6","getAppSettings","_ref7","getReactions","getReactionsForFilterSort","addPendingTask","updatePendingTask","Promise","resolve","deletePendingTask","deleteReaction","deleteMember","deleteChannel","deleteMessagesForChannel","dropPendingTasks","hardDeleteMessage","deleteMessage","softDeleteMessage","getPendingTasks","updateReaction","insertReaction","channelExists","resetDB","SqliteClient","executeSqlBatch","initializeDB","initializeDatabase","_inherits2","_createClass2","AbstractOfflineDB"],"sourceRoot":"../../../src","sources":["store/OfflineDB.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_streamChat","require","api","_interopRequireWildcard","_SqliteClient","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_callSuper","o","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","OfflineDB","exports","_AbstractOfflineDB","_ref","_this","client","getEncryptionKey","_classCallCheck2","upsertCidsForQuery","upsertChannels","upsertUserSyncStatus","_ref2","userId","lastSyncedAt","execute","currentUserId","upsertAppSettings","_ref3","appSettings","upsertPoll","upsertDraft","getDraft","deleteDraft","upsertChannelData","upsertReads","upsertMessages","upsertMembers","updateMessage","getChannels","_ref4","cids","channelIds","getChannelsForQuery","_ref5","filters","sort","getChannelsForFilterSort","getAllChannelCids","getAllChannelIds","getLastSyncedAt","_ref6","getAppSettings","_ref7","getReactions","getReactionsForFilterSort","addPendingTask","updatePendingTask","Promise","resolve","deletePendingTask","deleteReaction","deleteMember","deleteChannel","deleteMessagesForChannel","dropPendingTasks","hardDeleteMessage","deleteMessage","softDeleteMessage","getPendingTasks","updateReaction","insertReaction","channelExists","resetDB","SqliteClient","executeSqlBatch","initializeDB","_asyncToGenerator2","initializationError","undefined","initializeDatabase","error","SqliteClientError","_inherits2","_createClass2","AbstractOfflineDB"],"sourceRoot":"../../../src","sources":["store/OfflineDB.ts"],"mappings":"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","ignoreList":[]}
@@ -2,15 +2,21 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- exports.SqliteClient = void 0;
5
+ exports.SqliteClientError = exports.SqliteClient = void 0;
6
6
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
7
7
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
8
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
9
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
11
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
10
14
  var _constants = require("./constants");
11
15
  var _schema = require("./schema");
12
16
  var _createCreateTableQuery = require("./sqlite-utils/createCreateTableQuery");
13
17
  var _SqliteClient;
18
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
19
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
14
20
  var sqlite;
15
21
  try {
16
22
  sqlite = require('@op-engineering/op-sqlite');
@@ -20,6 +26,19 @@ try {
20
26
  throw e;
21
27
  }
22
28
  }
29
+ var SqliteClientError = exports.SqliteClientError = function (_Error) {
30
+ function SqliteClientError(code, message, options) {
31
+ var _this;
32
+ (0, _classCallCheck2.default)(this, SqliteClientError);
33
+ _this = _callSuper(this, SqliteClientError, [message]);
34
+ _this.name = 'SqliteClientError';
35
+ _this.code = code;
36
+ _this.cause = options == null ? void 0 : options.cause;
37
+ return _this;
38
+ }
39
+ (0, _inherits2.default)(SqliteClientError, _Error);
40
+ return (0, _createClass2.default)(SqliteClientError);
41
+ }((0, _wrapNativeSuper2.default)(Error));
23
42
  var SqliteClient = exports.SqliteClient = (0, _createClass2.default)(function SqliteClient() {
24
43
  (0, _classCallCheck2.default)(this, SqliteClient);
25
44
  });
@@ -27,24 +46,73 @@ _SqliteClient = SqliteClient;
27
46
  SqliteClient.dbVersion = 15;
28
47
  SqliteClient.dbName = _constants.DB_NAME;
29
48
  SqliteClient.dbLocation = _constants.DB_LOCATION;
49
+ SqliteClient.TRANSIENT_ERROR = /database is locked|SQLITE_BUSY|SQLITE_LOCKED|disk i\/o|SQLITE_IOERR|unable to open|SQLITE_CANTOPEN|out of memory|readonly/i;
50
+ SqliteClient.UNREADABLE_ERROR = /not a database|file is encrypted|malformed|disk image is malformed|SQLite (?:error )?code:?\s*(?:26|11)\b|NOTADB|SQLITE_CORRUPT/i;
30
51
  SqliteClient.getDbVersion = function () {
31
52
  return _SqliteClient.dbVersion;
32
53
  };
33
54
  SqliteClient.setDbVersion = function (version) {
34
55
  return _SqliteClient.dbVersion = version;
35
56
  };
57
+ SqliteClient.recordError = function (e) {
58
+ _SqliteClient.logger == null || _SqliteClient.logger('error', e.message, {
59
+ tag: e.code
60
+ });
61
+ throw e;
62
+ };
63
+ SqliteClient.preflightEncryption = (0, _asyncToGenerator2.default)(function* () {
64
+ try {
65
+ _SqliteClient.preflightedKey = yield _SqliteClient.resolveEncryptionKey();
66
+ } catch (e) {
67
+ if (e instanceof SqliteClientError) {
68
+ _SqliteClient.recordError(e);
69
+ }
70
+ throw e;
71
+ }
72
+ });
73
+ SqliteClient.resolveEncryptionKey = (0, _asyncToGenerator2.default)(function* () {
74
+ var getEncryptionKey = _SqliteClient.getEncryptionKey;
75
+ if (!getEncryptionKey) {
76
+ return undefined;
77
+ }
78
+ if (sqlite === undefined) {
79
+ throw new SqliteClientError('SQLCIPHER_BUILD_MISSING', 'An offline database encryption key was provided but "@op-engineering/op-sqlite" ' + 'is not installed.');
80
+ }
81
+ if (typeof sqlite.isSQLCipher !== 'function' || !sqlite.isSQLCipher()) {
82
+ throw new SqliteClientError('SQLCIPHER_BUILD_MISSING', 'An offline database encryption key was provided but @op-engineering/op-sqlite was ' + 'not built with SQLCipher, so the key would be silently ignored and the offline ' + 'database written in plaintext. Add { "op-sqlite": { "sqlcipher": true } } to your ' + "application's package.json and rebuild, or stop providing a key.");
83
+ }
84
+ var encryptionKey;
85
+ try {
86
+ encryptionKey = yield getEncryptionKey();
87
+ } catch (error) {
88
+ throw new SqliteClientError('ENCRYPTION_KEY_UNAVAILABLE', 'The offline database encryption key getter threw, so the database cannot be opened.', {
89
+ cause: error
90
+ });
91
+ }
92
+ if (!encryptionKey) {
93
+ throw new SqliteClientError('ENCRYPTION_KEY_UNAVAILABLE', 'The offline database encryption key getter resolved without a key, so the database ' + 'cannot be opened.');
94
+ }
95
+ return encryptionKey;
96
+ });
36
97
  SqliteClient.openDB = (0, _asyncToGenerator2.default)(function* () {
37
98
  try {
38
- var _SqliteClient$db;
99
+ var _SqliteClient$preflig, _SqliteClient$db;
39
100
  if (sqlite === undefined) {
40
101
  throw new Error('Please install "@op-engineering/op-sqlite" package to enable offline support');
41
102
  }
42
- _SqliteClient.db = sqlite.open({
103
+ var encryptionKey = (_SqliteClient$preflig = _SqliteClient.preflightedKey) != null ? _SqliteClient$preflig : yield _SqliteClient.resolveEncryptionKey();
104
+ _SqliteClient.preflightedKey = undefined;
105
+ _SqliteClient.db = sqlite.open(Object.assign({
43
106
  location: _SqliteClient.dbLocation,
44
107
  name: _SqliteClient.dbName
45
- });
108
+ }, encryptionKey ? {
109
+ encryptionKey: encryptionKey
110
+ } : {}));
46
111
  yield (_SqliteClient$db = _SqliteClient.db) == null ? void 0 : _SqliteClient$db.execute('PRAGMA foreign_keys = ON', []);
47
112
  } catch (e) {
113
+ if (e instanceof SqliteClientError) {
114
+ throw e;
115
+ }
48
116
  _SqliteClient.logger == null || _SqliteClient.logger('error', `Error opening database ${_SqliteClient.dbName}`, {
49
117
  error: e
50
118
  });
@@ -66,7 +134,7 @@ SqliteClient.closeDB = function () {
66
134
  }
67
135
  };
68
136
  SqliteClient.executeSqlBatch = function () {
69
- var _ref2 = (0, _asyncToGenerator2.default)(function* (queries) {
137
+ var _ref4 = (0, _asyncToGenerator2.default)(function* (queries) {
70
138
  if (!queries || !queries.length) {
71
139
  return;
72
140
  }
@@ -90,11 +158,11 @@ SqliteClient.executeSqlBatch = function () {
90
158
  }
91
159
  });
92
160
  return function (_x) {
93
- return _ref2.apply(this, arguments);
161
+ return _ref4.apply(this, arguments);
94
162
  };
95
163
  }();
96
164
  SqliteClient.executeSql = function () {
97
- var _ref3 = (0, _asyncToGenerator2.default)(function* (query, params) {
165
+ var _ref5 = (0, _asyncToGenerator2.default)(function* (query, params) {
98
166
  try {
99
167
  if (!_SqliteClient.db) {
100
168
  throw new Error('DB is not open or initialized.');
@@ -111,7 +179,7 @@ SqliteClient.executeSql = function () {
111
179
  }
112
180
  });
113
181
  return function (_x2, _x3) {
114
- return _ref3.apply(this, arguments);
182
+ return _ref5.apply(this, arguments);
115
183
  };
116
184
  }();
117
185
  SqliteClient.dropTables = (0, _asyncToGenerator2.default)(function* () {
@@ -143,6 +211,14 @@ SqliteClient.deleteDatabase = function () {
143
211
  }
144
212
  return true;
145
213
  };
214
+ SqliteClient.isUnreadableDbError = function (e) {
215
+ var _message;
216
+ var message = String((_message = e == null ? void 0 : e.message) != null ? _message : e);
217
+ if (_SqliteClient.TRANSIENT_ERROR.test(message)) {
218
+ return false;
219
+ }
220
+ return _SqliteClient.UNREADABLE_ERROR.test(message);
221
+ };
146
222
  SqliteClient.initializeDatabase = (0, _asyncToGenerator2.default)(function* () {
147
223
  try {
148
224
  yield _SqliteClient.openDB();
@@ -162,6 +238,14 @@ SqliteClient.initializeDatabase = (0, _asyncToGenerator2.default)(function* () {
162
238
  yield _SqliteClient.executeSqlBatch(q);
163
239
  return true;
164
240
  } catch (e) {
241
+ if (e instanceof SqliteClientError) {
242
+ _SqliteClient.recordError(e);
243
+ }
244
+ if (_SqliteClient.isUnreadableDbError(e)) {
245
+ _SqliteClient.recordError(new SqliteClientError('OFFLINE_DB_UNREADABLE', 'The offline database exists but could not be read. Usually the encryption ' + 'key changed, or encryption was turned on or off while a database from ' + 'the other mode was still on disk. Delete it with ' + 'SqliteClient.deleteDatabase() and re-mount to rebuild from the server - ' + 'everything in it is a cache, except queued offline actions, which are lost.', {
246
+ cause: e
247
+ }));
248
+ }
165
249
  console.log('Error initializing DB', e);
166
250
  _SqliteClient.logger == null || _SqliteClient.logger('error', 'Error initializing DB', {
167
251
  dbLocation: _SqliteClient.dbLocation,
@@ -172,7 +256,7 @@ SqliteClient.initializeDatabase = (0, _asyncToGenerator2.default)(function* () {
172
256
  }
173
257
  });
174
258
  SqliteClient.updateUserPragmaVersion = function () {
175
- var _ref6 = (0, _asyncToGenerator2.default)(function* (version) {
259
+ var _ref8 = (0, _asyncToGenerator2.default)(function* (version) {
176
260
  _SqliteClient.logger == null || _SqliteClient.logger('info', `updateUserPragmaVersion to ${version}`);
177
261
  if (!_SqliteClient.db) {
178
262
  throw new Error('DB is not open or initialized.');
@@ -180,7 +264,7 @@ SqliteClient.updateUserPragmaVersion = function () {
180
264
  yield _SqliteClient.db.execute(`PRAGMA user_version = ${version}`, []);
181
265
  });
182
266
  return function (_x4) {
183
- return _ref6.apply(this, arguments);
267
+ return _ref8.apply(this, arguments);
184
268
  };
185
269
  }();
186
270
  SqliteClient.getUserPragmaVersion = (0, _asyncToGenerator2.default)(function* () {
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_schema","_createCreateTableQuery","_SqliteClient","sqlite","e","isRemoteDebuggerError","Error","message","includes","SqliteClient","exports","_createClass2","default","_classCallCheck2","dbVersion","dbName","DB_NAME","dbLocation","DB_LOCATION","getDbVersion","setDbVersion","version","openDB","_asyncToGenerator2","_SqliteClient$db","undefined","db","open","location","name","execute","logger","error","console","closeDB","close","executeSqlBatch","_ref2","queries","length","finalQueries","map","query","push","executeBatch","_x","apply","arguments","executeSql","_ref3","params","_yield$_SqliteClient$","rows","_x2","_x3","dropTables","Object","keys","tables","table","deleteDatabase","dbname","delete","initializeDatabase","getUserPragmaVersion","updateUserPragmaVersion","q","reduce","queriesSoFar","tableName","_toConsumableArray2","createCreateTableQuery","log","_ref6","_x4","_yield$_SqliteClient$2","result","user_version","resetDB"],"sourceRoot":"../../../src","sources":["store/SqliteClient.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_constants","require","_schema","_createCreateTableQuery","_SqliteClient","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","sqlite","isRemoteDebuggerError","Error","message","includes","SqliteClientError","exports","_Error","code","options","_this","_classCallCheck2","name","cause","_inherits2","_createClass2","_wrapNativeSuper2","SqliteClient","dbVersion","dbName","DB_NAME","dbLocation","DB_LOCATION","TRANSIENT_ERROR","UNREADABLE_ERROR","getDbVersion","setDbVersion","version","recordError","logger","tag","preflightEncryption","_asyncToGenerator2","preflightedKey","resolveEncryptionKey","getEncryptionKey","undefined","isSQLCipher","encryptionKey","error","openDB","_SqliteClient$preflig","_SqliteClient$db","db","open","Object","assign","location","execute","console","closeDB","close","executeSqlBatch","_ref4","queries","length","finalQueries","map","query","push","executeBatch","_x","arguments","executeSql","_ref5","params","_yield$_SqliteClient$","rows","_x2","_x3","dropTables","keys","tables","table","deleteDatabase","dbname","delete","isUnreadableDbError","_message","String","test","initializeDatabase","getUserPragmaVersion","updateUserPragmaVersion","q","reduce","queriesSoFar","tableName","_toConsumableArray2","createCreateTableQuery","log","_ref8","_x4","_yield$_SqliteClient$2","result","user_version","resetDB"],"sourceRoot":"../../../src","sources":["store/SqliteClient.ts"],"mappings":"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","ignoreList":[]}
@@ -8,14 +8,15 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _betterSqlite = _interopRequireDefault(require("better-sqlite3"));
10
10
  var _schema = require("../store/schema");
11
- var _BetterSqlite;
11
+ var _process$env$JEST_WOR, _BetterSqlite;
12
+ var testDbName = `foobar-${(_process$env$JEST_WOR = process.env.JEST_WORKER_ID) != null ? _process$env$JEST_WOR : '0'}.db`;
12
13
  var BetterSqlite = exports.BetterSqlite = (0, _createClass2.default)(function BetterSqlite() {
13
14
  (0, _classCallCheck2.default)(this, BetterSqlite);
14
15
  this.db = null;
15
16
  });
16
17
  _BetterSqlite = BetterSqlite;
17
18
  BetterSqlite.openDB = function () {
18
- _BetterSqlite.db = new _betterSqlite.default('foobar.db');
19
+ _BetterSqlite.db = new _betterSqlite.default(testDbName);
19
20
  };
20
21
  BetterSqlite.closeDB = function () {
21
22
  _BetterSqlite.db.close();
@@ -1 +1 @@
1
- {"version":3,"names":["_betterSqlite","_interopRequireDefault","require","_schema","_BetterSqlite","BetterSqlite","exports","_createClass2","default","_classCallCheck2","db","openDB","Database","closeDB","close","getTables","_asyncToGenerator2","tablesInDb","pragma","dropAllTables","tableNames","Object","keys","tables","forEach","name","stmt","prepare","run","selectFromTable","_ref2","table","result","all","_x","apply","arguments"],"sourceRoot":"../../../src","sources":["test-utils/BetterSqlite.js"],"mappings":";;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAyC,IAAAE,aAAA;AAAA,IAE5BC,YAAY,GAAAC,OAAA,CAAAD,YAAA,OAAAE,aAAA,CAAAC,OAAA,WAAAH,aAAA;EAAA,IAAAI,gBAAA,CAAAD,OAAA,QAAAH,YAAA;EAAA,KACvBK,EAAE,GAAG,IAAI;AAAA;AAAAN,aAAA,GADEC,YAAY;AAAZA,YAAY,CAGhBM,MAAM,GAAG,YAAM;EACpBP,aAAA,CAAKM,EAAE,GAAG,IAAIE,qBAAQ,CAAC,WAAW,CAAC;AACrC,CAAC;AALUP,YAAY,CAOhBQ,OAAO,GAAG,YAAM;EACrBT,aAAA,CAAKM,EAAE,CAACI,KAAK,CAAC,CAAC;AACjB,CAAC;AATUT,YAAY,CAWhBU,SAAS,OAAAC,kBAAA,CAAAR,OAAA,EAAG,aAAY;EAC7B,IAAMS,UAAU,SAASb,aAAA,CAAKM,EAAE,CAACQ,MAAM,CAAC,aAAa,CAAC;EACtD,OAAOD,UAAU;AACnB,CAAC;AAdUZ,YAAY,CAgBhBc,aAAa,GAAG,YAAM;EAC3B,IAAMC,UAAU,GAAGC,MAAM,CAACC,IAAI,CAACC,cAAM,CAAC;EAEtCH,UAAU,CAACI,OAAO,CAAC,UAACC,IAAI,EAAK;IAC3B,IAAMC,IAAI,GAAGtB,aAAA,CAAKM,EAAE,CAACiB,OAAO,CAAC,wBAAwBF,IAAI,EAAE,CAAC;IAC5DC,IAAI,CAACE,GAAG,CAAC,CAAC;EACZ,CAAC,CAAC;AACJ,CAAC;AAvBUvB,YAAY,CAyBhBwB,eAAe;EAAA,IAAAC,KAAA,OAAAd,kBAAA,CAAAR,OAAA,EAAG,WAAOuB,KAAK,EAAK;IACxC,IAAML,IAAI,SAAStB,aAAA,CAAKM,EAAE,CAACiB,OAAO,CAAC,iBAAiBI,KAAK,EAAE,CAAC;IAC5D,IAAMC,MAAM,GAAGN,IAAI,CAACO,GAAG,CAAC,CAAC;IAEzB,OAAOD,MAAM;EACf,CAAC;EAAA,iBAAAE,EAAA;IAAA,OAAAJ,KAAA,CAAAK,KAAA,OAAAC,SAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_betterSqlite","_interopRequireDefault","require","_schema","_process$env$JEST_WOR","_BetterSqlite","testDbName","process","env","JEST_WORKER_ID","BetterSqlite","exports","_createClass2","default","_classCallCheck2","db","openDB","Database","closeDB","close","getTables","_asyncToGenerator2","tablesInDb","pragma","dropAllTables","tableNames","Object","keys","tables","forEach","name","stmt","prepare","run","selectFromTable","_ref2","table","result","all","_x","apply","arguments"],"sourceRoot":"../../../src","sources":["test-utils/BetterSqlite.js"],"mappings":";;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAyC,IAAAE,qBAAA,EAAAC,aAAA;AAGzC,IAAMC,UAAU,GAAG,WAAAF,qBAAA,GAAUG,OAAO,CAACC,GAAG,CAACC,cAAc,YAAAL,qBAAA,GAAI,GAAG,KAAK;AAAC,IAEvDM,YAAY,GAAAC,OAAA,CAAAD,YAAA,OAAAE,aAAA,CAAAC,OAAA,WAAAH,aAAA;EAAA,IAAAI,gBAAA,CAAAD,OAAA,QAAAH,YAAA;EAAA,KACvBK,EAAE,GAAG,IAAI;AAAA;AAAAV,aAAA,GADEK,YAAY;AAAZA,YAAY,CAGhBM,MAAM,GAAG,YAAM;EACpBX,aAAA,CAAKU,EAAE,GAAG,IAAIE,qBAAQ,CAACX,UAAU,CAAC;AACpC,CAAC;AALUI,YAAY,CAOhBQ,OAAO,GAAG,YAAM;EACrBb,aAAA,CAAKU,EAAE,CAACI,KAAK,CAAC,CAAC;AACjB,CAAC;AATUT,YAAY,CAWhBU,SAAS,OAAAC,kBAAA,CAAAR,OAAA,EAAG,aAAY;EAC7B,IAAMS,UAAU,SAASjB,aAAA,CAAKU,EAAE,CAACQ,MAAM,CAAC,aAAa,CAAC;EACtD,OAAOD,UAAU;AACnB,CAAC;AAdUZ,YAAY,CAgBhBc,aAAa,GAAG,YAAM;EAC3B,IAAMC,UAAU,GAAGC,MAAM,CAACC,IAAI,CAACC,cAAM,CAAC;EAEtCH,UAAU,CAACI,OAAO,CAAC,UAACC,IAAI,EAAK;IAC3B,IAAMC,IAAI,GAAG1B,aAAA,CAAKU,EAAE,CAACiB,OAAO,CAAC,wBAAwBF,IAAI,EAAE,CAAC;IAC5DC,IAAI,CAACE,GAAG,CAAC,CAAC;EACZ,CAAC,CAAC;AACJ,CAAC;AAvBUvB,YAAY,CAyBhBwB,eAAe;EAAA,IAAAC,KAAA,OAAAd,kBAAA,CAAAR,OAAA,EAAG,WAAOuB,KAAK,EAAK;IACxC,IAAML,IAAI,SAAS1B,aAAA,CAAKU,EAAE,CAACiB,OAAO,CAAC,iBAAiBI,KAAK,EAAE,CAAC;IAC5D,IAAMC,MAAM,GAAGN,IAAI,CAACO,GAAG,CAAC,CAAC;IAEzB,OAAOD,MAAM;EACf,CAAC;EAAA,iBAAAE,EAAA;IAAA,OAAAJ,KAAA,CAAAK,KAAA,OAAAC,SAAA;EAAA;AAAA","ignoreList":[]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "8.13.18"
2
+ "version": "8.14.0"
3
3
  }
@@ -1 +1 @@
1
- {"version":3,"file":"usePaginatedChannels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ChannelList/hooks/usePaginatedChannels.ts"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EACL,cAAc,EACd,cAAc,EAEd,cAAc,EACd,WAAW,EACZ,MAAM,aAAa,CAAC;AAOrB,KAAK,UAAU,GAAG;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7D,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAIF,KAAK,SAAS,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,GAAG,mBAAmB,CAAC;AAE9F,MAAM,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAU1F,eAAO,MAAM,oBAAoB,GAAI,mEAMlC,UAAU;;;;;;;;;;;;CAgKZ,CAAC"}
1
+ {"version":3,"file":"usePaginatedChannels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ChannelList/hooks/usePaginatedChannels.ts"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EACL,cAAc,EACd,cAAc,EAEd,cAAc,EACd,WAAW,EACZ,MAAM,aAAa,CAAC;AAOrB,KAAK,UAAU,GAAG;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7D,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAIF,KAAK,SAAS,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,GAAG,mBAAmB,CAAC;AAE9F,MAAM,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAU1F,eAAO,MAAM,oBAAoB,GAAI,mEAMlC,UAAU;;;;;;;;;;;;CAqKZ,CAAC"}
@@ -15,6 +15,50 @@ export type ChatProps = Pick<ChatContextValue, 'client'> & Partial<Pick<ChatCont
15
15
  * Enables offline storage and loading for chat data.
16
16
  */
17
17
  enableOfflineSupport?: boolean;
18
+ /**
19
+ * Encrypts the offline database at rest with SQLCipher, using the key this
20
+ * resolves to. Only relevant when `enableOfflineSupport` is enabled. Leaving it
21
+ * unset keeps the offline database unencrypted, which is the default.
22
+ *
23
+ * Requires a native build of `@op-engineering/op-sqlite` that includes SQLCipher.
24
+ * Add the following to your application's `package.json` and rebuild the native
25
+ * app - without the flag the key is accepted and then silently ignored:
26
+ *
27
+ * ```json
28
+ * { "op-sqlite": { "sqlcipher": true } }
29
+ * ```
30
+ *
31
+ * **Wrap `<Chat>` in an error boundary.** If the database cannot be opened with
32
+ * the encryption you asked for, `<Chat>` throws a {@link SqliteClientError}
33
+ * from render instead of continuing without it. The SDK deliberately takes no
34
+ * recovery action of its own - it never deletes data, and never silently falls
35
+ * back to an unencrypted or absent cache. Discriminate on `code`:
36
+ *
37
+ * - `OFFLINE_DB_UNREADABLE` - the file exists but this key cannot read it (the
38
+ * key changed, or the database predates encryption). **Recommended recovery:
39
+ * `SqliteClient.deleteDatabase()`, then re-mount `<Chat>`.** The contents are a
40
+ * cache and are refetched from the server; the exception is actions queued while
41
+ * offline, which are lost - prompt the user first if that matters to you.
42
+ * - `ENCRYPTION_KEY_UNAVAILABLE` - the key could not be read (a locked keychain, a
43
+ * launch before first unlock). The database is untouched. **Recommended
44
+ * recovery: re-mount to retry** once the key is readable - for example when the
45
+ * app next returns to the foreground.
46
+ * - `SQLCIPHER_BUILD_MISSING` - the native build has no SQLCipher, so the key
47
+ * would be ignored and the database written in plaintext. Not recoverable at
48
+ * runtime; it needs the build flag above and a new binary. **Recommended
49
+ * recovery: re-mount with `enableOfflineSupport={false}`** so nothing is
50
+ * persisted unencrypted.
51
+ *
52
+ * The key must be **stable for the lifetime of the database file**. There is no
53
+ * rekey path, so a key that changes costs one `OFFLINE_DB_UNREADABLE` and a
54
+ * rebuild. To rotate without paying that, rotate a key-encryption key and keep the
55
+ * database key it protects unchanged (envelope encryption).
56
+ *
57
+ * Switching encryption on, or back off, leaves a database from the other mode on
58
+ * disk and so raises `OFFLINE_DB_UNREADABLE` once in each direction. Deleting it
59
+ * from your boundary is all that is needed.
60
+ */
61
+ getOfflineDbEncryptionKey?: () => Promise<string | undefined>;
18
62
  /**
19
63
  * Instance of Streami18n class should be provided to Chat component to enable internationalization.
20
64
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAgC,MAAM,OAAO,CAAC;AAW/E,OAAO,EAAE,gBAAgB,EAAgB,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,WAAW,EAA2B,MAAM,0CAA0C,CAAC;AAChG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AAYrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAK9D,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GACtD,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,sBAAsB,CAAC,CAAC,GAAG;IAC3E;;;;;OAKG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;CAC5B,CAAC;AAuJJ;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,IAAI,GAAI,OAAO,iBAAiB,CAAC,SAAS,CAAC,sBAIvD,CAAC"}
1
+ {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../src/components/Chat/Chat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,iBAAiB,EAAgC,MAAM,OAAO,CAAC;AAY/E,OAAO,EAAE,gBAAgB,EAAgB,MAAM,wCAAwC,CAAC;AAExF,OAAO,EAAE,WAAW,EAA2B,MAAM,0CAA0C,CAAC;AAChG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AAWrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAK9D,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GACtD,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,sBAAsB,CAAC,CAAC,GAAG;IAC3E;;;;;OAKG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,yBAAyB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;CAC5B,CAAC;AA6IJ;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,IAAI,GAAI,OAAO,iBAAiB,CAAC,SAAS,CAAC,sBAIvD,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { StreamChat } from 'stream-chat';
2
+ export type InitializeOfflineDbOptions = {
3
+ /**
4
+ * Encrypts the offline database at rest with SQLCipher, using the key this resolves
5
+ * to. Leaving it unset opens the database unencrypted, which is the default. See
6
+ * `ChatProps.getOfflineDbEncryptionKey` for the build flag it requires, the stability
7
+ * requirement, and how failures are surfaced.
8
+ */
9
+ getEncryptionKey?: () => Promise<string | undefined>;
10
+ };
11
+ export type UseInitializeOfflineDbParams = {
12
+ client: StreamChat;
13
+ /** Whether offline support is enabled at all. */
14
+ enabled: boolean;
15
+ options?: InitializeOfflineDbOptions;
16
+ userID?: string;
17
+ };
18
+ /**
19
+ * Attaches an offline database to the client and initializes it for a user.
20
+ *
21
+ * **Raises** whatever prevented the database from opening, from render, so an error
22
+ * boundary above the caller can decide what to do. The offline database is never
23
+ * silently downgraded, because an integration that asked for encryption must not end
24
+ * up with an unencrypted cache.
25
+ */
26
+ export declare const useInitializeOfflineDb: ({ client, enabled, options, userID, }: UseInitializeOfflineDbParams) => void;
27
+ //# sourceMappingURL=useInitializeOfflineDb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInitializeOfflineDb.d.ts","sourceRoot":"","sources":["../../../../../src/components/Chat/hooks/useInitializeOfflineDb.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM9C,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CACtD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,UAAU,CAAC;IACnB,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,GAAI,uCAKpC,4BAA4B,SAqE9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTranslatedMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/useTranslatedMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAMtE,eAAO,MAAM,oBAAoB,GAAI,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;YAkB65nB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aADx9nB,CAAC"}
1
+ {"version":3,"file":"useTranslatedMessage.d.ts","sourceRoot":"","sources":["../../../src/hooks/useTranslatedMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAMtE,eAAO,MAAM,oBAAoB,GAAI,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;YAkB4/nB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aADvjoB,CAAC"}
@@ -25,7 +25,7 @@ export { default as ptBRTranslations } from './i18n/pt-br.json';
25
25
  export { default as ruTranslations } from './i18n/ru.json';
26
26
  export { default as trTranslations } from './i18n/tr.json';
27
27
  export * from './state-store';
28
- export { SqliteClient } from './store/SqliteClient';
28
+ export { SqliteClient, SqliteClientError, type SqliteClientErrorCode } from './store/SqliteClient';
29
29
  export { OfflineDB } from './store/OfflineDB';
30
30
  export { version } from './version.json';
31
31
  import * as OfflineStoreApis from './store/apis';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,6IAA6I;AAC7I,OAAO,kBAAkB,CAAC;AAC1B,OAAO,aAAa,CAAC;AAErB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACpG,cAAc,YAAY,CAAC;AAE3B,cAAc,SAAS,CAAC;AAExB,cAAc,eAAe,CAAC;AAE9B,cAAc,eAAe,CAAC;AAE9B,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,eAAe,CAAC;AAE9B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE3D,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,OAAO,KAAK,gBAAgB,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,eAAO,MAAM,4BAA4B,qBAA8C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,6IAA6I;AAC7I,OAAO,kBAAkB,CAAC;AAC1B,OAAO,aAAa,CAAC;AAErB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACpG,cAAc,YAAY,CAAC;AAE3B,cAAc,SAAS,CAAC;AAExB,cAAc,eAAe,CAAC;AAE9B,cAAc,eAAe,CAAC;AAE9B,cAAc,iCAAiC,CAAC;AAChD,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,eAAe,CAAC;AAE9B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE3D,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC,OAAO,KAAK,gBAAgB,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,eAAO,MAAM,4BAA4B,qBAA8C,CAAC"}
@@ -1,8 +1,14 @@
1
1
  import { AbstractOfflineDB, ExecuteBatchDBQueriesType, StreamChat } from 'stream-chat';
2
2
  import type { DBGetAppSettingsType, DBGetChannelsForQueryType, DBGetChannelsType, DBGetLastSyncedAtType, DBUpsertAppSettingsType, DBUpsertUserSyncStatusType } from 'stream-chat';
3
+ import { SqliteClientError } from './SqliteClient';
3
4
  export declare class OfflineDB extends AbstractOfflineDB {
4
- constructor({ client }: {
5
+ constructor({ client, getEncryptionKey, }: {
5
6
  client: StreamChat;
7
+ /**
8
+ * Supplies the SQLCipher key the offline database is opened with. See
9
+ * {@link SqliteClient.getEncryptionKey} for the stability requirement.
10
+ */
11
+ getEncryptionKey?: () => Promise<string | undefined>;
6
12
  });
7
13
  upsertCidsForQuery: ({ cids, filters, execute, sort, }: {
8
14
  cids: string[];
@@ -119,6 +125,15 @@ export declare class OfflineDB extends AbstractOfflineDB {
119
125
  }) => Promise<boolean>;
120
126
  resetDB: () => Promise<void>;
121
127
  executeSqlBatch: (queries: import("./types").PreparedBatchQueries[]) => Promise<void>;
128
+ /**
129
+ * Why the most recent {@link initializeDB} failed, if it did.
130
+ *
131
+ * `AbstractOfflineDB.init` catches whatever `initializeDB` throws and does not
132
+ * re-throw it, so a caller has no way to see the reason. Recording it here on the
133
+ * way out gives the caller something to read back once `init` has settled. Kept on
134
+ * the instance rather than a static so two clients cannot overwrite each other.
135
+ */
136
+ initializationError: SqliteClientError | undefined;
122
137
  initializeDB: () => Promise<boolean>;
123
138
  }
124
139
  //# sourceMappingURL=OfflineDB.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OfflineDB.d.ts","sourceRoot":"","sources":["../../../src/store/OfflineDB.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,aAAa,CAAC;AAKrB,qBAAa,SAAU,SAAQ,iBAAiB;gBAClC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE;IAI9C,kBAAkB;;eALG,CAAC;eACtB,CAAD;YAAiB,CAAC;uDAI2B;IAE5C,cAAc;;eAGiB,CAAC;2BAAgC,CAAC;uDAH7B;IAGpC,oBAAoB,GAAI,mCAAmC,0BAA0B,kDACR;IAG7E,iBAAiB,GAAI,kCAAkC,uBAAuB,kDACL;IAEzE,UAAU;;eAjBK,CAAC;uDAiBY;IAE5B,WAAW;;eAVF,CAAA;uDAUqB;IAE9B,QAAQ;;;iBAhBR,CADF;8DAiB0B;IAExB,WAAW;;iBA9BW,CAAC;eACR,CAAC;uDA6Bc;IAE9B,iBAAiB;;eAzBZ,CAAA;uDAyBqC;IAE1C,WAAW;;;eAzBD,CAAC;uDAyBmB;IAE9B,cAAc;;eAnB8D,CAAC;uDAmBzC;IAEpC,aAAa;;;eA1BH,CAAC;uDA0BuB;IAElC,aAAa;;eAvBqB,CAAC;uDAuBD;IAGlC,WAAW,GAAI,kBAAkB,iBAAiB,2EACa;IAG/D,mBAAmB,GAAI,2BAA2B,yBAAyB,kFACF;IAEzE,iBAAiB,0BAAwB;IAGzC,eAAe,GAAI,YAAY,qBAAqB,iCACH;IAEjD,cAAc,GAAI,YAAY,oBAAoB,kEACF;IAEhD,YAAY;;eAzCT,CAAC;YAAwC,CAAA;aAAuB,CAAC;mEAyCvB;IAE7C,cAAc,4EAAsB;IAGpC,iBAAiB,QAAO,OAAO,CAAC,yBAAyB,CAAC,CAIxD;IAEF,iBAAiB;;uDAAyB;IAE1C,cAAc;;eAhEqB,CAAC;eAI5B,CAAC;uDA4D2B;IAEpC,YAAY;;;eArEb,CAAC;uDAqEgC;IAEhC,aAAa;;eA5EJ,CAAC;uDA4EwB;IAElC,wBAAwB;;oBAhFR,CAAC;eACF,CAAC;mDA+EwC;IAExD,gBAAgB;;eA9DQ,CAAC;uDA8De;IAExC,iBAAiB;;eAlFjB,CAAD;kDAkFuC;IAEtC,iBAAiB,6HAAyB;IAE1C,eAAe;iBAlFJ,CAAC;uDAkF0B;IAEtC,cAAc;;;eAtEX,CAAC;uDAsEgC;IAEpC,cAAc;;;eA5EW,CAAC;uDA4EU;IAEpC,aAAa;;2BAAqB;IAElC,OAAO,sBAAwB;IAE/B,eAAe,uEAAgC;IAE/C,YAAY,yBAAmC;CAChD"}
1
+ {"version":3,"file":"OfflineDB.d.ts","sourceRoot":"","sources":["../../../src/store/OfflineDB.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEjE,qBAAa,SAAU,SAAQ,iBAAiB;gBAClC,EACV,MAAM,EACN,gBAAgB,GACjB,EAAE;QACD,MAAM,EAAE,UAAU,CAAC;QACnB;;;WAGG;QACH,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;KACtD;IAQD,kBAAkB;;eAnBhB,CAAC;eAA2B,CAAC;YAC/B,CAAF;uDAkB8C;IAE5C,cAAc;;eAXiB,CAAC;2BAE9B,CAAF;uDASoC;IAGpC,oBAAoB,GAAI,mCAAmC,0BAA0B,kDACR;IAG7E,iBAAiB,GAAI,kCAAkC,uBAAuB,kDACL;IAEzE,UAAU;;eA/BZ,CADA;uDAgC8B;IAE5B,WAAW;;eA1B0D,CAAA;uDA0BvC;IAE9B,QAAQ;;;iBA9BN,CAAD;8DA8BuB;IAExB,WAAW;;iBA5CW,CAAC;eACR,CAAC;uDA2Cc;IAE9B,iBAAiB;;eAzCmC,CAAC;uDAyCX;IAE1C,WAAW;;;eAtCI,CAAC;uDAsCc;IAE9B,cAAc;;eA/BH,CAAC;uDA+BwB;IAEpC,aAAa;;;eAxCC,CAAC;uDAwCmB;IAElC,aAAa;;eArCqB,CAAC;uDAqCD;IAGlC,WAAW,GAAI,kBAAkB,iBAAiB,2EACa;IAG/D,mBAAmB,GAAI,2BAA2B,yBAAyB,kFACF;IAEzE,iBAAiB,0BAAwB;IAGzC,eAAe,GAAI,YAAY,qBAAqB,iCACH;IAEjD,cAAc,GAAI,YAAY,oBAAoB,kEACF;IAEhD,YAAY;;eArDL,CAAC;YAAuC,CAAC;aAAuB,CAAC;mEAqD3B;IAE7C,cAAc,4EAAsB;IAGpC,iBAAiB,QAAO,OAAO,CAAC,yBAAyB,CAAC,CAIxD;IAEF,iBAAiB;;uDAAyB;IAE1C,cAAc;;eA7EZ,CAAD;eAGW,CAAC;uDA0EuB;IAEpC,YAAY;;;eAnFb,CAAC;uDAmFgC;IAEhC,aAAa;;eA1FJ,CAAC;uDA0FwB;IAElC,wBAAwB;;oBA9FR,CAAC;eACF,CAAC;mDA6FwC;IAExD,gBAAgB;;eA1EY,CAAC;uDA0EW;IAExC,iBAAiB;;eAhGjB,CAAD;kDAgGuC;IAEtC,iBAAiB,6HAAyB;IAE1C,eAAe;iBAhGJ,CAAC;uDAgG0B;IAEtC,cAAc;;;eAlFP,CAAC;uDAkF4B;IAEpC,cAAc;;;eA1F+B,CAAC;uDA0FV;IAEpC,aAAa;;2BAAqB;IAElC,OAAO,sBAAwB;IAE/B,eAAe,uEAAgC;IAE/C;;;;;;;OAOG;IACH,mBAAmB,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAEnD,YAAY,yBAWV;CACH"}