stream-chat-react-native-core 5.0.0-beta.0 → 5.0.0-beta.3

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 (165) hide show
  1. package/lib/commonjs/components/Attachment/FileAttachment.js +16 -7
  2. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/Gallery.js +19 -17
  4. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/Giphy.js +10 -10
  6. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/utils/getGiphyMimeType.js +15 -0
  8. package/lib/commonjs/components/Attachment/utils/getGiphyMimeType.js.map +1 -0
  9. package/lib/commonjs/components/Channel/Channel.js +1 -1
  10. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  11. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js +16 -4
  12. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  13. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +12 -7
  14. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  15. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js +10 -6
  16. package/lib/commonjs/components/ChannelPreview/ChannelPreview.js.map +1 -1
  17. package/lib/commonjs/components/ImageGallery/ImageGallery.js +38 -30
  18. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  19. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +2 -2
  20. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  21. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js +6 -0
  22. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  23. package/lib/commonjs/components/Message/Message.js +6 -6
  24. package/lib/commonjs/components/Message/Message.js.map +1 -1
  25. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +7 -3
  26. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  27. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +1 -1
  28. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  29. package/lib/commonjs/components/MessageList/MessageList.js +5 -5
  30. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  31. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +13 -14
  32. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  33. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
  34. package/lib/commonjs/index.js +13 -1
  35. package/lib/commonjs/index.js.map +1 -1
  36. package/lib/commonjs/mock-builders/DB/mock.js +1 -13
  37. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  38. package/lib/commonjs/mock-builders/event/messageNew.js +2 -0
  39. package/lib/commonjs/mock-builders/event/messageNew.js.map +1 -1
  40. package/lib/commonjs/store/QuickSqliteClient.js +7 -3
  41. package/lib/commonjs/store/QuickSqliteClient.js.map +1 -1
  42. package/lib/commonjs/store/apis/getChannels.js +2 -15
  43. package/lib/commonjs/store/apis/getChannels.js.map +1 -1
  44. package/lib/commonjs/store/apis/getChannelsForFilterSort.js +37 -0
  45. package/lib/commonjs/store/apis/getChannelsForFilterSort.js.map +1 -0
  46. package/lib/commonjs/store/apis/index.js +264 -0
  47. package/lib/commonjs/store/apis/index.js.map +1 -0
  48. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js +1 -1
  49. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  50. package/lib/commonjs/store/apis/queries/selectChannels.js +2 -2
  51. package/lib/commonjs/store/apis/queries/selectChannels.js.map +1 -1
  52. package/lib/commonjs/store/sqlite-utils/appendWhereCluase.js +1 -2
  53. package/lib/commonjs/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  54. package/lib/commonjs/test-utils/BetterSqlite.js +54 -0
  55. package/lib/commonjs/test-utils/BetterSqlite.js.map +1 -0
  56. package/lib/commonjs/version.json +1 -1
  57. package/lib/module/components/Attachment/FileAttachment.js +16 -7
  58. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  59. package/lib/module/components/Attachment/Gallery.js +19 -17
  60. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  61. package/lib/module/components/Attachment/Giphy.js +10 -10
  62. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  63. package/lib/module/components/Attachment/utils/getGiphyMimeType.js +15 -0
  64. package/lib/module/components/Attachment/utils/getGiphyMimeType.js.map +1 -0
  65. package/lib/module/components/Channel/Channel.js +1 -1
  66. package/lib/module/components/Channel/Channel.js.map +1 -1
  67. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js +16 -4
  68. package/lib/module/components/ChannelList/hooks/listeners/useNewMessage.js.map +1 -1
  69. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +12 -7
  70. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  71. package/lib/module/components/ChannelPreview/ChannelPreview.js +10 -6
  72. package/lib/module/components/ChannelPreview/ChannelPreview.js.map +1 -1
  73. package/lib/module/components/ImageGallery/ImageGallery.js +38 -30
  74. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  75. package/lib/module/components/ImageGallery/components/ImageGrid.js +2 -2
  76. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  77. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js +6 -0
  78. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  79. package/lib/module/components/Message/Message.js +6 -6
  80. package/lib/module/components/Message/Message.js.map +1 -1
  81. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +7 -3
  82. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  83. package/lib/module/components/Message/MessageSimple/utils/renderText.js +1 -1
  84. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  85. package/lib/module/components/MessageList/MessageList.js +5 -5
  86. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  87. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +13 -14
  88. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  89. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
  90. package/lib/module/index.js +13 -1
  91. package/lib/module/index.js.map +1 -1
  92. package/lib/module/mock-builders/DB/mock.js +1 -13
  93. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  94. package/lib/module/mock-builders/event/messageNew.js +2 -0
  95. package/lib/module/mock-builders/event/messageNew.js.map +1 -1
  96. package/lib/module/store/QuickSqliteClient.js +7 -3
  97. package/lib/module/store/QuickSqliteClient.js.map +1 -1
  98. package/lib/module/store/apis/getChannels.js +2 -15
  99. package/lib/module/store/apis/getChannels.js.map +1 -1
  100. package/lib/module/store/apis/getChannelsForFilterSort.js +37 -0
  101. package/lib/module/store/apis/getChannelsForFilterSort.js.map +1 -0
  102. package/lib/module/store/apis/index.js +264 -0
  103. package/lib/module/store/apis/index.js.map +1 -0
  104. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js +1 -1
  105. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  106. package/lib/module/store/apis/queries/selectChannels.js +2 -2
  107. package/lib/module/store/apis/queries/selectChannels.js.map +1 -1
  108. package/lib/module/store/sqlite-utils/appendWhereCluase.js +1 -2
  109. package/lib/module/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  110. package/lib/module/test-utils/BetterSqlite.js +54 -0
  111. package/lib/module/test-utils/BetterSqlite.js.map +1 -0
  112. package/lib/module/version.json +1 -1
  113. package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
  114. package/lib/typescript/components/Attachment/Giphy.d.ts +1 -1
  115. package/lib/typescript/components/Attachment/utils/getGiphyMimeType.d.ts +6 -0
  116. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +1 -1
  117. package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts +2 -1
  118. package/lib/typescript/components/Message/Message.d.ts +9 -3
  119. package/lib/typescript/components/MessageList/MessageList.d.ts +1 -1
  120. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +9 -10
  121. package/lib/typescript/index.d.ts +2 -0
  122. package/lib/typescript/store/QuickSqliteClient.d.ts +4 -0
  123. package/lib/typescript/store/apis/getChannels.d.ts +13 -5
  124. package/lib/typescript/store/apis/getChannelsForFilterSort.d.ts +17 -0
  125. package/lib/typescript/store/apis/index.d.ts +20 -0
  126. package/lib/typescript/store/apis/queries/selectChannelIdsForFilterSort.d.ts +10 -1
  127. package/lib/typescript/{__tests__/utils → test-utils}/BetterSqlite.d.ts +1 -1
  128. package/package.json +5 -4
  129. package/src/__tests__/offline-feature.test.js +1 -2
  130. package/src/components/Attachment/FileAttachment.tsx +3 -0
  131. package/src/components/Attachment/Gallery.tsx +20 -17
  132. package/src/components/Attachment/Giphy.tsx +8 -8
  133. package/src/components/Attachment/utils/getGiphyMimeType.ts +13 -0
  134. package/src/components/Channel/Channel.tsx +1 -1
  135. package/src/components/ChannelList/__tests__/ChannelList.test.js +28 -0
  136. package/src/components/ChannelList/hooks/listeners/useNewMessage.ts +18 -5
  137. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +19 -10
  138. package/src/components/ChannelPreview/ChannelPreview.tsx +6 -3
  139. package/src/components/ImageGallery/ImageGallery.tsx +32 -19
  140. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +6 -6
  141. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +3 -3
  142. package/src/components/ImageGallery/__tests__/ImageGalleryGrid.test.tsx +3 -3
  143. package/src/components/ImageGallery/__tests__/ImageGalleryHeader.test.tsx +3 -3
  144. package/src/components/ImageGallery/components/ImageGrid.tsx +3 -3
  145. package/src/components/ImageGallery/hooks/useImageGalleryGestures.tsx +16 -0
  146. package/src/components/Message/Message.tsx +9 -1
  147. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +22 -2
  148. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +1 -0
  149. package/src/components/Message/MessageSimple/utils/renderText.tsx +1 -1
  150. package/src/components/MessageList/MessageList.tsx +6 -6
  151. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +4 -0
  152. package/src/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
  153. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +19 -14
  154. package/src/index.ts +3 -0
  155. package/src/mock-builders/DB/mock.ts +4 -9
  156. package/src/mock-builders/event/messageNew.js +2 -0
  157. package/src/store/QuickSqliteClient.ts +11 -7
  158. package/src/store/apis/getChannels.ts +17 -14
  159. package/src/store/apis/getChannelsForFilterSort.ts +45 -0
  160. package/src/store/apis/index.ts +20 -0
  161. package/src/store/apis/queries/selectChannelIdsForFilterSort.ts +12 -2
  162. package/src/store/apis/queries/selectChannels.ts +9 -3
  163. package/src/store/sqlite-utils/appendWhereCluase.ts +1 -2
  164. package/src/{__tests__/utils → test-utils}/BetterSqlite.js +1 -1
  165. package/src/version.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["QuickSqliteClient.ts"],"names":["require","e","QuickSqliteClient","dbVersion","dbName","DB_NAME","dbLocation","DB_LOCATION","getDbVersion","setDbVersion","version","openDB","sqlite","open","message","status","executeSql","DB_STATUS_ERROR","console","error","closeDB","executeSqlBatch","queries","res","JSON","stringify","query","params","rows","_array","dropTables","Object","keys","tables","map","table","deleteDatabase","Error","initializeDatabase","window","undefined","getUserPragmaVersion","updateUserPragmaVersion","q","reduce","queriesSoFar","tableName","push","result","user_version","resetDB"],"mappings":"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","sourcesContent":["/* eslint-disable no-underscore-dangle */\n// Importing following package just to avoid errors using sqlite global.\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\nimport types from 'react-native-quick-sqlite';\n\ntry {\n require('react-native-quick-sqlite');\n} catch (e) {\n // Failed for one of the reason\n // 1. Running on expo, where we don't support offline storage yet.\n // 2. Offline support is disabled, in which case this library is not installed.\n}\n\nimport { DB_LOCATION, DB_NAME, DB_STATUS_ERROR } from './constants';\nimport { tables } from './schema';\nimport { createCreateTableQuery } from './sqlite-utils/createCreateTableQuery';\nimport type { PreparedQueries, Table } from './types';\n\nexport class QuickSqliteClient {\n static dbVersion = 0;\n\n static dbName = DB_NAME;\n static dbLocation = DB_LOCATION;\n\n static getDbVersion = () => this.dbVersion;\n static setDbVersion = (version: number) => (this.dbVersion = version);\n\n static openDB = () => {\n const { message, status } = sqlite.open(this.dbName, this.dbLocation);\n sqlite.executeSql(this.dbName, `PRAGMA foreign_keys = ON`, []);\n\n if (status === DB_STATUS_ERROR) {\n console.error(`Error opening database ${this.dbName}: ${message}`);\n }\n };\n\n static closeDB = () => {\n const { message, status } = sqlite.open(this.dbName, this.dbLocation);\n\n if (status === DB_STATUS_ERROR) {\n console.error(`Error opening database ${this.dbName}: ${message}`);\n }\n };\n\n static executeSqlBatch = (queries: PreparedQueries[]) => {\n this.openDB();\n\n const res = sqlite.executeSqlBatch(DB_NAME, queries);\n\n if (res.status === 1) {\n console.error(`Query/queries failed: ${res.message} ${JSON.stringify(res)}`);\n }\n\n this.closeDB();\n };\n\n static executeSql = (query: string, params?: string[]) => {\n this.openDB();\n\n const { message, rows, status } = sqlite.executeSql(DB_NAME, query, params);\n\n this.closeDB();\n\n if (status === 1) {\n console.error(`Query/queries failed: ${message}: `, query);\n }\n\n return rows ? rows._array : [];\n };\n\n static dropTables = () => {\n const queries: PreparedQueries[] = Object.keys(tables).map((table) => [\n `DROP TABLE IF EXISTS ${table}`,\n [],\n ]);\n\n this.executeSqlBatch(queries);\n };\n\n static deleteDatabase = () => {\n const { message, status } = sqlite.delete(this.dbName, this.dbLocation);\n if (status === DB_STATUS_ERROR) {\n throw new Error(`Error deleting DB: ${message}`);\n }\n\n return true;\n };\n\n static initializeDatabase = () => {\n // @ts-ignore\n if (window.sqlite === undefined) {\n throw new Error(\n 'Please install \"react-native-quick-sqlite\" package to enable offline support',\n );\n }\n\n const version = this.getUserPragmaVersion();\n if (version !== this.dbVersion) {\n this.dropTables();\n this.updateUserPragmaVersion(this.dbVersion);\n }\n const q = (Object.keys(tables) as Table[]).reduce<PreparedQueries[]>(\n (queriesSoFar, tableName) => {\n queriesSoFar.push(...createCreateTableQuery(tableName));\n return queriesSoFar;\n },\n [],\n );\n\n this.executeSqlBatch(q);\n };\n\n static updateUserPragmaVersion = (version: number) => {\n this.openDB();\n\n sqlite.executeSql(DB_NAME, `PRAGMA user_version = ${version}`, []);\n\n this.closeDB();\n };\n\n static getUserPragmaVersion = () => {\n this.openDB();\n\n const { message, rows, status } = sqlite.executeSql(DB_NAME, `PRAGMA user_version`, []);\n\n this.closeDB();\n if (status === 1) {\n console.error(`Querying for user_version failed: ${message}`);\n }\n\n const result = rows ? rows._array : [];\n return result[0].user_version as number;\n };\n\n static resetDB = () => {\n this.dropTables();\n this.initializeDatabase();\n };\n}\n"]}
1
+ {"version":3,"sources":["QuickSqliteClient.ts"],"names":["sqlite","require","QuickSQLite","e","QuickSqliteClient","dbVersion","dbName","DB_NAME","dbLocation","DB_LOCATION","getDbVersion","setDbVersion","version","openDB","open","message","status","executeSql","DB_STATUS_ERROR","console","error","closeDB","executeSqlBatch","queries","res","JSON","stringify","query","params","rows","_array","dropTables","Object","keys","tables","map","table","deleteDatabase","Error","initializeDatabase","undefined","getUserPragmaVersion","updateUserPragmaVersion","q","reduce","queriesSoFar","tableName","push","result","user_version","resetDB"],"mappings":"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","sourcesContent":["/* eslint-disable no-underscore-dangle */\nimport type { QuickSQLite } from 'react-native-quick-sqlite';\nlet sqlite: typeof QuickSQLite;\n\ntry {\n sqlite = require('react-native-quick-sqlite')?.QuickSQLite;\n} catch (e) {\n // Failed for one of the reason\n // 1. Running on expo, where we don't support offline storage yet.\n // 2. Offline support is disabled, in which case this library is not installed.\n}\n\nimport { DB_LOCATION, DB_NAME, DB_STATUS_ERROR } from './constants';\nimport { tables } from './schema';\nimport { createCreateTableQuery } from './sqlite-utils/createCreateTableQuery';\nimport type { PreparedQueries, Table } from './types';\n\n/**\n * QuickSqliteClient takes care of any direct interaction with sqlite.\n * This way usage react-native-quick-sqlite package is scoped to a single class/file.\n */\nexport class QuickSqliteClient {\n static dbVersion = 2;\n\n static dbName = DB_NAME;\n static dbLocation = DB_LOCATION;\n\n static getDbVersion = () => this.dbVersion;\n // Force a specific db version. This is mainly useful for testsuit.\n static setDbVersion = (version: number) => (this.dbVersion = version);\n\n static openDB = () => {\n const { message, status } = sqlite.open(this.dbName, this.dbLocation);\n sqlite.executeSql(this.dbName, `PRAGMA foreign_keys = ON`, []);\n\n if (status === DB_STATUS_ERROR) {\n console.error(`Error opening database ${this.dbName}: ${message}`);\n }\n };\n\n static closeDB = () => {\n const { message, status } = sqlite.open(this.dbName, this.dbLocation);\n\n if (status === DB_STATUS_ERROR) {\n console.error(`Error opening database ${this.dbName}: ${message}`);\n }\n };\n\n static executeSqlBatch = (queries: PreparedQueries[]) => {\n this.openDB();\n\n const res = sqlite.executeSqlBatch(DB_NAME, queries);\n\n if (res.status === 1) {\n console.error(`Query/queries failed: ${res.message} ${JSON.stringify(res)}`);\n }\n\n this.closeDB();\n };\n\n static executeSql = (query: string, params?: string[]) => {\n this.openDB();\n\n const { message, rows, status } = sqlite.executeSql(DB_NAME, query, params);\n\n this.closeDB();\n\n if (status === 1) {\n console.error(`Query/queries failed: ${message}: `, query);\n }\n\n return rows ? rows._array : [];\n };\n\n static dropTables = () => {\n const queries: PreparedQueries[] = Object.keys(tables).map((table) => [\n `DROP TABLE IF EXISTS ${table}`,\n [],\n ]);\n\n this.executeSqlBatch(queries);\n };\n\n static deleteDatabase = () => {\n const { message, status } = sqlite.delete(this.dbName, this.dbLocation);\n if (status === DB_STATUS_ERROR) {\n throw new Error(`Error deleting DB: ${message}`);\n }\n\n return true;\n };\n\n static initializeDatabase = () => {\n // @ts-ignore\n if (sqlite === undefined) {\n throw new Error(\n 'Please install \"react-native-quick-sqlite\" package to enable offline support',\n );\n }\n\n const version = this.getUserPragmaVersion();\n\n if (version !== this.dbVersion) {\n this.dropTables();\n this.updateUserPragmaVersion(this.dbVersion);\n }\n const q = (Object.keys(tables) as Table[]).reduce<PreparedQueries[]>(\n (queriesSoFar, tableName) => {\n queriesSoFar.push(...createCreateTableQuery(tableName));\n return queriesSoFar;\n },\n [],\n );\n\n this.executeSqlBatch(q);\n };\n\n static updateUserPragmaVersion = (version: number) => {\n this.openDB();\n\n sqlite.executeSql(DB_NAME, `PRAGMA user_version = ${version}`, []);\n\n this.closeDB();\n };\n\n static getUserPragmaVersion = () => {\n this.openDB();\n\n const { message, rows, status } = sqlite.executeSql(DB_NAME, `PRAGMA user_version`, []);\n\n this.closeDB();\n if (status === 1) {\n console.error(`Querying for user_version failed: ${message}`);\n }\n\n const result = rows ? rows._array : [];\n return result[0].user_version as number;\n };\n\n static resetDB = () => {\n this.dropTables();\n this.initializeDatabase();\n };\n}\n"]}
@@ -13,26 +13,13 @@ var _getMembers = require("./getMembers");
13
13
 
14
14
  var _getReads = require("./getReads");
15
15
 
16
- var _selectChannelIdsForFilterSort = require("./queries/selectChannelIdsForFilterSort");
17
-
18
16
  var _selectChannels = require("./queries/selectChannels");
19
17
 
20
18
  var _mapStorableToChannel = require("../mappers/mapStorableToChannel");
21
19
 
22
20
  var getChannels = function getChannels(_ref) {
23
- var currentUserId = _ref.currentUserId,
24
- filters = _ref.filters,
25
- sort = _ref.sort;
26
-
27
- if (!filters && !sort) {
28
- console.warn('Please provide the query (filters/sort) to fetch channels from DB');
29
- return [];
30
- }
31
-
32
- var channelIds = (0, _selectChannelIdsForFilterSort.selectChannelIdsForFilterSort)({
33
- filters: filters,
34
- sort: sort
35
- });
21
+ var channelIds = _ref.channelIds,
22
+ currentUserId = _ref.currentUserId;
36
23
  var channels = (0, _selectChannels.selectChannels)({
37
24
  channelIds: channelIds
38
25
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["getChannels.ts"],"names":["getChannels","currentUserId","filters","sort","console","warn","channelIds","channels","cidVsMembers","cidVsReads","cidVsMessages","map","c","members","cid","messages","pinned_messages","read"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAUuC;AAAA,MAPhEC,aAOgE,QAPhEA,aAOgE;AAAA,MANhEC,OAMgE,QANhEA,OAMgE;AAAA,MALhEC,IAKgE,QALhEA,IAKgE;;AAChE,MAAI,CAACD,OAAD,IAAY,CAACC,IAAjB,EAAuB;AACrBC,IAAAA,OAAO,CAACC,IAAR,CAAa,mEAAb;AACA,WAAO,EAAP;AACD;;AAED,MAAMC,UAAU,GAAG,kEAA8B;AAAEJ,IAAAA,OAAO,EAAPA,OAAF;AAAWC,IAAAA,IAAI,EAAJA;AAAX,GAA9B,CAAnB;AACA,MAAMI,QAAQ,GAAG,oCAAe;AAAED,IAAAA,UAAU,EAAVA;AAAF,GAAf,CAAjB;AAEA,MAAME,YAAY,GAAG,4BAA+B;AAAEF,IAAAA,UAAU,EAAVA;AAAF,GAA/B,CAArB;AACA,MAAMG,UAAU,GAAG,wBAA6B;AAAEH,IAAAA,UAAU,EAAVA;AAAF,GAA7B,CAAnB;AACA,MAAMI,aAAa,GAAG,qCAAgC;AAAEJ,IAAAA,UAAU,EAAVA,UAAF;AAAcL,IAAAA,aAAa,EAAbA;AAAd,GAAhC,CAAtB;AAGA,SAAOM,QAAQ,CAACI,GAAT,CAAa,UAACC,CAAD;AAAA,yCACf,gDAAyCA,CAAzC,CADe;AAElBC,MAAAA,OAAO,EAAEL,YAAY,CAACI,CAAC,CAACE,GAAH,CAFH;AAGlBC,MAAAA,QAAQ,EAAEL,aAAa,CAACE,CAAC,CAACE,GAAH,CAHL;AAIlBE,MAAAA,eAAe,EAAE,EAJC;AAKlBC,MAAAA,IAAI,EAAER,UAAU,CAACG,CAAC,CAACE,GAAH;AALE;AAAA,GAAb,CAAP;AAOD,CA/BM","sourcesContent":["import type { DefaultStreamChatGenerics } from 'src/types/types';\nimport type { ChannelAPIResponse, ChannelFilters, ChannelSort } from 'stream-chat';\n\nimport { getMessages } from './getChannelMessages';\nimport { getMembers } from './getMembers';\nimport { getReads } from './getReads';\nimport { selectChannelIdsForFilterSort } from './queries/selectChannelIdsForFilterSort';\nimport { selectChannels } from './queries/selectChannels';\n\nimport { mapStorableToChannel } from '../mappers/mapStorableToChannel';\n\nexport const getChannels = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n currentUserId,\n filters,\n sort,\n}: {\n currentUserId: string;\n filters?: ChannelFilters<StreamChatGenerics>;\n sort?: ChannelSort<StreamChatGenerics>;\n}): Omit<ChannelAPIResponse<StreamChatGenerics>, 'duration'>[] => {\n if (!filters && !sort) {\n console.warn('Please provide the query (filters/sort) to fetch channels from DB');\n return [];\n }\n\n const channelIds = selectChannelIdsForFilterSort({ filters, sort });\n const channels = selectChannels({ channelIds });\n\n const cidVsMembers = getMembers<StreamChatGenerics>({ channelIds });\n const cidVsReads = getReads<StreamChatGenerics>({ channelIds });\n const cidVsMessages = getMessages<StreamChatGenerics>({ channelIds, currentUserId });\n\n // Enrich the channels with state\n return channels.map((c) => ({\n ...mapStorableToChannel<StreamChatGenerics>(c),\n members: cidVsMembers[c.cid],\n messages: cidVsMessages[c.cid],\n pinned_messages: [],\n read: cidVsReads[c.cid],\n }));\n};\n"]}
1
+ {"version":3,"sources":["getChannels.ts"],"names":["getChannels","channelIds","currentUserId","channels","cidVsMembers","cidVsReads","cidVsMessages","map","c","members","cid","messages","pinned_messages","read"],"mappings":";;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AAGA;;AAWO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQuC;AAAA,MALhEC,UAKgE,QALhEA,UAKgE;AAAA,MAJhEC,aAIgE,QAJhEA,aAIgE;AAChE,MAAMC,QAAQ,GAAG,oCAAe;AAAEF,IAAAA,UAAU,EAAVA;AAAF,GAAf,CAAjB;AAEA,MAAMG,YAAY,GAAG,4BAA+B;AAAEH,IAAAA,UAAU,EAAVA;AAAF,GAA/B,CAArB;AACA,MAAMI,UAAU,GAAG,wBAA6B;AAAEJ,IAAAA,UAAU,EAAVA;AAAF,GAA7B,CAAnB;AACA,MAAMK,aAAa,GAAG,qCAAgC;AACpDL,IAAAA,UAAU,EAAVA,UADoD;AAEpDC,IAAAA,aAAa,EAAbA;AAFoD,GAAhC,CAAtB;AAMA,SAAOC,QAAQ,CAACI,GAAT,CAAa,UAACC,CAAD;AAAA,yCACf,gDAAyCA,CAAzC,CADe;AAElBC,MAAAA,OAAO,EAAEL,YAAY,CAACI,CAAC,CAACE,GAAH,CAFH;AAGlBC,MAAAA,QAAQ,EAAEL,aAAa,CAACE,CAAC,CAACE,GAAH,CAHL;AAIlBE,MAAAA,eAAe,EAAE,EAJC;AAKlBC,MAAAA,IAAI,EAAER,UAAU,CAACG,CAAC,CAACE,GAAH;AALE;AAAA,GAAb,CAAP;AAOD,CA1BM","sourcesContent":["import type { ChannelAPIResponse } from 'stream-chat';\n\nimport { getMessages } from './getChannelMessages';\nimport { getMembers } from './getMembers';\nimport { getReads } from './getReads';\nimport { selectChannels } from './queries/selectChannels';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { mapStorableToChannel } from '../mappers/mapStorableToChannel';\n\n/**\n * Returns the list of channels with state enriched for given channel ids.\n *\n * @param {Object} param\n * @param {Array} param.channelIds List of channel ids to fetch.\n * @param {Array} param.currentUserId Id of the current logged in user.\n *\n * @returns {Array} Channels with enriched state.\n */\nexport const getChannels = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n channelIds,\n currentUserId,\n}: {\n channelIds: string[];\n currentUserId: string;\n}): Omit<ChannelAPIResponse<StreamChatGenerics>, 'duration'>[] => {\n const channels = selectChannels({ channelIds });\n\n const cidVsMembers = getMembers<StreamChatGenerics>({ channelIds });\n const cidVsReads = getReads<StreamChatGenerics>({ channelIds });\n const cidVsMessages = getMessages<StreamChatGenerics>({\n channelIds,\n currentUserId,\n });\n\n // Enrich the channels with state\n return channels.map((c) => ({\n ...mapStorableToChannel<StreamChatGenerics>(c),\n members: cidVsMembers[c.cid],\n messages: cidVsMessages[c.cid],\n pinned_messages: [],\n read: cidVsReads[c.cid],\n }));\n};\n"]}
@@ -0,0 +1,37 @@
1
+ Object.defineProperty(exports, "__esModule", {
2
+ value: true
3
+ });
4
+ exports.getChannelsForFilterSort = void 0;
5
+
6
+ var _getChannels = require("./getChannels");
7
+
8
+ var _selectChannelIdsForFilterSort = require("./queries/selectChannelIdsForFilterSort");
9
+
10
+ var getChannelsForFilterSort = function getChannelsForFilterSort(_ref) {
11
+ var currentUserId = _ref.currentUserId,
12
+ filters = _ref.filters,
13
+ sort = _ref.sort;
14
+
15
+ if (!filters && !sort) {
16
+ console.warn('Please provide the query (filters/sort) to fetch channels from DB');
17
+ return null;
18
+ }
19
+
20
+ var channelIds = (0, _selectChannelIdsForFilterSort.selectChannelIdsForFilterSort)({
21
+ filters: filters,
22
+ sort: sort
23
+ });
24
+ if (!channelIds) return null;
25
+
26
+ if (channelIds.length === 0) {
27
+ return [];
28
+ }
29
+
30
+ return (0, _getChannels.getChannels)({
31
+ channelIds: channelIds,
32
+ currentUserId: currentUserId
33
+ });
34
+ };
35
+
36
+ exports.getChannelsForFilterSort = getChannelsForFilterSort;
37
+ //# sourceMappingURL=getChannelsForFilterSort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["getChannelsForFilterSort.ts"],"names":["getChannelsForFilterSort","currentUserId","filters","sort","console","warn","channelIds","length"],"mappings":";;;;;AAGA;;AACA;;AAYO,IAAMA,wBAAwB,GAAG,SAA3BA,wBAA2B,OAUiC;AAAA,MAPvEC,aAOuE,QAPvEA,aAOuE;AAAA,MANvEC,OAMuE,QANvEA,OAMuE;AAAA,MALvEC,IAKuE,QALvEA,IAKuE;;AACvE,MAAI,CAACD,OAAD,IAAY,CAACC,IAAjB,EAAuB;AACrBC,IAAAA,OAAO,CAACC,IAAR,CAAa,mEAAb;AACA,WAAO,IAAP;AACD;;AAED,MAAMC,UAAU,GAAG,kEAA8B;AAAEJ,IAAAA,OAAO,EAAPA,OAAF;AAAWC,IAAAA,IAAI,EAAJA;AAAX,GAA9B,CAAnB;AAEA,MAAI,CAACG,UAAL,EAAiB,OAAO,IAAP;;AAEjB,MAAIA,UAAU,CAACC,MAAX,KAAsB,CAA1B,EAA6B;AAC3B,WAAO,EAAP;AACD;;AAED,SAAO,8BAAY;AACjBD,IAAAA,UAAU,EAAVA,UADiB;AAEjBL,IAAAA,aAAa,EAAbA;AAFiB,GAAZ,CAAP;AAID,CA5BM","sourcesContent":["import type { DefaultStreamChatGenerics } from 'src/types/types';\nimport type { ChannelAPIResponse, ChannelFilters, ChannelSort } from 'stream-chat';\n\nimport { getChannels } from './getChannels';\nimport { selectChannelIdsForFilterSort } from './queries/selectChannelIdsForFilterSort';\n\n/**\n * Gets the channels from database for given filter and sort query.\n *\n * @param {Object} param\n * @param {string} param.currentUserId Id of current logged in user\n * @param {Object} param.filters Filters for channels https://getstream.io/chat/docs/javascript/query_channels/?language=javascript&q=su#query-parameters\n * @param {Object} param.sort Sort for channels https://getstream.io/chat/docs/javascript/query_channels/?language=javascript&q=su#query-parameters\n *\n * @returns Array of channels corresponding to filters & sort. Returns null if filters + sort query doesn't exist in \"channelQueries\" table.\n */\nexport const getChannelsForFilterSort = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n currentUserId,\n filters,\n sort,\n}: {\n currentUserId: string;\n filters?: ChannelFilters<StreamChatGenerics>;\n sort?: ChannelSort<StreamChatGenerics>;\n}): Omit<ChannelAPIResponse<StreamChatGenerics>, 'duration'>[] | null => {\n if (!filters && !sort) {\n console.warn('Please provide the query (filters/sort) to fetch channels from DB');\n return null;\n }\n\n const channelIds = selectChannelIdsForFilterSort({ filters, sort });\n\n if (!channelIds) return null;\n\n if (channelIds.length === 0) {\n return [];\n }\n\n return getChannels({\n channelIds,\n currentUserId,\n });\n};\n"]}
@@ -0,0 +1,264 @@
1
+ Object.defineProperty(exports, "__esModule", {
2
+ value: true
3
+ });
4
+
5
+ var _deleteChannel = require("./deleteChannel");
6
+
7
+ Object.keys(_deleteChannel).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _deleteChannel[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _deleteChannel[key];
14
+ }
15
+ });
16
+ });
17
+
18
+ var _deleteMember = require("./deleteMember");
19
+
20
+ Object.keys(_deleteMember).forEach(function (key) {
21
+ if (key === "default" || key === "__esModule") return;
22
+ if (key in exports && exports[key] === _deleteMember[key]) return;
23
+ Object.defineProperty(exports, key, {
24
+ enumerable: true,
25
+ get: function get() {
26
+ return _deleteMember[key];
27
+ }
28
+ });
29
+ });
30
+
31
+ var _deleteMessagesForChannel = require("./deleteMessagesForChannel");
32
+
33
+ Object.keys(_deleteMessagesForChannel).forEach(function (key) {
34
+ if (key === "default" || key === "__esModule") return;
35
+ if (key in exports && exports[key] === _deleteMessagesForChannel[key]) return;
36
+ Object.defineProperty(exports, key, {
37
+ enumerable: true,
38
+ get: function get() {
39
+ return _deleteMessagesForChannel[key];
40
+ }
41
+ });
42
+ });
43
+
44
+ var _deleteReactions = require("./deleteReactions");
45
+
46
+ Object.keys(_deleteReactions).forEach(function (key) {
47
+ if (key === "default" || key === "__esModule") return;
48
+ if (key in exports && exports[key] === _deleteReactions[key]) return;
49
+ Object.defineProperty(exports, key, {
50
+ enumerable: true,
51
+ get: function get() {
52
+ return _deleteReactions[key];
53
+ }
54
+ });
55
+ });
56
+
57
+ var _getAllChannelIds = require("./getAllChannelIds");
58
+
59
+ Object.keys(_getAllChannelIds).forEach(function (key) {
60
+ if (key === "default" || key === "__esModule") return;
61
+ if (key in exports && exports[key] === _getAllChannelIds[key]) return;
62
+ Object.defineProperty(exports, key, {
63
+ enumerable: true,
64
+ get: function get() {
65
+ return _getAllChannelIds[key];
66
+ }
67
+ });
68
+ });
69
+
70
+ var _getChannelMessages = require("./getChannelMessages");
71
+
72
+ Object.keys(_getChannelMessages).forEach(function (key) {
73
+ if (key === "default" || key === "__esModule") return;
74
+ if (key in exports && exports[key] === _getChannelMessages[key]) return;
75
+ Object.defineProperty(exports, key, {
76
+ enumerable: true,
77
+ get: function get() {
78
+ return _getChannelMessages[key];
79
+ }
80
+ });
81
+ });
82
+
83
+ var _getChannels = require("./getChannels");
84
+
85
+ Object.keys(_getChannels).forEach(function (key) {
86
+ if (key === "default" || key === "__esModule") return;
87
+ if (key in exports && exports[key] === _getChannels[key]) return;
88
+ Object.defineProperty(exports, key, {
89
+ enumerable: true,
90
+ get: function get() {
91
+ return _getChannels[key];
92
+ }
93
+ });
94
+ });
95
+
96
+ var _getChannelsForFilterSort = require("./getChannelsForFilterSort");
97
+
98
+ Object.keys(_getChannelsForFilterSort).forEach(function (key) {
99
+ if (key === "default" || key === "__esModule") return;
100
+ if (key in exports && exports[key] === _getChannelsForFilterSort[key]) return;
101
+ Object.defineProperty(exports, key, {
102
+ enumerable: true,
103
+ get: function get() {
104
+ return _getChannelsForFilterSort[key];
105
+ }
106
+ });
107
+ });
108
+
109
+ var _getLastSyncedAt = require("./getLastSyncedAt");
110
+
111
+ Object.keys(_getLastSyncedAt).forEach(function (key) {
112
+ if (key === "default" || key === "__esModule") return;
113
+ if (key in exports && exports[key] === _getLastSyncedAt[key]) return;
114
+ Object.defineProperty(exports, key, {
115
+ enumerable: true,
116
+ get: function get() {
117
+ return _getLastSyncedAt[key];
118
+ }
119
+ });
120
+ });
121
+
122
+ var _getMembers = require("./getMembers");
123
+
124
+ Object.keys(_getMembers).forEach(function (key) {
125
+ if (key === "default" || key === "__esModule") return;
126
+ if (key in exports && exports[key] === _getMembers[key]) return;
127
+ Object.defineProperty(exports, key, {
128
+ enumerable: true,
129
+ get: function get() {
130
+ return _getMembers[key];
131
+ }
132
+ });
133
+ });
134
+
135
+ var _getReads = require("./getReads");
136
+
137
+ Object.keys(_getReads).forEach(function (key) {
138
+ if (key === "default" || key === "__esModule") return;
139
+ if (key in exports && exports[key] === _getReads[key]) return;
140
+ Object.defineProperty(exports, key, {
141
+ enumerable: true,
142
+ get: function get() {
143
+ return _getReads[key];
144
+ }
145
+ });
146
+ });
147
+
148
+ var _updateMessage = require("./updateMessage");
149
+
150
+ Object.keys(_updateMessage).forEach(function (key) {
151
+ if (key === "default" || key === "__esModule") return;
152
+ if (key in exports && exports[key] === _updateMessage[key]) return;
153
+ Object.defineProperty(exports, key, {
154
+ enumerable: true,
155
+ get: function get() {
156
+ return _updateMessage[key];
157
+ }
158
+ });
159
+ });
160
+
161
+ var _updateReaction = require("./updateReaction");
162
+
163
+ Object.keys(_updateReaction).forEach(function (key) {
164
+ if (key === "default" || key === "__esModule") return;
165
+ if (key in exports && exports[key] === _updateReaction[key]) return;
166
+ Object.defineProperty(exports, key, {
167
+ enumerable: true,
168
+ get: function get() {
169
+ return _updateReaction[key];
170
+ }
171
+ });
172
+ });
173
+
174
+ var _upsertChannelData = require("./upsertChannelData");
175
+
176
+ Object.keys(_upsertChannelData).forEach(function (key) {
177
+ if (key === "default" || key === "__esModule") return;
178
+ if (key in exports && exports[key] === _upsertChannelData[key]) return;
179
+ Object.defineProperty(exports, key, {
180
+ enumerable: true,
181
+ get: function get() {
182
+ return _upsertChannelData[key];
183
+ }
184
+ });
185
+ });
186
+
187
+ var _upsertChannels = require("./upsertChannels");
188
+
189
+ Object.keys(_upsertChannels).forEach(function (key) {
190
+ if (key === "default" || key === "__esModule") return;
191
+ if (key in exports && exports[key] === _upsertChannels[key]) return;
192
+ Object.defineProperty(exports, key, {
193
+ enumerable: true,
194
+ get: function get() {
195
+ return _upsertChannels[key];
196
+ }
197
+ });
198
+ });
199
+
200
+ var _upsertCidsForQuery = require("./upsertCidsForQuery");
201
+
202
+ Object.keys(_upsertCidsForQuery).forEach(function (key) {
203
+ if (key === "default" || key === "__esModule") return;
204
+ if (key in exports && exports[key] === _upsertCidsForQuery[key]) return;
205
+ Object.defineProperty(exports, key, {
206
+ enumerable: true,
207
+ get: function get() {
208
+ return _upsertCidsForQuery[key];
209
+ }
210
+ });
211
+ });
212
+
213
+ var _upsertLastSyncedAt = require("./upsertLastSyncedAt");
214
+
215
+ Object.keys(_upsertLastSyncedAt).forEach(function (key) {
216
+ if (key === "default" || key === "__esModule") return;
217
+ if (key in exports && exports[key] === _upsertLastSyncedAt[key]) return;
218
+ Object.defineProperty(exports, key, {
219
+ enumerable: true,
220
+ get: function get() {
221
+ return _upsertLastSyncedAt[key];
222
+ }
223
+ });
224
+ });
225
+
226
+ var _upsertMembers = require("./upsertMembers");
227
+
228
+ Object.keys(_upsertMembers).forEach(function (key) {
229
+ if (key === "default" || key === "__esModule") return;
230
+ if (key in exports && exports[key] === _upsertMembers[key]) return;
231
+ Object.defineProperty(exports, key, {
232
+ enumerable: true,
233
+ get: function get() {
234
+ return _upsertMembers[key];
235
+ }
236
+ });
237
+ });
238
+
239
+ var _upsertMessages = require("./upsertMessages");
240
+
241
+ Object.keys(_upsertMessages).forEach(function (key) {
242
+ if (key === "default" || key === "__esModule") return;
243
+ if (key in exports && exports[key] === _upsertMessages[key]) return;
244
+ Object.defineProperty(exports, key, {
245
+ enumerable: true,
246
+ get: function get() {
247
+ return _upsertMessages[key];
248
+ }
249
+ });
250
+ });
251
+
252
+ var _upsertReads = require("./upsertReads");
253
+
254
+ Object.keys(_upsertReads).forEach(function (key) {
255
+ if (key === "default" || key === "__esModule") return;
256
+ if (key in exports && exports[key] === _upsertReads[key]) return;
257
+ Object.defineProperty(exports, key, {
258
+ enumerable: true,
259
+ get: function get() {
260
+ return _upsertReads[key];
261
+ }
262
+ });
263
+ });
264
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './deleteChannel';\nexport * from './deleteMember';\nexport * from './deleteMessagesForChannel';\nexport * from './deleteReactions';\nexport * from './getAllChannelIds';\nexport * from './getChannelMessages';\nexport * from './getChannels';\nexport * from './getChannelsForFilterSort';\nexport * from './getLastSyncedAt';\nexport * from './getMembers';\nexport * from './getReads';\nexport * from './updateMessage';\nexport * from './updateReaction';\nexport * from './upsertChannelData';\nexport * from './upsertChannels';\nexport * from './upsertCidsForQuery';\nexport * from './upsertLastSyncedAt';\nexport * from './upsertMembers';\nexport * from './upsertMessages';\nexport * from './upsertReads';\n"]}
@@ -24,7 +24,7 @@ var selectChannelIdsForFilterSort = function selectChannelIdsForFilterSort(_ref)
24
24
  }));
25
25
 
26
26
  var channelIdsStr = results == null ? void 0 : (_results$ = results[0]) == null ? void 0 : _results$.cids;
27
- return channelIdsStr ? JSON.parse(channelIdsStr) : [];
27
+ return channelIdsStr ? JSON.parse(channelIdsStr) : null;
28
28
  };
29
29
 
30
30
  exports.selectChannelIdsForFilterSort = selectChannelIdsForFilterSort;
@@ -1 +1 @@
1
- {"version":3,"sources":["selectChannelIdsForFilterSort.ts"],"names":["selectChannelIdsForFilterSort","filters","sort","query","results","QuickSqliteClient","executeSql","apply","id","channelIdsStr","cids","JSON","parse"],"mappings":";;;;;AAGA;;AACA;;AAEA;;AAEO,IAAMA,6BAA6B,GAAG,SAAhCA,6BAAgC,OAQ7B;AAAA;;AAAA,MALdC,OAKc,QALdA,OAKc;AAAA,MAJdC,IAIc,QAJdA,IAIc;AACd,MAAMC,KAAK,GAAG,wDAAyB;AAAEF,IAAAA,OAAO,EAAPA,OAAF;AAAWC,IAAAA,IAAI,EAAJA;AAAX,GAAzB,CAAd;;AACA,MAAME,OAAO,GAAGC,qCAAkBC,UAAlB,CAA6BC,KAA7B,CACd,IADc,EAEd,0CAAkB,gBAAlB,EAAoC,CAAC,GAAD,CAApC,EAA2C;AACzCC,IAAAA,EAAE,EAAEL;AADqC,GAA3C,CAFc,CAAhB;;AAOA,MAAMM,aAAa,GAAGL,OAAH,iCAAGA,OAAO,CAAG,CAAH,CAAV,qBAAG,UAAcM,IAApC;AACA,SAAOD,aAAa,GAAGE,IAAI,CAACC,KAAL,CAAWH,aAAX,CAAH,GAA+B,EAAnD;AACD,CAnBM","sourcesContent":["import type { ChannelFilters, ChannelSort } from 'stream-chat';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { QuickSqliteClient } from '../../QuickSqliteClient';\nimport { createSelectQuery } from '../../sqlite-utils/createSelectQuery';\n\nimport { convertFilterSortToQuery } from '../utils/convertFilterSortToQuery';\n\nexport const selectChannelIdsForFilterSort = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n filters,\n sort,\n}: {\n filters?: ChannelFilters<StreamChatGenerics>;\n sort?: ChannelSort<StreamChatGenerics>;\n}): string[] => {\n const query = convertFilterSortToQuery({ filters, sort });\n const results = QuickSqliteClient.executeSql.apply(\n null,\n createSelectQuery('channelQueries', ['*'], {\n id: query,\n }),\n );\n\n const channelIdsStr = results?.[0]?.cids;\n return channelIdsStr ? JSON.parse(channelIdsStr) : [];\n};\n"]}
1
+ {"version":3,"sources":["selectChannelIdsForFilterSort.ts"],"names":["selectChannelIdsForFilterSort","filters","sort","query","results","QuickSqliteClient","executeSql","apply","id","channelIdsStr","cids","JSON","parse"],"mappings":";;;;;AAGA;;AACA;;AAEA;;AAYO,IAAMA,6BAA6B,GAAG,SAAhCA,6BAAgC,OAQtB;AAAA;;AAAA,MALrBC,OAKqB,QALrBA,OAKqB;AAAA,MAJrBC,IAIqB,QAJrBA,IAIqB;AACrB,MAAMC,KAAK,GAAG,wDAAyB;AAAEF,IAAAA,OAAO,EAAPA,OAAF;AAAWC,IAAAA,IAAI,EAAJA;AAAX,GAAzB,CAAd;;AACA,MAAME,OAAO,GAAGC,qCAAkBC,UAAlB,CAA6BC,KAA7B,CACd,IADc,EAEd,0CAAkB,gBAAlB,EAAoC,CAAC,GAAD,CAApC,EAA2C;AACzCC,IAAAA,EAAE,EAAEL;AADqC,GAA3C,CAFc,CAAhB;;AAOA,MAAMM,aAAa,GAAGL,OAAH,iCAAGA,OAAO,CAAG,CAAH,CAAV,qBAAG,UAAcM,IAApC;AACA,SAAOD,aAAa,GAAGE,IAAI,CAACC,KAAL,CAAWH,aAAX,CAAH,GAA+B,IAAnD;AACD,CAnBM","sourcesContent":["import type { ChannelFilters, ChannelSort } from 'stream-chat';\n\nimport type { DefaultStreamChatGenerics } from '../../../types/types';\nimport { QuickSqliteClient } from '../../QuickSqliteClient';\nimport { createSelectQuery } from '../../sqlite-utils/createSelectQuery';\n\nimport { convertFilterSortToQuery } from '../utils/convertFilterSortToQuery';\n\n/**\n * Gets the channel ids from database for given filter and sort query.\n *\n * @param {Object} param\n * @param {Object} param.filters Filters for channels https://getstream.io/chat/docs/javascript/query_channels/?language=javascript&q=su#query-parameters\n * @param {Object} param.sort Sort for channels https://getstream.io/chat/docs/javascript/query_channels/?language=javascript&q=su#query-parameters\n *\n * @returns Array of channel ids corresponding to filters & sort. Returns null if filters + sort query doesn't exist in \"channelQueries\" table.\n */\n\nexport const selectChannelIdsForFilterSort = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n filters,\n sort,\n}: {\n filters?: ChannelFilters<StreamChatGenerics>;\n sort?: ChannelSort<StreamChatGenerics>;\n}): string[] | null => {\n const query = convertFilterSortToQuery({ filters, sort });\n const results = QuickSqliteClient.executeSql.apply(\n null,\n createSelectQuery('channelQueries', ['*'], {\n id: query,\n }),\n );\n\n const channelIdsStr = results?.[0]?.cids;\n return channelIdsStr ? JSON.parse(channelIdsStr) : null;\n};\n"]}
@@ -11,9 +11,9 @@ var selectChannels = function selectChannels() {
11
11
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
12
12
  channelIds = _ref.channelIds;
13
13
 
14
- var query = (0, _createSelectQuery.createSelectQuery)('channels', ['*'], {
14
+ var query = (0, _createSelectQuery.createSelectQuery)('channels', ['*'], channelIds ? {
15
15
  cid: channelIds
16
- });
16
+ } : undefined);
17
17
 
18
18
  var result = _QuickSqliteClient.QuickSqliteClient.executeSql.apply(null, query);
19
19
 
@@ -1 +1 @@
1
- {"version":3,"sources":["selectChannels.ts"],"names":["selectChannels","channelIds","query","cid","result","QuickSqliteClient","executeSql","apply","sort","a","b","indexOf"],"mappings":";;;;;AAAA;;AACA;;AAGO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,GAE0C;AAAA,iFAAzC,EAAyC;AAAA,MADtEC,UACsE,QADtEA,UACsE;;AACtE,MAAMC,KAAK,GAAG,0CAAkB,UAAlB,EAA8B,CAAC,GAAD,CAA9B,EAAqC;AACjDC,IAAAA,GAAG,EAAEF;AAD4C,GAArC,CAAd;;AAIA,MAAMG,MAAM,GAAGC,qCAAkBC,UAAlB,CAA6BC,KAA7B,CAAmC,IAAnC,EAAyCL,KAAzC,CAAf;;AAEA,MAAID,UAAJ,EAAgB;AACd,WAAOG,MAAM,CAACI,IAAP,CAAY,UAACC,CAAD,EAAIC,CAAJ;AAAA,aAAUT,UAAU,CAACU,OAAX,CAAmBF,CAAC,CAACN,GAArB,IAA4BF,UAAU,CAACU,OAAX,CAAmBD,CAAC,CAACP,GAArB,CAAtC;AAAA,KAAZ,CAAP;AACD,GAFD,MAEO;AACL,WAAOC,MAAP;AACD;AACF,CAdM","sourcesContent":["import { QuickSqliteClient } from '../../QuickSqliteClient';\nimport { createSelectQuery } from '../../sqlite-utils/createSelectQuery';\nimport type { TableRowJoinedUser } from '../../types';\n\nexport const selectChannels = ({\n channelIds,\n}: { channelIds?: string[] } = {}): TableRowJoinedUser<'channels'>[] => {\n const query = createSelectQuery('channels', ['*'], {\n cid: channelIds,\n });\n\n const result = QuickSqliteClient.executeSql.apply(null, query);\n\n if (channelIds) {\n return result.sort((a, b) => channelIds.indexOf(a.cid) - channelIds.indexOf(b.cid));\n } else {\n return result;\n }\n};\n"]}
1
+ {"version":3,"sources":["selectChannels.ts"],"names":["selectChannels","channelIds","query","cid","undefined","result","QuickSqliteClient","executeSql","apply","sort","a","b","indexOf"],"mappings":";;;;;AAAA;;AACA;;AAGO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,GAE0C;AAAA,iFAAzC,EAAyC;AAAA,MADtEC,UACsE,QADtEA,UACsE;;AACtE,MAAMC,KAAK,GAAG,0CACZ,UADY,EAEZ,CAAC,GAAD,CAFY,EAGZD,UAAU,GACN;AACEE,IAAAA,GAAG,EAAEF;AADP,GADM,GAING,SAPQ,CAAd;;AAUA,MAAMC,MAAM,GAAGC,qCAAkBC,UAAlB,CAA6BC,KAA7B,CAAmC,IAAnC,EAAyCN,KAAzC,CAAf;;AAEA,MAAID,UAAJ,EAAgB;AACd,WAAOI,MAAM,CAACI,IAAP,CAAY,UAACC,CAAD,EAAIC,CAAJ;AAAA,aAAUV,UAAU,CAACW,OAAX,CAAmBF,CAAC,CAACP,GAArB,IAA4BF,UAAU,CAACW,OAAX,CAAmBD,CAAC,CAACR,GAArB,CAAtC;AAAA,KAAZ,CAAP;AACD,GAFD,MAEO;AACL,WAAOE,MAAP;AACD;AACF,CApBM","sourcesContent":["import { QuickSqliteClient } from '../../QuickSqliteClient';\nimport { createSelectQuery } from '../../sqlite-utils/createSelectQuery';\nimport type { TableRowJoinedUser } from '../../types';\n\nexport const selectChannels = ({\n channelIds,\n}: { channelIds?: string[] } = {}): TableRowJoinedUser<'channels'>[] => {\n const query = createSelectQuery(\n 'channels',\n ['*'],\n channelIds\n ? {\n cid: channelIds,\n }\n : undefined,\n );\n\n const result = QuickSqliteClient.executeSql.apply(null, query);\n\n if (channelIds) {\n return result.sort((a, b) => channelIds.indexOf(a.cid) - channelIds.indexOf(b.cid));\n } else {\n return result;\n }\n};\n"]}
@@ -17,7 +17,6 @@ var appendWhereClause = function appendWhereClause(selectQuery, whereCondition)
17
17
  if (value === undefined) continue;
18
18
 
19
19
  if (Array.isArray(value)) {
20
- if (value.length === 0) continue;
21
20
  var questionMarks = Array(Object.keys(value).length).fill('?').join(',');
22
21
  whereClause.push(key + " in (" + questionMarks + ")");
23
22
  whereParams.push.apply(whereParams, (0, _toConsumableArray2["default"])(value));
@@ -27,7 +26,7 @@ var appendWhereClause = function appendWhereClause(selectQuery, whereCondition)
27
26
  }
28
27
  }
29
28
 
30
- if (!whereParams.length) {
29
+ if (!whereParams.length && !whereClause.length) {
31
30
  return [selectQuery, []];
32
31
  }
33
32
 
@@ -1 +1 @@
1
- {"version":3,"sources":["appendWhereCluase.ts"],"names":["appendWhereClause","selectQuery","whereCondition","whereClause","whereParams","key","value","undefined","Array","isArray","length","questionMarks","Object","keys","fill","join","push"],"mappings":";;;;;;;;;AAGO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAC/BC,WAD+B,EAE/BC,cAF+B,EAGX;AACpB,MAAI,CAACA,cAAL,EAAqB,OAAO,CAACD,WAAD,EAAc,EAAd,CAAP;AAErB,MAAME,WAAW,GAAG,EAApB;AACA,MAAMC,WAA+B,GAAG,EAAxC;;AAEA,OAAK,IAAMC,GAAX,IAAkBH,cAAlB,EAAkC;AAChC,QAAMI,KAAK,GAAGJ,cAAc,CAACG,GAAD,CAA5B;AACA,QAAIC,KAAK,KAAKC,SAAd,EAAyB;;AAEzB,QAAIC,KAAK,CAACC,OAAN,CAAcH,KAAd,CAAJ,EAA0B;AACxB,UAAIA,KAAK,CAACI,MAAN,KAAiB,CAArB,EAAwB;AACxB,UAAMC,aAAa,GAAGH,KAAK,CAACI,MAAM,CAACC,IAAP,CAAYP,KAAZ,EAAmBI,MAApB,CAAL,CAAiCI,IAAjC,CAAsC,GAAtC,EAA2CC,IAA3C,CAAgD,GAAhD,CAAtB;AACAZ,MAAAA,WAAW,CAACa,IAAZ,CAAoBX,GAApB,aAA+BM,aAA/B;AACAP,MAAAA,WAAW,CAACY,IAAZ,OAAAZ,WAAW,sCAASE,KAAT,EAAX;AACD,KALD,MAKO;AACLH,MAAAA,WAAW,CAACa,IAAZ,CAAoBX,GAApB;AACAD,MAAAA,WAAW,CAACY,IAAZ,CAAiBV,KAAjB;AACD;AACF;;AAED,MAAI,CAACF,WAAW,CAACM,MAAjB,EAAyB;AACvB,WAAO,CAACT,WAAD,EAAc,EAAd,CAAP;AACD;;AAED,SAAO,CAAIA,WAAJ,eAAyBE,WAAW,CAACY,IAAZ,CAAiB,OAAjB,CAAzB,EAAsDX,WAAtD,CAAP;AACD,CA7BM","sourcesContent":["import type { Schema } from '../schema';\nimport type { PreparedQueries, TableColumnNames, TableColumnValue } from '../types';\n\nexport const appendWhereClause = <T extends keyof Schema>(\n selectQuery: string,\n whereCondition?: Partial<{ [k in TableColumnNames<T>]: TableColumnValue | TableColumnValue[] }>,\n): PreparedQueries => {\n if (!whereCondition) return [selectQuery, []];\n\n const whereClause = [];\n const whereParams: TableColumnValue[] = [];\n\n for (const key in whereCondition) {\n const value = whereCondition[key];\n if (value === undefined) continue;\n\n if (Array.isArray(value)) {\n if (value.length === 0) continue;\n const questionMarks = Array(Object.keys(value).length).fill('?').join(',');\n whereClause.push(`${key} in (${questionMarks})`);\n whereParams.push(...value);\n } else {\n whereClause.push(`${key} = ?`);\n whereParams.push(value);\n }\n }\n\n if (!whereParams.length) {\n return [selectQuery, []];\n }\n\n return [`${selectQuery} WHERE ${whereClause.join(' AND ')}`, whereParams];\n};\n"]}
1
+ {"version":3,"sources":["appendWhereCluase.ts"],"names":["appendWhereClause","selectQuery","whereCondition","whereClause","whereParams","key","value","undefined","Array","isArray","questionMarks","Object","keys","length","fill","join","push"],"mappings":";;;;;;;;;AAGO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAC/BC,WAD+B,EAE/BC,cAF+B,EAGX;AACpB,MAAI,CAACA,cAAL,EAAqB,OAAO,CAACD,WAAD,EAAc,EAAd,CAAP;AAErB,MAAME,WAAW,GAAG,EAApB;AACA,MAAMC,WAA+B,GAAG,EAAxC;;AAEA,OAAK,IAAMC,GAAX,IAAkBH,cAAlB,EAAkC;AAChC,QAAMI,KAAK,GAAGJ,cAAc,CAACG,GAAD,CAA5B;AACA,QAAIC,KAAK,KAAKC,SAAd,EAAyB;;AAEzB,QAAIC,KAAK,CAACC,OAAN,CAAcH,KAAd,CAAJ,EAA0B;AACxB,UAAMI,aAAa,GAAGF,KAAK,CAACG,MAAM,CAACC,IAAP,CAAYN,KAAZ,EAAmBO,MAApB,CAAL,CAAiCC,IAAjC,CAAsC,GAAtC,EAA2CC,IAA3C,CAAgD,GAAhD,CAAtB;AACAZ,MAAAA,WAAW,CAACa,IAAZ,CAAoBX,GAApB,aAA+BK,aAA/B;AACAN,MAAAA,WAAW,CAACY,IAAZ,OAAAZ,WAAW,sCAASE,KAAT,EAAX;AACD,KAJD,MAIO;AACLH,MAAAA,WAAW,CAACa,IAAZ,CAAoBX,GAApB;AACAD,MAAAA,WAAW,CAACY,IAAZ,CAAiBV,KAAjB;AACD;AACF;;AAED,MAAI,CAACF,WAAW,CAACS,MAAb,IAAuB,CAACV,WAAW,CAACU,MAAxC,EAAgD;AAC9C,WAAO,CAACZ,WAAD,EAAc,EAAd,CAAP;AACD;;AAED,SAAO,CAAIA,WAAJ,eAAyBE,WAAW,CAACY,IAAZ,CAAiB,OAAjB,CAAzB,EAAsDX,WAAtD,CAAP;AACD,CA5BM","sourcesContent":["import type { Schema } from '../schema';\nimport type { PreparedQueries, TableColumnNames, TableColumnValue } from '../types';\n\nexport const appendWhereClause = <T extends keyof Schema>(\n selectQuery: string,\n whereCondition?: Partial<{ [k in TableColumnNames<T>]: TableColumnValue | TableColumnValue[] }>,\n): PreparedQueries => {\n if (!whereCondition) return [selectQuery, []];\n\n const whereClause = [];\n const whereParams: TableColumnValue[] = [];\n\n for (const key in whereCondition) {\n const value = whereCondition[key];\n if (value === undefined) continue;\n\n if (Array.isArray(value)) {\n const questionMarks = Array(Object.keys(value).length).fill('?').join(',');\n whereClause.push(`${key} in (${questionMarks})`);\n whereParams.push(...value);\n } else {\n whereClause.push(`${key} = ?`);\n whereParams.push(value);\n }\n }\n\n if (!whereParams.length && !whereClause.length) {\n return [selectQuery, []];\n }\n\n return [`${selectQuery} WHERE ${whereClause.join(' AND ')}`, whereParams];\n};\n"]}
@@ -0,0 +1,54 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BetterSqlite = void 0;
7
+
8
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _betterSqlite = _interopRequireDefault(require("better-sqlite3"));
13
+
14
+ var _schema = require("../store/schema");
15
+
16
+ var BetterSqlite = (0, _createClass2["default"])(function BetterSqlite() {
17
+ (0, _classCallCheck2["default"])(this, BetterSqlite);
18
+ this.db = null;
19
+ });
20
+ exports.BetterSqlite = BetterSqlite;
21
+
22
+ BetterSqlite.openDB = function () {
23
+ BetterSqlite.db = new _betterSqlite["default"]('foobar.db');
24
+ };
25
+
26
+ BetterSqlite.closeDB = function () {
27
+ BetterSqlite.db.close();
28
+ };
29
+
30
+ BetterSqlite.getTables = function () {
31
+ BetterSqlite.openDB();
32
+ var tablesInDb = BetterSqlite.db.pragma("table_list;");
33
+ BetterSqlite.closeDB();
34
+ return tablesInDb;
35
+ };
36
+
37
+ BetterSqlite.dropAllTables = function () {
38
+ BetterSqlite.openDB();
39
+ var tableNames = Object.keys(_schema.tables);
40
+ tableNames.forEach(function (name) {
41
+ var stmt = BetterSqlite.db.prepare("DROP TABLE IF EXISTS " + name);
42
+ stmt.run();
43
+ });
44
+ BetterSqlite.closeDB();
45
+ };
46
+
47
+ BetterSqlite.selectFromTable = function (table) {
48
+ BetterSqlite.openDB();
49
+ var stmt = BetterSqlite.db.prepare("SELECT * FROM " + table);
50
+ var result = stmt.all();
51
+ BetterSqlite.closeDB();
52
+ return result;
53
+ };
54
+ //# sourceMappingURL=BetterSqlite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["BetterSqlite.js"],"names":["BetterSqlite","db","openDB","Database","closeDB","close","getTables","tablesInDb","pragma","dropAllTables","tableNames","Object","keys","tables","forEach","name","stmt","prepare","run","selectFromTable","table","result","all"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;IAEaA,Y;;OACXC,E,GAAK,I;;;;AADMD,Y,CAGJE,M,GAAS,YAAM;AAHXF,EAAAA,YAIT,CAAKC,EAAL,GAAU,IAAIE,wBAAJ,CAAa,WAAb,CAAV;AACD,C;;AALUH,Y,CAOJI,O,GAAU,YAAM;AAPZJ,EAAAA,YAQT,CAAKC,EAAL,CAAQI,KAAR;AACD,C;;AATUL,Y,CAWJM,S,GAAY,YAAM;AAXdN,EAAAA,YAYT,CAAKE,MAAL;AACA,MAAMK,UAAU,GAbPP,YAaU,CAAKC,EAAL,CAAQO,MAAR,eAAnB;AAbSR,EAAAA,YAcT,CAAKI,OAAL;AAEA,SAAOG,UAAP;AACD,C;;AAjBUP,Y,CAmBJS,a,GAAgB,YAAM;AAnBlBT,EAAAA,YAoBT,CAAKE,MAAL;AACA,MAAMQ,UAAU,GAAGC,MAAM,CAACC,IAAP,CAAYC,cAAZ,CAAnB;AAEAH,EAAAA,UAAU,CAACI,OAAX,CAAmB,UAACC,IAAD,EAAU;AAC3B,QAAMC,IAAI,GAxBHhB,YAwBM,CAAKC,EAAL,CAAQgB,OAAR,2BAAwCF,IAAxC,CAAb;AACAC,IAAAA,IAAI,CAACE,GAAL;AACD,GAHD;AAvBSlB,EAAAA,YA4BT,CAAKI,OAAL;AACD,C;;AA7BUJ,Y,CA+BJmB,e,GAAkB,UAACC,KAAD,EAAW;AA/BzBpB,EAAAA,YAgCT,CAAKE,MAAL;AACA,MAAMc,IAAI,GAjCDhB,YAiCI,CAAKC,EAAL,CAAQgB,OAAR,oBAAiCG,KAAjC,CAAb;AACA,MAAMC,MAAM,GAAGL,IAAI,CAACM,GAAL,EAAf;AAlCStB,EAAAA,YAmCT,CAAKI,OAAL;AAEA,SAAOiB,MAAP;AACD,C","sourcesContent":["import Database from 'better-sqlite3';\n\nimport { tables } from '../store/schema';\n\nexport class BetterSqlite {\n db = null;\n\n static openDB = () => {\n this.db = new Database('foobar.db');\n };\n\n static closeDB = () => {\n this.db.close();\n };\n\n static getTables = () => {\n this.openDB();\n const tablesInDb = this.db.pragma(`table_list;`);\n this.closeDB();\n\n return tablesInDb;\n };\n\n static dropAllTables = () => {\n this.openDB();\n const tableNames = Object.keys(tables);\n\n tableNames.forEach((name) => {\n const stmt = this.db.prepare(`DROP TABLE IF EXISTS ${name}`);\n stmt.run();\n });\n\n this.closeDB();\n };\n\n static selectFromTable = (table) => {\n this.openDB();\n const stmt = this.db.prepare(`SELECT * FROM ${table}`);\n const result = stmt.all();\n this.closeDB();\n\n return result;\n };\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.0.0-beta.0"
2
+ "version": "5.0.0-beta.3"
3
3
  }
@@ -4,7 +4,7 @@ import { MessageContextValue } from '../../contexts/messageContext/MessageContex
4
4
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
5
5
  import { OverlayContextValue } from '../../contexts/overlayContext/OverlayContext';
6
6
  import type { DefaultStreamChatGenerics } from '../../types/types';
7
- export declare type GalleryPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<ImageGalleryContextValue<StreamChatGenerics>, 'setImage' | 'setImages'> & Pick<MessageContextValue<StreamChatGenerics>, 'alignment' | 'groupStyles' | 'images' | 'videos' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress' | 'threadList'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'legacyImageViewerSwipeBehaviour' | 'VideoThumbnail' | 'ImageLoadingIndicator' | 'ImageLoadingFailedIndicator'> & Pick<OverlayContextValue, 'setOverlay'> & {
7
+ export declare type GalleryPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<ImageGalleryContextValue<StreamChatGenerics>, 'setSelectedMessage' | 'setMessages'> & Pick<MessageContextValue<StreamChatGenerics>, 'alignment' | 'groupStyles' | 'images' | 'videos' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress' | 'threadList'> & Pick<MessagesContextValue<StreamChatGenerics>, 'additionalTouchableProps' | 'legacyImageViewerSwipeBehaviour' | 'VideoThumbnail' | 'ImageLoadingIndicator' | 'ImageLoadingFailedIndicator'> & Pick<OverlayContextValue, 'setOverlay'> & {
8
8
  channelId: string | undefined;
9
9
  hasThreadReplies?: boolean;
10
10
  /**
@@ -4,7 +4,7 @@ import { MessageContextValue } from '../../contexts/messageContext/MessageContex
4
4
  import { MessagesContextValue } from '../../contexts/messagesContext/MessagesContext';
5
5
  import { OverlayContextValue } from '../../contexts/overlayContext/OverlayContext';
6
6
  import type { DefaultStreamChatGenerics } from '../../types/types';
7
- export declare type GiphyPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<ImageGalleryContextValue<StreamChatGenerics>, 'setImage' | 'setImages'> & Pick<MessageContextValue<StreamChatGenerics>, 'handleAction' | 'isMyMessage' | 'message' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps' | 'ImageLoadingIndicator' | 'ImageLoadingFailedIndicator'> & {
7
+ export declare type GiphyPropsWithContext<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Pick<ImageGalleryContextValue<StreamChatGenerics>, 'setSelectedMessage' | 'setMessages'> & Pick<MessageContextValue<StreamChatGenerics>, 'handleAction' | 'isMyMessage' | 'message' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'> & Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps' | 'ImageLoadingIndicator' | 'ImageLoadingFailedIndicator'> & {
8
8
  attachment: Attachment<StreamChatGenerics>;
9
9
  } & Pick<OverlayContextValue, 'setOverlay'>;
10
10
  export declare type GiphyProps<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Partial<GiphyPropsWithContext<StreamChatGenerics>> & {
@@ -0,0 +1,6 @@
1
+ /**
2
+ *
3
+ * @param giphyUrl The giphy attachment url
4
+ * @returns mimeType for the giphy attachment
5
+ */
6
+ export declare function getGiphyMimeType(giphyUrl: string): string;
@@ -18,7 +18,7 @@ export declare type GridImageItem<StreamChatGenerics extends DefaultStreamChatGe
18
18
  export declare type ImageGridType<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = ImageGalleryGridImageComponents<StreamChatGenerics> & {
19
19
  closeGridView: () => void;
20
20
  photos: Photo<StreamChatGenerics>[];
21
- setImage: React.Dispatch<React.SetStateAction<{
21
+ setSelectedMessage: React.Dispatch<React.SetStateAction<{
22
22
  messageId?: string | undefined;
23
23
  url?: string | undefined;
24
24
  } | undefined>>;
@@ -9,7 +9,7 @@ export declare enum IsSwiping {
9
9
  TRUE = 1,
10
10
  FALSE = 2
11
11
  }
12
- export declare const useImageGalleryGestures: ({ currentImageHeight, halfScreenHeight, halfScreenWidth, headerFooterVisible, offsetScale, overlayOpacity, photoLength, scale, screenHeight, screenWidth, setSelectedIndex, translateX, translateY, translationX, }: {
12
+ export declare const useImageGalleryGestures: ({ currentImageHeight, halfScreenHeight, halfScreenWidth, headerFooterVisible, offsetScale, overlayOpacity, photoLength, scale, screenHeight, screenWidth, selectedIndex, setSelectedIndex, translateX, translateY, translationX, }: {
13
13
  currentImageHeight: number;
14
14
  halfScreenHeight: number;
15
15
  halfScreenWidth: number;
@@ -20,6 +20,7 @@ export declare const useImageGalleryGestures: ({ currentImageHeight, halfScreenH
20
20
  scale: SharedValue<number>;
21
21
  screenHeight: number;
22
22
  screenWidth: number;
23
+ selectedIndex: number;
23
24
  setSelectedIndex: React.Dispatch<React.SetStateAction<number>>;
24
25
  translateX: SharedValue<number>;
25
26
  translateY: SharedValue<number>;