@syra.fm/sdk 0.3.0 → 0.5.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 (314) hide show
  1. package/lib/commonjs/client.js +268 -0
  2. package/lib/commonjs/client.js.map +1 -0
  3. package/lib/commonjs/errors.js +22 -0
  4. package/lib/commonjs/errors.js.map +1 -0
  5. package/lib/commonjs/index.js +63 -0
  6. package/lib/commonjs/index.js.map +1 -0
  7. package/lib/commonjs/index.native.js +28 -0
  8. package/lib/commonjs/index.native.js.map +1 -0
  9. package/lib/commonjs/live/assets/icons/spaces-icon.js +42 -0
  10. package/lib/commonjs/live/assets/icons/spaces-icon.js.map +1 -0
  11. package/lib/commonjs/live/assets/icons/syra-icon.js +43 -0
  12. package/lib/commonjs/live/assets/icons/syra-icon.js.map +1 -0
  13. package/lib/commonjs/live/components/AnimatedPulse.js +38 -0
  14. package/lib/commonjs/live/components/AnimatedPulse.js.map +1 -0
  15. package/lib/commonjs/live/components/AnimatedSpeakerRing.js +90 -0
  16. package/lib/commonjs/live/components/AnimatedSpeakerRing.js.map +1 -0
  17. package/lib/commonjs/live/components/CreateRoomSheet.js +688 -0
  18. package/lib/commonjs/live/components/CreateRoomSheet.js.map +1 -0
  19. package/lib/commonjs/live/components/InsightsPanel.js +333 -0
  20. package/lib/commonjs/live/components/InsightsPanel.js.map +1 -0
  21. package/lib/commonjs/live/components/LiveRoomSheet.js +1195 -0
  22. package/lib/commonjs/live/components/LiveRoomSheet.js.map +1 -0
  23. package/lib/commonjs/live/components/MiniRoomBar.js +161 -0
  24. package/lib/commonjs/live/components/MiniRoomBar.js.map +1 -0
  25. package/lib/commonjs/live/components/PanelHeader.js +57 -0
  26. package/lib/commonjs/live/components/PanelHeader.js.map +1 -0
  27. package/lib/commonjs/live/components/PodcastStreamPicker.js +1190 -0
  28. package/lib/commonjs/live/components/PodcastStreamPicker.js.map +1 -0
  29. package/lib/commonjs/live/components/RecordingCard.js +192 -0
  30. package/lib/commonjs/live/components/RecordingCard.js.map +1 -0
  31. package/lib/commonjs/live/components/RecordingsPanel.js +304 -0
  32. package/lib/commonjs/live/components/RecordingsPanel.js.map +1 -0
  33. package/lib/commonjs/live/components/RoomCard.js +553 -0
  34. package/lib/commonjs/live/components/RoomCard.js.map +1 -0
  35. package/lib/commonjs/live/components/StreamConfigModal.js +656 -0
  36. package/lib/commonjs/live/components/StreamConfigModal.js.map +1 -0
  37. package/lib/commonjs/live/components/StreamConfigPanel.js +822 -0
  38. package/lib/commonjs/live/components/StreamConfigPanel.js.map +1 -0
  39. package/lib/commonjs/live/context/LiveConfigContext.js +46 -0
  40. package/lib/commonjs/live/context/LiveConfigContext.js.map +1 -0
  41. package/lib/commonjs/live/context/LiveRoomContext.js +195 -0
  42. package/lib/commonjs/live/context/LiveRoomContext.js.map +1 -0
  43. package/lib/commonjs/live/hooks/useActiveSpeakers.js +35 -0
  44. package/lib/commonjs/live/hooks/useActiveSpeakers.js.map +1 -0
  45. package/lib/commonjs/live/hooks/useRoomAudio.js +129 -0
  46. package/lib/commonjs/live/hooks/useRoomAudio.js.map +1 -0
  47. package/lib/commonjs/live/hooks/useRoomConnection.js +177 -0
  48. package/lib/commonjs/live/hooks/useRoomConnection.js.map +1 -0
  49. package/lib/commonjs/live/hooks/useRoomManager.js +37 -0
  50. package/lib/commonjs/live/hooks/useRoomManager.js.map +1 -0
  51. package/lib/commonjs/live/hooks/useRoomUsers.js +52 -0
  52. package/lib/commonjs/live/hooks/useRoomUsers.js.map +1 -0
  53. package/lib/commonjs/live/index.js +310 -0
  54. package/lib/commonjs/live/index.js.map +1 -0
  55. package/lib/commonjs/live/services/livekitService.js +20 -0
  56. package/lib/commonjs/live/services/livekitService.js.map +1 -0
  57. package/lib/commonjs/live/services/spaceSocketService.js +181 -0
  58. package/lib/commonjs/live/services/spaceSocketService.js.map +1 -0
  59. package/lib/commonjs/live/services/spacesService.js +642 -0
  60. package/lib/commonjs/live/services/spacesService.js.map +1 -0
  61. package/lib/commonjs/live/types.js +6 -0
  62. package/lib/commonjs/live/types.js.map +1 -0
  63. package/lib/commonjs/live/validation.js +238 -0
  64. package/lib/commonjs/live/validation.js.map +1 -0
  65. package/lib/commonjs/package.json +1 -0
  66. package/lib/commonjs/schema.js +102 -0
  67. package/lib/commonjs/schema.js.map +1 -0
  68. package/lib/module/client.js +264 -0
  69. package/lib/module/client.js.map +1 -0
  70. package/lib/module/errors.js +17 -0
  71. package/lib/module/errors.js.map +1 -0
  72. package/lib/module/index.js +6 -0
  73. package/lib/module/index.js.map +1 -0
  74. package/lib/module/index.native.js +5 -0
  75. package/lib/module/index.native.js.map +1 -0
  76. package/lib/module/live/assets/icons/spaces-icon.js +34 -0
  77. package/lib/module/live/assets/icons/spaces-icon.js.map +1 -0
  78. package/lib/module/live/assets/icons/syra-icon.js +36 -0
  79. package/lib/module/live/assets/icons/syra-icon.js.map +1 -0
  80. package/lib/module/live/components/AnimatedPulse.js +33 -0
  81. package/lib/module/live/components/AnimatedPulse.js.map +1 -0
  82. package/lib/module/live/components/AnimatedSpeakerRing.js +85 -0
  83. package/lib/module/live/components/AnimatedSpeakerRing.js.map +1 -0
  84. package/lib/module/live/components/CreateRoomSheet.js +682 -0
  85. package/lib/module/live/components/CreateRoomSheet.js.map +1 -0
  86. package/lib/module/live/components/InsightsPanel.js +327 -0
  87. package/lib/module/live/components/InsightsPanel.js.map +1 -0
  88. package/lib/module/live/components/LiveRoomSheet.js +1189 -0
  89. package/lib/module/live/components/LiveRoomSheet.js.map +1 -0
  90. package/lib/module/live/components/MiniRoomBar.js +154 -0
  91. package/lib/module/live/components/MiniRoomBar.js.map +1 -0
  92. package/lib/module/live/components/PanelHeader.js +52 -0
  93. package/lib/module/live/components/PanelHeader.js.map +1 -0
  94. package/lib/module/live/components/PodcastStreamPicker.js +1183 -0
  95. package/lib/module/live/components/PodcastStreamPicker.js.map +1 -0
  96. package/lib/module/live/components/RecordingCard.js +187 -0
  97. package/lib/module/live/components/RecordingCard.js.map +1 -0
  98. package/lib/module/live/components/RecordingsPanel.js +298 -0
  99. package/lib/module/live/components/RecordingsPanel.js.map +1 -0
  100. package/lib/module/live/components/RoomCard.js +548 -0
  101. package/lib/module/live/components/RoomCard.js.map +1 -0
  102. package/lib/module/live/components/StreamConfigModal.js +650 -0
  103. package/lib/module/live/components/StreamConfigModal.js.map +1 -0
  104. package/lib/module/live/components/StreamConfigPanel.js +816 -0
  105. package/lib/module/live/components/StreamConfigPanel.js.map +1 -0
  106. package/lib/module/live/context/LiveConfigContext.js +40 -0
  107. package/lib/module/live/context/LiveConfigContext.js.map +1 -0
  108. package/lib/module/live/context/LiveRoomContext.js +189 -0
  109. package/lib/module/live/context/LiveRoomContext.js.map +1 -0
  110. package/lib/module/live/hooks/useActiveSpeakers.js +31 -0
  111. package/lib/module/live/hooks/useActiveSpeakers.js.map +1 -0
  112. package/lib/module/live/hooks/useRoomAudio.js +125 -0
  113. package/lib/module/live/hooks/useRoomAudio.js.map +1 -0
  114. package/lib/module/live/hooks/useRoomConnection.js +173 -0
  115. package/lib/module/live/hooks/useRoomConnection.js.map +1 -0
  116. package/lib/module/live/hooks/useRoomManager.js +32 -0
  117. package/lib/module/live/hooks/useRoomManager.js.map +1 -0
  118. package/lib/module/live/hooks/useRoomUsers.js +46 -0
  119. package/lib/module/live/hooks/useRoomUsers.js.map +1 -0
  120. package/lib/module/live/index.js +38 -0
  121. package/lib/module/live/index.js.map +1 -0
  122. package/lib/module/live/services/livekitService.js +16 -0
  123. package/lib/module/live/services/livekitService.js.map +1 -0
  124. package/lib/module/live/services/spaceSocketService.js +176 -0
  125. package/lib/module/live/services/spaceSocketService.js.map +1 -0
  126. package/lib/module/live/services/spacesService.js +639 -0
  127. package/lib/module/live/services/spacesService.js.map +1 -0
  128. package/lib/module/live/types.js +4 -0
  129. package/lib/module/live/types.js.map +1 -0
  130. package/lib/module/live/validation.js +229 -0
  131. package/lib/module/live/validation.js.map +1 -0
  132. package/lib/module/package.json +1 -0
  133. package/lib/module/schema.js +99 -0
  134. package/lib/module/schema.js.map +1 -0
  135. package/{dist/types → lib/typescript/commonjs}/client.d.ts +36 -1
  136. package/lib/typescript/commonjs/client.d.ts.map +1 -0
  137. package/{dist/types → lib/typescript/commonjs}/errors.d.ts +1 -0
  138. package/lib/typescript/commonjs/errors.d.ts.map +1 -0
  139. package/lib/typescript/commonjs/index.d.ts +6 -0
  140. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  141. package/lib/typescript/commonjs/index.native.d.ts +3 -0
  142. package/lib/typescript/commonjs/index.native.d.ts.map +1 -0
  143. package/lib/typescript/commonjs/live/assets/icons/spaces-icon.d.ts +13 -0
  144. package/lib/typescript/commonjs/live/assets/icons/spaces-icon.d.ts.map +1 -0
  145. package/lib/typescript/commonjs/live/assets/icons/syra-icon.d.ts +13 -0
  146. package/lib/typescript/commonjs/live/assets/icons/syra-icon.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/live/components/AnimatedPulse.d.ts +8 -0
  148. package/lib/typescript/commonjs/live/components/AnimatedPulse.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/live/components/AnimatedSpeakerRing.d.ts +10 -0
  150. package/lib/typescript/commonjs/live/components/AnimatedSpeakerRing.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/live/components/CreateRoomSheet.d.ts +26 -0
  152. package/lib/typescript/commonjs/live/components/CreateRoomSheet.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/live/components/InsightsPanel.d.ts +11 -0
  154. package/lib/typescript/commonjs/live/components/InsightsPanel.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/live/components/LiveRoomSheet.d.ts +11 -0
  156. package/lib/typescript/commonjs/live/components/LiveRoomSheet.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/live/components/MiniRoomBar.d.ts +15 -0
  158. package/lib/typescript/commonjs/live/components/MiniRoomBar.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/live/components/PanelHeader.d.ts +10 -0
  160. package/lib/typescript/commonjs/live/components/PanelHeader.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/live/components/PodcastStreamPicker.d.ts +54 -0
  162. package/lib/typescript/commonjs/live/components/PodcastStreamPicker.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/live/components/RecordingCard.d.ts +11 -0
  164. package/lib/typescript/commonjs/live/components/RecordingCard.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/live/components/RecordingsPanel.d.ts +12 -0
  166. package/lib/typescript/commonjs/live/components/RecordingsPanel.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/live/components/RoomCard.d.ts +38 -0
  168. package/lib/typescript/commonjs/live/components/RoomCard.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/live/components/StreamConfigModal.d.ts +11 -0
  170. package/lib/typescript/commonjs/live/components/StreamConfigModal.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/live/components/StreamConfigPanel.d.ts +13 -0
  172. package/lib/typescript/commonjs/live/components/StreamConfigPanel.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/live/context/LiveConfigContext.d.ts +78 -0
  174. package/lib/typescript/commonjs/live/context/LiveConfigContext.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/live/context/LiveRoomContext.d.ts +12 -0
  176. package/lib/typescript/commonjs/live/context/LiveRoomContext.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/live/hooks/useActiveSpeakers.d.ts +3 -0
  178. package/lib/typescript/commonjs/live/hooks/useActiveSpeakers.d.ts.map +1 -0
  179. package/lib/typescript/commonjs/live/hooks/useRoomAudio.d.ts +16 -0
  180. package/lib/typescript/commonjs/live/hooks/useRoomAudio.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/live/hooks/useRoomConnection.d.ts +29 -0
  182. package/lib/typescript/commonjs/live/hooks/useRoomConnection.d.ts.map +1 -0
  183. package/lib/typescript/commonjs/live/hooks/useRoomManager.d.ts +11 -0
  184. package/lib/typescript/commonjs/live/hooks/useRoomManager.d.ts.map +1 -0
  185. package/lib/typescript/commonjs/live/hooks/useRoomUsers.d.ts +5 -0
  186. package/lib/typescript/commonjs/live/hooks/useRoomUsers.d.ts.map +1 -0
  187. package/lib/typescript/commonjs/live/index.d.ts +24 -0
  188. package/lib/typescript/commonjs/live/index.d.ts.map +1 -0
  189. package/lib/typescript/commonjs/live/services/livekitService.d.ts +7 -0
  190. package/lib/typescript/commonjs/live/services/livekitService.d.ts.map +1 -0
  191. package/lib/typescript/commonjs/live/services/spaceSocketService.d.ts +69 -0
  192. package/lib/typescript/commonjs/live/services/spaceSocketService.d.ts.map +1 -0
  193. package/lib/typescript/commonjs/live/services/spacesService.d.ts +181 -0
  194. package/lib/typescript/commonjs/live/services/spacesService.d.ts.map +1 -0
  195. package/lib/typescript/commonjs/live/types.d.ts +100 -0
  196. package/lib/typescript/commonjs/live/types.d.ts.map +1 -0
  197. package/lib/typescript/commonjs/live/validation.d.ts +658 -0
  198. package/lib/typescript/commonjs/live/validation.d.ts.map +1 -0
  199. package/lib/typescript/commonjs/package.json +1 -0
  200. package/{dist/types → lib/typescript/commonjs}/schema.d.ts +305 -0
  201. package/lib/typescript/commonjs/schema.d.ts.map +1 -0
  202. package/lib/typescript/module/client.d.ts +141 -0
  203. package/lib/typescript/module/client.d.ts.map +1 -0
  204. package/lib/typescript/module/errors.d.ts +9 -0
  205. package/lib/typescript/module/errors.d.ts.map +1 -0
  206. package/lib/typescript/module/index.d.ts +6 -0
  207. package/lib/typescript/module/index.d.ts.map +1 -0
  208. package/lib/typescript/module/index.native.d.ts +3 -0
  209. package/lib/typescript/module/index.native.d.ts.map +1 -0
  210. package/lib/typescript/module/live/assets/icons/spaces-icon.d.ts +13 -0
  211. package/lib/typescript/module/live/assets/icons/spaces-icon.d.ts.map +1 -0
  212. package/lib/typescript/module/live/assets/icons/syra-icon.d.ts +13 -0
  213. package/lib/typescript/module/live/assets/icons/syra-icon.d.ts.map +1 -0
  214. package/lib/typescript/module/live/components/AnimatedPulse.d.ts +8 -0
  215. package/lib/typescript/module/live/components/AnimatedPulse.d.ts.map +1 -0
  216. package/lib/typescript/module/live/components/AnimatedSpeakerRing.d.ts +10 -0
  217. package/lib/typescript/module/live/components/AnimatedSpeakerRing.d.ts.map +1 -0
  218. package/lib/typescript/module/live/components/CreateRoomSheet.d.ts +26 -0
  219. package/lib/typescript/module/live/components/CreateRoomSheet.d.ts.map +1 -0
  220. package/lib/typescript/module/live/components/InsightsPanel.d.ts +11 -0
  221. package/lib/typescript/module/live/components/InsightsPanel.d.ts.map +1 -0
  222. package/lib/typescript/module/live/components/LiveRoomSheet.d.ts +11 -0
  223. package/lib/typescript/module/live/components/LiveRoomSheet.d.ts.map +1 -0
  224. package/lib/typescript/module/live/components/MiniRoomBar.d.ts +15 -0
  225. package/lib/typescript/module/live/components/MiniRoomBar.d.ts.map +1 -0
  226. package/lib/typescript/module/live/components/PanelHeader.d.ts +10 -0
  227. package/lib/typescript/module/live/components/PanelHeader.d.ts.map +1 -0
  228. package/lib/typescript/module/live/components/PodcastStreamPicker.d.ts +54 -0
  229. package/lib/typescript/module/live/components/PodcastStreamPicker.d.ts.map +1 -0
  230. package/lib/typescript/module/live/components/RecordingCard.d.ts +11 -0
  231. package/lib/typescript/module/live/components/RecordingCard.d.ts.map +1 -0
  232. package/lib/typescript/module/live/components/RecordingsPanel.d.ts +12 -0
  233. package/lib/typescript/module/live/components/RecordingsPanel.d.ts.map +1 -0
  234. package/lib/typescript/module/live/components/RoomCard.d.ts +38 -0
  235. package/lib/typescript/module/live/components/RoomCard.d.ts.map +1 -0
  236. package/lib/typescript/module/live/components/StreamConfigModal.d.ts +11 -0
  237. package/lib/typescript/module/live/components/StreamConfigModal.d.ts.map +1 -0
  238. package/lib/typescript/module/live/components/StreamConfigPanel.d.ts +13 -0
  239. package/lib/typescript/module/live/components/StreamConfigPanel.d.ts.map +1 -0
  240. package/lib/typescript/module/live/context/LiveConfigContext.d.ts +78 -0
  241. package/lib/typescript/module/live/context/LiveConfigContext.d.ts.map +1 -0
  242. package/lib/typescript/module/live/context/LiveRoomContext.d.ts +12 -0
  243. package/lib/typescript/module/live/context/LiveRoomContext.d.ts.map +1 -0
  244. package/lib/typescript/module/live/hooks/useActiveSpeakers.d.ts +3 -0
  245. package/lib/typescript/module/live/hooks/useActiveSpeakers.d.ts.map +1 -0
  246. package/lib/typescript/module/live/hooks/useRoomAudio.d.ts +16 -0
  247. package/lib/typescript/module/live/hooks/useRoomAudio.d.ts.map +1 -0
  248. package/lib/typescript/module/live/hooks/useRoomConnection.d.ts +29 -0
  249. package/lib/typescript/module/live/hooks/useRoomConnection.d.ts.map +1 -0
  250. package/lib/typescript/module/live/hooks/useRoomManager.d.ts +11 -0
  251. package/lib/typescript/module/live/hooks/useRoomManager.d.ts.map +1 -0
  252. package/lib/typescript/module/live/hooks/useRoomUsers.d.ts +5 -0
  253. package/lib/typescript/module/live/hooks/useRoomUsers.d.ts.map +1 -0
  254. package/lib/typescript/module/live/index.d.ts +24 -0
  255. package/lib/typescript/module/live/index.d.ts.map +1 -0
  256. package/lib/typescript/module/live/services/livekitService.d.ts +7 -0
  257. package/lib/typescript/module/live/services/livekitService.d.ts.map +1 -0
  258. package/lib/typescript/module/live/services/spaceSocketService.d.ts +69 -0
  259. package/lib/typescript/module/live/services/spaceSocketService.d.ts.map +1 -0
  260. package/lib/typescript/module/live/services/spacesService.d.ts +181 -0
  261. package/lib/typescript/module/live/services/spacesService.d.ts.map +1 -0
  262. package/lib/typescript/module/live/types.d.ts +100 -0
  263. package/lib/typescript/module/live/types.d.ts.map +1 -0
  264. package/lib/typescript/module/live/validation.d.ts +658 -0
  265. package/lib/typescript/module/live/validation.d.ts.map +1 -0
  266. package/lib/typescript/module/package.json +1 -0
  267. package/lib/typescript/module/schema.d.ts +1072 -0
  268. package/lib/typescript/module/schema.d.ts.map +1 -0
  269. package/package.json +133 -21
  270. package/src/client.test.ts +185 -0
  271. package/src/client.ts +125 -0
  272. package/src/index.native.ts +2 -0
  273. package/src/index.ts +4 -0
  274. package/src/live/assets/icons/spaces-icon.tsx +15 -0
  275. package/src/live/assets/icons/syra-icon.tsx +13 -0
  276. package/src/live/assets/sounds/intro.mp3 +0 -0
  277. package/src/live/components/AnimatedPulse.tsx +52 -0
  278. package/src/live/components/AnimatedSpeakerRing.tsx +101 -0
  279. package/src/live/components/CreateRoomSheet.tsx +654 -0
  280. package/src/live/components/InsightsPanel.tsx +202 -0
  281. package/src/live/components/LiveRoomSheet.tsx +969 -0
  282. package/src/live/components/MiniRoomBar.tsx +166 -0
  283. package/src/live/components/PanelHeader.tsx +36 -0
  284. package/src/live/components/PodcastStreamPicker.tsx +1155 -0
  285. package/src/live/components/RecordingCard.tsx +154 -0
  286. package/src/live/components/RecordingsPanel.tsx +251 -0
  287. package/src/live/components/RoomCard.tsx +494 -0
  288. package/src/live/components/StreamConfigModal.tsx +600 -0
  289. package/src/live/components/StreamConfigPanel.tsx +729 -0
  290. package/src/live/context/LiveConfigContext.tsx +96 -0
  291. package/src/live/context/LiveRoomContext.tsx +235 -0
  292. package/src/live/hooks/useActiveSpeakers.ts +39 -0
  293. package/src/live/hooks/useRoomAudio.ts +103 -0
  294. package/src/live/hooks/useRoomConnection.ts +162 -0
  295. package/src/live/hooks/useRoomManager.ts +17 -0
  296. package/src/live/hooks/useRoomUsers.ts +52 -0
  297. package/src/live/index.ts +92 -0
  298. package/src/live/services/livekitService.ts +11 -0
  299. package/src/live/services/spaceSocketService.ts +136 -0
  300. package/src/live/services/spacesService.ts +692 -0
  301. package/src/live/types.ts +119 -0
  302. package/src/live/validation.ts +279 -0
  303. package/src/schema.ts +34 -0
  304. package/dist/cjs/client.js +0 -185
  305. package/dist/cjs/errors.js +0 -16
  306. package/dist/cjs/index.js +0 -14
  307. package/dist/cjs/package.json +0 -3
  308. package/dist/cjs/schema.js +0 -62
  309. package/dist/esm/client.js +0 -181
  310. package/dist/esm/errors.js +0 -12
  311. package/dist/esm/index.js +0 -3
  312. package/dist/esm/package.json +0 -3
  313. package/dist/esm/schema.js +0 -59
  314. package/dist/types/index.d.ts +0 -5
@@ -0,0 +1,548 @@
1
+ "use strict";
2
+
3
+ import React, { useMemo } from 'react';
4
+ import { View, Text, StyleSheet, TouchableOpacity } from 'react-native';
5
+ import MaterialCommunityIcons from '@expo/vector-icons/MaterialCommunityIcons';
6
+ import { useAuth } from '@oxyhq/services';
7
+ import { useLiveConfig } from "../context/LiveConfigContext.js";
8
+ import { AnimatedPulse } from "./AnimatedPulse.js";
9
+ import { useRoomUsers, getAvatarUrl } from "../hooks/useRoomUsers.js";
10
+
11
+ // --- Utility helpers ---
12
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
13
+ function formatCompact(num) {
14
+ if (num >= 1_000_000) return `${(num / 1_000_000).toFixed(1).replace(/\.0$/, '')}M`;
15
+ if (num >= 1_000) return `${(num / 1_000).toFixed(1).replace(/\.0$/, '')}k`;
16
+ return String(num);
17
+ }
18
+ function formatDuration(startedAt, endedAt) {
19
+ const ms = new Date(endedAt).getTime() - new Date(startedAt).getTime();
20
+ const totalMin = Math.round(ms / 60_000);
21
+ if (totalMin < 60) return `${totalMin} min`;
22
+ const h = Math.floor(totalMin / 60);
23
+ const m = totalMin % 60;
24
+ return m > 0 ? `${h}h ${m}m` : `${h}h`;
25
+ }
26
+ const MONTH_SHORT = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
27
+ function formatDate(dateStr) {
28
+ const d = new Date(dateStr);
29
+ return `${d.getDate()} ${MONTH_SHORT[d.getMonth()]} ${d.getFullYear()}`;
30
+ }
31
+ function getTimeLabel(room) {
32
+ if (room.status === 'ended' && room.startedAt && room.endedAt) {
33
+ return `${formatDuration(room.startedAt, room.endedAt)} · ${formatDate(room.endedAt)}`;
34
+ }
35
+ if (room.status === 'live' && room.startedAt) {
36
+ return `Live · Started ${formatDate(room.startedAt)}`;
37
+ }
38
+ if (room.status === 'scheduled' && room.scheduledStart) {
39
+ return formatDate(room.scheduledStart);
40
+ }
41
+ if (room.createdAt) {
42
+ return formatDate(room.createdAt);
43
+ }
44
+ return '';
45
+ }
46
+
47
+ // --- Constants ---
48
+
49
+ const ROOM_TYPE_META = {
50
+ stage: {
51
+ icon: 'account-voice',
52
+ label: 'Stage',
53
+ color: '#3B82F6'
54
+ },
55
+ broadcast: {
56
+ icon: 'broadcast',
57
+ label: 'Broadcast',
58
+ color: '#FF6B35'
59
+ }
60
+ };
61
+ const MAX_SPEAKER_AVATARS = 4;
62
+ const SPEAKER_AVATAR_SIZE = 44;
63
+
64
+ // --- Types ---
65
+
66
+ // --- Component ---
67
+
68
+ export const RoomCard = ({
69
+ room,
70
+ onPress,
71
+ variant = 'default',
72
+ house,
73
+ hostName: hostNameProp,
74
+ hostAvatarUri: hostAvatarUriProp,
75
+ onMenuPress,
76
+ onSave,
77
+ isSaved,
78
+ style
79
+ }) => {
80
+ const {
81
+ useTheme,
82
+ useUserById,
83
+ AvatarComponent,
84
+ getCachedFileDownloadUrlSync
85
+ } = useLiveConfig();
86
+ const theme = useTheme();
87
+ const {
88
+ oxyServices
89
+ } = useAuth();
90
+ const hostProfile = useUserById(room.host);
91
+ const isLive = room.status === 'live';
92
+ const isScheduled = room.status === 'scheduled';
93
+ const isCompact = variant === 'compact';
94
+
95
+ // Resolve host display: an explicit prop wins, then the @handle, then the
96
+ // canonical API-owned `name.displayName` from the Oxy user DTO (never a
97
+ // recompute from name parts), then a not-yet-resolved userId fallback.
98
+ const hostProfileName = hostProfile?.name;
99
+ const hostName = hostNameProp ?? (hostProfile?.username ? `@${hostProfile.username}` : (typeof hostProfileName === 'object' ? hostProfileName?.displayName : null) || room.host?.slice(0, 10) || 'Unknown');
100
+ const hostAvatarUri = hostAvatarUriProp ?? getAvatarUrl(hostProfile, oxyServices, getCachedFileDownloadUrlSync);
101
+
102
+ // Resolve speaker avatars (default variant only)
103
+ const speakerIds = useMemo(() => {
104
+ if (isCompact) return [];
105
+ const ids = room.speakers?.length ? room.speakers : [room.host];
106
+ return ids.slice(0, MAX_SPEAKER_AVATARS);
107
+ }, [room.speakers, room.host, isCompact]);
108
+ useRoomUsers(speakerIds);
109
+ const typeMeta = room.type && room.type !== 'talk' ? ROOM_TYPE_META[room.type] : null;
110
+ const listenerCount = room.participants?.length || room.stats?.totalJoined || 0;
111
+ const timeLabel = getTimeLabel(room);
112
+
113
+ // --- Compact variant (kept simple) ---
114
+ if (isCompact) {
115
+ return /*#__PURE__*/_jsxs(TouchableOpacity, {
116
+ style: [styles.compactCard, {
117
+ backgroundColor: theme.colors.card,
118
+ borderColor: theme.colors.border
119
+ }, style],
120
+ onPress: onPress,
121
+ activeOpacity: onPress ? 0.7 : 1,
122
+ disabled: !onPress,
123
+ children: [/*#__PURE__*/_jsxs(View, {
124
+ style: styles.compactHeader,
125
+ children: [house && /*#__PURE__*/_jsx(Text, {
126
+ style: [styles.compactHouseName, {
127
+ color: theme.colors.textSecondary
128
+ }],
129
+ numberOfLines: 1,
130
+ children: house.name.toUpperCase()
131
+ }), /*#__PURE__*/_jsx(Text, {
132
+ style: [styles.compactTitle, {
133
+ color: theme.colors.text
134
+ }],
135
+ numberOfLines: 2,
136
+ children: room.title
137
+ }), (isLive || isScheduled || typeMeta) && /*#__PURE__*/_jsxs(View, {
138
+ style: styles.compactBadgeRow,
139
+ children: [isLive && /*#__PURE__*/_jsxs(View, {
140
+ style: [styles.liveBadge, {
141
+ backgroundColor: '#FF4458'
142
+ }],
143
+ children: [/*#__PURE__*/_jsx(AnimatedPulse, {
144
+ size: 6
145
+ }), /*#__PURE__*/_jsx(Text, {
146
+ style: styles.liveText,
147
+ children: "LIVE"
148
+ })]
149
+ }), isScheduled && /*#__PURE__*/_jsxs(View, {
150
+ style: [styles.scheduledBadge, {
151
+ backgroundColor: theme.colors.backgroundSecondary
152
+ }],
153
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
154
+ name: "calendar",
155
+ size: 10,
156
+ color: theme.colors.textSecondary
157
+ }), /*#__PURE__*/_jsx(Text, {
158
+ style: [styles.scheduledText, {
159
+ color: theme.colors.textSecondary
160
+ }],
161
+ children: "SCHEDULED"
162
+ })]
163
+ }), typeMeta && /*#__PURE__*/_jsxs(View, {
164
+ style: [styles.typeBadge, {
165
+ backgroundColor: typeMeta.color + '20'
166
+ }],
167
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
168
+ name: typeMeta.icon,
169
+ size: 10,
170
+ color: typeMeta.color
171
+ }), /*#__PURE__*/_jsx(Text, {
172
+ style: [styles.typeText, {
173
+ color: typeMeta.color
174
+ }],
175
+ children: typeMeta.label
176
+ })]
177
+ })]
178
+ })]
179
+ }), /*#__PURE__*/_jsxs(View, {
180
+ style: styles.compactFooter,
181
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
182
+ name: "account-group",
183
+ size: 14,
184
+ color: theme.colors.textSecondary
185
+ }), /*#__PURE__*/_jsxs(Text, {
186
+ style: [styles.compactCount, {
187
+ color: theme.colors.textSecondary
188
+ }],
189
+ children: [listenerCount, " listening"]
190
+ }), /*#__PURE__*/_jsx(Text, {
191
+ style: {
192
+ color: theme.colors.textSecondary,
193
+ fontSize: 10
194
+ },
195
+ children: "\u2022"
196
+ }), hostAvatarUri && /*#__PURE__*/_jsx(AvatarComponent, {
197
+ size: 14,
198
+ source: hostAvatarUri,
199
+ shape: "squircle",
200
+ style: {
201
+ marginRight: 2
202
+ }
203
+ }), /*#__PURE__*/_jsx(Text, {
204
+ style: [styles.compactHost, {
205
+ color: theme.colors.textSecondary
206
+ }],
207
+ numberOfLines: 1,
208
+ children: hostName
209
+ })]
210
+ })]
211
+ });
212
+ }
213
+
214
+ // --- Default variant ---
215
+ return /*#__PURE__*/_jsxs(TouchableOpacity, {
216
+ style: [styles.card, {
217
+ backgroundColor: theme.colors.card,
218
+ borderColor: theme.colors.border
219
+ }, style],
220
+ onPress: onPress,
221
+ activeOpacity: onPress ? 0.7 : 1,
222
+ disabled: !onPress,
223
+ children: [(house || onMenuPress) && /*#__PURE__*/_jsxs(View, {
224
+ style: styles.houseRow,
225
+ children: [house && /*#__PURE__*/_jsxs(_Fragment, {
226
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
227
+ name: "home",
228
+ size: 16,
229
+ color: theme.colors.primary
230
+ }), /*#__PURE__*/_jsx(Text, {
231
+ style: [styles.houseName, {
232
+ color: theme.colors.textSecondary
233
+ }],
234
+ numberOfLines: 1,
235
+ children: house.name.toUpperCase()
236
+ })]
237
+ }), /*#__PURE__*/_jsx(View, {
238
+ style: {
239
+ flex: 1
240
+ }
241
+ }), onMenuPress && /*#__PURE__*/_jsx(TouchableOpacity, {
242
+ onPress: onMenuPress,
243
+ hitSlop: {
244
+ top: 8,
245
+ bottom: 8,
246
+ left: 8,
247
+ right: 8
248
+ },
249
+ children: /*#__PURE__*/_jsx(MaterialCommunityIcons, {
250
+ name: "dots-horizontal",
251
+ size: 20,
252
+ color: theme.colors.textSecondary
253
+ })
254
+ })]
255
+ }), /*#__PURE__*/_jsxs(View, {
256
+ children: [/*#__PURE__*/_jsx(Text, {
257
+ style: [styles.title, {
258
+ color: theme.colors.text
259
+ }],
260
+ numberOfLines: 2,
261
+ children: room.title
262
+ }), (isLive || isScheduled || typeMeta) && /*#__PURE__*/_jsxs(View, {
263
+ style: styles.badgeRow,
264
+ children: [isLive && /*#__PURE__*/_jsxs(View, {
265
+ style: [styles.liveBadge, {
266
+ backgroundColor: '#FF4458'
267
+ }],
268
+ children: [/*#__PURE__*/_jsx(AnimatedPulse, {
269
+ size: 6
270
+ }), /*#__PURE__*/_jsx(Text, {
271
+ style: styles.liveText,
272
+ children: "LIVE"
273
+ })]
274
+ }), isScheduled && /*#__PURE__*/_jsxs(View, {
275
+ style: [styles.scheduledBadge, {
276
+ backgroundColor: theme.colors.backgroundSecondary
277
+ }],
278
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
279
+ name: "calendar",
280
+ size: 12,
281
+ color: theme.colors.textSecondary
282
+ }), /*#__PURE__*/_jsx(Text, {
283
+ style: [styles.scheduledText, {
284
+ color: theme.colors.textSecondary
285
+ }],
286
+ children: "SCHEDULED"
287
+ })]
288
+ }), typeMeta && /*#__PURE__*/_jsxs(View, {
289
+ style: [styles.typeBadge, {
290
+ backgroundColor: typeMeta.color + '20'
291
+ }],
292
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
293
+ name: typeMeta.icon,
294
+ size: 10,
295
+ color: typeMeta.color
296
+ }), /*#__PURE__*/_jsx(Text, {
297
+ style: [styles.typeText, {
298
+ color: typeMeta.color
299
+ }],
300
+ children: typeMeta.label
301
+ })]
302
+ })]
303
+ })]
304
+ }), /*#__PURE__*/_jsx(SpeakerRow, {
305
+ speakerIds: speakerIds,
306
+ listenerCount: listenerCount,
307
+ theme: theme
308
+ }), (timeLabel || onSave) && /*#__PURE__*/_jsxs(View, {
309
+ style: styles.metaRow,
310
+ children: [timeLabel ? /*#__PURE__*/_jsx(Text, {
311
+ style: [styles.metaText, {
312
+ color: theme.colors.textSecondary
313
+ }],
314
+ children: timeLabel
315
+ }) : /*#__PURE__*/_jsx(View, {}), onSave && /*#__PURE__*/_jsxs(TouchableOpacity, {
316
+ onPress: onSave,
317
+ style: styles.saveButton,
318
+ hitSlop: {
319
+ top: 8,
320
+ bottom: 8,
321
+ left: 8,
322
+ right: 8
323
+ },
324
+ children: [/*#__PURE__*/_jsx(MaterialCommunityIcons, {
325
+ name: isSaved ? 'bookmark' : 'bookmark-outline',
326
+ size: 18,
327
+ color: isSaved ? theme.colors.primary : theme.colors.textSecondary
328
+ }), /*#__PURE__*/_jsx(Text, {
329
+ style: [styles.saveText, {
330
+ color: isSaved ? theme.colors.primary : theme.colors.textSecondary
331
+ }],
332
+ children: "Save"
333
+ })]
334
+ })]
335
+ })]
336
+ });
337
+ };
338
+
339
+ // --- Speaker row sub-component ---
340
+
341
+ function SpeakerRow({
342
+ speakerIds,
343
+ listenerCount,
344
+ theme
345
+ }) {
346
+ return /*#__PURE__*/_jsxs(View, {
347
+ style: styles.avatarRow,
348
+ children: [speakerIds.map(id => /*#__PURE__*/_jsx(SpeakerAvatar, {
349
+ userId: id
350
+ }, id)), listenerCount > 0 && /*#__PURE__*/_jsx(View, {
351
+ style: [styles.countTile, {
352
+ backgroundColor: theme.colors.backgroundSecondary,
353
+ borderColor: theme.colors.border
354
+ }],
355
+ children: /*#__PURE__*/_jsxs(Text, {
356
+ style: [styles.countTileText, {
357
+ color: theme.colors.textSecondary
358
+ }],
359
+ children: ["+", formatCompact(listenerCount)]
360
+ })
361
+ })]
362
+ });
363
+ }
364
+ function SpeakerAvatar({
365
+ userId
366
+ }) {
367
+ const {
368
+ useUserById,
369
+ AvatarComponent,
370
+ getCachedFileDownloadUrlSync,
371
+ useTheme
372
+ } = useLiveConfig();
373
+ const theme = useTheme();
374
+ const {
375
+ oxyServices
376
+ } = useAuth();
377
+ const profile = useUserById(userId);
378
+ const avatarUri = getAvatarUrl(profile, oxyServices, getCachedFileDownloadUrlSync);
379
+ return /*#__PURE__*/_jsx(View, {
380
+ style: [styles.avatarRing, {
381
+ borderColor: theme.colors.border
382
+ }],
383
+ children: /*#__PURE__*/_jsx(AvatarComponent, {
384
+ size: SPEAKER_AVATAR_SIZE,
385
+ source: avatarUri,
386
+ shape: "squircle"
387
+ })
388
+ });
389
+ }
390
+
391
+ // --- Styles ---
392
+
393
+ const styles = StyleSheet.create({
394
+ card: {
395
+ borderRadius: 12,
396
+ borderWidth: 1,
397
+ padding: 16,
398
+ marginBottom: 12,
399
+ gap: 12
400
+ },
401
+ compactCard: {
402
+ width: 200,
403
+ minHeight: 140,
404
+ borderRadius: 14,
405
+ borderWidth: 1,
406
+ padding: 12,
407
+ justifyContent: 'space-between'
408
+ },
409
+ // House header
410
+ houseRow: {
411
+ flexDirection: 'row',
412
+ alignItems: 'center',
413
+ gap: 6
414
+ },
415
+ houseName: {
416
+ fontSize: 11,
417
+ fontWeight: '700',
418
+ letterSpacing: 0.5
419
+ },
420
+ // Title
421
+ title: {
422
+ fontSize: 32,
423
+ fontWeight: '700',
424
+ lineHeight: 38
425
+ },
426
+ // Badges
427
+ badgeRow: {
428
+ flexDirection: 'row',
429
+ alignItems: 'center',
430
+ gap: 6,
431
+ marginTop: 6
432
+ },
433
+ liveBadge: {
434
+ flexDirection: 'row',
435
+ alignItems: 'center',
436
+ paddingHorizontal: 8,
437
+ paddingVertical: 4,
438
+ borderRadius: 4,
439
+ gap: 4
440
+ },
441
+ liveText: {
442
+ fontSize: 10,
443
+ fontWeight: '700',
444
+ color: '#FFFFFF'
445
+ },
446
+ scheduledBadge: {
447
+ flexDirection: 'row',
448
+ alignItems: 'center',
449
+ paddingHorizontal: 8,
450
+ paddingVertical: 4,
451
+ borderRadius: 4,
452
+ gap: 4
453
+ },
454
+ scheduledText: {
455
+ fontSize: 10,
456
+ fontWeight: '700'
457
+ },
458
+ typeBadge: {
459
+ flexDirection: 'row',
460
+ alignItems: 'center',
461
+ paddingHorizontal: 6,
462
+ paddingVertical: 3,
463
+ borderRadius: 4,
464
+ gap: 3
465
+ },
466
+ typeText: {
467
+ fontSize: 9,
468
+ fontWeight: '700'
469
+ },
470
+ // Speaker avatars
471
+ avatarRow: {
472
+ flexDirection: 'row',
473
+ alignItems: 'center',
474
+ gap: 8
475
+ },
476
+ avatarRing: {
477
+ borderRadius: 14,
478
+ padding: 2,
479
+ borderWidth: 2
480
+ },
481
+ countTile: {
482
+ width: SPEAKER_AVATAR_SIZE + 4,
483
+ height: SPEAKER_AVATAR_SIZE + 4,
484
+ borderRadius: 14,
485
+ borderWidth: 2,
486
+ alignItems: 'center',
487
+ justifyContent: 'center',
488
+ gap: 2
489
+ },
490
+ countTileText: {
491
+ fontSize: 14,
492
+ fontWeight: '700'
493
+ },
494
+ // Metadata
495
+ metaRow: {
496
+ flexDirection: 'row',
497
+ alignItems: 'center',
498
+ justifyContent: 'space-between'
499
+ },
500
+ metaText: {
501
+ fontSize: 13
502
+ },
503
+ saveButton: {
504
+ flexDirection: 'row',
505
+ alignItems: 'center',
506
+ gap: 4
507
+ },
508
+ saveText: {
509
+ fontSize: 13,
510
+ fontWeight: '500'
511
+ },
512
+ // Compact variant
513
+ compactHeader: {
514
+ flex: 1
515
+ },
516
+ compactHouseName: {
517
+ fontSize: 9,
518
+ fontWeight: '700',
519
+ letterSpacing: 0.5,
520
+ marginBottom: 4
521
+ },
522
+ compactTitle: {
523
+ fontSize: 14,
524
+ fontWeight: '600',
525
+ lineHeight: 18
526
+ },
527
+ compactBadgeRow: {
528
+ flexDirection: 'row',
529
+ marginTop: 4,
530
+ gap: 4,
531
+ flexWrap: 'wrap'
532
+ },
533
+ compactFooter: {
534
+ flexDirection: 'row',
535
+ alignItems: 'center',
536
+ gap: 4,
537
+ marginTop: 8
538
+ },
539
+ compactCount: {
540
+ fontSize: 11
541
+ },
542
+ compactHost: {
543
+ fontSize: 11,
544
+ flex: 1
545
+ }
546
+ });
547
+ export default RoomCard;
548
+ //# sourceMappingURL=RoomCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","View","Text","StyleSheet","TouchableOpacity","MaterialCommunityIcons","useAuth","useLiveConfig","AnimatedPulse","useRoomUsers","getAvatarUrl","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","formatCompact","num","toFixed","replace","String","formatDuration","startedAt","endedAt","ms","Date","getTime","totalMin","Math","round","h","floor","m","MONTH_SHORT","formatDate","dateStr","d","getDate","getMonth","getFullYear","getTimeLabel","room","status","scheduledStart","createdAt","ROOM_TYPE_META","stage","icon","label","color","broadcast","MAX_SPEAKER_AVATARS","SPEAKER_AVATAR_SIZE","RoomCard","onPress","variant","house","hostName","hostNameProp","hostAvatarUri","hostAvatarUriProp","onMenuPress","onSave","isSaved","style","useTheme","useUserById","AvatarComponent","getCachedFileDownloadUrlSync","theme","oxyServices","hostProfile","host","isLive","isScheduled","isCompact","hostProfileName","name","username","displayName","slice","speakerIds","ids","speakers","length","typeMeta","type","listenerCount","participants","stats","totalJoined","timeLabel","styles","compactCard","backgroundColor","colors","card","borderColor","border","activeOpacity","disabled","children","compactHeader","compactHouseName","textSecondary","numberOfLines","toUpperCase","compactTitle","text","title","compactBadgeRow","liveBadge","size","liveText","scheduledBadge","backgroundSecondary","scheduledText","typeBadge","typeText","compactFooter","compactCount","fontSize","source","shape","marginRight","compactHost","houseRow","primary","houseName","flex","hitSlop","top","bottom","left","right","badgeRow","SpeakerRow","metaRow","metaText","saveButton","saveText","avatarRow","map","id","SpeakerAvatar","userId","countTile","countTileText","profile","avatarUri","avatarRing","create","borderRadius","borderWidth","padding","marginBottom","gap","width","minHeight","justifyContent","flexDirection","alignItems","fontWeight","letterSpacing","lineHeight","marginTop","paddingHorizontal","paddingVertical","height","flexWrap"],"sourceRoot":"../../../../src","sources":["live/components/RoomCard.tsx"],"mappings":"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","ignoreList":[]}