chat 1.0.8 → 3.0.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 (318) hide show
  1. package/package.json +2 -96
  2. package/readme.md +1 -201
  3. package/lib/module/ChatContext/index.js +0 -2
  4. package/lib/module/ChatContext/index.js.map +0 -1
  5. package/lib/module/ChatContext/types.js +0 -2
  6. package/lib/module/ChatContext/types.js.map +0 -1
  7. package/lib/module/classes/Chat/index.js +0 -2
  8. package/lib/module/classes/Chat/index.js.map +0 -1
  9. package/lib/module/classes/Chat/types.js +0 -2
  10. package/lib/module/classes/Chat/types.js.map +0 -1
  11. package/lib/module/classes/Inbox/index.js +0 -2
  12. package/lib/module/classes/Inbox/index.js.map +0 -1
  13. package/lib/module/classes/Inbox/types.js +0 -2
  14. package/lib/module/classes/Inbox/types.js.map +0 -1
  15. package/lib/module/classes/Message/index.js +0 -2
  16. package/lib/module/classes/Message/index.js.map +0 -1
  17. package/lib/module/classes/Message/types.js +0 -2
  18. package/lib/module/classes/Message/types.js.map +0 -1
  19. package/lib/module/classes/Reaction/index.js +0 -2
  20. package/lib/module/classes/Reaction/index.js.map +0 -1
  21. package/lib/module/classes/Reaction/types.js +0 -2
  22. package/lib/module/classes/Reaction/types.js.map +0 -1
  23. package/lib/module/classes/Room/index.js +0 -2
  24. package/lib/module/classes/Room/index.js.map +0 -1
  25. package/lib/module/classes/Room/types.js +0 -2
  26. package/lib/module/classes/Room/types.js.map +0 -1
  27. package/lib/module/classes/index.js +0 -2
  28. package/lib/module/classes/index.js.map +0 -1
  29. package/lib/module/components/Avatar/index.js +0 -2
  30. package/lib/module/components/Avatar/index.js.map +0 -1
  31. package/lib/module/components/Chat/Bubble/index.js +0 -2
  32. package/lib/module/components/Chat/Bubble/index.js.map +0 -1
  33. package/lib/module/components/Chat/Composer/Input/index.js +0 -2
  34. package/lib/module/components/Chat/Composer/Input/index.js.map +0 -1
  35. package/lib/module/components/Chat/Composer/Send/index.js +0 -2
  36. package/lib/module/components/Chat/Composer/Send/index.js.map +0 -1
  37. package/lib/module/components/Chat/Composer/index.js +0 -2
  38. package/lib/module/components/Chat/Composer/index.js.map +0 -1
  39. package/lib/module/components/Chat/Media/Image/index.js +0 -2
  40. package/lib/module/components/Chat/Media/Image/index.js.map +0 -1
  41. package/lib/module/components/Chat/Media/index.js +0 -2
  42. package/lib/module/components/Chat/Media/index.js.map +0 -1
  43. package/lib/module/components/Chat/Message/Swiper/Action/index.js +0 -2
  44. package/lib/module/components/Chat/Message/Swiper/Action/index.js.map +0 -1
  45. package/lib/module/components/Chat/Message/Swiper/index.js +0 -2
  46. package/lib/module/components/Chat/Message/Swiper/index.js.map +0 -1
  47. package/lib/module/components/Chat/Message/Touchable/index.js +0 -2
  48. package/lib/module/components/Chat/Message/Touchable/index.js.map +0 -1
  49. package/lib/module/components/Chat/Message/index.js +0 -2
  50. package/lib/module/components/Chat/Message/index.js.map +0 -1
  51. package/lib/module/components/Chat/SystemMessage/index.js +0 -2
  52. package/lib/module/components/Chat/SystemMessage/index.js.map +0 -1
  53. package/lib/module/components/Chat/TypingFooter/index.js +0 -2
  54. package/lib/module/components/Chat/TypingFooter/index.js.map +0 -1
  55. package/lib/module/components/Chat/index.js +0 -2
  56. package/lib/module/components/Chat/index.js.map +0 -1
  57. package/lib/module/components/Chat/types.js +0 -2
  58. package/lib/module/components/Chat/types.js.map +0 -1
  59. package/lib/module/components/Chat-Old/Bubble/index.js +0 -2
  60. package/lib/module/components/Chat-Old/Bubble/index.js.map +0 -1
  61. package/lib/module/components/Chat-Old/Composer/Input/index.js +0 -2
  62. package/lib/module/components/Chat-Old/Composer/Input/index.js.map +0 -1
  63. package/lib/module/components/Chat-Old/Composer/Send/index.js +0 -2
  64. package/lib/module/components/Chat-Old/Composer/Send/index.js.map +0 -1
  65. package/lib/module/components/Chat-Old/Composer/index.js +0 -2
  66. package/lib/module/components/Chat-Old/Composer/index.js.map +0 -1
  67. package/lib/module/components/Chat-Old/Message/index.js +0 -2
  68. package/lib/module/components/Chat-Old/Message/index.js.map +0 -1
  69. package/lib/module/components/Chat-Old/Swiper/Action/index.js +0 -2
  70. package/lib/module/components/Chat-Old/Swiper/Action/index.js.map +0 -1
  71. package/lib/module/components/Chat-Old/Swiper/index.js +0 -2
  72. package/lib/module/components/Chat-Old/Swiper/index.js.map +0 -1
  73. package/lib/module/components/Chat-Old/SystemMessage/index.js +0 -2
  74. package/lib/module/components/Chat-Old/SystemMessage/index.js.map +0 -1
  75. package/lib/module/components/Chat-Old/index.js +0 -2
  76. package/lib/module/components/Chat-Old/index.js.map +0 -1
  77. package/lib/module/components/Chat-Old/types.js +0 -2
  78. package/lib/module/components/Chat-Old/types.js.map +0 -1
  79. package/lib/module/components/ChatProvider/index.js +0 -2
  80. package/lib/module/components/ChatProvider/index.js.map +0 -1
  81. package/lib/module/components/ChatProvider/types.js +0 -2
  82. package/lib/module/components/ChatProvider/types.js.map +0 -1
  83. package/lib/module/components/Inbox/Item/Circle/index.js +0 -2
  84. package/lib/module/components/Inbox/Item/Circle/index.js.map +0 -1
  85. package/lib/module/components/Inbox/Item/Circle/types.js +0 -2
  86. package/lib/module/components/Inbox/Item/Circle/types.js.map +0 -1
  87. package/lib/module/components/Inbox/Item/Initials/index.js +0 -2
  88. package/lib/module/components/Inbox/Item/Initials/index.js.map +0 -1
  89. package/lib/module/components/Inbox/Item/ItemDate/index.js +0 -2
  90. package/lib/module/components/Inbox/Item/ItemDate/index.js.map +0 -1
  91. package/lib/module/components/Inbox/Item/Separator/index.js +0 -2
  92. package/lib/module/components/Inbox/Item/Separator/index.js.map +0 -1
  93. package/lib/module/components/Inbox/Item/Subtitle/index.js +0 -2
  94. package/lib/module/components/Inbox/Item/Subtitle/index.js.map +0 -1
  95. package/lib/module/components/Inbox/Item/Swipeable/index.js +0 -2
  96. package/lib/module/components/Inbox/Item/Swipeable/index.js.map +0 -1
  97. package/lib/module/components/Inbox/Item/Title/index.js +0 -2
  98. package/lib/module/components/Inbox/Item/Title/index.js.map +0 -1
  99. package/lib/module/components/Inbox/Item/UnreadIndicator/index.js +0 -2
  100. package/lib/module/components/Inbox/Item/UnreadIndicator/index.js.map +0 -1
  101. package/lib/module/components/Inbox/Item/index.js +0 -2
  102. package/lib/module/components/Inbox/Item/index.js.map +0 -1
  103. package/lib/module/components/Inbox/index.js +0 -2
  104. package/lib/module/components/Inbox/index.js.map +0 -1
  105. package/lib/module/components/Inbox/question.md +0 -21
  106. package/lib/module/components/Inbox/readme.md +0 -21
  107. package/lib/module/components/Inbox/types.js +0 -2
  108. package/lib/module/components/Inbox/types.js.map +0 -1
  109. package/lib/module/components/RoomCreator/Content/Footer/Button/index.js +0 -2
  110. package/lib/module/components/RoomCreator/Content/Footer/Button/index.js.map +0 -1
  111. package/lib/module/components/RoomCreator/Content/Footer/Input/index.js +0 -2
  112. package/lib/module/components/RoomCreator/Content/Footer/Input/index.js.map +0 -1
  113. package/lib/module/components/RoomCreator/Content/Footer/index.js +0 -2
  114. package/lib/module/components/RoomCreator/Content/Footer/index.js.map +0 -1
  115. package/lib/module/components/RoomCreator/Content/Item/Icon/index.js +0 -2
  116. package/lib/module/components/RoomCreator/Content/Item/Icon/index.js.map +0 -1
  117. package/lib/module/components/RoomCreator/Content/Item/index.js +0 -2
  118. package/lib/module/components/RoomCreator/Content/Item/index.js.map +0 -1
  119. package/lib/module/components/RoomCreator/Content/index.js +0 -2
  120. package/lib/module/components/RoomCreator/Content/index.js.map +0 -1
  121. package/lib/module/components/RoomCreator/Header/index.js +0 -2
  122. package/lib/module/components/RoomCreator/Header/index.js.map +0 -1
  123. package/lib/module/components/RoomCreator/index.js +0 -2
  124. package/lib/module/components/RoomCreator/index.js.map +0 -1
  125. package/lib/module/components/RoomCreator/types.js +0 -2
  126. package/lib/module/components/RoomCreator/types.js.map +0 -1
  127. package/lib/module/components/TypingIndicator/index.js +0 -2
  128. package/lib/module/components/TypingIndicator/index.js.map +0 -1
  129. package/lib/module/components/index.js +0 -2
  130. package/lib/module/components/index.js.map +0 -1
  131. package/lib/module/helpers/getInitials.js +0 -2
  132. package/lib/module/helpers/getInitials.js.map +0 -1
  133. package/lib/module/helpers/sortByAvatar.js +0 -2
  134. package/lib/module/helpers/sortByAvatar.js.map +0 -1
  135. package/lib/module/hooks/index.js +0 -2
  136. package/lib/module/hooks/index.js.map +0 -1
  137. package/lib/module/hooks/useCreateRoom/index.js +0 -2
  138. package/lib/module/hooks/useCreateRoom/index.js.map +0 -1
  139. package/lib/module/hooks/useCreator/index.js +0 -2
  140. package/lib/module/hooks/useCreator/index.js.map +0 -1
  141. package/lib/module/hooks/useInbox/index.js +0 -2
  142. package/lib/module/hooks/useInbox/index.js.map +0 -1
  143. package/lib/module/hooks/useInbox/types.js +0 -2
  144. package/lib/module/hooks/useInbox/types.js.map +0 -1
  145. package/lib/module/hooks/useMessages/index.js +0 -2
  146. package/lib/module/hooks/useMessages/index.js.map +0 -1
  147. package/lib/module/hooks/useMessages/types.js +0 -2
  148. package/lib/module/hooks/useMessages/types.js.map +0 -1
  149. package/lib/module/hooks/useRoom/index.js +0 -2
  150. package/lib/module/hooks/useRoom/index.js.map +0 -1
  151. package/lib/module/hooks/useRoom/types.js +0 -2
  152. package/lib/module/hooks/useRoom/types.js.map +0 -1
  153. package/lib/module/hooks/useSend/useSendToGroup/index.js +0 -2
  154. package/lib/module/hooks/useSend/useSendToGroup/index.js.map +0 -1
  155. package/lib/module/hooks/useSend/useSendToPeople/index.js +0 -2
  156. package/lib/module/hooks/useSend/useSendToPeople/index.js.map +0 -1
  157. package/lib/module/hooks/useTyping/index.js +0 -2
  158. package/lib/module/hooks/useTyping/index.js.map +0 -1
  159. package/lib/module/hooks/useTypingOLD/index.js +0 -2
  160. package/lib/module/hooks/useTypingOLD/index.js.map +0 -1
  161. package/lib/module/hooks/useTypingOLD/types.js +0 -2
  162. package/lib/module/hooks/useTypingOLD/types.js.map +0 -1
  163. package/lib/module/hooks/useViewMessages/index.js +0 -2
  164. package/lib/module/hooks/useViewMessages/index.js.map +0 -1
  165. package/lib/module/hooks/useViewMessages/types.js +0 -2
  166. package/lib/module/hooks/useViewMessages/types.js.map +0 -1
  167. package/lib/module/hooks/useViewMessagesOld/index.js +0 -2
  168. package/lib/module/hooks/useViewMessagesOld/index.js.map +0 -1
  169. package/lib/module/index.js +0 -2
  170. package/lib/module/index.js.map +0 -1
  171. package/lib/typescript/ChatContext/index.d.ts +0 -2
  172. package/lib/typescript/ChatContext/types.d.ts +0 -4
  173. package/lib/typescript/classes/Chat/index.d.ts +0 -14
  174. package/lib/typescript/classes/Chat/types.d.ts +0 -21
  175. package/lib/typescript/classes/Inbox/types.d.ts +0 -2
  176. package/lib/typescript/classes/Message/index.d.ts +0 -47
  177. package/lib/typescript/classes/Message/types.d.ts +0 -66
  178. package/lib/typescript/classes/Reaction/index.d.ts +0 -17
  179. package/lib/typescript/classes/Reaction/types.d.ts +0 -33
  180. package/lib/typescript/classes/Room/index.d.ts +0 -42
  181. package/lib/typescript/classes/Room/types.d.ts +0 -112
  182. package/lib/typescript/classes/index.d.ts +0 -4
  183. package/lib/typescript/components/Avatar/index.d.ts +0 -4
  184. package/lib/typescript/components/Chat/Bubble/index.d.ts +0 -4
  185. package/lib/typescript/components/Chat/Composer/Input/index.d.ts +0 -7
  186. package/lib/typescript/components/Chat/Composer/Send/index.d.ts +0 -4
  187. package/lib/typescript/components/Chat/Composer/index.d.ts +0 -8
  188. package/lib/typescript/components/Chat/Media/Image/index.d.ts +0 -7
  189. package/lib/typescript/components/Chat/Media/index.d.ts +0 -4
  190. package/lib/typescript/components/Chat/Message/Touchable/index.d.ts +0 -4
  191. package/lib/typescript/components/Chat/Message/index.d.ts +0 -8
  192. package/lib/typescript/components/Chat/SystemMessage/index.d.ts +0 -4
  193. package/lib/typescript/components/Chat/TypingFooter/index.d.ts +0 -4
  194. package/lib/typescript/components/Chat/index.d.ts +0 -8
  195. package/lib/typescript/components/Chat/types.d.ts +0 -843
  196. package/lib/typescript/components/ChatProvider/index.d.ts +0 -10
  197. package/lib/typescript/components/ChatProvider/types.d.ts +0 -7
  198. package/lib/typescript/components/Inbox/Item/Initials/index.d.ts +0 -4
  199. package/lib/typescript/components/Inbox/Item/ItemDate/index.d.ts +0 -4
  200. package/lib/typescript/components/Inbox/Item/Separator/index.d.ts +0 -6
  201. package/lib/typescript/components/Inbox/Item/Subtitle/index.d.ts +0 -3
  202. package/lib/typescript/components/Inbox/Item/Swipeable/index.d.ts +0 -4
  203. package/lib/typescript/components/Inbox/Item/Title/index.d.ts +0 -3
  204. package/lib/typescript/components/Inbox/Item/UnreadIndicator/index.d.ts +0 -4
  205. package/lib/typescript/components/Inbox/Item/index.d.ts +0 -6
  206. package/lib/typescript/components/Inbox/index.d.ts +0 -4
  207. package/lib/typescript/components/Inbox/types.d.ts +0 -304
  208. package/lib/typescript/components/RoomCreator/Content/Footer/Button/index.d.ts +0 -4
  209. package/lib/typescript/components/RoomCreator/Content/Footer/Input/index.d.ts +0 -4
  210. package/lib/typescript/components/RoomCreator/Content/Footer/index.d.ts +0 -3
  211. package/lib/typescript/components/RoomCreator/Content/Item/Icon/index.d.ts +0 -4
  212. package/lib/typescript/components/RoomCreator/Content/Item/index.d.ts +0 -4
  213. package/lib/typescript/components/RoomCreator/Content/index.d.ts +0 -4
  214. package/lib/typescript/components/RoomCreator/Header/index.d.ts +0 -4
  215. package/lib/typescript/components/RoomCreator/index.d.ts +0 -4
  216. package/lib/typescript/components/RoomCreator/types.d.ts +0 -208
  217. package/lib/typescript/components/TypingIndicator/index.d.ts +0 -9
  218. package/lib/typescript/components/index.d.ts +0 -12
  219. package/lib/typescript/helpers/getInitials.d.ts +0 -1
  220. package/lib/typescript/hooks/index.d.ts +0 -8
  221. package/lib/typescript/hooks/useCreator/index.d.ts +0 -27
  222. package/lib/typescript/hooks/useInbox/index.d.ts +0 -29
  223. package/lib/typescript/hooks/useInbox/types.d.ts +0 -5
  224. package/lib/typescript/hooks/useMessages/index.d.ts +0 -24
  225. package/lib/typescript/hooks/useMessages/types.d.ts +0 -5
  226. package/lib/typescript/hooks/useRoom/index.d.ts +0 -26
  227. package/lib/typescript/hooks/useRoom/types.d.ts +0 -5
  228. package/lib/typescript/hooks/useSend/useSendToGroup/index.d.ts +0 -6
  229. package/lib/typescript/hooks/useSend/useSendToPeople/index.d.ts +0 -6
  230. package/lib/typescript/hooks/useTyping/index.d.ts +0 -36
  231. package/lib/typescript/hooks/useViewMessages/index.d.ts +0 -18
  232. package/lib/typescript/hooks/useViewMessages/types.d.ts +0 -20
  233. package/lib/typescript/index.d.ts +0 -11
  234. package/src/ChatContext/index.tsx +0 -9
  235. package/src/ChatContext/types.ts +0 -4
  236. package/src/classes/Chat/index.ts +0 -46
  237. package/src/classes/Chat/types.ts +0 -23
  238. package/src/classes/Inbox/index.ts +0 -12
  239. package/src/classes/Inbox/types.ts +0 -3
  240. package/src/classes/Message/index.ts +0 -310
  241. package/src/classes/Message/types.ts +0 -118
  242. package/src/classes/Reaction/index.ts +0 -108
  243. package/src/classes/Reaction/types.ts +0 -37
  244. package/src/classes/Room/index.ts +0 -323
  245. package/src/classes/Room/types.ts +0 -161
  246. package/src/classes/index.ts +0 -4
  247. package/src/components/Avatar/index.tsx +0 -25
  248. package/src/components/Chat/Bubble/index.tsx +0 -139
  249. package/src/components/Chat/Composer/Input/index.tsx +0 -45
  250. package/src/components/Chat/Composer/Send/index.tsx +0 -51
  251. package/src/components/Chat/Composer/index.tsx +0 -187
  252. package/src/components/Chat/Media/Image/index.tsx +0 -26
  253. package/src/components/Chat/Media/index.tsx +0 -11
  254. package/src/components/Chat/Message/Swiper/Action/index.tsx +0 -7
  255. package/src/components/Chat/Message/Swiper/index.tsx +0 -32
  256. package/src/components/Chat/Message/Touchable/index.tsx +0 -60
  257. package/src/components/Chat/Message/index.tsx +0 -328
  258. package/src/components/Chat/SystemMessage/index.tsx +0 -44
  259. package/src/components/Chat/TypingFooter/index.tsx +0 -48
  260. package/src/components/Chat/index.tsx +0 -596
  261. package/src/components/Chat/types.ts +0 -913
  262. package/src/components/Chat-Old/Bubble/index.tsx +0 -58
  263. package/src/components/Chat-Old/Composer/Input/index.tsx +0 -34
  264. package/src/components/Chat-Old/Composer/Send/index.tsx +0 -37
  265. package/src/components/Chat-Old/Composer/index.tsx +0 -131
  266. package/src/components/Chat-Old/Message/index.tsx +0 -160
  267. package/src/components/Chat-Old/Swiper/Action/index.tsx +0 -7
  268. package/src/components/Chat-Old/Swiper/index.tsx +0 -30
  269. package/src/components/Chat-Old/SystemMessage/index.tsx +0 -44
  270. package/src/components/Chat-Old/index.tsx +0 -356
  271. package/src/components/Chat-Old/types.ts +0 -752
  272. package/src/components/ChatProvider/index.tsx +0 -31
  273. package/src/components/ChatProvider/types.ts +0 -8
  274. package/src/components/Inbox/Item/Circle/index.tsx +0 -47
  275. package/src/components/Inbox/Item/Circle/types.ts +0 -8
  276. package/src/components/Inbox/Item/Initials/index.tsx +0 -41
  277. package/src/components/Inbox/Item/ItemDate/index.tsx +0 -26
  278. package/src/components/Inbox/Item/Separator/index.tsx +0 -13
  279. package/src/components/Inbox/Item/Subtitle/index.tsx +0 -23
  280. package/src/components/Inbox/Item/Swipeable/index.tsx +0 -143
  281. package/src/components/Inbox/Item/Title/index.tsx +0 -23
  282. package/src/components/Inbox/Item/UnreadIndicator/index.tsx +0 -84
  283. package/src/components/Inbox/Item/index.tsx +0 -307
  284. package/src/components/Inbox/index.tsx +0 -315
  285. package/src/components/Inbox/question.md +0 -21
  286. package/src/components/Inbox/readme.md +0 -21
  287. package/src/components/Inbox/types.ts +0 -371
  288. package/src/components/RoomCreator/Content/Footer/Button/index.tsx +0 -55
  289. package/src/components/RoomCreator/Content/Footer/Input/index.tsx +0 -27
  290. package/src/components/RoomCreator/Content/Footer/index.tsx +0 -72
  291. package/src/components/RoomCreator/Content/Item/Icon/index.tsx +0 -16
  292. package/src/components/RoomCreator/Content/Item/index.tsx +0 -87
  293. package/src/components/RoomCreator/Content/index.tsx +0 -75
  294. package/src/components/RoomCreator/Header/index.tsx +0 -74
  295. package/src/components/RoomCreator/index.tsx +0 -177
  296. package/src/components/RoomCreator/types.ts +0 -233
  297. package/src/components/TypingIndicator/index.tsx +0 -169
  298. package/src/components/index.ts +0 -18
  299. package/src/helpers/getInitials.ts +0 -11
  300. package/src/helpers/sortByAvatar.ts +0 -1
  301. package/src/hooks/index.ts +0 -8
  302. package/src/hooks/useCreateRoom/index.ts +0 -34
  303. package/src/hooks/useCreator/index.ts +0 -33
  304. package/src/hooks/useInbox/index.ts +0 -76
  305. package/src/hooks/useInbox/types.ts +0 -6
  306. package/src/hooks/useMessages/index.ts +0 -109
  307. package/src/hooks/useMessages/types.ts +0 -6
  308. package/src/hooks/useRoom/index.ts +0 -82
  309. package/src/hooks/useRoom/types.ts +0 -6
  310. package/src/hooks/useSend/useSendToGroup/index.ts +0 -38
  311. package/src/hooks/useSend/useSendToPeople/index.ts +0 -38
  312. package/src/hooks/useTyping/index.ts +0 -154
  313. package/src/hooks/useTypingOLD/index.ts +0 -67
  314. package/src/hooks/useTypingOLD/types.ts +0 -7
  315. package/src/hooks/useViewMessages/index.ts +0 -61
  316. package/src/hooks/useViewMessages/types.ts +0 -22
  317. package/src/hooks/useViewMessagesOld/index.ts +0 -39
  318. package/src/index.ts +0 -13
@@ -1,47 +0,0 @@
1
- import { MessageModel, RoomId, NewMessageModel, SendFromFeedRecipients } from './types';
2
- import { RoomMembers, RoomMember } from '../Room/types';
3
- import { ReactionOption } from '../Reaction/types';
4
- export default class {
5
- private message;
6
- constructor(message: MessageModel);
7
- /**
8
- * A function to send one message to many different existing rooms/group chats separately.
9
- *
10
- * @param recipients An array of rooms ids where this message will be sent to separately
11
- * @returns Promise that returns a room ID if there is only one (or promise that resolves as null if the message object isn't valid)
12
- */
13
- sendToRooms(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
14
- /**
15
- * A function to send one message to many different people individually.
16
- * For each recipient, if a room for them doesn't exist, it will get created and the message will be added to it.
17
- * If the room does exist, the message will be added to it.
18
- *
19
- * @param recipients An array of user ids whom this message will be sent to separately
20
- * @returns Promise that returns a room ID (or promise that resolves as null if the message object isn't valid)
21
- */
22
- sendToPeople(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
23
- /**
24
- * Sends message to a group. This is useful when you don't have a room id but do have a list of people you want to send a message to. If you want to send the message to them separately, try sendToPeople instead.
25
- * This function will create a group chat with the specified users if one doesn't exist yet. If it does exist already, then it will add to that existing room.
26
- * @param recipients Array of uids for people in the group this message should send to.
27
- * @returns Promise that returns a room ID (or promise that resolves as null if the message object isn't valid)
28
- */
29
- sendToGroup(recipients: string[]): Promise<import("firebase").functions.HttpsCallableResult>;
30
- /**
31
- * deprecated: fuck this function
32
- */
33
- sendFromFeed(to: SendFromFeedRecipients): Promise<any[]>;
34
- /**
35
- * Send message by adding it directly to the backend
36
- * @param roomId The id of the room you want to send this to. Could also be an array of ids, if the same message should go to multiple rooms.
37
- */
38
- send(roomId: RoomId): void;
39
- edit(roomId: string): Promise<void>;
40
- formatForRender(): NewMessageModel[] | NewMessageModel | null;
41
- formatForSend(): this;
42
- addToFirebase(roomId: RoomId): Promise<void>;
43
- updateOnFirebase(roomId: string): Promise<void>;
44
- getUsersWhoReacted(reaction: ReactionOption, { roomMembers }: {
45
- roomMembers: RoomMembers;
46
- }): RoomMember[];
47
- }
@@ -1,66 +0,0 @@
1
- import { FieldValue } from '@firebase/firestore-types';
2
- import { ReactionOption } from '../Reaction/types';
3
- export interface Message {
4
- id: string;
5
- }
6
- export interface NewMessageModel extends Omit<Message, 'roomId'> {
7
- text: string;
8
- createdAt: Date;
9
- user: {
10
- id: string;
11
- name: string;
12
- avatar: string;
13
- };
14
- system?: boolean;
15
- media?: MessageMedia;
16
- reactions?: {
17
- [option in ReactionOption]: string[];
18
- };
19
- }
20
- export interface MessageMediaWithUrl {
21
- url: string;
22
- uri?: string;
23
- height: number;
24
- width: number;
25
- contentType: 'video' | 'image';
26
- }
27
- export interface MessageMediaWithUri {
28
- url: string;
29
- uri?: string;
30
- height: number;
31
- width: number;
32
- contentType: 'video' | 'image';
33
- }
34
- export declare type MessageMedia = MessageMediaWithUrl | MessageMediaWithUri;
35
- export interface NewMessageFormattedForServer extends Omit<NewMessageModel, 'createdAt'> {
36
- createdAt: FieldValue;
37
- }
38
- export declare function isNewMessageModel(message: MessageModel): message is NewMessageModel;
39
- export declare function isNewMessageFormattedForServer(message: MessageModel): message is NewMessageFormattedForServer;
40
- export interface EditMessageModel extends Message {
41
- text?: string;
42
- }
43
- export declare type SendToRecipients = string[];
44
- export declare type RoomId = string | string[];
45
- export declare type MessageModel = Message | NewMessageModel[] | EditMessageModel | MessageModelDocument[] | NewMessageFormattedForServer[] | NewMessageFormattedForServer;
46
- export interface MessageModelDocument extends Omit<NewMessageModel, 'createdAt'> {
47
- id: string;
48
- createdAt: firebase.firestore.Timestamp;
49
- }
50
- export declare type SendFromFeedRecipient = {
51
- id: string;
52
- } | SendFromFeedRecipientArray;
53
- export interface SendFromFeedRecipientArray {
54
- recipients: {
55
- id: string;
56
- name: string;
57
- }[];
58
- }
59
- export declare const recipientHasId: (recipient: SendFromFeedRecipient) => recipient is {
60
- id: string;
61
- };
62
- export declare const recipientHasMembers: (recipient: SendFromFeedRecipient) => recipient is SendFromFeedRecipientArray;
63
- export declare type SendFromFeedRecipients = SendFromFeedRecipient[];
64
- export interface SendFromFeedModel extends Omit<NewMessageModel, 'id'> {
65
- recipients: SendFromFeedRecipientArray['recipients'];
66
- }
@@ -1,17 +0,0 @@
1
- import { ReactionConfig } from './types';
2
- import { LastMessageServer } from '../Room/types';
3
- export default class {
4
- private config;
5
- constructor(config: ReactionConfig);
6
- get path(): string;
7
- verb(): {
8
- add: string;
9
- remove: string;
10
- };
11
- add(): Promise<void>;
12
- remove(): Promise<void>;
13
- makeReactionDescriptionText(remove?: boolean): string;
14
- makeLastMessage(options: {
15
- remove?: boolean;
16
- }): LastMessageServer;
17
- }
@@ -1,33 +0,0 @@
1
- export interface ReactionConfig {
2
- myName?: string;
3
- messageId: string;
4
- roomId: string;
5
- text: string;
6
- reaction: ReactionOption;
7
- /**
8
- * An **optional** string or pure function to override the default description text.
9
- * The description text is used to create the last message that shows up in the inbox.
10
- *
11
- * By default, this will look something like: <name> <reaction>d "<message text>". For instance: Fernando liked "I want a pair of PATOS Shoes."
12
- *
13
- * If `null`, text will be an empty string.
14
- *
15
- * A verb for like will be 'liked', and if it's a removal, then it's 'unlike'. This pattern follows for other reactions too.
16
- *
17
- * @example
18
- * ```js
19
- * const reaction = new Reaction({
20
- * descriptionText: ({ reaction, name, text, verb, remove }) => remove ? \`${name} happily ${verb} ${text}\` : \`${name} sadly ${verb} ${text}\`,
21
- * text: message.text, roomId: room.id, messageId: message.id, text: message.text
22
- * })
23
- * ```
24
- */
25
- descriptionText?: null | string | ((info: {
26
- reaction: ReactionOption;
27
- name: string;
28
- text: string;
29
- verb: string;
30
- remove: boolean;
31
- }) => string);
32
- }
33
- export declare type ReactionOption = 'like' | 'love';
@@ -1,42 +0,0 @@
1
- import { RoomModel, RoomMembers } from './types';
2
- export default class {
3
- private room;
4
- constructor(room: RoomModel);
5
- get path(): string;
6
- get messagesPath(): string;
7
- getUnreadCount(): number;
8
- /**
9
- * Views message function for a room.
10
- *
11
- * To use this in a react component out-of-the-box, I recommend using the [[useViewMessage]] hook. It will handle all this for you.
12
- *
13
- * @param messageId ID of the message you're viewing
14
- * @param messageCreatedAt Timestamp of the message which you're viewing, found in message.createdAt
15
- *
16
- * @remarks
17
- * If you aren't using the useViewMessage hook:
18
- * This function should be used with care. You don't want to send 500 writes if someone views 500 messages.
19
- * You only want to send a read for the most recent message being viewed, assuming it's someone else's message.
20
- * Also, you should be memoizing the last message you sent that you viewed to avoid repeats. Again, this is all handled by useViewMessages.
21
- *
22
- * @returns Promise that only resolves while you're online.
23
- */
24
- viewMessage(messageId: string, messageCreatedAt: Date): Promise<void>;
25
- getArrayOfMembersOtherThanMe(): import("./types").RoomMember[];
26
- getName(): string;
27
- getInitials(maxNumberOfInitials?: number): string;
28
- /**
29
- * @returns
30
- * A promise.all array of responses. The first array is for adding a system message; the second is for updating the room object.
31
- */
32
- leave(): Promise<void | null>;
33
- join(): Promise<void> | null;
34
- addMembers(members: RoomMembers): Promise<void>;
35
- removeMembers(members: RoomMembers): Promise<void>;
36
- create(): Promise<void | null>;
37
- createViaCallable(): Promise<firebase.functions.HttpsCallableResult>;
38
- edit(): Promise<void> | null;
39
- getUsersTyping(): import("./types").RoomMember[];
40
- updateOnFirebase(): Promise<void>;
41
- addToFirebase(): Promise<void>;
42
- }
@@ -1,112 +0,0 @@
1
- import { FieldValue, Timestamp } from '@firebase/firestore-types';
2
- import * as firebase from 'firebase';
3
- export interface LastMessage {
4
- createdAt: Date;
5
- text: string;
6
- name: string;
7
- system: boolean;
8
- id: string;
9
- }
10
- export interface LastMessageServer extends Omit<LastMessage, 'createdAt'> {
11
- createdAt: FieldValue;
12
- }
13
- /**
14
- * Unread count schema in the members dictionary for each room
15
- */
16
- export interface UnreadCount {
17
- count: number;
18
- /**
19
- * The timestamp of the last time you cleared messages.
20
- */
21
- lastCleared: Date;
22
- /**
23
- * Details of the last message you saw.
24
- */
25
- lastSeen: {
26
- id: string;
27
- createdAt: Date;
28
- };
29
- }
30
- export interface UnreadCountDocument extends Omit<UnreadCount, 'lastCleared'> {
31
- lastCleared: firebase.firestore.Timestamp;
32
- }
33
- export interface UnreadCountServer extends Omit<UnreadCount, 'lastCleared'> {
34
- lastCleared: firebase.firestore.FieldValue;
35
- }
36
- export interface RoomPropertiesModel {
37
- id: string;
38
- avatar?: string;
39
- members?: RoomMembers;
40
- name?: string;
41
- }
42
- export interface Typing {
43
- state: 'typing' | 'nothing';
44
- lastChanged: typeof firebase.database.ServerValue.TIMESTAMP;
45
- }
46
- export interface RoomMember {
47
- typing?: Typing;
48
- exists: boolean;
49
- name: string;
50
- nickname?: string;
51
- avatar?: string;
52
- joinedAt: FieldValue;
53
- unreadCount?: UnreadCount;
54
- }
55
- export interface ExistingRoomMember {
56
- nickname?: string;
57
- avatar?: string;
58
- }
59
- export interface NewRoomMember extends RoomMember {
60
- }
61
- /**
62
- * Dictionary of members in the room.
63
- */
64
- export interface RoomMembers {
65
- [id: string]: RoomMember;
66
- }
67
- /**
68
- * Configuration for the room class. Members doesn't need to include me.
69
- *
70
- * @example
71
- * ```
72
- * const room = new Room(config: NewRoomModel)
73
- * await room.create()
74
- * ```
75
- */
76
- export interface NewRoomModel extends Omit<RoomPropertiesModel, 'id'> {
77
- members: RoomMembers;
78
- }
79
- export interface CreateCallableRoomModel extends Partial<RoomPropertiesModel> {
80
- recipients: string[];
81
- }
82
- export interface EditRoomModel extends Omit<RoomPropertiesModel, 'members'> {
83
- members?: RoomMembers;
84
- name?: string;
85
- lastMessage?: LastMessage;
86
- }
87
- export interface ExistingRoomModel extends RoomPropertiesModel {
88
- lastMessage: LastMessage;
89
- members: RoomMembers;
90
- unreadCount?: number;
91
- createdAt: FieldValue;
92
- lastEdited: FieldValue;
93
- currentMembers: string[];
94
- }
95
- export interface CreateRoomModel extends Omit<Omit<ExistingRoomModel, 'id'>, 'lastMessage'> {
96
- lastMessage: LastMessageServer;
97
- }
98
- export interface CreateRoomCallableModel extends Omit<RoomPropertiesModel, 'id'> {
99
- members: RoomMembers;
100
- }
101
- interface LastMessageDocument extends Omit<LastMessage, 'createdAt'> {
102
- createdAt: Timestamp;
103
- }
104
- export interface ExistingRoomDocument extends Omit<ExistingRoomModel, 'lastMessage'> {
105
- lastMessage: LastMessageDocument;
106
- }
107
- export declare type RoomModel = RoomPropertiesModel | NewRoomModel | ExistingRoomModel | CreateCallableRoomModel;
108
- export declare function currentUserExists(user: firebase.User | null): user is firebase.User;
109
- export declare function roomIsEditModel(room: RoomModel): room is EditRoomModel;
110
- export declare function roomIsNewModel(room: RoomModel): room is NewRoomModel;
111
- export declare function roomIsCreateCallable(room: RoomModel): room is CreateCallableRoomModel;
112
- export {};
@@ -1,4 +0,0 @@
1
- export { default as Reaction } from './Reaction';
2
- export { default as Message } from './Message';
3
- export { default as Room } from './Room';
4
- export { default as Chat } from './Chat';
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { AvatarProps } from '../Inbox/types';
3
- declare const _default: React.NamedExoticComponent<AvatarProps>;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { BubbleProps } from '../types';
3
- declare const _default: React.NamedExoticComponent<BubbleProps>;
4
- export default _default;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { InputProps } from '../../types';
3
- declare const _default: React.MemoExoticComponent<{
4
- (props: InputProps<import("../../../../classes/Message/types").NewMessageModel>): JSX.Element;
5
- displayName: string;
6
- }>;
7
- export default _default;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { SendButtonProps } from '../../types';
3
- declare const _default: React.MemoExoticComponent<(props: SendButtonProps<import("../../../../classes/Message/types").NewMessageModel>) => JSX.Element | null>;
4
- export default _default;
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { ComposerProps } from '../types';
3
- import { NewMessageModel } from '../../../classes/Message/types';
4
- declare const _default: React.MemoExoticComponent<{
5
- (props: ComposerProps<NewMessageModel>): JSX.Element;
6
- displayName: string;
7
- }>;
8
- export default _default;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { MessageMedia } from '../../../../classes/Message/types';
3
- declare const _default: React.MemoExoticComponent<{
4
- (props: Pick<MessageMedia, "width" | "height" | "url" | "uri">): JSX.Element;
5
- displayName: string;
6
- }>;
7
- export default _default;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { MessageMedia } from '../../../classes/Message/types';
3
- declare const _default: React.MemoExoticComponent<({ contentType, ...props }: MessageMedia) => JSX.Element | null>;
4
- export default _default;
@@ -1,4 +0,0 @@
1
- import { FunctionComponent } from 'react';
2
- import { TouchableProps } from '../../types';
3
- declare const Touchable: FunctionComponent<TouchableProps>;
4
- export default Touchable;
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { MessageProps } from '../types';
3
- import { NewMessageModel } from '../../../classes/Message/types';
4
- declare const _default: React.MemoExoticComponent<{
5
- <Model extends NewMessageModel = NewMessageModel>(props: MessageProps<Model>): JSX.Element;
6
- displayName: string;
7
- }>;
8
- export default _default;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { SystemMessageProps } from '../types';
3
- declare const SystemMessage: React.MemoExoticComponent<(props: SystemMessageProps<import("../../../classes/Message/types").NewMessageModel>) => JSX.Element>;
4
- export default SystemMessage;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { TypingFooterProps } from '../types';
3
- declare const _default: React.MemoExoticComponent<({ typingText, containerStyle, numberOfUsersTyping, ...indicatorProps }: TypingFooterProps) => JSX.Element>;
4
- export default _default;
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- import { NewMessageModel } from '../../classes/Message/types';
3
- import { ChatProps } from './types';
4
- declare function Chat<MessageModel extends NewMessageModel = NewMessageModel>(props: ChatProps<MessageModel>): JSX.Element;
5
- declare namespace Chat {
6
- var append: <M>(state: M[], messages: M[]) => M[];
7
- }
8
- export default Chat;