@naviedu/room-platform-react 0.0.45 → 0.0.47

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 CHANGED
@@ -79,16 +79,17 @@ layout that allows the room to occupy the viewport.
79
79
 
80
80
  ## `RoomPlatformRoom` props
81
81
 
82
- | Prop | Required | Description |
83
- | ------------------------ | -------- | ------------------------------------------------------------------------------------ |
84
- | `apiBaseUrl` | Yes | Room Platform API prefix. Do not append `/rooms`. |
85
- | `launchToken` | Yes | Initial server-issued launch ticket. |
86
- | `onLaunchTicketRequired` | Yes | Returns `{ launchToken }` when the current ticket or access session must be renewed. |
87
- | `extensions` | No | Host-provided top-bar, workspace, sidebar, monitor, and participant extensions. |
88
- | `onError` | No | Receives connection, media, and action errors. |
89
- | `onLifecycleEvent` | No | Receives exchange, renewal, and reconnect lifecycle events. |
90
- | `onExit` | No | Called when the user chooses to leave the room. |
91
- | `children` | No | Replaces the default workspace while keeping the provider and room runtime. |
82
+ | Prop | Required | Description |
83
+ | ------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
84
+ | `apiBaseUrl` | Yes | Room Platform API prefix. Do not append `/rooms`. |
85
+ | `launchToken` | Yes | Initial server-issued launch ticket. |
86
+ | `onLaunchTicketRequired` | Yes | Returns `{ launchToken }` when the current ticket or access session must be renewed. |
87
+ | `extensions` | No | Host-provided top-bar, workspace, sidebar, monitor, and participant extensions. |
88
+ | `primaryCameraPlacement` | No | `overlay` (default) keeps the practice camera over the workspace; `sidebar` renders the local primary camera in the Room Platform sidebar. |
89
+ | `onError` | No | Receives connection, media, and action errors. |
90
+ | `onLifecycleEvent` | No | Receives exchange, renewal, and reconnect lifecycle events. |
91
+ | `onExit` | No | Called when the user chooses to leave the room. |
92
+ | `children` | No | Replaces the default workspace while keeping the provider and room runtime. |
92
93
 
93
94
  The default teaching stage selects the available participant camera carrying
94
95
  the canonical `room:moderate` capability. Screen share remains primary and the
@@ -99,6 +100,8 @@ its existing desktop breakpoint remains unchanged.
99
100
 
100
101
  The public room keeps one canonical local camera track. It may be preview-only
101
102
  before publication, and preview visibility never grants `media:publish_video`.
103
+ Camera placement does not change camera permissions, publication, or LiveKit
104
+ track lifecycle.
102
105
 
103
106
  ### Error and lifecycle callbacks
104
107
 
package/index.d.ts CHANGED
@@ -232,7 +232,7 @@ declare type RoomPlatformChatIntegration = {
232
232
 
233
233
  declare interface RoomPlatformChatRoom {
234
234
  roomId: string;
235
- roomType: 'group';
235
+ roomType: 'group' | 'direct';
236
236
  label?: string;
237
237
  permissions: string[];
238
238
  }
@@ -539,12 +539,13 @@ export declare type RoomPlatformPrivateRoomRuntimeState = {
539
539
  setIsAcceptingPrivateRoom: (value: boolean) => void;
540
540
  };
541
541
 
542
- export declare function RoomPlatformPrivateRoomStage({ callerExternalActorId, studentExternalActorId, activeScreenShareExternalActorId, controlBar, whiteboard, }: RoomPlatformPrivateRoomStageProps): JSX.Element;
542
+ export declare function RoomPlatformPrivateRoomStage({ callerExternalActorId, studentExternalActorId, activeScreenShareExternalActorId, chat, controlBar, whiteboard, }: RoomPlatformPrivateRoomStageProps): JSX.Element;
543
543
 
544
544
  export declare type RoomPlatformPrivateRoomStageProps = {
545
545
  callerExternalActorId: string;
546
546
  studentExternalActorId: string;
547
547
  activeScreenShareExternalActorId?: string;
548
+ chat?: ReactNode;
548
549
  controlBar?: ReactNode;
549
550
  whiteboard?: ReactNode;
550
551
  };
@@ -580,6 +581,7 @@ export declare type RoomPlatformRoomProps = {
580
581
  extensions?: RoomPlatformExtensions;
581
582
  launchToken: string;
582
583
  modeConfig?: RoomPlatformModeConfig;
584
+ primaryCameraPlacement?: 'overlay' | 'sidebar';
583
585
  shadowDom?: boolean;
584
586
  sizing?: RoomPlatformSizing;
585
587
  onError?: (event: RoomPlatformErrorEvent) => void;
@@ -677,6 +679,7 @@ declare interface RoomPrivateRoomConnection {
677
679
  tokenExpiresAt: string;
678
680
  publishEnabled: boolean;
679
681
  permissions: RoomPrivateRoomPermission[];
682
+ chat?: RoomPlatformChatIntegration;
680
683
  }
681
684
 
682
685
  declare type RoomPrivateRoomPermission = 'media:publish' | 'media:subscribe' | 'media:share_screen';