@syra.fm/sdk 0.4.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 (307) 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/{dist/cjs → lib/commonjs}/schema.js +55 -47
  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/{dist/esm → lib/module}/schema.js +47 -39
  134. package/lib/module/schema.js.map +1 -0
  135. package/{dist/types → lib/typescript/commonjs}/client.d.ts +1 -0
  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/{dist/types → lib/typescript/commonjs}/index.d.ts +1 -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 +1 -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/index.native.ts +2 -0
  271. package/src/live/assets/icons/spaces-icon.tsx +15 -0
  272. package/src/live/assets/icons/syra-icon.tsx +13 -0
  273. package/src/live/assets/sounds/intro.mp3 +0 -0
  274. package/src/live/components/AnimatedPulse.tsx +52 -0
  275. package/src/live/components/AnimatedSpeakerRing.tsx +101 -0
  276. package/src/live/components/CreateRoomSheet.tsx +654 -0
  277. package/src/live/components/InsightsPanel.tsx +202 -0
  278. package/src/live/components/LiveRoomSheet.tsx +969 -0
  279. package/src/live/components/MiniRoomBar.tsx +166 -0
  280. package/src/live/components/PanelHeader.tsx +36 -0
  281. package/src/live/components/PodcastStreamPicker.tsx +1155 -0
  282. package/src/live/components/RecordingCard.tsx +154 -0
  283. package/src/live/components/RecordingsPanel.tsx +251 -0
  284. package/src/live/components/RoomCard.tsx +494 -0
  285. package/src/live/components/StreamConfigModal.tsx +600 -0
  286. package/src/live/components/StreamConfigPanel.tsx +729 -0
  287. package/src/live/context/LiveConfigContext.tsx +96 -0
  288. package/src/live/context/LiveRoomContext.tsx +235 -0
  289. package/src/live/hooks/useActiveSpeakers.ts +39 -0
  290. package/src/live/hooks/useRoomAudio.ts +103 -0
  291. package/src/live/hooks/useRoomConnection.ts +162 -0
  292. package/src/live/hooks/useRoomManager.ts +17 -0
  293. package/src/live/hooks/useRoomUsers.ts +52 -0
  294. package/src/live/index.ts +92 -0
  295. package/src/live/services/livekitService.ts +11 -0
  296. package/src/live/services/spaceSocketService.ts +136 -0
  297. package/src/live/services/spacesService.ts +692 -0
  298. package/src/live/types.ts +119 -0
  299. package/src/live/validation.ts +279 -0
  300. package/dist/cjs/client.js +0 -244
  301. package/dist/cjs/errors.js +0 -16
  302. package/dist/cjs/index.js +0 -15
  303. package/dist/cjs/package.json +0 -3
  304. package/dist/esm/client.js +0 -240
  305. package/dist/esm/errors.js +0 -12
  306. package/dist/esm/index.js +0 -3
  307. package/dist/esm/package.json +0 -3
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+
3
+ import { z } from 'zod';
4
+
5
+ // --- Podcast queue ---
6
+
7
+ /**
8
+ * One podcast episode queued behind the current stream. `episodeId` is the
9
+ * opaque Syra episode handle; `syraPodcastId` (when present) identifies its show.
10
+ * The playable audio URL is never carried here — it is resolved server-side at
11
+ * play-time.
12
+ */
13
+ export const ZPodcastQueueItem = z.object({
14
+ syraPodcastId: z.string().optional(),
15
+ episodeId: z.string()
16
+ }).passthrough();
17
+ // --- Room (replaces Space) ---
18
+
19
+ export const ZRoom = z.object({
20
+ _id: z.string(),
21
+ id: z.string().optional(),
22
+ title: z.string(),
23
+ description: z.string().nullish(),
24
+ // Ownership
25
+ ownerType: z.enum(['profile', 'house', 'agora']).default('profile'),
26
+ host: z.string(),
27
+ houseId: z.string().optional().nullable(),
28
+ createdByAdmin: z.string().optional().nullable(),
29
+ // Classification
30
+ type: z.enum(['talk', 'stage', 'broadcast']).default('talk'),
31
+ broadcastKind: z.enum(['user', 'agora']).optional().nullable(),
32
+ // Lifecycle
33
+ status: z.enum(['scheduled', 'live', 'ended']),
34
+ scheduledStart: z.string().nullish(),
35
+ startedAt: z.string().nullish(),
36
+ endedAt: z.string().nullish(),
37
+ // Participation
38
+ speakerPermission: z.enum(['everyone', 'followers', 'invited']).nullish(),
39
+ participants: z.array(z.string()).default([]),
40
+ speakers: z.array(z.string()).default([]),
41
+ maxParticipants: z.number().default(100),
42
+ // Content
43
+ topic: z.string().nullish(),
44
+ tags: z.array(z.string()).optional(),
45
+ archived: z.boolean().optional().default(false),
46
+ seriesId: z.string().nullish(),
47
+ // Stats
48
+ stats: z.object({
49
+ peakListeners: z.number(),
50
+ totalJoined: z.number()
51
+ }).optional(),
52
+ // Streaming
53
+ activeIngressId: z.string().nullish(),
54
+ activeStreamUrl: z.string().nullish(),
55
+ streamTitle: z.string().nullish(),
56
+ streamImage: z.string().nullish(),
57
+ streamDescription: z.string().nullish(),
58
+ rtmpUrl: z.string().nullish(),
59
+ rtmpStreamKey: z.string().nullish(),
60
+ // Stream progress + podcast lifecycle (shared contract with the backend).
61
+ // `streamStartedAt` is an ISO timestamp; `streamDurationSec` is the current
62
+ // stream's total length in seconds when known (e.g. a podcast episode);
63
+ // `podcastQueue` holds the episodes queued behind the current one.
64
+ streamStartedAt: z.string().nullish(),
65
+ streamDurationSec: z.number().nullish(),
66
+ podcastQueue: z.array(ZPodcastQueueItem).nullish(),
67
+ // Recording
68
+ recordingEnabled: z.boolean().optional().default(true),
69
+ recordingEgressId: z.string().nullish(),
70
+ createdAt: z.string()
71
+ }).passthrough();
72
+ // --- Room Participant ---
73
+
74
+ export const ZRoomParticipant = z.object({
75
+ userId: z.string(),
76
+ role: z.enum(['host', 'speaker', 'listener']),
77
+ isMuted: z.boolean(),
78
+ joinedAt: z.string()
79
+ }).passthrough();
80
+ // --- House ---
81
+
82
+ export const ZHouseMember = z.object({
83
+ userId: z.string(),
84
+ role: z.enum(['owner', 'admin', 'host', 'member']),
85
+ joinedAt: z.string()
86
+ }).passthrough();
87
+ export const ZHouse = z.object({
88
+ _id: z.string(),
89
+ id: z.string().optional(),
90
+ name: z.string(),
91
+ description: z.string().optional(),
92
+ avatar: z.string().optional().nullable(),
93
+ coverImage: z.string().optional().nullable(),
94
+ members: z.array(ZHouseMember).default([]),
95
+ createdBy: z.string(),
96
+ isPublic: z.boolean().default(true),
97
+ tags: z.array(z.string()).optional(),
98
+ createdAt: z.string()
99
+ }).passthrough();
100
+ // --- Series ---
101
+
102
+ export const ZRecurrence = z.object({
103
+ type: z.enum(['daily', 'weekly', 'biweekly', 'monthly']),
104
+ dayOfWeek: z.number().min(0).max(6).optional(),
105
+ dayOfMonth: z.number().min(1).max(31).optional(),
106
+ time: z.string().regex(/^\d{2}:\d{2}$/),
107
+ timezone: z.string().default('UTC')
108
+ }).passthrough();
109
+ export const ZRoomTemplate = z.object({
110
+ titlePattern: z.string(),
111
+ type: z.enum(['talk', 'stage', 'broadcast']).default('talk'),
112
+ description: z.string().optional(),
113
+ maxParticipants: z.number().default(100),
114
+ speakerPermission: z.enum(['everyone', 'followers', 'invited']).default('invited'),
115
+ tags: z.array(z.string()).optional()
116
+ }).passthrough();
117
+ export const ZSeriesEpisode = z.object({
118
+ roomId: z.string(),
119
+ scheduledStart: z.string(),
120
+ episodeNumber: z.number()
121
+ }).passthrough();
122
+ export const ZSeries = z.object({
123
+ _id: z.string(),
124
+ id: z.string().optional(),
125
+ title: z.string(),
126
+ description: z.string().optional(),
127
+ coverImage: z.string().optional().nullable(),
128
+ houseId: z.string().optional().nullable(),
129
+ createdBy: z.string(),
130
+ recurrence: ZRecurrence,
131
+ roomTemplate: ZRoomTemplate,
132
+ episodes: z.array(ZSeriesEpisode).default([]),
133
+ nextEpisodeNumber: z.number().default(1),
134
+ isActive: z.boolean().default(true),
135
+ createdAt: z.string()
136
+ }).passthrough();
137
+ // --- Recording ---
138
+
139
+ export const ZRecording = z.object({
140
+ _id: z.string(),
141
+ roomId: z.string(),
142
+ roomTitle: z.string(),
143
+ host: z.string(),
144
+ status: z.enum(['recording', 'processing', 'ready', 'failed', 'deleted']),
145
+ egressId: z.string(),
146
+ objectKey: z.string(),
147
+ fileSize: z.number().nullish(),
148
+ durationMs: z.number().nullish(),
149
+ startedAt: z.string(),
150
+ stoppedAt: z.string().nullish(),
151
+ access: z.enum(['public', 'participants']).default('public'),
152
+ participantIds: z.array(z.string()).default([]),
153
+ expiresAt: z.string(),
154
+ createdAt: z.string()
155
+ }).passthrough();
156
+ // --- Stream responses ---
157
+
158
+ export const ZStartStreamResponse = z.object({
159
+ ingressId: z.string(),
160
+ url: z.string()
161
+ }).passthrough();
162
+ export const ZGenerateStreamKeyResponse = z.object({
163
+ rtmpUrl: z.string(),
164
+ streamKey: z.string()
165
+ }).passthrough();
166
+ export const ZStreamInfo = z.object({
167
+ title: z.string().optional(),
168
+ image: z.string().optional(),
169
+ description: z.string().optional()
170
+ }).passthrough();
171
+ // --- Room attachment for posts ---
172
+
173
+ export const ZRoomAttachment = z.object({
174
+ roomId: z.string(),
175
+ title: z.string(),
176
+ status: z.enum(['scheduled', 'live', 'ended']).optional(),
177
+ type: z.enum(['talk', 'stage', 'broadcast']).optional(),
178
+ topic: z.string().optional(),
179
+ host: z.string().optional()
180
+ }).passthrough();
181
+ // --- Validators ---
182
+
183
+ export function validateRoom(data) {
184
+ const result = ZRoom.safeParse(data);
185
+ if (result.success) return result.data;
186
+ console.warn('[live] Invalid Room:', result.error.issues[0]);
187
+ return null;
188
+ }
189
+ export function validateRooms(items) {
190
+ if (!Array.isArray(items)) return [];
191
+ const valid = [];
192
+ for (const item of items) {
193
+ const parsed = ZRoom.safeParse(item);
194
+ if (parsed.success) {
195
+ valid.push(parsed.data);
196
+ } else {
197
+ console.warn('[live] Dropping invalid room:', parsed.error.issues[0]);
198
+ }
199
+ }
200
+ return valid;
201
+ }
202
+ export function validateHouse(data) {
203
+ const result = ZHouse.safeParse(data);
204
+ if (result.success) return result.data;
205
+ console.warn('[live] Invalid House:', result.error.issues[0]);
206
+ return null;
207
+ }
208
+ export function validateRecording(data) {
209
+ const result = ZRecording.safeParse(data);
210
+ if (result.success) return result.data;
211
+ console.warn('[live] Invalid Recording:', result.error.issues[0]);
212
+ return null;
213
+ }
214
+ export function validateRecordings(items) {
215
+ if (!Array.isArray(items)) return [];
216
+ const valid = [];
217
+ for (const item of items) {
218
+ const parsed = ZRecording.safeParse(item);
219
+ if (parsed.success) valid.push(parsed.data);
220
+ }
221
+ return valid;
222
+ }
223
+ export function validateSeries(data) {
224
+ const result = ZSeries.safeParse(data);
225
+ if (result.success) return result.data;
226
+ console.warn('[live] Invalid Series:', result.error.issues[0]);
227
+ return null;
228
+ }
229
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["z","ZPodcastQueueItem","object","syraPodcastId","string","optional","episodeId","passthrough","ZRoom","_id","id","title","description","nullish","ownerType","enum","default","host","houseId","nullable","createdByAdmin","type","broadcastKind","status","scheduledStart","startedAt","endedAt","speakerPermission","participants","array","speakers","maxParticipants","number","topic","tags","archived","boolean","seriesId","stats","peakListeners","totalJoined","activeIngressId","activeStreamUrl","streamTitle","streamImage","streamDescription","rtmpUrl","rtmpStreamKey","streamStartedAt","streamDurationSec","podcastQueue","recordingEnabled","recordingEgressId","createdAt","ZRoomParticipant","userId","role","isMuted","joinedAt","ZHouseMember","ZHouse","name","avatar","coverImage","members","createdBy","isPublic","ZRecurrence","dayOfWeek","min","max","dayOfMonth","time","regex","timezone","ZRoomTemplate","titlePattern","ZSeriesEpisode","roomId","episodeNumber","ZSeries","recurrence","roomTemplate","episodes","nextEpisodeNumber","isActive","ZRecording","roomTitle","egressId","objectKey","fileSize","durationMs","stoppedAt","access","participantIds","expiresAt","ZStartStreamResponse","ingressId","url","ZGenerateStreamKeyResponse","streamKey","ZStreamInfo","image","ZRoomAttachment","validateRoom","data","result","safeParse","success","console","warn","error","issues","validateRooms","items","Array","isArray","valid","item","parsed","push","validateHouse","validateRecording","validateRecordings","validateSeries"],"sourceRoot":"../../../src","sources":["live/validation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -1,4 +1,7 @@
1
+ "use strict";
2
+
1
3
  import { z } from 'zod';
4
+
2
5
  /**
3
6
  * Minimal, self-contained schemas for the public Syra API response shapes this
4
7
  * SDK consumes. Intentionally NOT shared with the Syra backend's internal
@@ -6,37 +9,41 @@ import { z } from 'zod';
6
9
  * everything else (Zod object schemas drop unknown keys by default), so the API
7
10
  * can evolve without breaking external consumers.
8
11
  */
12
+
9
13
  /** A single artwork variant. The backend serializes `url` as `/api/images/:id`. */
10
14
  export const coverArtVariantSchema = z.object({
11
- id: z.string().optional(),
12
- url: z.string(),
13
- width: z.number().optional(),
14
- height: z.number().optional(),
15
+ id: z.string().optional(),
16
+ url: z.string(),
17
+ width: z.number().optional(),
18
+ height: z.number().optional()
15
19
  });
16
20
  /** Named artwork variants keyed by size. */
17
21
  export const coverArtSizesSchema = z.object({
18
- small: coverArtVariantSchema.optional(),
19
- medium: coverArtVariantSchema.optional(),
20
- large: coverArtVariantSchema.optional(),
21
- xlarge: coverArtVariantSchema.optional(),
22
- xxlarge: coverArtVariantSchema.optional(),
23
- original: coverArtVariantSchema.optional(),
22
+ small: coverArtVariantSchema.optional(),
23
+ medium: coverArtVariantSchema.optional(),
24
+ large: coverArtVariantSchema.optional(),
25
+ xlarge: coverArtVariantSchema.optional(),
26
+ xxlarge: coverArtVariantSchema.optional(),
27
+ original: coverArtVariantSchema.optional()
24
28
  });
29
+
30
+ /** Artwork size name. */
31
+
25
32
  /**
26
33
  * The summary view of a track returned by the public catalog endpoints — just
27
34
  * enough to render a song row and play its preview.
28
35
  */
29
36
  export const trackSummarySchema = z.object({
30
- id: z.string(),
31
- title: z.string(),
32
- artistId: z.string().optional(),
33
- artistName: z.string(),
34
- albumId: z.string().optional(),
35
- albumName: z.string().optional(),
36
- duration: z.number(),
37
- coverArt: z.string().optional(),
38
- coverArtSizes: coverArtSizesSchema.optional(),
39
- previewAvailable: z.boolean().optional(),
37
+ id: z.string(),
38
+ title: z.string(),
39
+ artistId: z.string().optional(),
40
+ artistName: z.string(),
41
+ albumId: z.string().optional(),
42
+ albumName: z.string().optional(),
43
+ duration: z.number(),
44
+ coverArt: z.string().optional(),
45
+ coverArtSizes: coverArtSizesSchema.optional(),
46
+ previewAvailable: z.boolean().optional()
40
47
  });
41
48
  /**
42
49
  * The summary view of a podcast SHOW returned by the public podcast endpoints
@@ -49,13 +56,13 @@ export const trackSummarySchema = z.object({
49
56
  * external artwork URL as an absolute fallback when re-hosting has not run yet.
50
57
  */
51
58
  export const podcastSummarySchema = z.object({
52
- id: z.string(),
53
- title: z.string(),
54
- author: z.string().optional(),
55
- description: z.string().optional(),
56
- image: z.string().optional(),
57
- imageSizes: coverArtSizesSchema.optional(),
58
- imageSourceUrl: z.string().optional(),
59
+ id: z.string(),
60
+ title: z.string(),
61
+ author: z.string().optional(),
62
+ description: z.string().optional(),
63
+ image: z.string().optional(),
64
+ imageSizes: coverArtSizesSchema.optional(),
65
+ imageSourceUrl: z.string().optional()
59
66
  });
60
67
  /**
61
68
  * The summary view of a podcast EPISODE returned by the public podcast endpoints
@@ -76,16 +83,17 @@ export const podcastSummarySchema = z.object({
76
83
  * run yet.
77
84
  */
78
85
  export const episodeSummarySchema = z.object({
79
- id: z.string(),
80
- podcastId: z.string(),
81
- title: z.string(),
82
- description: z.string().optional(),
83
- enclosureUrl: z.string(),
84
- enclosureType: z.string().optional(),
85
- enclosureLength: z.number().optional(),
86
- duration: z.number().optional(),
87
- pubDate: z.string().optional(),
88
- image: z.string().optional(),
89
- imageSizes: coverArtSizesSchema.optional(),
90
- imageSourceUrl: z.string().optional(),
86
+ id: z.string(),
87
+ podcastId: z.string(),
88
+ title: z.string(),
89
+ description: z.string().optional(),
90
+ enclosureUrl: z.string(),
91
+ enclosureType: z.string().optional(),
92
+ enclosureLength: z.number().optional(),
93
+ duration: z.number().optional(),
94
+ pubDate: z.string().optional(),
95
+ image: z.string().optional(),
96
+ imageSizes: coverArtSizesSchema.optional(),
97
+ imageSourceUrl: z.string().optional()
91
98
  });
99
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["z","coverArtVariantSchema","object","id","string","optional","url","width","number","height","coverArtSizesSchema","small","medium","large","xlarge","xxlarge","original","trackSummarySchema","title","artistId","artistName","albumId","albumName","duration","coverArt","coverArtSizes","previewAvailable","boolean","podcastSummarySchema","author","description","image","imageSizes","imageSourceUrl","episodeSummarySchema","podcastId","enclosureUrl","enclosureType","enclosureLength","pubDate"],"sourceRoot":"../../src","sources":["schema.ts"],"mappings":"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","ignoreList":[]}
@@ -138,3 +138,4 @@ export interface SyraClient {
138
138
  * is no authentication in this version.
139
139
  */
140
140
  export declare function createSyraClient(options?: SyraClientOptions): SyraClient;
141
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"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"}
@@ -6,3 +6,4 @@ export declare class SyraApiError extends Error {
6
6
  readonly status: number;
7
7
  constructor(status: number, message: string);
8
8
  }
9
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,4CAA4C;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAO5C"}
@@ -3,3 +3,4 @@ export type { SyraClient, SyraClientOptions, SearchTracksOptions, SearchPodcasts
3
3
  export { trackSummarySchema, podcastSummarySchema, episodeSummarySchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
4
4
  export type { TrackSummary, PodcastSummary, EpisodeSummary, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
5
5
  export { SyraApiError } from './errors';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,cAAc,EACd,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './index';
2
+ export * from './live';
3
+ //# sourceMappingURL=index.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../../src/index.native.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { ViewStyle, type ColorValue } from 'react-native';
3
+ export declare const LiveRoomsIcon: ({ color, size, style }: {
4
+ color?: ColorValue;
5
+ size?: number;
6
+ style?: ViewStyle;
7
+ }) => React.JSX.Element;
8
+ export declare const LiveRoomsIconActive: ({ color, size, style }: {
9
+ color?: ColorValue;
10
+ size?: number;
11
+ style?: ViewStyle;
12
+ }) => React.JSX.Element;
13
+ //# sourceMappingURL=spaces-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spaces-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/live/assets/icons/spaces-icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1D,eAAO,MAAM,aAAa,GAAI,wBAA8C;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,sBAInI,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,wBAA8C;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,sBAIzI,CAAC"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { ViewStyle, type ColorValue } from 'react-native';
3
+ export declare const SyraIcon: ({ color, size, style }: {
4
+ color?: ColorValue;
5
+ size?: number;
6
+ style?: ViewStyle;
7
+ }) => React.JSX.Element;
8
+ export declare const SyraIconActive: ({ color, size, style }: {
9
+ color?: ColorValue;
10
+ size?: number;
11
+ style?: ViewStyle;
12
+ }) => React.JSX.Element;
13
+ //# sourceMappingURL=syra-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syra-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/live/assets/icons/syra-icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1D,eAAO,MAAM,QAAQ,GAAI,wBAA8C;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,sBAM9H,CAAC;AAEF,eAAO,MAAM,cAAc,2BAR4C;IAAE,KAAK,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,sBAQzF,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ interface AnimatedPulseProps {
3
+ size?: number;
4
+ color?: string;
5
+ }
6
+ export declare const AnimatedPulse: React.NamedExoticComponent<AnimatedPulseProps>;
7
+ export {};
8
+ //# sourceMappingURL=AnimatedPulse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimatedPulse.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/AnimatedPulse.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAUzC,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,aAAa,gDAgCxB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ interface AnimatedSpeakerRingProps {
3
+ isSpeaking: boolean;
4
+ isMuted: boolean;
5
+ primaryColor: string;
6
+ children: React.ReactNode;
7
+ }
8
+ export declare const AnimatedSpeakerRing: React.NamedExoticComponent<AnimatedSpeakerRingProps>;
9
+ export {};
10
+ //# sourceMappingURL=AnimatedSpeakerRing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimatedSpeakerRing.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/AnimatedSpeakerRing.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAYzC,UAAU,wBAAwB;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,mBAAmB,sDA6D9B,CAAC"}
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import type { Room, House } from '../types';
3
+ export interface CreateRoomSheetRef {
4
+ handleCreateAndStart: () => void;
5
+ handleSchedule: () => void;
6
+ handleCreateForEmbed: () => void;
7
+ }
8
+ export interface CreateRoomFormState {
9
+ isValid: boolean;
10
+ loading: boolean;
11
+ hasScheduledStart: boolean;
12
+ }
13
+ interface CreateRoomSheetProps {
14
+ onClose: () => void;
15
+ onRoomCreated?: (room: Room) => void;
16
+ mode?: 'standalone' | 'embed';
17
+ ScrollViewComponent?: React.ComponentType<{
18
+ children: React.ReactNode;
19
+ }>;
20
+ hideFooter?: boolean;
21
+ onFormStateChange?: (state: CreateRoomFormState) => void;
22
+ houses?: House[];
23
+ }
24
+ export declare const CreateRoomSheet: React.ForwardRefExoticComponent<CreateRoomSheetProps & React.RefAttributes<CreateRoomSheetRef>>;
25
+ export default CreateRoomSheet;
26
+ //# sourceMappingURL=CreateRoomSheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateRoomSheet.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/CreateRoomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAcpF,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AA0B5C,MAAM,WAAW,kBAAkB;IACjC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,UAAU,oBAAoB;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACrC,IAAI,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC;IACzE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;CAClB;AAED,eAAO,MAAM,eAAe,iGAwc1B,CAAC;AAuIH,eAAe,eAAe,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import type { Room, RoomParticipant, LiveTheme } from '../types';
3
+ interface InsightsPanelProps {
4
+ room: Room | null;
5
+ participants: RoomParticipant[];
6
+ theme: LiveTheme;
7
+ onClose: () => void;
8
+ }
9
+ export declare function InsightsPanel({ room, participants, theme, onClose }: InsightsPanelProps): React.JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=InsightsPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InsightsPanel.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/InsightsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,OAAO,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEjE,UAAU,kBAAkB;IAC1B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAeD,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,kBAAkB,qBAgHvF"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface LiveRoomSheetProps {
3
+ roomId: string;
4
+ isExpanded: boolean;
5
+ onCollapse: () => void;
6
+ onExpand: () => void;
7
+ onLeave: () => void;
8
+ }
9
+ export declare function LiveRoomSheet({ roomId, isExpanded, onCollapse, onExpand, onLeave }: LiveRoomSheetProps): React.JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=LiveRoomSheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LiveRoomSheet.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/LiveRoomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAgLzE,UAAU,kBAAkB;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,kBAAkB,qBAklBtG"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ interface MiniRoomBarProps {
3
+ title: string;
4
+ participantCount: number;
5
+ isMuted: boolean;
6
+ canSpeak: boolean;
7
+ activeSpeakerCount?: number;
8
+ onExpand: () => void;
9
+ onToggleMute: () => void;
10
+ onLeave: () => void;
11
+ }
12
+ export declare const MINI_BAR_HEIGHT = 64;
13
+ export declare function MiniRoomBar({ title, participantCount, isMuted, canSpeak, activeSpeakerCount, onExpand, onToggleMute, onLeave, }: MiniRoomBarProps): React.JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=MiniRoomBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MiniRoomBar.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/MiniRoomBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAezC,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,kBAAsB,EACtB,QAAQ,EACR,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,qBAiFlB"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { LiveTheme } from '../types';
3
+ interface PanelHeaderProps {
4
+ title: string;
5
+ theme: LiveTheme;
6
+ onBack: () => void;
7
+ }
8
+ export declare function PanelHeader({ title, theme, onBack }: PanelHeaderProps): React.JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=PanelHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PanelHeader.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/PanelHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,qBAUrE"}