@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.
- package/lib/commonjs/client.js +268 -0
- package/lib/commonjs/client.js.map +1 -0
- package/lib/commonjs/errors.js +22 -0
- package/lib/commonjs/errors.js.map +1 -0
- package/lib/commonjs/index.js +63 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/index.native.js +28 -0
- package/lib/commonjs/index.native.js.map +1 -0
- package/lib/commonjs/live/assets/icons/spaces-icon.js +42 -0
- package/lib/commonjs/live/assets/icons/spaces-icon.js.map +1 -0
- package/lib/commonjs/live/assets/icons/syra-icon.js +43 -0
- package/lib/commonjs/live/assets/icons/syra-icon.js.map +1 -0
- package/lib/commonjs/live/components/AnimatedPulse.js +38 -0
- package/lib/commonjs/live/components/AnimatedPulse.js.map +1 -0
- package/lib/commonjs/live/components/AnimatedSpeakerRing.js +90 -0
- package/lib/commonjs/live/components/AnimatedSpeakerRing.js.map +1 -0
- package/lib/commonjs/live/components/CreateRoomSheet.js +688 -0
- package/lib/commonjs/live/components/CreateRoomSheet.js.map +1 -0
- package/lib/commonjs/live/components/InsightsPanel.js +333 -0
- package/lib/commonjs/live/components/InsightsPanel.js.map +1 -0
- package/lib/commonjs/live/components/LiveRoomSheet.js +1195 -0
- package/lib/commonjs/live/components/LiveRoomSheet.js.map +1 -0
- package/lib/commonjs/live/components/MiniRoomBar.js +161 -0
- package/lib/commonjs/live/components/MiniRoomBar.js.map +1 -0
- package/lib/commonjs/live/components/PanelHeader.js +57 -0
- package/lib/commonjs/live/components/PanelHeader.js.map +1 -0
- package/lib/commonjs/live/components/PodcastStreamPicker.js +1190 -0
- package/lib/commonjs/live/components/PodcastStreamPicker.js.map +1 -0
- package/lib/commonjs/live/components/RecordingCard.js +192 -0
- package/lib/commonjs/live/components/RecordingCard.js.map +1 -0
- package/lib/commonjs/live/components/RecordingsPanel.js +304 -0
- package/lib/commonjs/live/components/RecordingsPanel.js.map +1 -0
- package/lib/commonjs/live/components/RoomCard.js +553 -0
- package/lib/commonjs/live/components/RoomCard.js.map +1 -0
- package/lib/commonjs/live/components/StreamConfigModal.js +656 -0
- package/lib/commonjs/live/components/StreamConfigModal.js.map +1 -0
- package/lib/commonjs/live/components/StreamConfigPanel.js +822 -0
- package/lib/commonjs/live/components/StreamConfigPanel.js.map +1 -0
- package/lib/commonjs/live/context/LiveConfigContext.js +46 -0
- package/lib/commonjs/live/context/LiveConfigContext.js.map +1 -0
- package/lib/commonjs/live/context/LiveRoomContext.js +195 -0
- package/lib/commonjs/live/context/LiveRoomContext.js.map +1 -0
- package/lib/commonjs/live/hooks/useActiveSpeakers.js +35 -0
- package/lib/commonjs/live/hooks/useActiveSpeakers.js.map +1 -0
- package/lib/commonjs/live/hooks/useRoomAudio.js +129 -0
- package/lib/commonjs/live/hooks/useRoomAudio.js.map +1 -0
- package/lib/commonjs/live/hooks/useRoomConnection.js +177 -0
- package/lib/commonjs/live/hooks/useRoomConnection.js.map +1 -0
- package/lib/commonjs/live/hooks/useRoomManager.js +37 -0
- package/lib/commonjs/live/hooks/useRoomManager.js.map +1 -0
- package/lib/commonjs/live/hooks/useRoomUsers.js +52 -0
- package/lib/commonjs/live/hooks/useRoomUsers.js.map +1 -0
- package/lib/commonjs/live/index.js +310 -0
- package/lib/commonjs/live/index.js.map +1 -0
- package/lib/commonjs/live/services/livekitService.js +20 -0
- package/lib/commonjs/live/services/livekitService.js.map +1 -0
- package/lib/commonjs/live/services/spaceSocketService.js +181 -0
- package/lib/commonjs/live/services/spaceSocketService.js.map +1 -0
- package/lib/commonjs/live/services/spacesService.js +642 -0
- package/lib/commonjs/live/services/spacesService.js.map +1 -0
- package/lib/commonjs/live/types.js +6 -0
- package/lib/commonjs/live/types.js.map +1 -0
- package/lib/commonjs/live/validation.js +238 -0
- package/lib/commonjs/live/validation.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/{dist/cjs → lib/commonjs}/schema.js +55 -47
- package/lib/commonjs/schema.js.map +1 -0
- package/lib/module/client.js +264 -0
- package/lib/module/client.js.map +1 -0
- package/lib/module/errors.js +17 -0
- package/lib/module/errors.js.map +1 -0
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/index.native.js +5 -0
- package/lib/module/index.native.js.map +1 -0
- package/lib/module/live/assets/icons/spaces-icon.js +34 -0
- package/lib/module/live/assets/icons/spaces-icon.js.map +1 -0
- package/lib/module/live/assets/icons/syra-icon.js +36 -0
- package/lib/module/live/assets/icons/syra-icon.js.map +1 -0
- package/lib/module/live/components/AnimatedPulse.js +33 -0
- package/lib/module/live/components/AnimatedPulse.js.map +1 -0
- package/lib/module/live/components/AnimatedSpeakerRing.js +85 -0
- package/lib/module/live/components/AnimatedSpeakerRing.js.map +1 -0
- package/lib/module/live/components/CreateRoomSheet.js +682 -0
- package/lib/module/live/components/CreateRoomSheet.js.map +1 -0
- package/lib/module/live/components/InsightsPanel.js +327 -0
- package/lib/module/live/components/InsightsPanel.js.map +1 -0
- package/lib/module/live/components/LiveRoomSheet.js +1189 -0
- package/lib/module/live/components/LiveRoomSheet.js.map +1 -0
- package/lib/module/live/components/MiniRoomBar.js +154 -0
- package/lib/module/live/components/MiniRoomBar.js.map +1 -0
- package/lib/module/live/components/PanelHeader.js +52 -0
- package/lib/module/live/components/PanelHeader.js.map +1 -0
- package/lib/module/live/components/PodcastStreamPicker.js +1183 -0
- package/lib/module/live/components/PodcastStreamPicker.js.map +1 -0
- package/lib/module/live/components/RecordingCard.js +187 -0
- package/lib/module/live/components/RecordingCard.js.map +1 -0
- package/lib/module/live/components/RecordingsPanel.js +298 -0
- package/lib/module/live/components/RecordingsPanel.js.map +1 -0
- package/lib/module/live/components/RoomCard.js +548 -0
- package/lib/module/live/components/RoomCard.js.map +1 -0
- package/lib/module/live/components/StreamConfigModal.js +650 -0
- package/lib/module/live/components/StreamConfigModal.js.map +1 -0
- package/lib/module/live/components/StreamConfigPanel.js +816 -0
- package/lib/module/live/components/StreamConfigPanel.js.map +1 -0
- package/lib/module/live/context/LiveConfigContext.js +40 -0
- package/lib/module/live/context/LiveConfigContext.js.map +1 -0
- package/lib/module/live/context/LiveRoomContext.js +189 -0
- package/lib/module/live/context/LiveRoomContext.js.map +1 -0
- package/lib/module/live/hooks/useActiveSpeakers.js +31 -0
- package/lib/module/live/hooks/useActiveSpeakers.js.map +1 -0
- package/lib/module/live/hooks/useRoomAudio.js +125 -0
- package/lib/module/live/hooks/useRoomAudio.js.map +1 -0
- package/lib/module/live/hooks/useRoomConnection.js +173 -0
- package/lib/module/live/hooks/useRoomConnection.js.map +1 -0
- package/lib/module/live/hooks/useRoomManager.js +32 -0
- package/lib/module/live/hooks/useRoomManager.js.map +1 -0
- package/lib/module/live/hooks/useRoomUsers.js +46 -0
- package/lib/module/live/hooks/useRoomUsers.js.map +1 -0
- package/lib/module/live/index.js +38 -0
- package/lib/module/live/index.js.map +1 -0
- package/lib/module/live/services/livekitService.js +16 -0
- package/lib/module/live/services/livekitService.js.map +1 -0
- package/lib/module/live/services/spaceSocketService.js +176 -0
- package/lib/module/live/services/spaceSocketService.js.map +1 -0
- package/lib/module/live/services/spacesService.js +639 -0
- package/lib/module/live/services/spacesService.js.map +1 -0
- package/lib/module/live/types.js +4 -0
- package/lib/module/live/types.js.map +1 -0
- package/lib/module/live/validation.js +229 -0
- package/lib/module/live/validation.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/{dist/esm → lib/module}/schema.js +47 -39
- package/lib/module/schema.js.map +1 -0
- package/{dist/types → lib/typescript/commonjs}/client.d.ts +1 -0
- package/lib/typescript/commonjs/client.d.ts.map +1 -0
- package/{dist/types → lib/typescript/commonjs}/errors.d.ts +1 -0
- package/lib/typescript/commonjs/errors.d.ts.map +1 -0
- package/{dist/types → lib/typescript/commonjs}/index.d.ts +1 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.native.d.ts +3 -0
- package/lib/typescript/commonjs/index.native.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/assets/icons/spaces-icon.d.ts +13 -0
- package/lib/typescript/commonjs/live/assets/icons/spaces-icon.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/assets/icons/syra-icon.d.ts +13 -0
- package/lib/typescript/commonjs/live/assets/icons/syra-icon.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/AnimatedPulse.d.ts +8 -0
- package/lib/typescript/commonjs/live/components/AnimatedPulse.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/AnimatedSpeakerRing.d.ts +10 -0
- package/lib/typescript/commonjs/live/components/AnimatedSpeakerRing.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/CreateRoomSheet.d.ts +26 -0
- package/lib/typescript/commonjs/live/components/CreateRoomSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/InsightsPanel.d.ts +11 -0
- package/lib/typescript/commonjs/live/components/InsightsPanel.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/LiveRoomSheet.d.ts +11 -0
- package/lib/typescript/commonjs/live/components/LiveRoomSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/MiniRoomBar.d.ts +15 -0
- package/lib/typescript/commonjs/live/components/MiniRoomBar.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/PanelHeader.d.ts +10 -0
- package/lib/typescript/commonjs/live/components/PanelHeader.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/PodcastStreamPicker.d.ts +54 -0
- package/lib/typescript/commonjs/live/components/PodcastStreamPicker.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/RecordingCard.d.ts +11 -0
- package/lib/typescript/commonjs/live/components/RecordingCard.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/RecordingsPanel.d.ts +12 -0
- package/lib/typescript/commonjs/live/components/RecordingsPanel.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/RoomCard.d.ts +38 -0
- package/lib/typescript/commonjs/live/components/RoomCard.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/StreamConfigModal.d.ts +11 -0
- package/lib/typescript/commonjs/live/components/StreamConfigModal.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/components/StreamConfigPanel.d.ts +13 -0
- package/lib/typescript/commonjs/live/components/StreamConfigPanel.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/context/LiveConfigContext.d.ts +78 -0
- package/lib/typescript/commonjs/live/context/LiveConfigContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/context/LiveRoomContext.d.ts +12 -0
- package/lib/typescript/commonjs/live/context/LiveRoomContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/hooks/useActiveSpeakers.d.ts +3 -0
- package/lib/typescript/commonjs/live/hooks/useActiveSpeakers.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/hooks/useRoomAudio.d.ts +16 -0
- package/lib/typescript/commonjs/live/hooks/useRoomAudio.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/hooks/useRoomConnection.d.ts +29 -0
- package/lib/typescript/commonjs/live/hooks/useRoomConnection.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/hooks/useRoomManager.d.ts +11 -0
- package/lib/typescript/commonjs/live/hooks/useRoomManager.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/hooks/useRoomUsers.d.ts +5 -0
- package/lib/typescript/commonjs/live/hooks/useRoomUsers.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/index.d.ts +24 -0
- package/lib/typescript/commonjs/live/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/services/livekitService.d.ts +7 -0
- package/lib/typescript/commonjs/live/services/livekitService.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/services/spaceSocketService.d.ts +69 -0
- package/lib/typescript/commonjs/live/services/spaceSocketService.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/services/spacesService.d.ts +181 -0
- package/lib/typescript/commonjs/live/services/spacesService.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/types.d.ts +100 -0
- package/lib/typescript/commonjs/live/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/live/validation.d.ts +658 -0
- package/lib/typescript/commonjs/live/validation.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/{dist/types → lib/typescript/commonjs}/schema.d.ts +1 -0
- package/lib/typescript/commonjs/schema.d.ts.map +1 -0
- package/lib/typescript/module/client.d.ts +141 -0
- package/lib/typescript/module/client.d.ts.map +1 -0
- package/lib/typescript/module/errors.d.ts +9 -0
- package/lib/typescript/module/errors.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +6 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/index.native.d.ts +3 -0
- package/lib/typescript/module/index.native.d.ts.map +1 -0
- package/lib/typescript/module/live/assets/icons/spaces-icon.d.ts +13 -0
- package/lib/typescript/module/live/assets/icons/spaces-icon.d.ts.map +1 -0
- package/lib/typescript/module/live/assets/icons/syra-icon.d.ts +13 -0
- package/lib/typescript/module/live/assets/icons/syra-icon.d.ts.map +1 -0
- package/lib/typescript/module/live/components/AnimatedPulse.d.ts +8 -0
- package/lib/typescript/module/live/components/AnimatedPulse.d.ts.map +1 -0
- package/lib/typescript/module/live/components/AnimatedSpeakerRing.d.ts +10 -0
- package/lib/typescript/module/live/components/AnimatedSpeakerRing.d.ts.map +1 -0
- package/lib/typescript/module/live/components/CreateRoomSheet.d.ts +26 -0
- package/lib/typescript/module/live/components/CreateRoomSheet.d.ts.map +1 -0
- package/lib/typescript/module/live/components/InsightsPanel.d.ts +11 -0
- package/lib/typescript/module/live/components/InsightsPanel.d.ts.map +1 -0
- package/lib/typescript/module/live/components/LiveRoomSheet.d.ts +11 -0
- package/lib/typescript/module/live/components/LiveRoomSheet.d.ts.map +1 -0
- package/lib/typescript/module/live/components/MiniRoomBar.d.ts +15 -0
- package/lib/typescript/module/live/components/MiniRoomBar.d.ts.map +1 -0
- package/lib/typescript/module/live/components/PanelHeader.d.ts +10 -0
- package/lib/typescript/module/live/components/PanelHeader.d.ts.map +1 -0
- package/lib/typescript/module/live/components/PodcastStreamPicker.d.ts +54 -0
- package/lib/typescript/module/live/components/PodcastStreamPicker.d.ts.map +1 -0
- package/lib/typescript/module/live/components/RecordingCard.d.ts +11 -0
- package/lib/typescript/module/live/components/RecordingCard.d.ts.map +1 -0
- package/lib/typescript/module/live/components/RecordingsPanel.d.ts +12 -0
- package/lib/typescript/module/live/components/RecordingsPanel.d.ts.map +1 -0
- package/lib/typescript/module/live/components/RoomCard.d.ts +38 -0
- package/lib/typescript/module/live/components/RoomCard.d.ts.map +1 -0
- package/lib/typescript/module/live/components/StreamConfigModal.d.ts +11 -0
- package/lib/typescript/module/live/components/StreamConfigModal.d.ts.map +1 -0
- package/lib/typescript/module/live/components/StreamConfigPanel.d.ts +13 -0
- package/lib/typescript/module/live/components/StreamConfigPanel.d.ts.map +1 -0
- package/lib/typescript/module/live/context/LiveConfigContext.d.ts +78 -0
- package/lib/typescript/module/live/context/LiveConfigContext.d.ts.map +1 -0
- package/lib/typescript/module/live/context/LiveRoomContext.d.ts +12 -0
- package/lib/typescript/module/live/context/LiveRoomContext.d.ts.map +1 -0
- package/lib/typescript/module/live/hooks/useActiveSpeakers.d.ts +3 -0
- package/lib/typescript/module/live/hooks/useActiveSpeakers.d.ts.map +1 -0
- package/lib/typescript/module/live/hooks/useRoomAudio.d.ts +16 -0
- package/lib/typescript/module/live/hooks/useRoomAudio.d.ts.map +1 -0
- package/lib/typescript/module/live/hooks/useRoomConnection.d.ts +29 -0
- package/lib/typescript/module/live/hooks/useRoomConnection.d.ts.map +1 -0
- package/lib/typescript/module/live/hooks/useRoomManager.d.ts +11 -0
- package/lib/typescript/module/live/hooks/useRoomManager.d.ts.map +1 -0
- package/lib/typescript/module/live/hooks/useRoomUsers.d.ts +5 -0
- package/lib/typescript/module/live/hooks/useRoomUsers.d.ts.map +1 -0
- package/lib/typescript/module/live/index.d.ts +24 -0
- package/lib/typescript/module/live/index.d.ts.map +1 -0
- package/lib/typescript/module/live/services/livekitService.d.ts +7 -0
- package/lib/typescript/module/live/services/livekitService.d.ts.map +1 -0
- package/lib/typescript/module/live/services/spaceSocketService.d.ts +69 -0
- package/lib/typescript/module/live/services/spaceSocketService.d.ts.map +1 -0
- package/lib/typescript/module/live/services/spacesService.d.ts +181 -0
- package/lib/typescript/module/live/services/spacesService.d.ts.map +1 -0
- package/lib/typescript/module/live/types.d.ts +100 -0
- package/lib/typescript/module/live/types.d.ts.map +1 -0
- package/lib/typescript/module/live/validation.d.ts +658 -0
- package/lib/typescript/module/live/validation.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/schema.d.ts +1072 -0
- package/lib/typescript/module/schema.d.ts.map +1 -0
- package/package.json +133 -21
- package/src/index.native.ts +2 -0
- package/src/live/assets/icons/spaces-icon.tsx +15 -0
- package/src/live/assets/icons/syra-icon.tsx +13 -0
- package/src/live/assets/sounds/intro.mp3 +0 -0
- package/src/live/components/AnimatedPulse.tsx +52 -0
- package/src/live/components/AnimatedSpeakerRing.tsx +101 -0
- package/src/live/components/CreateRoomSheet.tsx +654 -0
- package/src/live/components/InsightsPanel.tsx +202 -0
- package/src/live/components/LiveRoomSheet.tsx +969 -0
- package/src/live/components/MiniRoomBar.tsx +166 -0
- package/src/live/components/PanelHeader.tsx +36 -0
- package/src/live/components/PodcastStreamPicker.tsx +1155 -0
- package/src/live/components/RecordingCard.tsx +154 -0
- package/src/live/components/RecordingsPanel.tsx +251 -0
- package/src/live/components/RoomCard.tsx +494 -0
- package/src/live/components/StreamConfigModal.tsx +600 -0
- package/src/live/components/StreamConfigPanel.tsx +729 -0
- package/src/live/context/LiveConfigContext.tsx +96 -0
- package/src/live/context/LiveRoomContext.tsx +235 -0
- package/src/live/hooks/useActiveSpeakers.ts +39 -0
- package/src/live/hooks/useRoomAudio.ts +103 -0
- package/src/live/hooks/useRoomConnection.ts +162 -0
- package/src/live/hooks/useRoomManager.ts +17 -0
- package/src/live/hooks/useRoomUsers.ts +52 -0
- package/src/live/index.ts +92 -0
- package/src/live/services/livekitService.ts +11 -0
- package/src/live/services/spaceSocketService.ts +136 -0
- package/src/live/services/spacesService.ts +692 -0
- package/src/live/types.ts +119 -0
- package/src/live/validation.ts +279 -0
- package/dist/cjs/client.js +0 -244
- package/dist/cjs/errors.js +0 -16
- package/dist/cjs/index.js +0 -15
- package/dist/cjs/package.json +0 -3
- package/dist/esm/client.js +0 -240
- package/dist/esm/errors.js +0 -12
- package/dist/esm/index.js +0 -3
- package/dist/esm/package.json +0 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,mFAAmF;AACnF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,yBAAyB;AACzB,MAAM,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { type TrackSummary, type PodcastSummary, type EpisodeSummary, type CoverArtSizes, type ArtworkSize } from './schema';
|
|
2
|
+
/** Default base URL of the public Syra API. */
|
|
3
|
+
export declare const DEFAULT_SYRA_BASE_URL = "https://api.syra.fm";
|
|
4
|
+
/** Default base URL of the Syra web app, used for deep links. */
|
|
5
|
+
export declare const DEFAULT_SYRA_WEB_BASE_URL = "https://syra.fm";
|
|
6
|
+
export interface SyraClientOptions {
|
|
7
|
+
/** Base URL of the Syra API. Defaults to {@link DEFAULT_SYRA_BASE_URL}. */
|
|
8
|
+
baseURL?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Base URL of the Syra WEB app (not the API host), used to build deep links
|
|
11
|
+
* such as {@link SyraClient.podcastUrl}. Defaults to
|
|
12
|
+
* {@link DEFAULT_SYRA_WEB_BASE_URL}.
|
|
13
|
+
*/
|
|
14
|
+
webBaseURL?: string;
|
|
15
|
+
/**
|
|
16
|
+
* `fetch` implementation. Defaults to the global `fetch` (Node 18+, browsers,
|
|
17
|
+
* React Native). Inject one (e.g. `node-fetch`) when no global is available.
|
|
18
|
+
* This is the seam where an authenticated transport can be layered in later.
|
|
19
|
+
*/
|
|
20
|
+
fetch?: typeof fetch;
|
|
21
|
+
}
|
|
22
|
+
export interface SearchTracksOptions {
|
|
23
|
+
/** Maximum number of tracks to request from the API (the page size). */
|
|
24
|
+
limit?: number;
|
|
25
|
+
/** Zero-based offset of the first track to return (for infinite scroll). */
|
|
26
|
+
offset?: number;
|
|
27
|
+
}
|
|
28
|
+
export interface SearchPodcastsOptions {
|
|
29
|
+
/** Maximum number of podcast shows to request from the API (the page size). */
|
|
30
|
+
limit?: number;
|
|
31
|
+
/** Zero-based offset of the first show to return (for infinite scroll). */
|
|
32
|
+
offset?: number;
|
|
33
|
+
}
|
|
34
|
+
export interface PodcastEpisodesOptions {
|
|
35
|
+
/** Maximum number of episodes to request from the API (the page size). */
|
|
36
|
+
limit?: number;
|
|
37
|
+
/** Zero-based offset of the first episode to return (for infinite scroll). */
|
|
38
|
+
offset?: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* One page of paginated catalog search results.
|
|
42
|
+
*
|
|
43
|
+
* `hasMore` reflects the BACKEND's pagination over the full matching set — NOT
|
|
44
|
+
* `items.length`. {@link SyraClient.searchTracks} additionally filters its page
|
|
45
|
+
* client-side to preview-available tracks, so `items.length` can be smaller than
|
|
46
|
+
* `limit` while `hasMore` is still `true`; callers must paginate by advancing
|
|
47
|
+
* `offset` by `limit` (the page size), never by `items.length`.
|
|
48
|
+
*/
|
|
49
|
+
export interface SearchPage<T> {
|
|
50
|
+
/** The validated rows for this page. */
|
|
51
|
+
items: T[];
|
|
52
|
+
/** Whether the backend has results beyond this page. */
|
|
53
|
+
hasMore: boolean;
|
|
54
|
+
/** The page size the backend applied. */
|
|
55
|
+
limit: number;
|
|
56
|
+
/** The zero-based offset of this page. */
|
|
57
|
+
offset: number;
|
|
58
|
+
}
|
|
59
|
+
/** Minimal shape from which track artwork URLs can be derived. */
|
|
60
|
+
export interface ArtworkSource {
|
|
61
|
+
coverArt?: string | null;
|
|
62
|
+
coverArtSizes?: CoverArtSizes | null;
|
|
63
|
+
}
|
|
64
|
+
/** Minimal shape from which podcast-show artwork URLs can be derived. */
|
|
65
|
+
export interface PodcastArtworkSource {
|
|
66
|
+
image?: string | null;
|
|
67
|
+
imageSizes?: CoverArtSizes | null;
|
|
68
|
+
imageSourceUrl?: string | null;
|
|
69
|
+
}
|
|
70
|
+
/** Minimal shape from which podcast-episode artwork URLs can be derived. */
|
|
71
|
+
export interface EpisodeArtworkSource {
|
|
72
|
+
image?: string | null;
|
|
73
|
+
imageSizes?: CoverArtSizes | null;
|
|
74
|
+
imageSourceUrl?: string | null;
|
|
75
|
+
}
|
|
76
|
+
export interface SyraClient {
|
|
77
|
+
/**
|
|
78
|
+
* Search the public catalog for tracks. Returns one paginated page: rows are
|
|
79
|
+
* validated against the track-summary schema and filtered to those that expose
|
|
80
|
+
* a public preview. `hasMore` comes from the backend's pagination, so it is
|
|
81
|
+
* unaffected by the client-side preview filter (see {@link SearchPage}).
|
|
82
|
+
*/
|
|
83
|
+
searchTracks(query: string, options?: SearchTracksOptions): Promise<SearchPage<TrackSummary>>;
|
|
84
|
+
/** Fetch a single track by id, validated against the track-summary schema. */
|
|
85
|
+
getTrack(id: string): Promise<TrackSummary>;
|
|
86
|
+
/** Build the public 30s preview URL for a track at the given start offset. */
|
|
87
|
+
previewUrl(id: string, startSec?: number): string;
|
|
88
|
+
/**
|
|
89
|
+
* Resolve an absolute artwork URL from a track / cover-art reference. Returns
|
|
90
|
+
* `undefined` when no artwork can be derived.
|
|
91
|
+
*/
|
|
92
|
+
artworkUrl(source: string | ArtworkSource, size?: ArtworkSize): string | undefined;
|
|
93
|
+
/**
|
|
94
|
+
* Search the public catalog for podcast SHOWS (not episodes). Returns one
|
|
95
|
+
* paginated page: rows are validated against the podcast-summary schema and
|
|
96
|
+
* malformed rows are dropped. `hasMore` comes from the backend's pagination.
|
|
97
|
+
*/
|
|
98
|
+
searchPodcasts(query: string, options?: SearchPodcastsOptions): Promise<SearchPage<PodcastSummary>>;
|
|
99
|
+
/**
|
|
100
|
+
* Fetch a single podcast show by id, validated against the podcast-summary
|
|
101
|
+
* schema. The by-id endpoint also returns episodes and resolved persons; this
|
|
102
|
+
* returns just the show summary needed to render a card.
|
|
103
|
+
*/
|
|
104
|
+
getPodcast(id: string): Promise<PodcastSummary>;
|
|
105
|
+
/** Build the Syra web app deep link for a podcast show (`/podcasts/:id`). */
|
|
106
|
+
podcastUrl(id: string): string;
|
|
107
|
+
/**
|
|
108
|
+
* Resolve an absolute artwork URL from a podcast show reference. Prefers the
|
|
109
|
+
* re-hosted Syra image, then the requested/fallback variant, then the original
|
|
110
|
+
* external artwork URL. Returns `undefined` when no artwork can be derived.
|
|
111
|
+
*/
|
|
112
|
+
podcastArtworkUrl(source: PodcastArtworkSource, size?: ArtworkSize): string | undefined;
|
|
113
|
+
/**
|
|
114
|
+
* List a podcast show's EPISODES (newest first, as the backend orders them).
|
|
115
|
+
* Returns one paginated page: rows are validated against the episode-summary
|
|
116
|
+
* schema and malformed rows are dropped — including any without a playable
|
|
117
|
+
* `enclosureUrl`, which the schema requires. The backend paginates by 1-based
|
|
118
|
+
* `page`, but this keeps the uniform offset-based {@link SearchPage} for parity
|
|
119
|
+
* with {@link SyraClient.searchPodcasts}; paginate by advancing `offset` by
|
|
120
|
+
* `limit` (the page size), never by `items.length`.
|
|
121
|
+
*/
|
|
122
|
+
getPodcastEpisodes(podcastId: string, options?: PodcastEpisodesOptions): Promise<SearchPage<EpisodeSummary>>;
|
|
123
|
+
/**
|
|
124
|
+
* Fetch a single episode by id, validated against the episode-summary schema.
|
|
125
|
+
* The by-id endpoint nests the episode under `data.episode` alongside resolved
|
|
126
|
+
* persons; this returns just the episode summary needed to stream its audio.
|
|
127
|
+
*/
|
|
128
|
+
getEpisode(episodeId: string): Promise<EpisodeSummary>;
|
|
129
|
+
/**
|
|
130
|
+
* Resolve an absolute artwork URL from a podcast episode reference. Prefers the
|
|
131
|
+
* re-hosted Syra image, then the requested/fallback variant, then the original
|
|
132
|
+
* external artwork URL. Returns `undefined` when no artwork can be derived.
|
|
133
|
+
*/
|
|
134
|
+
episodeImageUrl(source: EpisodeArtworkSource, size?: ArtworkSize): string | undefined;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Create a headless client for the public Syra API. Public reads only — there
|
|
138
|
+
* is no authentication in this version.
|
|
139
|
+
*/
|
|
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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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error thrown when the Syra API returns a non-2xx response.
|
|
3
|
+
*/
|
|
4
|
+
export declare class SyraApiError extends Error {
|
|
5
|
+
/** HTTP status code returned by the API. */
|
|
6
|
+
readonly status: number;
|
|
7
|
+
constructor(status: number, message: string);
|
|
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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { createSyraClient, DEFAULT_SYRA_BASE_URL, DEFAULT_SYRA_WEB_BASE_URL, } from './client';
|
|
2
|
+
export type { SyraClient, SyraClientOptions, SearchTracksOptions, SearchPodcastsOptions, PodcastEpisodesOptions, SearchPage, ArtworkSource, PodcastArtworkSource, EpisodeArtworkSource, } from './client';
|
|
3
|
+
export { trackSummarySchema, podcastSummarySchema, episodeSummarySchema, coverArtSizesSchema, coverArtVariantSchema, } from './schema';
|
|
4
|
+
export type { TrackSummary, PodcastSummary, EpisodeSummary, CoverArtSizes, CoverArtVariant, ArtworkSize, } from './schema';
|
|
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 @@
|
|
|
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 @@
|
|
|
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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/** One episode selected for the up-next queue. The show id is always known here. */
|
|
3
|
+
export interface PodcastQueueSelection {
|
|
4
|
+
syraPodcastId: string;
|
|
5
|
+
episodeId: string;
|
|
6
|
+
}
|
|
7
|
+
interface PodcastStreamPickerProps {
|
|
8
|
+
onSelectEpisode: (syraPodcastId: string, episodeId: string) => void;
|
|
9
|
+
/**
|
|
10
|
+
* Start a multi-episode session: the first item plays immediately, the rest
|
|
11
|
+
* become the room's up-next queue. Optional — hosts that omit it get the
|
|
12
|
+
* single-tap "play this now" flow only, and the queue affordances (per-row "+"
|
|
13
|
+
* and the footer) are hidden.
|
|
14
|
+
*/
|
|
15
|
+
onStartQueue?: (items: PodcastQueueSelection[]) => void;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Self-contained two-level podcast picker for the live-room stream setup. Level 1
|
|
19
|
+
* is a debounced Syra show search; tapping a show drills into Level 2, its episode
|
|
20
|
+
* list. Tapping an episode reports `(syraPodcastId, episodeId)` to the parent — the
|
|
21
|
+
* picker owns NO room/stream logic. Ships inside @syra.fm/live, so it depends only
|
|
22
|
+
* on `useLiveConfig()` injection and never imports from a host app (`@/`).
|
|
23
|
+
*
|
|
24
|
+
* UX affordances (all backend-field-free): a host copyright disclaimer, an honest
|
|
25
|
+
* error+Retry state distinct from empty results, a one-tap "stream my pinned
|
|
26
|
+
* podcast" quick-start row (when the host exposes `getPinnedPodcast`), and an
|
|
27
|
+
* "Open in Syra" deep link on the episode-list header.
|
|
28
|
+
*/
|
|
29
|
+
export declare function PodcastStreamPicker({ onSelectEpisode, onStartQueue }: PodcastStreamPickerProps): React.JSX.Element;
|
|
30
|
+
interface MusicPickerProps {
|
|
31
|
+
/** Stream a single track immediately. */
|
|
32
|
+
onSelectTrack: (trackId: string) => void;
|
|
33
|
+
/**
|
|
34
|
+
* Start a multi-track session: the first track plays immediately, the rest
|
|
35
|
+
* become the room's up-next queue. Optional — hosts that omit it get the
|
|
36
|
+
* single-tap "play this now" flow only, and the queue affordances are hidden.
|
|
37
|
+
*/
|
|
38
|
+
onStartQueue?: (trackIds: string[]) => void;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Self-contained single-level music picker for the live-room "listening party".
|
|
42
|
+
* A debounced Syra catalog search; tapping a track reports its `trackId` to the
|
|
43
|
+
* parent (the picker owns NO room/stream logic and never sees an audio URL — the
|
|
44
|
+
* backend resolves the playable source server-side). Ships inside the shared
|
|
45
|
+
* package, so it depends only on `useLiveConfig()` injection and never imports
|
|
46
|
+
* from a host app (`@/`).
|
|
47
|
+
*
|
|
48
|
+
* Mirrors {@link PodcastStreamPicker}: a host copyright/broadcast disclaimer, an
|
|
49
|
+
* honest error+Retry state distinct from empty results, and an optional up-next
|
|
50
|
+
* queue (per-row "+" plus a floating "Play (N)" footer).
|
|
51
|
+
*/
|
|
52
|
+
export declare function MusicPicker({ onSelectTrack, onStartQueue }: MusicPickerProps): React.JSX.Element;
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=PodcastStreamPicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PodcastStreamPicker.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/PodcastStreamPicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkE,MAAM,OAAO,CAAC;AAsEvF,oFAAoF;AACpF,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,wBAAwB;IAChC,eAAe,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpE;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,EAAE,KAAK,IAAI,CAAC;CACzD;AA0ID;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE,EAAE,wBAAwB,qBAmd9F;AAuDD,UAAU,gBAAgB;IACxB,yCAAyC;IACzC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAC7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,gBAAgB,qBAkP5E"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
import type { Recording } from '../validation';
|
|
4
|
+
interface RecordingCardProps {
|
|
5
|
+
recording: Recording;
|
|
6
|
+
onPress?: () => void;
|
|
7
|
+
style?: StyleProp<ViewStyle>;
|
|
8
|
+
}
|
|
9
|
+
export declare const RecordingCard: React.FC<RecordingCardProps>;
|
|
10
|
+
export default RecordingCard;
|
|
11
|
+
//# sourceMappingURL=RecordingCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordingCard.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/RecordingCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA4C,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAqB/C,UAAU,kBAAkB;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAID,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyDtD,CAAC;AA4DF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { Recording, LiveTheme } from '../types';
|
|
3
|
+
interface RecordingsPanelProps {
|
|
4
|
+
roomId: string;
|
|
5
|
+
isHost: boolean;
|
|
6
|
+
theme: LiveTheme;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
onPlay?: (playbackUrl: string, recording: Recording) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function RecordingsPanel({ roomId, isHost, theme, onClose, onPlay }: RecordingsPanelProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=RecordingsPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecordingsPanel.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/RecordingsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAMnD,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErD,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9D;AAkBD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,oBAAoB,qBA2J/F"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
interface RoomCardProps {
|
|
4
|
+
room: {
|
|
5
|
+
_id: string;
|
|
6
|
+
title: string;
|
|
7
|
+
status: 'scheduled' | 'live' | 'ended';
|
|
8
|
+
type?: 'talk' | 'stage' | 'broadcast';
|
|
9
|
+
topic?: string | null;
|
|
10
|
+
participants?: string[];
|
|
11
|
+
speakers?: string[];
|
|
12
|
+
host: string;
|
|
13
|
+
houseId?: string | null;
|
|
14
|
+
scheduledStart?: string | null;
|
|
15
|
+
startedAt?: string | null;
|
|
16
|
+
endedAt?: string | null;
|
|
17
|
+
createdAt?: string;
|
|
18
|
+
stats?: {
|
|
19
|
+
peakListeners?: number;
|
|
20
|
+
totalJoined?: number;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
onPress?: () => void;
|
|
24
|
+
variant?: 'default' | 'compact';
|
|
25
|
+
house?: {
|
|
26
|
+
name: string;
|
|
27
|
+
avatarUrl?: string;
|
|
28
|
+
} | null;
|
|
29
|
+
hostName?: string;
|
|
30
|
+
hostAvatarUri?: string;
|
|
31
|
+
onMenuPress?: () => void;
|
|
32
|
+
onSave?: () => void;
|
|
33
|
+
isSaved?: boolean;
|
|
34
|
+
style?: StyleProp<ViewStyle>;
|
|
35
|
+
}
|
|
36
|
+
export declare const RoomCard: React.FC<RoomCardProps>;
|
|
37
|
+
export default RoomCard;
|
|
38
|
+
//# sourceMappingURL=RoomCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RoomCard.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/RoomCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AACvC,OAAO,EAA4C,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA4D9F,UAAU,aAAa;IACrB,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;QACvC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,WAAW,CAAC;QACtC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE;YAAE,aAAa,CAAC,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC1D,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAID,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAgM5C,CAAC;AAkNF,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface StreamConfigModalProps {
|
|
3
|
+
visible: boolean;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
roomId: string;
|
|
6
|
+
initialStreamUrl?: string;
|
|
7
|
+
onStreamStarted: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function StreamConfigModal({ visible, onClose, roomId, initialStreamUrl, onStreamStarted }: StreamConfigModalProps): React.JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=StreamConfigModal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StreamConfigModal.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/StreamConfigModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAoBxC,UAAU,sBAAsB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAID,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,EAAE,sBAAsB,qBA0ZxH"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface StreamConfigPanelProps {
|
|
3
|
+
roomId: string;
|
|
4
|
+
roomStatus?: string;
|
|
5
|
+
initialStreamUrl?: string;
|
|
6
|
+
initialRtmpUrl?: string;
|
|
7
|
+
initialStreamKey?: string;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
onStreamStarted: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare function StreamConfigPanel({ roomId, roomStatus, initialStreamUrl, initialRtmpUrl, initialStreamKey, onClose, onStreamStarted }: StreamConfigPanelProps): React.JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=StreamConfigPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StreamConfigPanel.d.ts","sourceRoot":"","sources":["../../../../../src/live/components/StreamConfigPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAmB3D,UAAU,sBAAsB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAmBD,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,sBAAsB,qBAwiB7J"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ViewStyle } from 'react-native';
|
|
3
|
+
import type { LiveTheme, UserEntity, HttpClient } from '../types';
|
|
4
|
+
import { type RoomsServiceInstance } from '../services/spacesService';
|
|
5
|
+
import { RoomSocketService } from '../services/spaceSocketService';
|
|
6
|
+
import { type GetRoomTokenFn } from '../services/livekitService';
|
|
7
|
+
/**
|
|
8
|
+
* The viewer's pinned Syra podcast (resolved from their profile media), surfaced
|
|
9
|
+
* by {@link LiveConfig.getPinnedPodcast}. `title`/`artworkUrl` are optional —
|
|
10
|
+
* the id is all the picker needs to drill into the episode list.
|
|
11
|
+
*/
|
|
12
|
+
export interface PinnedPodcast {
|
|
13
|
+
syraPodcastId: string;
|
|
14
|
+
title?: string;
|
|
15
|
+
artworkUrl?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface LiveConfig {
|
|
18
|
+
httpClient: HttpClient;
|
|
19
|
+
socketUrl: string;
|
|
20
|
+
useTheme: () => LiveTheme;
|
|
21
|
+
/**
|
|
22
|
+
* Translate a UI string key to the active locale. Optional: hosts WITH an i18n
|
|
23
|
+
* layer (the Mention frontend) inject their real translator so the shared
|
|
24
|
+
* live-room UI localizes; hosts WITHOUT one (the standalone live-rooms app) omit it
|
|
25
|
+
* and the shared components fall back to their bundled English source copy.
|
|
26
|
+
* Keys are looked up flat (e.g. `agora.podcastStream.disclaimer`).
|
|
27
|
+
*/
|
|
28
|
+
t?: (key: string, options?: Record<string, string | number>) => string;
|
|
29
|
+
/**
|
|
30
|
+
* Resolve the viewer's pinned Syra podcast from their profile media, or `null`
|
|
31
|
+
* when they have none / it can't be read. Optional: hosts that expose profile
|
|
32
|
+
* media wire it so the podcast picker can offer a one-tap "stream my pinned
|
|
33
|
+
* podcast" quick-start row. The picker renders nothing when this is absent or
|
|
34
|
+
* resolves to `null`.
|
|
35
|
+
*/
|
|
36
|
+
getPinnedPodcast?: () => Promise<PinnedPodcast | null>;
|
|
37
|
+
useUserById: (id: string | undefined) => UserEntity | undefined;
|
|
38
|
+
ensureUserById: (id: string, loader: (id: string) => Promise<UserEntity | null | undefined>) => Promise<UserEntity | undefined>;
|
|
39
|
+
getCachedFileDownloadUrl: (oxyServices: unknown, fileId: string, variant?: string) => Promise<string>;
|
|
40
|
+
getCachedFileDownloadUrlSync: (oxyServices: unknown, fileId: string, variant?: string) => string;
|
|
41
|
+
AvatarComponent: React.ComponentType<{
|
|
42
|
+
size: number;
|
|
43
|
+
source?: string;
|
|
44
|
+
shape?: string;
|
|
45
|
+
style?: ViewStyle;
|
|
46
|
+
}>;
|
|
47
|
+
toast: {
|
|
48
|
+
(message: string, options?: Record<string, unknown>): void;
|
|
49
|
+
success: (message: string) => void;
|
|
50
|
+
error: (message: string) => void;
|
|
51
|
+
};
|
|
52
|
+
introSound?: number;
|
|
53
|
+
isDesktop?: boolean;
|
|
54
|
+
useIsDesktop?: () => boolean;
|
|
55
|
+
onRoomChanged?: (roomId: string) => void;
|
|
56
|
+
/**
|
|
57
|
+
* Optional NativeWind className applied to the floating live-room dock and its
|
|
58
|
+
* backdrop. Hosts whose web shell uses a DOCUMENT-scroll model (html/body/#root
|
|
59
|
+
* = height:auto + overflow:visible, the window is the scroller) must pass
|
|
60
|
+
* `"web:fixed"` so the dock pins to the VIEWPORT bottom instead of resolving
|
|
61
|
+
* its `position: absolute` against the tall document and sinking to the page
|
|
62
|
+
* bottom. Omitted on hosts with the default fixed-viewport web model (and on
|
|
63
|
+
* native, where `web:fixed` is a no-op and the dock pins via `position:
|
|
64
|
+
* absolute` against the screen-filling root).
|
|
65
|
+
*/
|
|
66
|
+
dockClassName?: string;
|
|
67
|
+
}
|
|
68
|
+
export interface LiveConfigInternal extends LiveConfig {
|
|
69
|
+
roomsService: RoomsServiceInstance;
|
|
70
|
+
roomSocketService: RoomSocketService;
|
|
71
|
+
getRoomToken: GetRoomTokenFn;
|
|
72
|
+
}
|
|
73
|
+
export declare function useLiveConfig(): LiveConfigInternal;
|
|
74
|
+
export declare function LiveConfigProvider({ config, children }: {
|
|
75
|
+
config: LiveConfig;
|
|
76
|
+
children: React.ReactNode;
|
|
77
|
+
}): React.JSX.Element;
|
|
78
|
+
//# sourceMappingURL=LiveConfigContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveConfigContext.d.ts","sourceRoot":"","sources":["../../../../../src/live/context/LiveConfigContext.tsx"],"names":[],"mappings":"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"}
|