@syra.fm/sdk 0.4.0 → 0.6.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/README.md +33 -4
- 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/colors.js +54 -0
- package/lib/commonjs/live/colors.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 +1196 -0
- package/lib/commonjs/live/components/LiveRoomSheet.js.map +1 -0
- package/lib/commonjs/live/components/MiniRoomBar.js +162 -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 +305 -0
- package/lib/commonjs/live/components/RecordingsPanel.js.map +1 -0
- package/lib/commonjs/live/components/RoomCard.js +349 -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 +341 -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/colors.js +49 -0
- package/lib/module/live/colors.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 +1190 -0
- package/lib/module/live/components/LiveRoomSheet.js.map +1 -0
- package/lib/module/live/components/MiniRoomBar.js +155 -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 +299 -0
- package/lib/module/live/components/RecordingsPanel.js.map +1 -0
- package/lib/module/live/components/RoomCard.js +343 -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 +42 -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/colors.d.ts +35 -0
- package/lib/typescript/commonjs/live/colors.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 +25 -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/colors.d.ts +35 -0
- package/lib/typescript/module/live/colors.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 +25 -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 +123 -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/colors.ts +57 -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 +970 -0
- package/src/live/components/MiniRoomBar.tsx +167 -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 +252 -0
- package/src/live/components/RoomCard.tsx +343 -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 +104 -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
package/README.md
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
# @syra.fm/sdk
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
**
|
|
3
|
+
Isomorphic client for the public [Syra](https://syra.fm) API. The package
|
|
4
|
+
resolves per platform via export conditions:
|
|
5
|
+
|
|
6
|
+
- **Node / bundlers** (`require`/`import`) get the **headless catalog client** —
|
|
7
|
+
runs on Node 18+ and browsers, no React, React Native, or DOM dependencies;
|
|
8
|
+
the only runtime dependency is [`zod`](https://zod.dev). **Public reads only**
|
|
9
|
+
(no authentication in this version).
|
|
10
|
+
- **React Native** (Metro) and **Expo web** (`browser`) additionally get the
|
|
11
|
+
**live-rooms engine** (audio rooms over LiveKit) and the `SyraIcon` brand mark.
|
|
12
|
+
Its React Native / LiveKit / Expo dependencies are declared as **optional peer
|
|
13
|
+
dependencies**, so headless Node consumers never install them.
|
|
14
|
+
|
|
15
|
+
Everyone imports from the same `@syra.fm/sdk` root — the condition picks the
|
|
16
|
+
right surface.
|
|
7
17
|
|
|
8
18
|
## Install
|
|
9
19
|
|
|
@@ -68,3 +78,22 @@ advancing `offset` by `limit`, never by `items.length`.
|
|
|
68
78
|
Responses are validated at runtime with the package's own self-contained Zod
|
|
69
79
|
schemas (`trackSummarySchema`), so there are no shared internal dependencies.
|
|
70
80
|
`SyraApiError` (with a `status`) is thrown on non-2xx responses.
|
|
81
|
+
|
|
82
|
+
## Live rooms (React Native)
|
|
83
|
+
|
|
84
|
+
On React Native and Expo web, the same root export also carries the live-rooms
|
|
85
|
+
engine — providers, hooks, components, and icons:
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
import {
|
|
89
|
+
LiveRoomProvider,
|
|
90
|
+
useRoomAudio,
|
|
91
|
+
RoomCard,
|
|
92
|
+
createRoomsService,
|
|
93
|
+
SyraIcon, // Syra brand mark
|
|
94
|
+
} from '@syra.fm/sdk';
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
These require the optional peer dependencies (`react-native`, `livekit-client`,
|
|
98
|
+
`@livekit/react-native`, `expo-audio`, `react-native-svg`, …) — present in any
|
|
99
|
+
Expo/React Native app, absent from headless Node consumers.
|
|
@@ -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,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ROOM_TYPE_META = exports.LIVE_TINT_COLOR = exports.LIVE_FOREGROUND_COLOR = exports.LIVE_COLOR = void 0;
|
|
7
|
+
exports.getRoomTypeMeta = getRoomTypeMeta;
|
|
8
|
+
/**
|
|
9
|
+
* Live-rooms brand colors.
|
|
10
|
+
*
|
|
11
|
+
* These are the ONLY colors the live UI is allowed to hardcode: they carry
|
|
12
|
+
* meaning that must survive every host theme (the live-indicator red reads as
|
|
13
|
+
* "on air" in light and dark mode alike, and the room-type accents distinguish
|
|
14
|
+
* Stage from Broadcast at a glance). Everything else in the live components
|
|
15
|
+
* comes from the host's design tokens — NativeWind classNames (`bg-background`,
|
|
16
|
+
* `text-foreground`, `text-muted-foreground`, `border-border`, …) or, where a
|
|
17
|
+
* prop needs a literal color value (vector icons), the host `useTheme()` from
|
|
18
|
+
* `LiveConfig`.
|
|
19
|
+
*
|
|
20
|
+
* Consuming apps should import these instead of re-declaring the hex values.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/** The live-indicator red: LIVE badges, recording state, destructive live actions. */
|
|
24
|
+
const LIVE_COLOR = exports.LIVE_COLOR = '#FF4458';
|
|
25
|
+
|
|
26
|
+
/** {@link LIVE_COLOR} at ~10% alpha, for tinted surfaces behind live-colored content. */
|
|
27
|
+
const LIVE_TINT_COLOR = exports.LIVE_TINT_COLOR = '#FF44581A';
|
|
28
|
+
|
|
29
|
+
/** Foreground color for content sitting on {@link LIVE_COLOR}. */
|
|
30
|
+
const LIVE_FOREGROUND_COLOR = exports.LIVE_FOREGROUND_COLOR = '#FFFFFF';
|
|
31
|
+
|
|
32
|
+
/** Room kinds that get a type badge. `talk` is the default kind and carries none. */
|
|
33
|
+
|
|
34
|
+
const ROOM_TYPE_META = exports.ROOM_TYPE_META = {
|
|
35
|
+
stage: {
|
|
36
|
+
icon: 'account-voice',
|
|
37
|
+
label: 'Stage',
|
|
38
|
+
color: '#3B82F6',
|
|
39
|
+
tintColor: '#3B82F620'
|
|
40
|
+
},
|
|
41
|
+
broadcast: {
|
|
42
|
+
icon: 'broadcast',
|
|
43
|
+
label: 'Broadcast',
|
|
44
|
+
color: '#FF6B35',
|
|
45
|
+
tintColor: '#FF6B3520'
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
/** Badge metadata for a room kind, or `null` when the kind carries no badge (`talk`/unset). */
|
|
50
|
+
function getRoomTypeMeta(type) {
|
|
51
|
+
if (type === 'stage' || type === 'broadcast') return ROOM_TYPE_META[type];
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["LIVE_COLOR","exports","LIVE_TINT_COLOR","LIVE_FOREGROUND_COLOR","ROOM_TYPE_META","stage","icon","label","color","tintColor","broadcast","getRoomTypeMeta","type"],"sourceRoot":"../../../src","sources":["live/colors.ts"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACO,MAAMA,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,SAAS;;AAEnC;AACO,MAAME,eAAe,GAAAD,OAAA,CAAAC,eAAA,GAAG,WAAW;;AAE1C;AACO,MAAMC,qBAAqB,GAAAF,OAAA,CAAAE,qBAAA,GAAG,SAAS;;AAE9C;;AAaO,MAAMC,cAAoD,GAAAH,OAAA,CAAAG,cAAA,GAAG;EAClEC,KAAK,EAAE;IACLC,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAE,OAAO;IACdC,KAAK,EAAE,SAAS;IAChBC,SAAS,EAAE;EACb,CAAC;EACDC,SAAS,EAAE;IACTJ,IAAI,EAAE,WAAW;IACjBC,KAAK,EAAE,WAAW;IAClBC,KAAK,EAAE,SAAS;IAChBC,SAAS,EAAE;EACb;AACF,CAAC;;AAED;AACO,SAASE,eAAeA,CAACC,IAAyC,EAAuB;EAC9F,IAAIA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,WAAW,EAAE,OAAOR,cAAc,CAACQ,IAAI,CAAC;EACzE,OAAO,IAAI;AACb","ignoreList":[]}
|