fcr-ui-scene 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/lib/fcr-ui-kit/src/components/avatar/helper.d.ts +2 -0
  2. package/lib/fcr-ui-kit/src/components/avatar/index.d.ts +8 -0
  3. package/lib/fcr-ui-kit/src/components/button/index.d.ts +82 -0
  4. package/lib/fcr-ui-kit/src/components/checkbox/index.d.ts +12 -0
  5. package/lib/fcr-ui-kit/src/components/dialog/class-dialog.d.ts +51 -0
  6. package/lib/fcr-ui-kit/src/components/dialog/confirm-dialog.d.ts +70 -0
  7. package/lib/fcr-ui-kit/src/components/dialog/global-dialog.d.ts +11 -0
  8. package/lib/fcr-ui-kit/src/components/dialog/index.d.ts +68 -0
  9. package/lib/fcr-ui-kit/src/components/dropdown/index.d.ts +58 -0
  10. package/lib/fcr-ui-kit/src/components/input/index.d.ts +69 -0
  11. package/lib/fcr-ui-kit/src/components/input-number/index.d.ts +69 -0
  12. package/lib/fcr-ui-kit/src/components/pagination/index.d.ts +27 -0
  13. package/lib/fcr-ui-kit/src/components/popover/index.d.ts +47 -0
  14. package/lib/fcr-ui-kit/src/components/progress/index.d.ts +11 -0
  15. package/lib/fcr-ui-kit/src/components/radio/index.d.ts +21 -0
  16. package/lib/fcr-ui-kit/src/components/slider/index.d.ts +22 -0
  17. package/lib/fcr-ui-kit/src/components/sound-player/index.d.ts +6 -0
  18. package/lib/fcr-ui-kit/src/components/svg-img/clickable-icon.d.ts +25 -0
  19. package/lib/fcr-ui-kit/src/components/svg-img/index.d.ts +15 -0
  20. package/lib/fcr-ui-kit/src/components/svg-img/mic.d.ts +5 -0
  21. package/lib/fcr-ui-kit/src/components/svg-img/svg-dict.d.ts +12 -0
  22. package/lib/fcr-ui-kit/src/components/svg-img/type.d.ts +195 -0
  23. package/lib/fcr-ui-kit/src/components/svga-player/index.d.ts +15 -0
  24. package/lib/fcr-ui-kit/src/components/svga-player/svga-types.d.ts +1 -0
  25. package/lib/fcr-ui-kit/src/components/table/index.d.ts +9 -0
  26. package/lib/fcr-ui-kit/src/components/tabs/index.d.ts +14 -0
  27. package/lib/fcr-ui-kit/src/components/textarea/helper.d.ts +2 -0
  28. package/lib/fcr-ui-kit/src/components/textarea/index.d.ts +100 -0
  29. package/lib/fcr-ui-kit/src/components/toast/index.d.ts +122 -0
  30. package/lib/fcr-ui-kit/src/components/tooltip/dialog.d.ts +19 -0
  31. package/lib/fcr-ui-kit/src/components/tooltip/index.d.ts +89 -0
  32. package/lib/fcr-ui-kit/src/components/tooltip/info.d.ts +6 -0
  33. package/lib/fcr-ui-kit/src/components/volume/index.d.ts +8 -0
  34. package/lib/fcr-ui-kit/src/utils/click-anywhere.d.ts +1 -0
  35. package/lib/fcr-ui-kit/src/utils/hooks/animations.d.ts +14 -0
  36. package/lib/fcr-ui-kit/src/utils/hooks/use-click-anywhere.d.ts +2 -0
  37. package/lib/fcr-ui-kit/src/utils/tailwindcss.d.ts +3 -0
  38. package/lib/fcr-ui-scene/src/app.d.ts +5 -0
  39. package/lib/fcr-ui-scene/src/configs/base-theme.d.ts +391 -0
  40. package/lib/fcr-ui-scene/src/configs/base-ui.d.ts +12 -0
  41. package/lib/fcr-ui-scene/src/containers/action-bar/chat/index.d.ts +3 -0
  42. package/lib/fcr-ui-scene/src/containers/action-bar/cloud/index.d.ts +3 -0
  43. package/lib/fcr-ui-scene/src/containers/action-bar/device/index.d.ts +9 -0
  44. package/lib/fcr-ui-scene/src/containers/action-bar/index.d.ts +24 -0
  45. package/lib/fcr-ui-scene/src/containers/action-bar/leave/index.d.ts +4 -0
  46. package/lib/fcr-ui-scene/src/containers/action-bar/participants/index.d.ts +5 -0
  47. package/lib/fcr-ui-scene/src/containers/action-bar/raise-hands/index.d.ts +3 -0
  48. package/lib/fcr-ui-scene/src/containers/action-bar/record/index.d.ts +3 -0
  49. package/lib/fcr-ui-scene/src/containers/action-bar/screen-share/index.d.ts +3 -0
  50. package/lib/fcr-ui-scene/src/containers/action-bar/setting/index.d.ts +3 -0
  51. package/lib/fcr-ui-scene/src/containers/action-bar/toolbox/index.d.ts +3 -0
  52. package/lib/fcr-ui-scene/src/containers/action-bar/whiteboard/index.d.ts +3 -0
  53. package/lib/fcr-ui-scene/src/containers/breakout-room/ask-help-list.d.ts +10 -0
  54. package/lib/fcr-ui-scene/src/containers/breakout-room/broadcast-panel.d.ts +4 -0
  55. package/lib/fcr-ui-scene/src/containers/breakout-room/create-panel.d.ts +4 -0
  56. package/lib/fcr-ui-scene/src/containers/breakout-room/group-info-panel.d.ts +2 -0
  57. package/lib/fcr-ui-scene/src/containers/breakout-room/group-panel.d.ts +5 -0
  58. package/lib/fcr-ui-scene/src/containers/breakout-room/group-status-panel.d.ts +2 -0
  59. package/lib/fcr-ui-scene/src/containers/breakout-room/grouping.d.ts +15 -0
  60. package/lib/fcr-ui-scene/src/containers/breakout-room/index.d.ts +3 -0
  61. package/lib/fcr-ui-scene/src/containers/breakout-room/search-panel.d.ts +5 -0
  62. package/lib/fcr-ui-scene/src/containers/breakout-room/wizard.d.ts +6 -0
  63. package/lib/fcr-ui-scene/src/containers/cloud/dialog-header.d.ts +3 -0
  64. package/lib/fcr-ui-scene/src/containers/cloud/index.d.ts +6 -0
  65. package/lib/fcr-ui-scene/src/containers/cloud/personal.d.ts +3 -0
  66. package/lib/fcr-ui-scene/src/containers/cloud/public.d.ts +4 -0
  67. package/lib/fcr-ui-scene/src/containers/common/interact-labels.d.ts +6 -0
  68. package/lib/fcr-ui-scene/src/containers/device-pretest/basic-settings.d.ts +4 -0
  69. package/lib/fcr-ui-scene/src/containers/device-pretest/beauty-filter.d.ts +2 -0
  70. package/lib/fcr-ui-scene/src/containers/device-pretest/beauty-slider.d.ts +2 -0
  71. package/lib/fcr-ui-scene/src/containers/device-pretest/device-select.d.ts +4 -0
  72. package/lib/fcr-ui-scene/src/containers/device-pretest/index.d.ts +4 -0
  73. package/lib/fcr-ui-scene/src/containers/device-pretest/mirror-toggle.d.ts +4 -0
  74. package/lib/fcr-ui-scene/src/containers/device-pretest/video-portal.d.ts +2 -0
  75. package/lib/fcr-ui-scene/src/containers/device-pretest/virtual-background.d.ts +4 -0
  76. package/lib/fcr-ui-scene/src/containers/device-settings/audio-settings.d.ts +2 -0
  77. package/lib/fcr-ui-scene/src/containers/device-settings/dialog-wrapper.d.ts +2 -0
  78. package/lib/fcr-ui-scene/src/containers/device-settings/index.d.ts +3 -0
  79. package/lib/fcr-ui-scene/src/containers/device-settings/video-settings.d.ts +2 -0
  80. package/lib/fcr-ui-scene/src/containers/dialog/class-info.d.ts +3 -0
  81. package/lib/fcr-ui-scene/src/containers/dialog/confirm.d.ts +3 -0
  82. package/lib/fcr-ui-scene/src/containers/dialog/index.d.ts +2 -0
  83. package/lib/fcr-ui-scene/src/containers/layout/cover-view.d.ts +2 -0
  84. package/lib/fcr-ui-scene/src/containers/layout/gallery-view.d.ts +3 -0
  85. package/lib/fcr-ui-scene/src/containers/layout/presentation-view.d.ts +3 -0
  86. package/lib/fcr-ui-scene/src/containers/loading/index.d.ts +3 -0
  87. package/lib/fcr-ui-scene/src/containers/participants/dialog.d.ts +2 -0
  88. package/lib/fcr-ui-scene/src/containers/participants/index.d.ts +5 -0
  89. package/lib/fcr-ui-scene/src/containers/status-bar/class-duration/index.d.ts +3 -0
  90. package/lib/fcr-ui-scene/src/containers/status-bar/fullscreen/index.d.ts +3 -0
  91. package/lib/fcr-ui-scene/src/containers/status-bar/index.d.ts +4 -0
  92. package/lib/fcr-ui-scene/src/containers/status-bar/layout-switch/index.d.ts +22 -0
  93. package/lib/fcr-ui-scene/src/containers/status-bar/network/index.d.ts +4 -0
  94. package/lib/fcr-ui-scene/src/containers/status-bar/record-status/index.d.ts +3 -0
  95. package/lib/fcr-ui-scene/src/containers/status-bar/room-info/index.d.ts +4 -0
  96. package/lib/fcr-ui-scene/src/containers/status-bar/share/index.d.ts +3 -0
  97. package/lib/fcr-ui-scene/src/containers/status-bar/widgets/index.d.ts +3 -0
  98. package/lib/fcr-ui-scene/src/containers/stream-window/context.d.ts +52 -0
  99. package/lib/fcr-ui-scene/src/containers/stream-window/index.d.ts +3 -0
  100. package/lib/fcr-ui-scene/src/containers/video-player/index.d.ts +2 -0
  101. package/lib/fcr-ui-scene/src/containers/video-player/players.d.ts +3 -0
  102. package/lib/fcr-ui-scene/src/containers/video-player/tools-overlay.d.ts +1 -0
  103. package/lib/fcr-ui-scene/src/containers/widget/break-out-room/index.d.ts +2 -0
  104. package/lib/fcr-ui-scene/src/containers/widget/draggable-wrapper/index.d.ts +7 -0
  105. package/lib/fcr-ui-scene/src/containers/widget/helpers.d.ts +40 -0
  106. package/lib/fcr-ui-scene/src/containers/widget/hooks.d.ts +21 -0
  107. package/lib/fcr-ui-scene/src/containers/widget/index.d.ts +7 -0
  108. package/lib/fcr-ui-scene/src/containers/widget/participants/index.d.ts +2 -0
  109. package/lib/fcr-ui-scene/src/extension/board.d.ts +73 -0
  110. package/lib/fcr-ui-scene/src/extension/edu-tool.d.ts +57 -0
  111. package/lib/fcr-ui-scene/src/extension/events.d.ts +91 -0
  112. package/lib/fcr-ui-scene/src/extension/type.d.ts +94 -0
  113. package/lib/fcr-ui-scene/src/index.d.ts +39 -0
  114. package/lib/fcr-ui-scene/src/preset.d.ts +1 -0
  115. package/lib/fcr-ui-scene/src/resources/translations/enUs.d.ts +393 -0
  116. package/lib/fcr-ui-scene/src/resources/translations/zhCn.d.ts +398 -0
  117. package/lib/fcr-ui-scene/src/scenarios/classroom.d.ts +2 -0
  118. package/lib/fcr-ui-scene/src/scenarios/layout/index.d.ts +2 -0
  119. package/lib/fcr-ui-scene/src/type.d.ts +347 -0
  120. package/lib/fcr-ui-scene/src/uistores/action-bar.d.ts +58 -0
  121. package/lib/fcr-ui-scene/src/uistores/base.d.ts +58 -0
  122. package/lib/fcr-ui-scene/src/uistores/breakout.d.ts +225 -0
  123. package/lib/fcr-ui-scene/src/uistores/cloud/helper.d.ts +26 -0
  124. package/lib/fcr-ui-scene/src/uistores/cloud/index.d.ts +51 -0
  125. package/lib/fcr-ui-scene/src/uistores/cloud/struct.d.ts +131 -0
  126. package/lib/fcr-ui-scene/src/uistores/context.d.ts +7 -0
  127. package/lib/fcr-ui-scene/src/uistores/device-setting.d.ts +219 -0
  128. package/lib/fcr-ui-scene/src/uistores/gallery-view.d.ts +16 -0
  129. package/lib/fcr-ui-scene/src/uistores/getters.d.ts +39 -0
  130. package/lib/fcr-ui-scene/src/uistores/index.d.ts +47 -0
  131. package/lib/fcr-ui-scene/src/uistores/layout.d.ts +64 -0
  132. package/lib/fcr-ui-scene/src/uistores/notification.d.ts +9 -0
  133. package/lib/fcr-ui-scene/src/uistores/participants.d.ts +48 -0
  134. package/lib/fcr-ui-scene/src/uistores/presentation-view.d.ts +24 -0
  135. package/lib/fcr-ui-scene/src/uistores/status-bar.d.ts +47 -0
  136. package/lib/fcr-ui-scene/src/uistores/stream.d.ts +48 -0
  137. package/lib/fcr-ui-scene/src/uistores/subscription/abstract.d.ts +45 -0
  138. package/lib/fcr-ui-scene/src/uistores/subscription/index.d.ts +13 -0
  139. package/lib/fcr-ui-scene/src/uistores/subscription/main-room.d.ts +14 -0
  140. package/lib/fcr-ui-scene/src/uistores/subscription/type.d.ts +10 -0
  141. package/lib/fcr-ui-scene/src/uistores/type.d.ts +86 -0
  142. package/lib/fcr-ui-scene/src/uistores/widget.d.ts +46 -0
  143. package/lib/fcr-ui-scene/src/utils/asset.d.ts +1 -0
  144. package/lib/fcr-ui-scene/src/utils/check.d.ts +7 -0
  145. package/lib/fcr-ui-scene/src/utils/clamp-bounds.d.ts +14 -0
  146. package/lib/fcr-ui-scene/src/utils/config-loader.d.ts +7 -0
  147. package/lib/fcr-ui-scene/src/utils/grid/index.d.ts +9 -0
  148. package/lib/fcr-ui-scene/src/utils/hooks/use-authorization.d.ts +5 -0
  149. package/lib/fcr-ui-scene/src/utils/hooks/use-device-switch.d.ts +29 -0
  150. package/lib/fcr-ui-scene/src/utils/hooks/use-drag-position.d.ts +21 -0
  151. package/lib/fcr-ui-scene/src/utils/hooks/use-network.d.ts +17 -0
  152. package/lib/fcr-ui-scene/src/utils/hooks/use-pin-stream.d.ts +4 -0
  153. package/lib/fcr-ui-scene/src/utils/hooks/use-rnd-position.d.ts +24 -0
  154. package/lib/fcr-ui-scene/src/utils/hooks/use-store.d.ts +1 -0
  155. package/lib/fcr-ui-scene/src/utils/hooks/use-video-renderable.d.ts +3 -0
  156. package/lib/fcr-ui-scene/src/utils/hooks/use-z-index.d.ts +8 -0
  157. package/lib/fcr-ui-scene/src/utils/index.d.ts +7 -0
  158. package/lib/fcr-ui-scene/src/utils/launch-options-holder.d.ts +10 -0
  159. package/lib/fcr-ui-scene/src/utils/rtc-extensions.d.ts +29 -0
  160. package/lib/fcr-ui-scene/src/utils/short-name.d.ts +1 -0
  161. package/lib/fcr-ui-scene/src/utils/stream/index.d.ts +3 -0
  162. package/lib/fcr-ui-scene/src/utils/stream/state-keeper.d.ts +18 -0
  163. package/lib/fcr-ui-scene/src/utils/stream/struct.d.ts +67 -0
  164. package/lib/fcr-ui-scene/src/utils/z-index-controller.d.ts +9 -0
  165. package/lib/fcr-ui-scene/tailwind.config.d.ts +1 -0
  166. package/lib/log.worker.bundle.worker.js.LICENSE.txt +1 -0
  167. package/lib/scene.bundle.js +2 -0
  168. package/lib/scene.bundle.js.LICENSE.txt +334 -0
  169. package/package.json +95 -0
@@ -0,0 +1,47 @@
1
+ import { EduUIStoreBase } from './base';
2
+ import { RecordStatus } from 'agora-edu-core';
3
+ import { AGNetworkQuality } from 'agora-rte-sdk';
4
+ export declare class StatusBarUIStore extends EduUIStoreBase {
5
+ get roomName(): string;
6
+ get roomUuid(): string;
7
+ get isHost(): boolean;
8
+ get isStudent(): boolean;
9
+ get localUser(): import("agora-edu-core").EduUserStruct | undefined;
10
+ /**
11
+ * CPU 用量
12
+ * @returns
13
+ */
14
+ get cpuValue(): number;
15
+ /**
16
+ * CPU 负载百分比
17
+ * @returns
18
+ */
19
+ get cpuLabel(): string;
20
+ /**
21
+ * 丢包率
22
+ * @returns
23
+ */
24
+ get packetLoss(): string;
25
+ /**
26
+ * 网络质量状态
27
+ * @returns
28
+ */
29
+ get networkQuality(): AGNetworkQuality;
30
+ /**
31
+ * 网络延时
32
+ * @returns
33
+ */
34
+ get delay(): string;
35
+ get classroomSchedule(): import("agora-edu-core/lib/stores/domain/common/room/type").ClassroomSchedule;
36
+ get afterClass(): boolean;
37
+ get classStatusText(): string;
38
+ get calibratedTime(): number;
39
+ get classTimeDuration(): number;
40
+ private formatCountDown;
41
+ get recordStatus(): RecordStatus;
42
+ get isRecording(): boolean;
43
+ get isRecordStarting(): boolean;
44
+ get isRecordStoped(): boolean;
45
+ onDestroy(): void;
46
+ onInstall(): void;
47
+ }
@@ -0,0 +1,48 @@
1
+ import { AgoraEduClassroomEvent, EduStream } from 'agora-edu-core';
2
+ import { AGRenderMode } from 'agora-rte-sdk';
3
+ import { EduUIStoreBase } from './base';
4
+ import { EduStreamUI } from '@ui-scene/utils/stream/struct';
5
+ declare type RenderableVideoDom = {
6
+ dom: HTMLDivElement;
7
+ renderMode: AGRenderMode;
8
+ };
9
+ export declare class StreamUIStore extends EduUIStoreBase {
10
+ pinnedStreamUuid: string;
11
+ addPin(streamUuid: string): void;
12
+ removePin(): void;
13
+ get pinDisabled(): boolean;
14
+ subSet: Set<string>;
15
+ awardAnims: {
16
+ id: string;
17
+ userUuid: string;
18
+ }[];
19
+ waitingSub: EduStream[];
20
+ doneSub: EduStream[];
21
+ quitSub: EduStream[];
22
+ private _subscribeTask?;
23
+ private _videoDoms;
24
+ streamAwardAnims: (stream: EduStreamUI) => {
25
+ id: string;
26
+ userUuid: string;
27
+ }[];
28
+ get pinnedStream(): EduStreamUI | null;
29
+ get cameraUIStreams(): EduStreamUI[];
30
+ get localStream(): EduStreamUI | undefined;
31
+ subscribeMass(streams: EduStream[]): void;
32
+ updateVideoDom(streamUuid: string, renderableVideoDom: RenderableVideoDom): void;
33
+ removeVideoDom(streamUuid: string): void;
34
+ private _handleSubscribe;
35
+ isUserGranted: (userUuid: string) => boolean;
36
+ remoteStreamVolume: (stream?: EduStreamUI | undefined) => number;
37
+ get localVolume(): number;
38
+ private _handleUserRemoved;
39
+ /**
40
+ * 移除奖励动画
41
+ * @param id
42
+ */
43
+ removeAward(id: string): void;
44
+ _handleRewardsChange(e: AgoraEduClassroomEvent, params: unknown): void;
45
+ onDestroy(): void;
46
+ onInstall(): void;
47
+ }
48
+ export {};
@@ -0,0 +1,45 @@
1
+ import { EduClassroomStore } from 'agora-edu-core';
2
+ import { AgoraMediaControl, AgoraRteScene, AgoraStream, AGRtcChannel, AGRtcConnectionType, Logger } from 'agora-rte-sdk';
3
+ import { IReactionDisposer } from 'mobx';
4
+ import { Getters } from '../getters';
5
+ import { RemoteStreamMuteStatus } from './type';
6
+ export declare abstract class SceneSubscription {
7
+ protected scene: AgoraRteScene;
8
+ protected getters: Getters;
9
+ protected classroomStore: EduClassroomStore;
10
+ logger: Logger;
11
+ protected _disposers: IReactionDisposer[];
12
+ protected _active: boolean;
13
+ protected _rtcChannel: AGRtcChannel;
14
+ protected _mediaControl: AgoraMediaControl;
15
+ protected _muteRegistry: Map<string, {
16
+ muteVideo: boolean;
17
+ muteAudio: boolean;
18
+ }>;
19
+ get active(): boolean;
20
+ constructor(scene: AgoraRteScene, getters: Getters, classroomStore: EduClassroomStore);
21
+ protected abstract handleLocalStreamAdded(streams: AgoraStream[]): void;
22
+ protected abstract handleLocalStreamUpdated(streams: AgoraStream[]): void;
23
+ protected abstract handleLocalStreamRemoved(streams: AgoraStream[]): void;
24
+ protected abstract handleRemoteStreamAdded(streams: AgoraStream[]): void;
25
+ protected abstract handleRemoteStreamUpdated(streams: AgoraStream[]): void;
26
+ protected abstract handleRemoteStreamRemoved(streams: AgoraStream[]): void;
27
+ setActive(active: boolean): void;
28
+ destroy(): void;
29
+ printStat(): void;
30
+ private _handleUserRemoved;
31
+ protected putRegistry(streamUuid: string, { muteVideo, muteAudio }: {
32
+ muteVideo?: boolean;
33
+ muteAudio?: boolean;
34
+ }): void;
35
+ protected removeRegistry(streamUuid: string): void;
36
+ protected isMuted(stream: AgoraStream): {
37
+ muteLocalVideo: boolean;
38
+ muteLocalAudio: boolean;
39
+ muteRemoteAudio: boolean;
40
+ };
41
+ protected muteRemoteStream(scene: AgoraRteScene, stream: AgoraStream, muteStatus: RemoteStreamMuteStatus): RemoteStreamMuteStatus;
42
+ protected getStreamConnType(stream: AgoraStream): AGRtcConnectionType;
43
+ protected muteLocalStream(scene: AgoraRteScene, stream: AgoraStream): void;
44
+ protected muteRemoteStreams(scene: AgoraRteScene, streams: AgoraStream[]): void;
45
+ }
@@ -0,0 +1,13 @@
1
+ import { AgoraRteScene } from 'agora-rte-sdk';
2
+ import { SceneSubscription } from './abstract';
3
+ import { EduUIStoreBase } from '../base';
4
+ export declare class SubscriptionUIStore extends EduUIStoreBase {
5
+ private _sceneSubscriptions;
6
+ setActive(sceneId: string): void;
7
+ createSceneSubscription(scene: AgoraRteScene): SceneSubscription | undefined;
8
+ removeSceneSubscription(scene: AgoraRteScene): void;
9
+ clearSubscription(): void;
10
+ printStat(): void;
11
+ onInstall(): void;
12
+ onDestroy(): void;
13
+ }
@@ -0,0 +1,14 @@
1
+ import { AgoraStream } from 'agora-rte-sdk';
2
+ import { SceneSubscription } from './abstract';
3
+ export declare class MainRoomSubscription extends SceneSubscription {
4
+ protected handleLocalStreamAdded(streams: AgoraStream[]): void;
5
+ protected handleLocalStreamUpdated(streams: AgoraStream[]): void;
6
+ protected handleLocalStreamRemoved(streams: AgoraStream[]): void;
7
+ protected handleRemoteStreamAdded(streams: AgoraStream[]): void;
8
+ protected handleRemoteStreamUpdated(streams: AgoraStream[]): void;
9
+ protected handleRemoteStreamRemoved(streams: AgoraStream[]): void;
10
+ get active(): boolean;
11
+ setActive(active: boolean): void;
12
+ protected unsubscribeAll(): void;
13
+ protected subscribe(): void;
14
+ }
@@ -0,0 +1,10 @@
1
+ import { AgoraRteVideoSourceType, AGRtcConnectionType } from 'agora-rte-sdk';
2
+ export declare type RemoteStreamMuteStatus = {
3
+ muteVideo?: boolean;
4
+ muteAudio?: boolean;
5
+ };
6
+ export declare type LocalVideoStreamSubscribeOption = {
7
+ mute: boolean;
8
+ connectionType: AGRtcConnectionType;
9
+ sourceType: AgoraRteVideoSourceType;
10
+ };
@@ -0,0 +1,86 @@
1
+ import { CloudDriveResourceUploadStatus } from 'agora-edu-core';
2
+ export declare enum Layout {
3
+ ListOnTop = "list-on-top",
4
+ ListOnRight = "list-on-right",
5
+ Grid = "grid"
6
+ }
7
+ export declare type StreamWindowPlacement = 'main-view' | 'list-view';
8
+ export declare type DialogType = 'confirm' | 'class-info';
9
+ export declare type CustomMessageData<T> = {
10
+ cmd: CustomMessageCommandType;
11
+ data: T;
12
+ };
13
+ export declare enum CustomMessageCommandType {
14
+ deviceSwitch = "deviceSwitch",
15
+ deviceSwitchBatch = "deviceSwitchBatch",
16
+ handsUp = "handsUp",
17
+ handsUpAll = "handsUpAll"
18
+ }
19
+ export declare type CustomMessageDeviceSwitchType = {
20
+ deviceState: CustomMessageDeviceState;
21
+ deviceType: CustomMessageDeviceType;
22
+ };
23
+ export declare enum CustomMessageDeviceType {
24
+ camera = 1,
25
+ mic = 2
26
+ }
27
+ export declare enum CustomMessageDeviceState {
28
+ close = 0,
29
+ open = 1
30
+ }
31
+ export declare type CustomMessageHandsUpType = {
32
+ userUuid: string;
33
+ state: CustomMessageHandsUpState;
34
+ };
35
+ export declare enum CustomMessageHandsUpState {
36
+ lowerHand = 0,
37
+ raiseHand = 1
38
+ }
39
+ export declare type CustomMessageHandsUpAllType = {
40
+ operation: CustomMessageHandsUpState;
41
+ };
42
+ export declare type CommonDialogType<T = unknown> = {
43
+ id?: string;
44
+ } & T;
45
+ export declare enum DeviceSwitchDialogId {
46
+ StartVideo = "start-video",
47
+ Unmute = "unmute"
48
+ }
49
+ export declare const h5Type = "ah5";
50
+ export declare const linkType = "alf";
51
+ export declare const imageTypes: string[];
52
+ export declare const mediaVideoTypes: string[];
53
+ export declare const mediaAudioTypes: string[];
54
+ export declare const convertableTypes: string[];
55
+ export declare const convertableDynamicTypes: string[];
56
+ export declare const supportedTypes: string[];
57
+ export interface UploadItem {
58
+ resourceUuid: string;
59
+ iconType?: string;
60
+ fileName?: string;
61
+ fileSize?: string;
62
+ currentProgress?: number;
63
+ status: CloudDriveResourceUploadStatus;
64
+ }
65
+ export declare const MimeTypesKind: Record<string, string>;
66
+ export declare type BoardMediaWindowConfig = {
67
+ resourceUuid: string;
68
+ resourceUrl: string;
69
+ title: string;
70
+ mimeType: string;
71
+ };
72
+ export declare type BoardH5WindowConfig = {
73
+ resourceUuid: string;
74
+ resourceUrl: string;
75
+ title: string;
76
+ };
77
+ export declare type WebviewOpenParams = {
78
+ resourceUuid: string;
79
+ url: string;
80
+ title: string;
81
+ };
82
+ export declare type StreamMediaPlayerOpenParams = {
83
+ resourceUuid: string;
84
+ url: string;
85
+ title: string;
86
+ };
@@ -0,0 +1,46 @@
1
+ import { FcrUISceneWidget } from 'agora-common-libs';
2
+ import { AgoraWidgetTrack } from 'agora-edu-core';
3
+ import { EduUIStoreBase } from './base';
4
+ export declare class WidgetUIStore extends EduUIStoreBase {
5
+ private _defaultActiveWidgetIds;
6
+ private _registeredWidgets;
7
+ private _widgetInstances;
8
+ private _stateListener;
9
+ get ready(): boolean;
10
+ get registeredWidgetNames(): string[];
11
+ get widgetInstanceList(): FcrUISceneWidget[];
12
+ get z0Widgets(): FcrUISceneWidget[];
13
+ get z10Widgets(): FcrUISceneWidget[];
14
+ createWidget(widgetId: string, defaults?: {
15
+ properties?: Record<string, any>;
16
+ userProperties?: Record<string, any>;
17
+ }): void;
18
+ destroyWidget(widgetId: string): void;
19
+ setWidgetActive(widgetId: string, defaults?: {
20
+ properties?: Record<string, any>;
21
+ userProperties?: Record<string, any>;
22
+ trackProperties?: AgoraWidgetTrack;
23
+ }): void;
24
+ setWidgetInactive(widgetId: string): void;
25
+ private _extractWidgetNameId;
26
+ private _handleWidgetActive;
27
+ private _handleWidgetInactive;
28
+ private _handlePropertiesUpdate;
29
+ private _handleUserPropertiesUpdate;
30
+ private _callWidgetCreate;
31
+ private _callWidgetSetInstanceId;
32
+ private _callWidgetPropertiesUpdate;
33
+ private _callWidgetUserPropertiesUpdate;
34
+ private _callWidgetDestroy;
35
+ private _callWidgetInstall;
36
+ private _callWidgetUninstall;
37
+ private _installWidgets;
38
+ private _uninstallWidgets;
39
+ private _handleBecomeActive;
40
+ private _handleBecomeInactive;
41
+ private _getEnabledWidgets;
42
+ private _createUiCapable;
43
+ private _handlePollActiveStateChanged;
44
+ onInstall(): void;
45
+ onDestroy(): void;
46
+ }
@@ -0,0 +1 @@
1
+ export declare const getAssetURL: (relativeURL: string) => any;
@@ -0,0 +1,7 @@
1
+ export declare const isProduction: boolean;
2
+ export declare const isWeb: () => boolean;
3
+ export declare const isElectron: () => boolean;
4
+ export declare const isTeacher: () => boolean;
5
+ export declare const isStudent: () => boolean;
6
+ export declare const isAssistant: () => boolean;
7
+ export declare const isInvisible: () => boolean;
@@ -0,0 +1,14 @@
1
+ export declare type Size = {
2
+ width: number;
3
+ height: number;
4
+ };
5
+ export declare type Boundaries = Size & {
6
+ top: number;
7
+ left: number;
8
+ };
9
+ export declare const clampBounds: (selfBoundaries: Boundaries, containerBoundaries: Boundaries) => {
10
+ width: number;
11
+ height: number;
12
+ x: number;
13
+ y: number;
14
+ };
@@ -0,0 +1,7 @@
1
+ import { EduRoomTypeEnum } from 'agora-edu-core';
2
+ import { FcrMultiThemes, FcrUIConfig } from 'agora-common-libs';
3
+ export declare const themes: Record<string, FcrMultiThemes>;
4
+ export declare const uiConfigs: Record<string, FcrUIConfig>;
5
+ export declare const supportedRoomTypes: EduRoomTypeEnum[];
6
+ export declare const loadTheme: (key: string, theme: FcrMultiThemes) => void;
7
+ export declare const loadUIConfig: (roomType: EduRoomTypeEnum, config: FcrUIConfig) => void;
@@ -0,0 +1,9 @@
1
+ export declare const calculateGridMatrix: (totalOfCells: number) => {
2
+ matrix: number[][];
3
+ sequence: {
4
+ x: number;
5
+ y: number;
6
+ }[];
7
+ numOfRows: number;
8
+ numOfCols: number;
9
+ };
@@ -0,0 +1,5 @@
1
+ export declare const useAuthorization: (userUuid: string) => {
2
+ tooltip: string;
3
+ toggleAuthorization: () => void;
4
+ granted: boolean;
5
+ };
@@ -0,0 +1,29 @@
1
+ import { EduStreamUI } from '../stream/struct';
2
+ import { SvgIconEnum } from '@components/svg-img';
3
+ export declare const checkCameraEnabled: (stream?: EduStreamUI | undefined) => boolean | undefined;
4
+ export declare const checkMicEnabled: (stream?: EduStreamUI | undefined) => boolean | undefined;
5
+ export declare const useDeviceSwitch: ({ stream, isLocal, }: {
6
+ stream?: EduStreamUI | undefined;
7
+ isLocal: boolean;
8
+ }) => {
9
+ micIcon: SvgIconEnum;
10
+ micIconColor: {
11
+ iconSecondary?: undefined;
12
+ } | {
13
+ iconSecondary: string;
14
+ };
15
+ cameraIcon: SvgIconEnum;
16
+ cameraIconColor: {
17
+ iconSecondary?: undefined;
18
+ } | {
19
+ iconSecondary: string;
20
+ };
21
+ cameraTooltip: string;
22
+ micTooltip: string;
23
+ micEnabled: boolean | undefined;
24
+ cameraEnabled: boolean | undefined;
25
+ handleCameraClick: () => void;
26
+ handleMicrophoneClick: () => void;
27
+ toggleLocalAudioRecordingDevice: () => Promise<void>;
28
+ toggleLocalCameraDevice: () => Promise<void>;
29
+ };
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ import { Rnd } from 'react-rnd';
3
+ export declare const useDraggablePosition: ({ initPosition, centered, rndInstance, }: {
4
+ initPosition?: {
5
+ x: number;
6
+ y: number;
7
+ } | undefined;
8
+ centered?: boolean | undefined;
9
+ rndInstance: React.RefObject<Rnd | null>;
10
+ }) => {
11
+ position: {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ setPosition: import("react").Dispatch<import("react").SetStateAction<{
16
+ x: number;
17
+ y: number;
18
+ }>>;
19
+ reposition: () => void;
20
+ ref: import("react").MutableRefObject<HTMLDivElement | null>;
21
+ };
@@ -0,0 +1,17 @@
1
+ import { SvgIconEnum } from '@components/svg-img';
2
+ export declare const useNetwork: () => {
3
+ color: string;
4
+ text: string;
5
+ img: any;
6
+ icon: SvgIconEnum;
7
+ } | {
8
+ color: string;
9
+ text: string;
10
+ img: any;
11
+ icon: SvgIconEnum;
12
+ } | {
13
+ color: string;
14
+ text: string;
15
+ img: any;
16
+ icon: SvgIconEnum;
17
+ };
@@ -0,0 +1,4 @@
1
+ export declare const usePinStream: () => {
2
+ addPin: (streamUuid: string) => void;
3
+ removePin: () => void;
4
+ };
@@ -0,0 +1,24 @@
1
+ import { Rnd } from 'react-rnd';
2
+ import { Boundaries } from '../clamp-bounds';
3
+ export declare const useRndPosition: (rndInstance: React.RefObject<Rnd | null>) => {
4
+ getPosition: () => {
5
+ x: number;
6
+ y: number;
7
+ } | undefined;
8
+ getSize: () => {
9
+ width: number;
10
+ height: number;
11
+ };
12
+ updatePosition: (position: {
13
+ x: number;
14
+ y: number;
15
+ }) => void;
16
+ updateSize: (size: {
17
+ width: string | number;
18
+ height: string | number;
19
+ }) => void;
20
+ };
21
+ export declare const reposition: (selfBoundaries: Boundaries, oldContainerBoundaries: Boundaries, newContainerBoundaries: Boundaries) => {
22
+ x: number;
23
+ y: number;
24
+ };
@@ -0,0 +1 @@
1
+ export declare const useStore: () => import("../../uistores").SceneUIStore;
@@ -0,0 +1,3 @@
1
+ export declare const useVideoRenderable: () => {
2
+ videoRenderable: boolean;
3
+ };
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { ZIndexController } from '../z-index-controller';
3
+ export declare const ZIndexContext: React.Context<ZIndexController>;
4
+ export declare const useZIndex: (id: string) => {
5
+ zIndex: number | undefined;
6
+ ref: React.MutableRefObject<HTMLDivElement | null>;
7
+ updateZIndex: () => void;
8
+ };
@@ -0,0 +1,7 @@
1
+ export declare const number2Percent: (v: number, fixed?: number) => string;
2
+ export declare const fetchMediaFileByUrl: ({ url, type, }: {
3
+ url: string;
4
+ type: 'image' | 'video';
5
+ }) => Promise<HTMLImageElement | HTMLVideoElement>;
6
+ export declare const formatRoomID: (id: string, separator?: string) => string;
7
+ export declare const getRandomInt: (min: number, max: number) => number;
@@ -0,0 +1,10 @@
1
+ import { FcrTheme, FcrUIConfig } from 'agora-common-libs';
2
+ import { LaunchOptions } from '..';
3
+ declare type Config = Partial<Record<'host' | 'ignoreUrlRegionPrefix' | 'logo' | 'shareUrl' | 'uiConfig' | 'theme' | 'recordOptions' | 'defaultEnableDevice', unknown>>;
4
+ export declare const setLaunchOptions: (launchOptions: LaunchOptions) => void;
5
+ export declare const getLaunchOptions: () => LaunchOptions;
6
+ export declare const setConfig: (config: Config) => void;
7
+ export declare const getConfig: () => Partial<Record<"theme" | "host" | "ignoreUrlRegionPrefix" | "logo" | "shareUrl" | "uiConfig" | "recordOptions" | "defaultEnableDevice", unknown>>;
8
+ export declare const getUiConfig: () => FcrUIConfig;
9
+ export declare const getTheme: () => FcrTheme;
10
+ export {};
@@ -0,0 +1,29 @@
1
+ import { IVirtualBackgroundProcessor } from 'agora-extension-virtual-background';
2
+ import { IBeautyProcessor } from 'agora-extension-beauty-effect';
3
+ import { IAIDenoiserProcessor } from 'agora-extension-ai-denoiser';
4
+ import { ProcessorInitializer } from '../type';
5
+ import { IBaseProcessor, IExtension } from 'agora-rte-extension';
6
+ export declare const builtInExtensions: {
7
+ virtualBackgroundExtension: string;
8
+ beautyEffectExtension: string;
9
+ aiDenoiserExtension: string;
10
+ };
11
+ export declare const setAssetsBaseUrl: (baseUrl: string) => void;
12
+ export declare const initializeBuiltInExtensions: () => {
13
+ virtualBackgroundExtension: {
14
+ name: string;
15
+ instance: IExtension<IBaseProcessor>;
16
+ createProcessor: () => Promise<IVirtualBackgroundProcessor>;
17
+ };
18
+ beautyEffectExtension: {
19
+ name: string;
20
+ instance: IExtension<IBaseProcessor>;
21
+ createProcessor: () => Promise<IBeautyProcessor>;
22
+ };
23
+ aiDenoiserExtension: {
24
+ name: string;
25
+ instance: IExtension<IBaseProcessor>;
26
+ createProcessor: () => Promise<IAIDenoiserProcessor>;
27
+ };
28
+ };
29
+ export declare const getProcessorInitializer: <T extends IBaseProcessor>(name: string) => ProcessorInitializer<T>;
@@ -0,0 +1 @@
1
+ export declare const generateShortUserName: (name: string) => string;
@@ -0,0 +1,3 @@
1
+ import { EduStream, EduUserStruct } from 'agora-edu-core';
2
+ import { AgoraRteVideoSourceType } from 'agora-rte-sdk';
3
+ export declare const extractUserStreams: (users: Map<string, EduUserStruct>, streamByUserUuid: Map<string, Set<string>>, streamByStreamUuid: Map<string, EduStream>, sourceTypes: AgoraRteVideoSourceType[]) => Set<EduStream>;
@@ -0,0 +1,18 @@
1
+ import { AgoraRteMediaSourceState, AgoraRteThread } from 'agora-rte-sdk';
2
+ export declare class ShareStreamStateKeeper extends AgoraRteThread {
3
+ private _timer?;
4
+ private _cancelTimer?;
5
+ private _timeout;
6
+ private _currentState;
7
+ private _targetState;
8
+ syncTo: (targetState: AgoraRteMediaSourceState) => Promise<void>;
9
+ constructor(syncTo: (targetState: AgoraRteMediaSourceState) => Promise<void>);
10
+ onExecution(): Promise<void>;
11
+ setShareScreenState(state: AgoraRteMediaSourceState): void;
12
+ run(): void;
13
+ stop(): void;
14
+ private _increaseTimeout;
15
+ private _runImmediately;
16
+ private _wait;
17
+ private _cancelWait;
18
+ }
@@ -0,0 +1,67 @@
1
+ import { EduRoleTypeEnum, EduStream } from 'agora-edu-core';
2
+ import { AgoraFromUser } from 'agora-rte-sdk';
3
+ export declare type VideoPlacement = 'Window' | 'Bar' | 'Setting' | 'Gallery';
4
+ /**
5
+ * 业务流 UI 对象
6
+ */
7
+ export declare class EduStreamUI {
8
+ private _renderAt;
9
+ readonly stream: EduStream;
10
+ constructor(stream: EduStream);
11
+ get userName(): string;
12
+ get shortUserName(): string;
13
+ get isVideoDeviceEnabled(): boolean;
14
+ get isVideoStreamPublished(): boolean;
15
+ get isMicDeviceEnabled(): boolean;
16
+ get isMicStreamPublished(): boolean;
17
+ get fromUser(): AgoraFromUser;
18
+ get isMirrorMode(): boolean;
19
+ get role(): EduRoleTypeEnum;
20
+ get isLocal(): boolean;
21
+ get renderAt(): VideoPlacement;
22
+ setRenderAt(at: VideoPlacement): void;
23
+ }
24
+ export interface StreamBounds {
25
+ readonly x: number;
26
+ readonly y: number;
27
+ readonly width: number;
28
+ readonly height: number;
29
+ readonly top: number;
30
+ readonly right: number;
31
+ readonly bottom: number;
32
+ readonly left: number;
33
+ [key: string]: number;
34
+ }
35
+ /**
36
+ * 视频流占位符类型
37
+ */
38
+ export declare enum CameraPlaceholderType {
39
+ /**
40
+ * 摄像头打开
41
+ */
42
+ none = "none",
43
+ /**
44
+ * 设备正在打开
45
+ */
46
+ loading = "loading",
47
+ /**
48
+ * 摄像头关闭
49
+ */
50
+ muted = "muted",
51
+ /**
52
+ * 摄像头损坏
53
+ */
54
+ broken = "broken",
55
+ /**
56
+ * 摄像头禁用
57
+ */
58
+ disabled = "disabled",
59
+ /**
60
+ * 老师不在教室
61
+ */
62
+ notpresent = "notpresent",
63
+ /**
64
+ * 老师摄像头占位符(大小窗场景)
65
+ */
66
+ nosetup = "nosetup"
67
+ }
@@ -0,0 +1,9 @@
1
+ export declare class ZIndexController {
2
+ private _zIndex;
3
+ private _increment;
4
+ private _zIndexMap;
5
+ get zIndex(): number;
6
+ get zIndexMap(): Map<string, number>;
7
+ getTopZIndex(): number;
8
+ updateZIndex(id: string): void;
9
+ }
@@ -0,0 +1 @@
1
+ export const presets: typeof import("agora-common-libs/presets/tailwind.config.js")[];
@@ -0,0 +1 @@
1
+ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */