mediasfu-angular 2.1.6 → 2.2.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 +447 -0
- package/dist/README.md +447 -0
- package/dist/fesm2022/mediasfu-angular.mjs +1736 -1079
- package/dist/fesm2022/mediasfu-angular.mjs.map +1 -1
- package/dist/lib/@types/custom-component.types.d.ts +130 -0
- package/dist/lib/@types/types.d.ts +5 -0
- package/dist/lib/components/mediasfu-components/mediasfu-broadcast.component.d.ts +47 -17
- package/dist/lib/components/mediasfu-components/mediasfu-chat.component.d.ts +47 -17
- package/dist/lib/components/mediasfu-components/mediasfu-conference.component.d.ts +57 -21
- package/dist/lib/components/mediasfu-components/mediasfu-generic.component.d.ts +57 -21
- package/dist/lib/components/mediasfu-components/mediasfu-webinar.component.d.ts +57 -21
- package/dist/lib/consumers/add-videos-grid.service.d.ts +3 -0
- package/dist/lib/consumers/prepopulate-user-media.service.d.ts +3 -0
- package/dist/lib/methods/utils/create-room-on-media-sfu.service.d.ts +10 -8
- package/dist/lib/services/custom-component-injection.service.d.ts +86 -0
- package/dist/public-api.d.ts +1 -0
- package/package.json +15 -15
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom component injection types for MediaSFU Angular
|
|
3
|
+
* This file defines interfaces and types for custom component injection patterns
|
|
4
|
+
* similar to React's component injection but adapted for Angular's architecture
|
|
5
|
+
*/
|
|
6
|
+
import { Type, Injector, TemplateRef } from '@angular/core';
|
|
7
|
+
/**
|
|
8
|
+
* Custom component structure for Angular component injection
|
|
9
|
+
* Can be either a traditional component with injector or a function that returns an element
|
|
10
|
+
*/
|
|
11
|
+
export interface CustomComponent<T = any> {
|
|
12
|
+
component: Type<T>;
|
|
13
|
+
injector?: Injector;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Function-based custom component
|
|
17
|
+
*/
|
|
18
|
+
export type CustomComponentFunction = () => HTMLElement;
|
|
19
|
+
/**
|
|
20
|
+
* Union type for all supported custom component types
|
|
21
|
+
*/
|
|
22
|
+
export type CustomComponentType<T = any> = CustomComponent<T> | CustomComponentFunction | HTMLElement;
|
|
23
|
+
/**
|
|
24
|
+
* Options for PrejoinPage custom component injection
|
|
25
|
+
*/
|
|
26
|
+
export interface PrejoinPageCustomOptions {
|
|
27
|
+
/** Custom welcome/prejoin page component */
|
|
28
|
+
customWelcomeComponent?: CustomComponentType;
|
|
29
|
+
/** Custom form component for room creation/joining */
|
|
30
|
+
customFormComponent?: CustomComponentType;
|
|
31
|
+
/** Custom branding/logo component */
|
|
32
|
+
customBrandingComponent?: CustomComponentType;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Options for VideoCard custom component injection
|
|
36
|
+
*/
|
|
37
|
+
export interface VideoCardCustomOptions {
|
|
38
|
+
/** Custom info overlay component */
|
|
39
|
+
customInfoComponent?: CustomComponentType;
|
|
40
|
+
/** Custom controls overlay component */
|
|
41
|
+
customControlsComponent?: CustomComponentType;
|
|
42
|
+
/** Custom entire video card wrapper */
|
|
43
|
+
customVideoCardComponent?: CustomComponentType;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Options for AudioCard custom component injection
|
|
47
|
+
*/
|
|
48
|
+
export interface AudioCardCustomOptions {
|
|
49
|
+
/** Custom info overlay component */
|
|
50
|
+
customInfoComponent?: CustomComponentType;
|
|
51
|
+
/** Custom controls overlay component */
|
|
52
|
+
customControlsComponent?: CustomComponentType;
|
|
53
|
+
/** Custom entire audio card wrapper */
|
|
54
|
+
customAudioCardComponent?: CustomComponentType;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Options for MiniCard custom component injection
|
|
58
|
+
*/
|
|
59
|
+
export interface MiniCardCustomOptions {
|
|
60
|
+
/** Custom mini card component */
|
|
61
|
+
customMiniCardComponent?: CustomComponentType;
|
|
62
|
+
/** Custom overlay component */
|
|
63
|
+
customOverlayComponent?: CustomComponentType;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Options for main UI component customization
|
|
67
|
+
*/
|
|
68
|
+
export interface MainUICustomOptions {
|
|
69
|
+
/** Custom main container component */
|
|
70
|
+
customMainContainerComponent?: CustomComponentType;
|
|
71
|
+
/** Custom main screen component */
|
|
72
|
+
customMainScreenComponent?: CustomComponentType;
|
|
73
|
+
/** Custom main aspect component */
|
|
74
|
+
customMainAspectComponent?: CustomComponentType;
|
|
75
|
+
/** Custom main grid component */
|
|
76
|
+
customMainGridComponent?: CustomComponentType;
|
|
77
|
+
/** Custom control buttons component */
|
|
78
|
+
customControlButtonsComponent?: CustomComponentType;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Comprehensive custom component options for MediaSFU
|
|
82
|
+
*/
|
|
83
|
+
export interface MediaSFUCustomComponents {
|
|
84
|
+
prejoinPage?: PrejoinPageCustomOptions;
|
|
85
|
+
videoCard?: VideoCardCustomOptions;
|
|
86
|
+
audioCard?: AudioCardCustomOptions;
|
|
87
|
+
miniCard?: MiniCardCustomOptions;
|
|
88
|
+
mainUI?: MainUICustomOptions;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Component injection configuration
|
|
92
|
+
*/
|
|
93
|
+
export interface ComponentInjectionConfig {
|
|
94
|
+
/** Enable/disable custom component injection */
|
|
95
|
+
enabled: boolean;
|
|
96
|
+
/** Override default components with custom ones */
|
|
97
|
+
overrideDefaults: boolean;
|
|
98
|
+
/** Fallback to default if custom component fails */
|
|
99
|
+
fallbackToDefault: boolean;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Parameters passed to custom components
|
|
103
|
+
*/
|
|
104
|
+
export interface CustomComponentParameters {
|
|
105
|
+
/** Component-specific parameters */
|
|
106
|
+
[key: string]: any;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Custom component context for dependency injection
|
|
110
|
+
*/
|
|
111
|
+
export interface CustomComponentContext {
|
|
112
|
+
/** Component parameters */
|
|
113
|
+
parameters: CustomComponentParameters;
|
|
114
|
+
/** Injector instance for dependency injection */
|
|
115
|
+
injector?: Injector;
|
|
116
|
+
/** Component configuration */
|
|
117
|
+
config?: ComponentInjectionConfig;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Angular equivalent of React CustomComponentType for full UI replacement
|
|
121
|
+
* Component that receives all MediaSFU parameters and replaces the entire interface
|
|
122
|
+
*/
|
|
123
|
+
export type CustomFullUIComponentType = Type<any> | TemplateRef<any>;
|
|
124
|
+
/**
|
|
125
|
+
* Parameters passed to custom full UI components
|
|
126
|
+
*/
|
|
127
|
+
export interface CustomFullUIParameters {
|
|
128
|
+
/** All MediaSFU parameters and functions */
|
|
129
|
+
[key: string]: any;
|
|
130
|
+
}
|
|
@@ -476,6 +476,8 @@ export interface CreateRoomOptions {
|
|
|
476
476
|
safeRoomAction: 'warn' | 'kick' | 'ban';
|
|
477
477
|
dataBuffer: boolean;
|
|
478
478
|
bufferType: 'images' | 'audio' | 'all';
|
|
479
|
+
directionSIP: 'inbound' | 'outbound' | 'both';
|
|
480
|
+
preferPCMA: boolean;
|
|
479
481
|
}
|
|
480
482
|
export interface CreateMediaSFURoomOptions {
|
|
481
483
|
action: 'create';
|
|
@@ -493,6 +495,8 @@ export interface CreateMediaSFURoomOptions {
|
|
|
493
495
|
safeRoomAction?: 'warn' | 'kick' | 'ban';
|
|
494
496
|
dataBuffer?: boolean;
|
|
495
497
|
bufferType?: 'images' | 'audio' | 'all';
|
|
498
|
+
directionSIP?: 'inbound' | 'outbound' | 'both';
|
|
499
|
+
preferPCMA?: boolean;
|
|
496
500
|
}
|
|
497
501
|
export interface JoinMediaSFURoomOptions {
|
|
498
502
|
action: 'join';
|
|
@@ -676,3 +680,4 @@ export type CreateWebRTCTransportResponse = {
|
|
|
676
680
|
iceParameters: IceParameters;
|
|
677
681
|
error?: string;
|
|
678
682
|
};
|
|
683
|
+
export * from './custom-component.types';
|
|
@@ -160,6 +160,10 @@ export type MediasfuBroadcastOptions = {
|
|
|
160
160
|
* @input {CreateMediaSFURoomOptions | JoinMediaSFURoomOptions} noUIPreJoinOptions - Options for the prejoin page without UI.
|
|
161
161
|
* @input {JoinRoomOnMediaSFUType} joinMediaSFURoom - Function to join a room on MediaSFU.
|
|
162
162
|
* @input {CreateRoomOnMediaSFUType} createMediaSFURoom - Function to create a room on MediaSFU.
|
|
163
|
+
* @input {any} customVideoCard - Custom component to replace the default VideoCard component.
|
|
164
|
+
* @input {any} customAudioCard - Custom component to replace the default AudioCard component.
|
|
165
|
+
* @input {any} customMiniCard - Custom component to replace the default MiniCard component.
|
|
166
|
+
* @input {any} customMainComponent - Custom component that provides complete control over the main UI, bypassing default MediaSFU styling.
|
|
163
167
|
*
|
|
164
168
|
* @property {string} title - The title of the component, defaults to "MediaSFU-Broadcast".
|
|
165
169
|
*
|
|
@@ -183,13 +187,17 @@ export type MediasfuBroadcastOptions = {
|
|
|
183
187
|
* [useLocalUIMode]="true"
|
|
184
188
|
* [seedData]="seedDataObject"
|
|
185
189
|
* [useSeed]="true"
|
|
186
|
-
* [imgSrc]="https://example.com/logo.png"
|
|
190
|
+
* [imgSrc]="'https://example.com/logo.png'"
|
|
187
191
|
* [sourceParameters]="{ source: 'camera', width: 640, height: 480 }"
|
|
188
192
|
* [updateSourceParameters]="updateSourceParameters"
|
|
189
193
|
* [returnUI]="true"
|
|
190
194
|
* [noUIPreJoinOptions]="{ roomName: 'room1', userName: 'user1' }"
|
|
191
195
|
* [joinMediaSFURoom]="joinMediaSFURoom"
|
|
192
|
-
* [createMediaSFURoom]="createMediaSFURoom"
|
|
196
|
+
* [createMediaSFURoom]="createMediaSFURoom"
|
|
197
|
+
* [customVideoCard]="CustomVideoCardComponent"
|
|
198
|
+
* [customAudioCard]="CustomAudioCardComponent"
|
|
199
|
+
* [customMiniCard]="CustomMiniCardComponent"
|
|
200
|
+
* [customMainComponent]="CustomMainComponent">
|
|
193
201
|
* </app-mediasfu-broadcast>
|
|
194
202
|
* ```
|
|
195
203
|
*/
|
|
@@ -312,6 +320,10 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
312
320
|
noUIPreJoinOptions?: CreateMediaSFURoomOptions | JoinMediaSFURoomOptions;
|
|
313
321
|
joinMediaSFURoom?: JoinRoomOnMediaSFUType;
|
|
314
322
|
createMediaSFURoom?: CreateRoomOnMediaSFUType;
|
|
323
|
+
customVideoCard: any;
|
|
324
|
+
customAudioCard: any;
|
|
325
|
+
customMiniCard: any;
|
|
326
|
+
customMainComponent: any;
|
|
315
327
|
title: string;
|
|
316
328
|
private mainHeightWidthSubscription;
|
|
317
329
|
private validatedSubscription;
|
|
@@ -844,7 +856,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
844
856
|
recordingVideoOptions: BehaviorSubject<string>;
|
|
845
857
|
recordingVideoType: BehaviorSubject<string>;
|
|
846
858
|
recordingVideoOptimized: BehaviorSubject<boolean>;
|
|
847
|
-
recordingDisplayType: BehaviorSubject<"video" | "
|
|
859
|
+
recordingDisplayType: BehaviorSubject<"video" | "media" | "all">;
|
|
848
860
|
recordingAddHLS: BehaviorSubject<boolean>;
|
|
849
861
|
recordingNameTags: BehaviorSubject<boolean>;
|
|
850
862
|
recordingBackgroundColor: BehaviorSubject<string>;
|
|
@@ -1070,7 +1082,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
1070
1082
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
1071
1083
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
1072
1084
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
1073
|
-
checkOrientation: () => "
|
|
1085
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
1074
1086
|
showAlert: ({ message, type, duration, }: {
|
|
1075
1087
|
message: string;
|
|
1076
1088
|
type: "success" | "danger";
|
|
@@ -1313,7 +1325,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
1313
1325
|
recordingVideoOptions: string;
|
|
1314
1326
|
recordingVideoType: string;
|
|
1315
1327
|
recordingVideoOptimized: boolean;
|
|
1316
|
-
recordingDisplayType: "video" | "
|
|
1328
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
1317
1329
|
recordingAddHLS: boolean;
|
|
1318
1330
|
recordingAddText: boolean;
|
|
1319
1331
|
recordingCustomText: string;
|
|
@@ -1714,11 +1726,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
1714
1726
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
1715
1727
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
1716
1728
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
1717
|
-
checkOrientation: () => "
|
|
1729
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
1718
1730
|
updateDevice: (value: Device | null) => void;
|
|
1719
1731
|
updateSocket: (value: Socket) => void;
|
|
1720
1732
|
updateLocalSocket: (value: Socket | null) => void;
|
|
1721
1733
|
updateValidated: (value: boolean) => void;
|
|
1734
|
+
customVideoCard: any;
|
|
1735
|
+
customAudioCard: any;
|
|
1736
|
+
customMiniCard: any;
|
|
1722
1737
|
showAlert: ({ message, type, duration, }: {
|
|
1723
1738
|
message: string;
|
|
1724
1739
|
type: "success" | "danger";
|
|
@@ -2032,7 +2047,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
2032
2047
|
recordingVideoOptions: string;
|
|
2033
2048
|
recordingVideoType: string;
|
|
2034
2049
|
recordingVideoOptimized: boolean;
|
|
2035
|
-
recordingDisplayType: "video" | "
|
|
2050
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
2036
2051
|
recordingAddHLS: boolean;
|
|
2037
2052
|
recordingAddText: boolean;
|
|
2038
2053
|
recordingCustomText: string;
|
|
@@ -2433,11 +2448,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
2433
2448
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
2434
2449
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
2435
2450
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
2436
|
-
checkOrientation: () => "
|
|
2451
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
2437
2452
|
updateDevice: (value: Device | null) => void;
|
|
2438
2453
|
updateSocket: (value: Socket) => void;
|
|
2439
2454
|
updateLocalSocket: (value: Socket | null) => void;
|
|
2440
2455
|
updateValidated: (value: boolean) => void;
|
|
2456
|
+
customVideoCard: any;
|
|
2457
|
+
customAudioCard: any;
|
|
2458
|
+
customMiniCard: any;
|
|
2441
2459
|
showAlert: ({ message, type, duration, }: {
|
|
2442
2460
|
message: string;
|
|
2443
2461
|
type: "success" | "danger";
|
|
@@ -2754,7 +2772,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
2754
2772
|
recordingVideoOptions: string;
|
|
2755
2773
|
recordingVideoType: string;
|
|
2756
2774
|
recordingVideoOptimized: boolean;
|
|
2757
|
-
recordingDisplayType: "video" | "
|
|
2775
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
2758
2776
|
recordingAddHLS: boolean;
|
|
2759
2777
|
recordingAddText: boolean;
|
|
2760
2778
|
recordingCustomText: string;
|
|
@@ -3155,11 +3173,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
3155
3173
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
3156
3174
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
3157
3175
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
3158
|
-
checkOrientation: () => "
|
|
3176
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
3159
3177
|
updateDevice: (value: Device | null) => void;
|
|
3160
3178
|
updateSocket: (value: Socket) => void;
|
|
3161
3179
|
updateLocalSocket: (value: Socket | null) => void;
|
|
3162
3180
|
updateValidated: (value: boolean) => void;
|
|
3181
|
+
customVideoCard: any;
|
|
3182
|
+
customAudioCard: any;
|
|
3183
|
+
customMiniCard: any;
|
|
3163
3184
|
showAlert: ({ message, type, duration, }: {
|
|
3164
3185
|
message: string;
|
|
3165
3186
|
type: "success" | "danger";
|
|
@@ -3473,7 +3494,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
3473
3494
|
recordingVideoOptions: string;
|
|
3474
3495
|
recordingVideoType: string;
|
|
3475
3496
|
recordingVideoOptimized: boolean;
|
|
3476
|
-
recordingDisplayType: "video" | "
|
|
3497
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
3477
3498
|
recordingAddHLS: boolean;
|
|
3478
3499
|
recordingAddText: boolean;
|
|
3479
3500
|
recordingCustomText: string;
|
|
@@ -3874,11 +3895,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
3874
3895
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
3875
3896
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
3876
3897
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
3877
|
-
checkOrientation: () => "
|
|
3898
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
3878
3899
|
updateDevice: (value: Device | null) => void;
|
|
3879
3900
|
updateSocket: (value: Socket) => void;
|
|
3880
3901
|
updateLocalSocket: (value: Socket | null) => void;
|
|
3881
3902
|
updateValidated: (value: boolean) => void;
|
|
3903
|
+
customVideoCard: any;
|
|
3904
|
+
customAudioCard: any;
|
|
3905
|
+
customMiniCard: any;
|
|
3882
3906
|
showAlert: ({ message, type, duration, }: {
|
|
3883
3907
|
message: string;
|
|
3884
3908
|
type: "success" | "danger";
|
|
@@ -4195,7 +4219,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
4195
4219
|
recordingVideoOptions: string;
|
|
4196
4220
|
recordingVideoType: string;
|
|
4197
4221
|
recordingVideoOptimized: boolean;
|
|
4198
|
-
recordingDisplayType: "video" | "
|
|
4222
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
4199
4223
|
recordingAddHLS: boolean;
|
|
4200
4224
|
recordingAddText: boolean;
|
|
4201
4225
|
recordingCustomText: string;
|
|
@@ -4596,11 +4620,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
4596
4620
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
4597
4621
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
4598
4622
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
4599
|
-
checkOrientation: () => "
|
|
4623
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
4600
4624
|
updateDevice: (value: Device | null) => void;
|
|
4601
4625
|
updateSocket: (value: Socket) => void;
|
|
4602
4626
|
updateLocalSocket: (value: Socket | null) => void;
|
|
4603
4627
|
updateValidated: (value: boolean) => void;
|
|
4628
|
+
customVideoCard: any;
|
|
4629
|
+
customAudioCard: any;
|
|
4630
|
+
customMiniCard: any;
|
|
4604
4631
|
showAlert: ({ message, type, duration, }: {
|
|
4605
4632
|
message: string;
|
|
4606
4633
|
type: "success" | "danger";
|
|
@@ -4914,7 +4941,7 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
4914
4941
|
recordingVideoOptions: string;
|
|
4915
4942
|
recordingVideoType: string;
|
|
4916
4943
|
recordingVideoOptimized: boolean;
|
|
4917
|
-
recordingDisplayType: "video" | "
|
|
4944
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
4918
4945
|
recordingAddHLS: boolean;
|
|
4919
4946
|
recordingAddText: boolean;
|
|
4920
4947
|
recordingCustomText: string;
|
|
@@ -5315,11 +5342,14 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
5315
5342
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
5316
5343
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
5317
5344
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
5318
|
-
checkOrientation: () => "
|
|
5345
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
5319
5346
|
updateDevice: (value: Device | null) => void;
|
|
5320
5347
|
updateSocket: (value: Socket) => void;
|
|
5321
5348
|
updateLocalSocket: (value: Socket | null) => void;
|
|
5322
5349
|
updateValidated: (value: boolean) => void;
|
|
5350
|
+
customVideoCard: any;
|
|
5351
|
+
customAudioCard: any;
|
|
5352
|
+
customMiniCard: any;
|
|
5323
5353
|
showAlert: ({ message, type, duration, }: {
|
|
5324
5354
|
message: string;
|
|
5325
5355
|
type: "success" | "danger";
|
|
@@ -5445,5 +5475,5 @@ export declare class MediasfuBroadcast implements OnInit, OnDestroy {
|
|
|
5445
5475
|
controlBroadcastButtonsArray: ButtonTouch[];
|
|
5446
5476
|
connect_Socket(apiUserName: string, token: string, skipSockets?: boolean): Promise<Socket | null>;
|
|
5447
5477
|
static ɵfac: i0.ɵɵFactoryDeclaration<MediasfuBroadcast, never>;
|
|
5448
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<MediasfuBroadcast, "app-mediasfu-broadcast", never, { "PrejoinPage": { "alias": "PrejoinPage"; "required": false; }; "localLink": { "alias": "localLink"; "required": false; }; "connectMediaSFU": { "alias": "connectMediaSFU"; "required": false; }; "credentials": { "alias": "credentials"; "required": false; }; "useLocalUIMode": { "alias": "useLocalUIMode"; "required": false; }; "seedData": { "alias": "seedData"; "required": false; }; "useSeed": { "alias": "useSeed"; "required": false; }; "imgSrc": { "alias": "imgSrc"; "required": false; }; "sourceParameters": { "alias": "sourceParameters"; "required": false; }; "updateSourceParameters": { "alias": "updateSourceParameters"; "required": false; }; "returnUI": { "alias": "returnUI"; "required": false; }; "noUIPreJoinOptions": { "alias": "noUIPreJoinOptions"; "required": false; }; "joinMediaSFURoom": { "alias": "joinMediaSFURoom"; "required": false; }; "createMediaSFURoom": { "alias": "createMediaSFURoom"; "required": false; }; }, {}, never, never, true, never>;
|
|
5478
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MediasfuBroadcast, "app-mediasfu-broadcast", never, { "PrejoinPage": { "alias": "PrejoinPage"; "required": false; }; "localLink": { "alias": "localLink"; "required": false; }; "connectMediaSFU": { "alias": "connectMediaSFU"; "required": false; }; "credentials": { "alias": "credentials"; "required": false; }; "useLocalUIMode": { "alias": "useLocalUIMode"; "required": false; }; "seedData": { "alias": "seedData"; "required": false; }; "useSeed": { "alias": "useSeed"; "required": false; }; "imgSrc": { "alias": "imgSrc"; "required": false; }; "sourceParameters": { "alias": "sourceParameters"; "required": false; }; "updateSourceParameters": { "alias": "updateSourceParameters"; "required": false; }; "returnUI": { "alias": "returnUI"; "required": false; }; "noUIPreJoinOptions": { "alias": "noUIPreJoinOptions"; "required": false; }; "joinMediaSFURoom": { "alias": "joinMediaSFURoom"; "required": false; }; "createMediaSFURoom": { "alias": "createMediaSFURoom"; "required": false; }; "customVideoCard": { "alias": "customVideoCard"; "required": false; }; "customAudioCard": { "alias": "customAudioCard"; "required": false; }; "customMiniCard": { "alias": "customMiniCard"; "required": false; }; "customMainComponent": { "alias": "customMainComponent"; "required": false; }; }, {}, never, never, true, never>;
|
|
5449
5479
|
}
|
|
@@ -141,6 +141,10 @@ export type MediasfuChatOptions = {
|
|
|
141
141
|
* @input {CreateMediaSFURoomOptions | JoinMediaSFURoomOptions} noUIPreJoinOptions - Options for the prejoin page without UI.
|
|
142
142
|
* @input {JoinRoomOnMediaSFUType} joinMediaSFURoom - Function to join a room on MediaSFU.
|
|
143
143
|
* @input {CreateRoomOnMediaSFUType} createMediaSFURoom - Function to create a room on MediaSFU.
|
|
144
|
+
* @input {any} customVideoCard - Custom component to replace the default VideoCard component.
|
|
145
|
+
* @input {any} customAudioCard - Custom component to replace the default AudioCard component.
|
|
146
|
+
* @input {any} customMiniCard - Custom component to replace the default MiniCard component.
|
|
147
|
+
* @input {any} customMainComponent - Custom component that provides complete control over the main UI, bypassing default MediaSFU styling.
|
|
144
148
|
*
|
|
145
149
|
* @property {string} title - The title of the component, defaults to "MediaSFU-Chat".
|
|
146
150
|
*
|
|
@@ -166,13 +170,17 @@ export type MediasfuChatOptions = {
|
|
|
166
170
|
* [useLocalUIMode]="true"
|
|
167
171
|
* [seedData]="seedDataObject"
|
|
168
172
|
* [useSeed]="true"
|
|
169
|
-
* [imgSrc]="https://example.com/logo.png"
|
|
173
|
+
* [imgSrc]="'https://example.com/logo.png'"
|
|
170
174
|
* [sourceParameters]="{ source: 'camera', width: 640, height: 480 }"
|
|
171
175
|
* [updateSourceParameters]="updateSourceParameters"
|
|
172
176
|
* [returnUI]="true"
|
|
173
177
|
* [noUIPreJoinOptions]="{ roomName: 'room1', userName: 'user1' }"
|
|
174
178
|
* [joinMediaSFURoom]="joinMediaSFURoom"
|
|
175
|
-
* [createMediaSFURoom]="createMediaSFURoom"
|
|
179
|
+
* [createMediaSFURoom]="createMediaSFURoom"
|
|
180
|
+
* [customVideoCard]="CustomVideoCardComponent"
|
|
181
|
+
* [customAudioCard]="CustomAudioCardComponent"
|
|
182
|
+
* [customMiniCard]="CustomMiniCardComponent"
|
|
183
|
+
* [customMainComponent]="CustomMainComponent">
|
|
176
184
|
* </app-mediasfu-chat>
|
|
177
185
|
* ```
|
|
178
186
|
*/
|
|
@@ -281,6 +289,10 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
281
289
|
noUIPreJoinOptions?: CreateMediaSFURoomOptions | JoinMediaSFURoomOptions;
|
|
282
290
|
joinMediaSFURoom?: JoinRoomOnMediaSFUType;
|
|
283
291
|
createMediaSFURoom?: CreateRoomOnMediaSFUType;
|
|
292
|
+
customVideoCard?: any;
|
|
293
|
+
customAudioCard?: any;
|
|
294
|
+
customMiniCard?: any;
|
|
295
|
+
customMainComponent?: any;
|
|
284
296
|
title: string;
|
|
285
297
|
private mainHeightWidthSubscription;
|
|
286
298
|
private validatedSubscription;
|
|
@@ -812,7 +824,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
812
824
|
recordingVideoOptions: BehaviorSubject<string>;
|
|
813
825
|
recordingVideoType: BehaviorSubject<string>;
|
|
814
826
|
recordingVideoOptimized: BehaviorSubject<boolean>;
|
|
815
|
-
recordingDisplayType: BehaviorSubject<"video" | "
|
|
827
|
+
recordingDisplayType: BehaviorSubject<"video" | "media" | "all">;
|
|
816
828
|
recordingAddHLS: BehaviorSubject<boolean>;
|
|
817
829
|
recordingNameTags: BehaviorSubject<boolean>;
|
|
818
830
|
recordingBackgroundColor: BehaviorSubject<string>;
|
|
@@ -1038,7 +1050,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
1038
1050
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
1039
1051
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
1040
1052
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
1041
|
-
checkOrientation: () => "
|
|
1053
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
1042
1054
|
showAlert: ({ message, type, duration, }: {
|
|
1043
1055
|
message: string;
|
|
1044
1056
|
type: "success" | "danger";
|
|
@@ -1281,7 +1293,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
1281
1293
|
recordingVideoOptions: string;
|
|
1282
1294
|
recordingVideoType: string;
|
|
1283
1295
|
recordingVideoOptimized: boolean;
|
|
1284
|
-
recordingDisplayType: "video" | "
|
|
1296
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
1285
1297
|
recordingAddHLS: boolean;
|
|
1286
1298
|
recordingAddText: boolean;
|
|
1287
1299
|
recordingCustomText: string;
|
|
@@ -1682,11 +1694,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
1682
1694
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
1683
1695
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
1684
1696
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
1685
|
-
checkOrientation: () => "
|
|
1697
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
1686
1698
|
updateDevice: (value: Device | null) => void;
|
|
1687
1699
|
updateSocket: (value: Socket) => void;
|
|
1688
1700
|
updateLocalSocket: (value: Socket | null) => void;
|
|
1689
1701
|
updateValidated: (value: boolean) => void;
|
|
1702
|
+
customVideoCard: any;
|
|
1703
|
+
customAudioCard: any;
|
|
1704
|
+
customMiniCard: any;
|
|
1690
1705
|
showAlert: ({ message, type, duration, }: {
|
|
1691
1706
|
message: string;
|
|
1692
1707
|
type: "success" | "danger";
|
|
@@ -2000,7 +2015,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
2000
2015
|
recordingVideoOptions: string;
|
|
2001
2016
|
recordingVideoType: string;
|
|
2002
2017
|
recordingVideoOptimized: boolean;
|
|
2003
|
-
recordingDisplayType: "video" | "
|
|
2018
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
2004
2019
|
recordingAddHLS: boolean;
|
|
2005
2020
|
recordingAddText: boolean;
|
|
2006
2021
|
recordingCustomText: string;
|
|
@@ -2401,11 +2416,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
2401
2416
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
2402
2417
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
2403
2418
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
2404
|
-
checkOrientation: () => "
|
|
2419
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
2405
2420
|
updateDevice: (value: Device | null) => void;
|
|
2406
2421
|
updateSocket: (value: Socket) => void;
|
|
2407
2422
|
updateLocalSocket: (value: Socket | null) => void;
|
|
2408
2423
|
updateValidated: (value: boolean) => void;
|
|
2424
|
+
customVideoCard: any;
|
|
2425
|
+
customAudioCard: any;
|
|
2426
|
+
customMiniCard: any;
|
|
2409
2427
|
showAlert: ({ message, type, duration, }: {
|
|
2410
2428
|
message: string;
|
|
2411
2429
|
type: "success" | "danger";
|
|
@@ -2722,7 +2740,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
2722
2740
|
recordingVideoOptions: string;
|
|
2723
2741
|
recordingVideoType: string;
|
|
2724
2742
|
recordingVideoOptimized: boolean;
|
|
2725
|
-
recordingDisplayType: "video" | "
|
|
2743
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
2726
2744
|
recordingAddHLS: boolean;
|
|
2727
2745
|
recordingAddText: boolean;
|
|
2728
2746
|
recordingCustomText: string;
|
|
@@ -3123,11 +3141,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
3123
3141
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
3124
3142
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
3125
3143
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
3126
|
-
checkOrientation: () => "
|
|
3144
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
3127
3145
|
updateDevice: (value: Device | null) => void;
|
|
3128
3146
|
updateSocket: (value: Socket) => void;
|
|
3129
3147
|
updateLocalSocket: (value: Socket | null) => void;
|
|
3130
3148
|
updateValidated: (value: boolean) => void;
|
|
3149
|
+
customVideoCard: any;
|
|
3150
|
+
customAudioCard: any;
|
|
3151
|
+
customMiniCard: any;
|
|
3131
3152
|
showAlert: ({ message, type, duration, }: {
|
|
3132
3153
|
message: string;
|
|
3133
3154
|
type: "success" | "danger";
|
|
@@ -3441,7 +3462,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
3441
3462
|
recordingVideoOptions: string;
|
|
3442
3463
|
recordingVideoType: string;
|
|
3443
3464
|
recordingVideoOptimized: boolean;
|
|
3444
|
-
recordingDisplayType: "video" | "
|
|
3465
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
3445
3466
|
recordingAddHLS: boolean;
|
|
3446
3467
|
recordingAddText: boolean;
|
|
3447
3468
|
recordingCustomText: string;
|
|
@@ -3842,11 +3863,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
3842
3863
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
3843
3864
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
3844
3865
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
3845
|
-
checkOrientation: () => "
|
|
3866
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
3846
3867
|
updateDevice: (value: Device | null) => void;
|
|
3847
3868
|
updateSocket: (value: Socket) => void;
|
|
3848
3869
|
updateLocalSocket: (value: Socket | null) => void;
|
|
3849
3870
|
updateValidated: (value: boolean) => void;
|
|
3871
|
+
customVideoCard: any;
|
|
3872
|
+
customAudioCard: any;
|
|
3873
|
+
customMiniCard: any;
|
|
3850
3874
|
showAlert: ({ message, type, duration, }: {
|
|
3851
3875
|
message: string;
|
|
3852
3876
|
type: "success" | "danger";
|
|
@@ -4163,7 +4187,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
4163
4187
|
recordingVideoOptions: string;
|
|
4164
4188
|
recordingVideoType: string;
|
|
4165
4189
|
recordingVideoOptimized: boolean;
|
|
4166
|
-
recordingDisplayType: "video" | "
|
|
4190
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
4167
4191
|
recordingAddHLS: boolean;
|
|
4168
4192
|
recordingAddText: boolean;
|
|
4169
4193
|
recordingCustomText: string;
|
|
@@ -4564,11 +4588,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
4564
4588
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
4565
4589
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
4566
4590
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
4567
|
-
checkOrientation: () => "
|
|
4591
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
4568
4592
|
updateDevice: (value: Device | null) => void;
|
|
4569
4593
|
updateSocket: (value: Socket) => void;
|
|
4570
4594
|
updateLocalSocket: (value: Socket | null) => void;
|
|
4571
4595
|
updateValidated: (value: boolean) => void;
|
|
4596
|
+
customVideoCard: any;
|
|
4597
|
+
customAudioCard: any;
|
|
4598
|
+
customMiniCard: any;
|
|
4572
4599
|
showAlert: ({ message, type, duration, }: {
|
|
4573
4600
|
message: string;
|
|
4574
4601
|
type: "success" | "danger";
|
|
@@ -4882,7 +4909,7 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
4882
4909
|
recordingVideoOptions: string;
|
|
4883
4910
|
recordingVideoType: string;
|
|
4884
4911
|
recordingVideoOptimized: boolean;
|
|
4885
|
-
recordingDisplayType: "video" | "
|
|
4912
|
+
recordingDisplayType: "video" | "media" | "all";
|
|
4886
4913
|
recordingAddHLS: boolean;
|
|
4887
4914
|
recordingAddText: boolean;
|
|
4888
4915
|
recordingCustomText: string;
|
|
@@ -5283,11 +5310,14 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
5283
5310
|
updateAnnotateScreenStream: (value: boolean) => void;
|
|
5284
5311
|
updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
|
|
5285
5312
|
updateIsScreenboardModalVisible: (value: boolean) => void;
|
|
5286
|
-
checkOrientation: () => "
|
|
5313
|
+
checkOrientation: () => "portrait" | "landscape";
|
|
5287
5314
|
updateDevice: (value: Device | null) => void;
|
|
5288
5315
|
updateSocket: (value: Socket) => void;
|
|
5289
5316
|
updateLocalSocket: (value: Socket | null) => void;
|
|
5290
5317
|
updateValidated: (value: boolean) => void;
|
|
5318
|
+
customVideoCard: any;
|
|
5319
|
+
customAudioCard: any;
|
|
5320
|
+
customMiniCard: any;
|
|
5291
5321
|
showAlert: ({ message, type, duration, }: {
|
|
5292
5322
|
message: string;
|
|
5293
5323
|
type: "success" | "danger";
|
|
@@ -5375,5 +5405,5 @@ export declare class MediasfuChat implements OnInit, OnDestroy {
|
|
|
5375
5405
|
updateControlChatButtons(): void;
|
|
5376
5406
|
connect_Socket(apiUserName: string, token: string, skipSockets?: boolean): Promise<Socket | null>;
|
|
5377
5407
|
static ɵfac: i0.ɵɵFactoryDeclaration<MediasfuChat, never>;
|
|
5378
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<MediasfuChat, "app-mediasfu-chat", never, { "PrejoinPage": { "alias": "PrejoinPage"; "required": false; }; "localLink": { "alias": "localLink"; "required": false; }; "connectMediaSFU": { "alias": "connectMediaSFU"; "required": false; }; "credentials": { "alias": "credentials"; "required": false; }; "useLocalUIMode": { "alias": "useLocalUIMode"; "required": false; }; "seedData": { "alias": "seedData"; "required": false; }; "useSeed": { "alias": "useSeed"; "required": false; }; "imgSrc": { "alias": "imgSrc"; "required": false; }; "sourceParameters": { "alias": "sourceParameters"; "required": false; }; "updateSourceParameters": { "alias": "updateSourceParameters"; "required": false; }; "returnUI": { "alias": "returnUI"; "required": false; }; "noUIPreJoinOptions": { "alias": "noUIPreJoinOptions"; "required": false; }; "joinMediaSFURoom": { "alias": "joinMediaSFURoom"; "required": false; }; "createMediaSFURoom": { "alias": "createMediaSFURoom"; "required": false; }; }, {}, never, never, true, never>;
|
|
5408
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MediasfuChat, "app-mediasfu-chat", never, { "PrejoinPage": { "alias": "PrejoinPage"; "required": false; }; "localLink": { "alias": "localLink"; "required": false; }; "connectMediaSFU": { "alias": "connectMediaSFU"; "required": false; }; "credentials": { "alias": "credentials"; "required": false; }; "useLocalUIMode": { "alias": "useLocalUIMode"; "required": false; }; "seedData": { "alias": "seedData"; "required": false; }; "useSeed": { "alias": "useSeed"; "required": false; }; "imgSrc": { "alias": "imgSrc"; "required": false; }; "sourceParameters": { "alias": "sourceParameters"; "required": false; }; "updateSourceParameters": { "alias": "updateSourceParameters"; "required": false; }; "returnUI": { "alias": "returnUI"; "required": false; }; "noUIPreJoinOptions": { "alias": "noUIPreJoinOptions"; "required": false; }; "joinMediaSFURoom": { "alias": "joinMediaSFURoom"; "required": false; }; "createMediaSFURoom": { "alias": "createMediaSFURoom"; "required": false; }; "customVideoCard": { "alias": "customVideoCard"; "required": false; }; "customAudioCard": { "alias": "customAudioCard"; "required": false; }; "customMiniCard": { "alias": "customMiniCard"; "required": false; }; "customMainComponent": { "alias": "customMainComponent"; "required": false; }; }, {}, never, never, true, never>;
|
|
5379
5409
|
}
|