@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,268 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DEFAULT_SYRA_WEB_BASE_URL = exports.DEFAULT_SYRA_BASE_URL = void 0;
7
+ exports.createSyraClient = createSyraClient;
8
+ var _schema = require("./schema.js");
9
+ var _errors = require("./errors.js");
10
+ /** Default base URL of the public Syra API. */
11
+ const DEFAULT_SYRA_BASE_URL = exports.DEFAULT_SYRA_BASE_URL = 'https://api.syra.fm';
12
+
13
+ /** Default base URL of the Syra web app, used for deep links. */
14
+ const DEFAULT_SYRA_WEB_BASE_URL = exports.DEFAULT_SYRA_WEB_BASE_URL = 'https://syra.fm';
15
+
16
+ /**
17
+ * One page of paginated catalog search results.
18
+ *
19
+ * `hasMore` reflects the BACKEND's pagination over the full matching set — NOT
20
+ * `items.length`. {@link SyraClient.searchTracks} additionally filters its page
21
+ * client-side to preview-available tracks, so `items.length` can be smaller than
22
+ * `limit` while `hasMore` is still `true`; callers must paginate by advancing
23
+ * `offset` by `limit` (the page size), never by `items.length`.
24
+ */
25
+
26
+ /** Minimal shape from which track artwork URLs can be derived. */
27
+
28
+ /** Minimal shape from which podcast-show artwork URLs can be derived. */
29
+
30
+ /** Minimal shape from which podcast-episode artwork URLs can be derived. */
31
+
32
+ /** Order used to pick the best available artwork variant when none is named. */
33
+ const ARTWORK_FALLBACK_ORDER = ['original', 'xxlarge', 'xlarge', 'large', 'medium', 'small'];
34
+ const OBJECT_ID_PATTERN = /^[a-f\d]{24}$/i;
35
+
36
+ /**
37
+ * Default episode page size, matching the backend's own default so the SDK's
38
+ * offset→page translation lines up with the server's pagination window.
39
+ */
40
+ const DEFAULT_EPISODES_PAGE_SIZE = 20;
41
+
42
+ /** Read a finite number from an unknown response field, else a fallback. */
43
+ function numberOr(value, fallback) {
44
+ return typeof value === 'number' && Number.isFinite(value) ? value : fallback;
45
+ }
46
+ /**
47
+ * Create a headless client for the public Syra API. Public reads only — there
48
+ * is no authentication in this version.
49
+ */
50
+ function createSyraClient(options = {}) {
51
+ const baseURL = (options.baseURL ?? DEFAULT_SYRA_BASE_URL).replace(/\/+$/, '');
52
+ const webBaseURL = (options.webBaseURL ?? DEFAULT_SYRA_WEB_BASE_URL).replace(/\/+$/, '');
53
+ function resolveFetch() {
54
+ if (options.fetch) {
55
+ return options.fetch;
56
+ }
57
+ const globalFetch = globalThis.fetch;
58
+ if (typeof globalFetch === 'function') {
59
+ return globalFetch.bind(globalThis);
60
+ }
61
+ throw new Error('@syra.fm/sdk: no global fetch is available. Pass `fetch` in createSyraClient options, ' + 'or run on Node 18+, a browser, or React Native.');
62
+ }
63
+ async function getJson(path) {
64
+ const doFetch = resolveFetch();
65
+ const response = await doFetch(`${baseURL}${path}`, {
66
+ headers: {
67
+ Accept: 'application/json'
68
+ }
69
+ });
70
+ if (!response.ok) {
71
+ throw new _errors.SyraApiError(response.status, `Syra API request failed: ${response.status} ${response.statusText} (${path})`);
72
+ }
73
+ return response.json();
74
+ }
75
+ function resolveImageRef(ref) {
76
+ if (!ref) {
77
+ return undefined;
78
+ }
79
+ if (/^https?:\/\//i.test(ref)) {
80
+ return ref;
81
+ }
82
+ if (ref.startsWith('/api/images/')) {
83
+ return `${baseURL}${ref}`;
84
+ }
85
+ if (OBJECT_ID_PATTERN.test(ref)) {
86
+ return `${baseURL}/api/images/${ref}`;
87
+ }
88
+ return undefined;
89
+ }
90
+ return {
91
+ async searchTracks(query, searchOptions = {}) {
92
+ const params = new URLSearchParams({
93
+ q: query,
94
+ category: 'tracks'
95
+ });
96
+ if (typeof searchOptions.limit === 'number') {
97
+ params.set('limit', String(searchOptions.limit));
98
+ }
99
+ if (typeof searchOptions.offset === 'number') {
100
+ params.set('offset', String(searchOptions.offset));
101
+ }
102
+ const json = await getJson(`/api/search?${params.toString()}`);
103
+ const rawTracks = Array.isArray(json?.results?.tracks) ? json.results.tracks : [];
104
+ const items = [];
105
+ for (const raw of rawTracks) {
106
+ // A single malformed catalog row must not fail the whole search.
107
+ const parsed = _schema.trackSummarySchema.safeParse(raw);
108
+ if (parsed.success && parsed.data.previewAvailable === true) {
109
+ items.push(parsed.data);
110
+ }
111
+ }
112
+ return {
113
+ items,
114
+ // `hasMore` is sourced from the backend's pagination over the FULL result
115
+ // set; the client-side preview filter above may shrink `items` below
116
+ // `limit`, but must NOT corrupt `hasMore` (else a page whose tail was
117
+ // filtered out would falsely report the end of the catalog).
118
+ hasMore: json?.hasMore === true,
119
+ limit: numberOr(json?.limit, searchOptions.limit ?? rawTracks.length),
120
+ offset: numberOr(json?.offset, searchOptions.offset ?? 0)
121
+ };
122
+ },
123
+ async getTrack(id) {
124
+ const json = await getJson(`/api/tracks/${encodeURIComponent(id)}`);
125
+ return _schema.trackSummarySchema.parse(json);
126
+ },
127
+ previewUrl(id, startSec = 0) {
128
+ const safeStart = Number.isFinite(startSec) ? Math.max(0, Math.trunc(startSec)) : 0;
129
+ return `${baseURL}/api/preview/${encodeURIComponent(id)}.mp3?start=${safeStart}`;
130
+ },
131
+ artworkUrl(source, size) {
132
+ if (typeof source === 'string') {
133
+ return resolveImageRef(source);
134
+ }
135
+ if (size && source.coverArtSizes) {
136
+ const resolved = resolveImageRef(source.coverArtSizes[size]?.url);
137
+ if (resolved) {
138
+ return resolved;
139
+ }
140
+ }
141
+ const fromCoverArt = resolveImageRef(source.coverArt);
142
+ if (fromCoverArt) {
143
+ return fromCoverArt;
144
+ }
145
+ if (source.coverArtSizes) {
146
+ for (const key of ARTWORK_FALLBACK_ORDER) {
147
+ const resolved = resolveImageRef(source.coverArtSizes[key]?.url);
148
+ if (resolved) {
149
+ return resolved;
150
+ }
151
+ }
152
+ }
153
+ return undefined;
154
+ },
155
+ async searchPodcasts(query, searchOptions = {}) {
156
+ const params = new URLSearchParams({
157
+ q: query
158
+ });
159
+ if (typeof searchOptions.limit === 'number') {
160
+ params.set('limit', String(searchOptions.limit));
161
+ }
162
+ if (typeof searchOptions.offset === 'number') {
163
+ params.set('offset', String(searchOptions.offset));
164
+ }
165
+ const json = await getJson(`/api/podcasts/search?${params.toString()}`);
166
+ const rawPodcasts = Array.isArray(json?.data) ? json.data : [];
167
+ const items = [];
168
+ for (const raw of rawPodcasts) {
169
+ // A single malformed catalog row must not fail the whole search.
170
+ const parsed = _schema.podcastSummarySchema.safeParse(raw);
171
+ if (parsed.success) {
172
+ items.push(parsed.data);
173
+ }
174
+ }
175
+ return {
176
+ items,
177
+ // `hasMore` reflects the backend's pagination over the full result set.
178
+ hasMore: json?.hasMore === true,
179
+ limit: numberOr(json?.limit, searchOptions.limit ?? rawPodcasts.length),
180
+ offset: numberOr(json?.offset, searchOptions.offset ?? 0)
181
+ };
182
+ },
183
+ async getPodcast(id) {
184
+ const json = await getJson(`/api/podcasts/${encodeURIComponent(id)}`);
185
+ return _schema.podcastSummarySchema.parse(json?.data?.podcast);
186
+ },
187
+ podcastUrl(id) {
188
+ return `${webBaseURL}/podcasts/${encodeURIComponent(id)}`;
189
+ },
190
+ podcastArtworkUrl(source, size) {
191
+ if (size && source.imageSizes) {
192
+ const resolved = resolveImageRef(source.imageSizes[size]?.url);
193
+ if (resolved) {
194
+ return resolved;
195
+ }
196
+ }
197
+ const fromImage = resolveImageRef(source.image);
198
+ if (fromImage) {
199
+ return fromImage;
200
+ }
201
+ if (source.imageSizes) {
202
+ for (const key of ARTWORK_FALLBACK_ORDER) {
203
+ const resolved = resolveImageRef(source.imageSizes[key]?.url);
204
+ if (resolved) {
205
+ return resolved;
206
+ }
207
+ }
208
+ }
209
+ return resolveImageRef(source.imageSourceUrl);
210
+ },
211
+ async getPodcastEpisodes(podcastId, listOptions = {}) {
212
+ // The endpoint paginates by 1-based `page`; translate the SDK's uniform
213
+ // offset-based paging into it. `limit` must be concrete (unlike search,
214
+ // which can omit it) because the page number is derived from it.
215
+ const limit = listOptions.limit ?? DEFAULT_EPISODES_PAGE_SIZE;
216
+ const offset = listOptions.offset ?? 0;
217
+ const page = Math.floor(offset / limit) + 1;
218
+ const json = await getJson(`/api/podcasts/${encodeURIComponent(podcastId)}/episodes?page=${page}&limit=${limit}`);
219
+ const rawEpisodes = Array.isArray(json?.data) ? json.data : [];
220
+ const items = [];
221
+ for (const raw of rawEpisodes) {
222
+ // A single malformed episode row must not fail the whole listing.
223
+ const parsed = _schema.episodeSummarySchema.safeParse(raw);
224
+ if (parsed.success) {
225
+ items.push(parsed.data);
226
+ }
227
+ }
228
+
229
+ // `total` is the backend's full count over the show; derive `hasMore` from
230
+ // it rather than `items.length`, which the schema/enclosure filter above may
231
+ // shrink below `limit` on a page that is NOT the last one. Absent a count,
232
+ // fall back to what we have (this page ends the listing).
233
+ const total = numberOr(json?.total, offset + items.length);
234
+ return {
235
+ items,
236
+ hasMore: page * limit < total,
237
+ limit,
238
+ offset
239
+ };
240
+ },
241
+ async getEpisode(episodeId) {
242
+ const json = await getJson(`/api/episodes/${encodeURIComponent(episodeId)}`);
243
+ return _schema.episodeSummarySchema.parse(json?.data?.episode);
244
+ },
245
+ episodeImageUrl(source, size) {
246
+ if (size && source.imageSizes) {
247
+ const resolved = resolveImageRef(source.imageSizes[size]?.url);
248
+ if (resolved) {
249
+ return resolved;
250
+ }
251
+ }
252
+ const fromImage = resolveImageRef(source.image);
253
+ if (fromImage) {
254
+ return fromImage;
255
+ }
256
+ if (source.imageSizes) {
257
+ for (const key of ARTWORK_FALLBACK_ORDER) {
258
+ const resolved = resolveImageRef(source.imageSizes[key]?.url);
259
+ if (resolved) {
260
+ return resolved;
261
+ }
262
+ }
263
+ }
264
+ return resolveImageRef(source.imageSourceUrl);
265
+ }
266
+ };
267
+ }
268
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_schema","require","_errors","DEFAULT_SYRA_BASE_URL","exports","DEFAULT_SYRA_WEB_BASE_URL","ARTWORK_FALLBACK_ORDER","OBJECT_ID_PATTERN","DEFAULT_EPISODES_PAGE_SIZE","numberOr","value","fallback","Number","isFinite","createSyraClient","options","baseURL","replace","webBaseURL","resolveFetch","fetch","globalFetch","globalThis","bind","Error","getJson","path","doFetch","response","headers","Accept","ok","SyraApiError","status","statusText","json","resolveImageRef","ref","undefined","test","startsWith","searchTracks","query","searchOptions","params","URLSearchParams","q","category","limit","set","String","offset","toString","rawTracks","Array","isArray","results","tracks","items","raw","parsed","trackSummarySchema","safeParse","success","data","previewAvailable","push","hasMore","length","getTrack","id","encodeURIComponent","parse","previewUrl","startSec","safeStart","Math","max","trunc","artworkUrl","source","size","coverArtSizes","resolved","url","fromCoverArt","coverArt","key","searchPodcasts","rawPodcasts","podcastSummarySchema","getPodcast","podcast","podcastUrl","podcastArtworkUrl","imageSizes","fromImage","image","imageSourceUrl","getPodcastEpisodes","podcastId","listOptions","page","floor","rawEpisodes","episodeSummarySchema","total","getEpisode","episodeId","episode","episodeImageUrl"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SyraApiError = void 0;
7
+ /**
8
+ * Error thrown when the Syra API returns a non-2xx response.
9
+ */
10
+ class SyraApiError extends Error {
11
+ /** HTTP status code returned by the API. */
12
+
13
+ constructor(status, message) {
14
+ super(message);
15
+ this.name = 'SyraApiError';
16
+ this.status = status;
17
+ // Restore the prototype chain when targeting ES5-ish runtimes.
18
+ Object.setPrototypeOf(this, SyraApiError.prototype);
19
+ }
20
+ }
21
+ exports.SyraApiError = SyraApiError;
22
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SyraApiError","Error","constructor","status","message","name","Object","setPrototypeOf","prototype","exports"],"sourceRoot":"../../src","sources":["errors.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACO,MAAMA,YAAY,SAASC,KAAK,CAAC;EACtC;;EAGAC,WAAWA,CAACC,MAAc,EAAEC,OAAe,EAAE;IAC3C,KAAK,CAACA,OAAO,CAAC;IACd,IAAI,CAACC,IAAI,GAAG,cAAc;IAC1B,IAAI,CAACF,MAAM,GAAGA,MAAM;IACpB;IACAG,MAAM,CAACC,cAAc,CAAC,IAAI,EAAEP,YAAY,CAACQ,SAAS,CAAC;EACrD;AACF;AAACC,OAAA,CAAAT,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DEFAULT_SYRA_BASE_URL", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _client.DEFAULT_SYRA_BASE_URL;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "DEFAULT_SYRA_WEB_BASE_URL", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _client.DEFAULT_SYRA_WEB_BASE_URL;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "SyraApiError", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _errors.SyraApiError;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "coverArtSizesSchema", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _schema.coverArtSizesSchema;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "coverArtVariantSchema", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _schema.coverArtVariantSchema;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "createSyraClient", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _client.createSyraClient;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "episodeSummarySchema", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _schema.episodeSummarySchema;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "podcastSummarySchema", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _schema.podcastSummarySchema;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "trackSummarySchema", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _schema.trackSummarySchema;
58
+ }
59
+ });
60
+ var _client = require("./client.js");
61
+ var _schema = require("./schema.js");
62
+ var _errors = require("./errors.js");
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_client","require","_schema","_errors"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAgBA,IAAAC,OAAA,GAAAD,OAAA;AAeA,IAAAE,OAAA,GAAAF,OAAA","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _index = require("./index");
7
+ Object.keys(_index).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _index[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _index[key];
14
+ }
15
+ });
16
+ });
17
+ var _index2 = require("./live/index.js");
18
+ Object.keys(_index2).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _index2[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _index2[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_index","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_index2"],"sourceRoot":"../../src","sources":["index.native.ts"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,OAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,OAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,OAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LiveRoomsIconActive = exports.LiveRoomsIcon = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNativeSvg = _interopRequireWildcard(require("react-native-svg"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const LiveRoomsIcon = ({
13
+ color = 'currentColor',
14
+ size = 26,
15
+ style
16
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.default, {
17
+ viewBox: "0 0 24 24",
18
+ width: size,
19
+ height: size,
20
+ style: style,
21
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Path, {
22
+ d: "M12 22.25c-4.99 0-9.18-3.393-10.39-7.994l1.93-.512c.99 3.746 4.4 6.506 8.46 6.506s7.47-2.76 8.46-6.506l1.93.512c-1.21 4.601-5.4 7.994-10.39 7.994zM5 11.5c0 3.866 3.13 7 7 7s7-3.134 7-7V8.75c0-3.866-3.13-7-7-7s-7 3.134-7 7v2.75zm12-2.75v2.75c0 2.761-2.24 5-5 5s-5-2.239-5-5V8.75c0-2.761 2.24-5 5-5s5 2.239 5 5zM11.25 8v4.25c0 .414.34.75.75.75s.75-.336.75-.75V8c0-.414-.34-.75-.75-.75s-.75.336-.75.75zm-3 1v2.25c0 .414.34.75.75.75s.75-.336.75-.75V9c0-.414-.34-.75-.75-.75s-.75.336-.75.75zm7.5 0c0-.414-.34-.75-.75-.75s-.75.336-.75.75v2.25c0 .414.34.75.75.75s.75-.336.75-.75V9z",
23
+ fill: color
24
+ })
25
+ });
26
+ exports.LiveRoomsIcon = LiveRoomsIcon;
27
+ const LiveRoomsIconActive = ({
28
+ color = 'currentColor',
29
+ size = 26,
30
+ style
31
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.default, {
32
+ viewBox: "0 0 24 24",
33
+ width: size,
34
+ height: size,
35
+ style: style,
36
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Path, {
37
+ d: "M12 22.25c-4.99 0-9.18-3.393-10.39-7.994l1.93-.512c.99 3.746 4.4 6.506 8.46 6.506s7.47-2.76 8.46-6.506l1.93.512c-1.21 4.601-5.4 7.994-10.39 7.994zm0-20.5c-3.87 0-7 3.134-7 7v2.75c0 3.866 3.13 7 7 7s7-3.134 7-7V8.75c0-3.866-3.13-7-7-7zm-2.25 9.5c0 .414-.34.75-.75.75s-.75-.336-.75-.75V9c0-.414.34-.75.75-.75s.75.336.75.75v2.25zm3 1c0 .414-.34.75-.75.75s-.75-.336-.75-.75V8c0-.414.34-.75.75-.75s.75.336.75.75v4.25zm3-1c0 .414-.34.75-.75.75s-.75-.336-.75-.75V9c0-.414.34-.75.75-.75s.75.336.75.75v2.25z",
38
+ fill: color
39
+ })
40
+ });
41
+ exports.LiveRoomsIconActive = LiveRoomsIconActive;
42
+ //# sourceMappingURL=spaces-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeSvg","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","LiveRoomsIcon","color","size","style","jsx","viewBox","width","height","children","Path","d","fill","exports","LiveRoomsIconActive"],"sourceRoot":"../../../../../src","sources":["live/assets/icons/spaces-icon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA6C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAN,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAK,UAAA,GAAAL,CAAA,KAAAU,OAAA,EAAAV,CAAA;AAGtC,MAAMmB,aAAa,GAAGA,CAAC;EAAEC,KAAK,GAAG,cAAc;EAAEC,IAAI,GAAG,EAAE;EAAEC;AAAgE,CAAC,kBAClI,IAAAvB,WAAA,CAAAwB,GAAA,EAAC1B,eAAA,CAAAa,OAAG;EAACc,OAAO,EAAC,WAAW;EAACC,KAAK,EAAEJ,IAAK;EAACK,MAAM,EAAEL,IAAK;EAACC,KAAK,EAAEA,KAAM;EAAAK,QAAA,eAC/D,IAAA5B,WAAA,CAAAwB,GAAA,EAAC1B,eAAA,CAAA+B,IAAI;IAACC,CAAC,EAAC,gkBAAgkB;IAACC,IAAI,EAAEV;EAAM,CAAE;AAAC,CACrlB,CACN;AAACW,OAAA,CAAAZ,aAAA,GAAAA,aAAA;AAEK,MAAMa,mBAAmB,GAAGA,CAAC;EAAEZ,KAAK,GAAG,cAAc;EAAEC,IAAI,GAAG,EAAE;EAAEC;AAAgE,CAAC,kBACxI,IAAAvB,WAAA,CAAAwB,GAAA,EAAC1B,eAAA,CAAAa,OAAG;EAACc,OAAO,EAAC,WAAW;EAACC,KAAK,EAAEJ,IAAK;EAACK,MAAM,EAAEL,IAAK;EAACC,KAAK,EAAEA,KAAM;EAAAK,QAAA,eAC/D,IAAA5B,WAAA,CAAAwB,GAAA,EAAC1B,eAAA,CAAA+B,IAAI;IAACC,CAAC,EAAC,ofAAof;IAACC,IAAI,EAAEV;EAAM,CAAE;AAAC,CACzgB,CACN;AAACW,OAAA,CAAAC,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SyraIconActive = exports.SyraIcon = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNativeSvg = _interopRequireWildcard(require("react-native-svg"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const SyraIcon = ({
13
+ color = 'currentColor',
14
+ size = 26,
15
+ style
16
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeSvg.default, {
17
+ viewBox: "0 0 500 500",
18
+ width: size,
19
+ height: size,
20
+ style: style,
21
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Rect, {
22
+ x: "303.35",
23
+ y: "46.22",
24
+ width: "128.77",
25
+ height: "407.56",
26
+ fill: color
27
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Rect, {
28
+ x: "153.71",
29
+ y: "88.97",
30
+ width: "106.76",
31
+ height: "322.05",
32
+ fill: color
33
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Rect, {
34
+ x: "25",
35
+ y: "131.94",
36
+ width: "86.2",
37
+ height: "236.13",
38
+ fill: color
39
+ })]
40
+ });
41
+ exports.SyraIcon = SyraIcon;
42
+ const SyraIconActive = exports.SyraIconActive = SyraIcon;
43
+ //# sourceMappingURL=syra-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNativeSvg","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SyraIcon","color","size","style","jsxs","viewBox","width","height","children","jsx","Rect","x","y","fill","exports","SyraIconActive"],"sourceRoot":"../../../../../src","sources":["live/assets/icons/syra-icon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA6C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAN,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAK,UAAA,GAAAL,CAAA,KAAAU,OAAA,EAAAV,CAAA;AAGtC,MAAMmB,QAAQ,GAAGA,CAAC;EAAEC,KAAK,GAAG,cAAc;EAAEC,IAAI,GAAG,EAAE;EAAEC;AAAgE,CAAC,kBAC7H,IAAAvB,WAAA,CAAAwB,IAAA,EAAC1B,eAAA,CAAAa,OAAG;EAACc,OAAO,EAAC,aAAa;EAACC,KAAK,EAAEJ,IAAK;EAACK,MAAM,EAAEL,IAAK;EAACC,KAAK,EAAEA,KAAM;EAAAK,QAAA,gBACjE,IAAA5B,WAAA,CAAA6B,GAAA,EAAC/B,eAAA,CAAAgC,IAAI;IAACC,CAAC,EAAC,QAAQ;IAACC,CAAC,EAAC,OAAO;IAACN,KAAK,EAAC,QAAQ;IAACC,MAAM,EAAC,QAAQ;IAACM,IAAI,EAAEZ;EAAM,CAAE,CAAC,eACzE,IAAArB,WAAA,CAAA6B,GAAA,EAAC/B,eAAA,CAAAgC,IAAI;IAACC,CAAC,EAAC,QAAQ;IAACC,CAAC,EAAC,OAAO;IAACN,KAAK,EAAC,QAAQ;IAACC,MAAM,EAAC,QAAQ;IAACM,IAAI,EAAEZ;EAAM,CAAE,CAAC,eACzE,IAAArB,WAAA,CAAA6B,GAAA,EAAC/B,eAAA,CAAAgC,IAAI;IAACC,CAAC,EAAC,IAAI;IAACC,CAAC,EAAC,QAAQ;IAACN,KAAK,EAAC,MAAM;IAACC,MAAM,EAAC,QAAQ;IAACM,IAAI,EAAEZ;EAAM,CAAE,CAAC;AAAA,CACjE,CACN;AAACa,OAAA,CAAAd,QAAA,GAAAA,QAAA;AAEK,MAAMe,cAAc,GAAAD,OAAA,CAAAC,cAAA,GAAGf,QAAQ","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AnimatedPulse = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
+ const AnimatedPulse = exports.AnimatedPulse = /*#__PURE__*/_react.default.memo(function AnimatedPulse({
13
+ size = 8,
14
+ color = '#FFFFFF'
15
+ }) {
16
+ const opacity = (0, _reactNativeReanimated.useSharedValue)(1);
17
+ (0, _react.useEffect)(() => {
18
+ opacity.value = (0, _reactNativeReanimated.withRepeat)((0, _reactNativeReanimated.withTiming)(0.3, {
19
+ duration: 500,
20
+ easing: _reactNativeReanimated.Easing.inOut(_reactNativeReanimated.Easing.ease)
21
+ }), -1, true);
22
+ }, [opacity]);
23
+ const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
24
+ opacity: opacity.value
25
+ }));
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
27
+ style: [styles.dot, {
28
+ width: size,
29
+ height: size,
30
+ borderRadius: size / 2,
31
+ backgroundColor: color
32
+ }, animatedStyle]
33
+ });
34
+ });
35
+ const styles = _reactNative.StyleSheet.create({
36
+ dot: {}
37
+ });
38
+ //# sourceMappingURL=AnimatedPulse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AnimatedPulse","exports","React","memo","size","color","opacity","useSharedValue","useEffect","value","withRepeat","withTiming","duration","easing","Easing","inOut","ease","animatedStyle","useAnimatedStyle","jsx","View","style","styles","dot","width","height","borderRadius","backgroundColor","StyleSheet","create"],"sourceRoot":"../../../../src","sources":["live/components/AnimatedPulse.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAH,uBAAA,CAAAC,OAAA;AAMiC,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAO1B,MAAMkB,aAAa,GAAAC,OAAA,CAAAD,aAAA,gBAAGE,cAAK,CAACC,IAAI,CAAC,SAASH,aAAaA,CAAC;EAC7DI,IAAI,GAAG,CAAC;EACRC,KAAK,GAAG;AACU,CAAC,EAAE;EACrB,MAAMC,OAAO,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAEjC,IAAAC,gBAAS,EAAC,MAAM;IACdF,OAAO,CAACG,KAAK,GAAG,IAAAC,iCAAU,EACxB,IAAAC,iCAAU,EAAC,GAAG,EAAE;MAAEC,QAAQ,EAAE,GAAG;MAAEC,MAAM,EAAEC,6BAAM,CAACC,KAAK,CAACD,6BAAM,CAACE,IAAI;IAAE,CAAC,CAAC,EACrE,CAAC,CAAC,EACF,IACF,CAAC;EACH,CAAC,EAAE,CAACV,OAAO,CAAC,CAAC;EAEb,MAAMW,aAAa,GAAG,IAAAC,uCAAgB,EAAC,OAAO;IAC5CZ,OAAO,EAAEA,OAAO,CAACG;EACnB,CAAC,CAAC,CAAC;EAEH,oBACE,IAAA7B,WAAA,CAAAuC,GAAA,EAACxC,sBAAA,CAAAY,OAAQ,CAAC6B,IAAI;IACZC,KAAK,EAAE,CACLC,MAAM,CAACC,GAAG,EACV;MACEC,KAAK,EAAEpB,IAAI;MACXqB,MAAM,EAAErB,IAAI;MACZsB,YAAY,EAAEtB,IAAI,GAAG,CAAC;MACtBuB,eAAe,EAAEtB;IACnB,CAAC,EACDY,aAAa;EACb,CACH,CAAC;AAEN,CAAC,CAAC;AAEF,MAAMK,MAAM,GAAGM,uBAAU,CAACC,MAAM,CAAC;EAC/BN,GAAG,EAAE,CAAC;AACR,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AnimatedSpeakerRing = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
+ const AnimatedSpeakerRing = exports.AnimatedSpeakerRing = /*#__PURE__*/_react.default.memo(function AnimatedSpeakerRing({
13
+ isSpeaking,
14
+ isMuted,
15
+ primaryColor,
16
+ children
17
+ }) {
18
+ const pulseScale = (0, _reactNativeReanimated.useSharedValue)(1);
19
+ const pulseOpacity = (0, _reactNativeReanimated.useSharedValue)(0);
20
+ (0, _react.useEffect)(() => {
21
+ if (isSpeaking && !isMuted) {
22
+ pulseOpacity.value = (0, _reactNativeReanimated.withRepeat)((0, _reactNativeReanimated.withSequence)((0, _reactNativeReanimated.withTiming)(0.4, {
23
+ duration: 600,
24
+ easing: _reactNativeReanimated.Easing.out(_reactNativeReanimated.Easing.ease)
25
+ }), (0, _reactNativeReanimated.withTiming)(0, {
26
+ duration: 600,
27
+ easing: _reactNativeReanimated.Easing.in(_reactNativeReanimated.Easing.ease)
28
+ })), -1, false);
29
+ pulseScale.value = (0, _reactNativeReanimated.withRepeat)((0, _reactNativeReanimated.withSequence)((0, _reactNativeReanimated.withTiming)(1.15, {
30
+ duration: 600,
31
+ easing: _reactNativeReanimated.Easing.out(_reactNativeReanimated.Easing.ease)
32
+ }), (0, _reactNativeReanimated.withTiming)(1, {
33
+ duration: 600,
34
+ easing: _reactNativeReanimated.Easing.in(_reactNativeReanimated.Easing.ease)
35
+ })), -1, false);
36
+ } else {
37
+ (0, _reactNativeReanimated.cancelAnimation)(pulseScale);
38
+ (0, _reactNativeReanimated.cancelAnimation)(pulseOpacity);
39
+ pulseScale.value = (0, _reactNativeReanimated.withTiming)(1, {
40
+ duration: 200
41
+ });
42
+ pulseOpacity.value = (0, _reactNativeReanimated.withTiming)(0, {
43
+ duration: 200
44
+ });
45
+ }
46
+ }, [isSpeaking, isMuted, pulseScale, pulseOpacity]);
47
+ const pulseStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
48
+ transform: [{
49
+ scale: pulseScale.value
50
+ }],
51
+ opacity: pulseOpacity.value
52
+ }));
53
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
54
+ style: styles.container,
55
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
56
+ style: [styles.pulseRing, {
57
+ borderColor: primaryColor
58
+ }, pulseStyle]
59
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
60
+ style: [styles.avatarRing, !isMuted ? {
61
+ borderColor: primaryColor,
62
+ borderWidth: 3
63
+ } : {
64
+ borderColor: 'transparent',
65
+ borderWidth: 3
66
+ }],
67
+ children: children
68
+ })]
69
+ });
70
+ });
71
+ const styles = _reactNative.StyleSheet.create({
72
+ container: {
73
+ alignItems: 'center',
74
+ justifyContent: 'center',
75
+ position: 'relative'
76
+ },
77
+ pulseRing: {
78
+ position: 'absolute',
79
+ width: '100%',
80
+ height: '100%',
81
+ borderRadius: 19,
82
+ borderWidth: 3
83
+ },
84
+ avatarRing: {
85
+ borderRadius: 19,
86
+ padding: 2,
87
+ position: 'relative'
88
+ }
89
+ });
90
+ //# sourceMappingURL=AnimatedSpeakerRing.js.map