fcr-ui-scene 3.3.0 → 3.3.1

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 (149) hide show
  1. package/dist/electron/app.js +148 -0
  2. package/dist/electron/bootstrap-dev.js +51 -0
  3. package/dist/electron/bootstrap-sdk.js +56 -0
  4. package/dist/electron/default-options.js +25 -0
  5. package/dist/electron/env.js +13 -0
  6. package/dist/electron/index.js +20 -0
  7. package/dist/electron/injections.js +702 -0
  8. package/dist/electron/logger.js +66 -0
  9. package/dist/electron/main.js +67 -0
  10. package/dist/electron/plugins/meeting-state.js +39 -0
  11. package/dist/electron/plugins/screenshot.js +49 -0
  12. package/dist/electron/preload.js +36 -0
  13. package/dist/electron/tools.js +66 -0
  14. package/dist/electron/window.js +124 -0
  15. package/lib/common/room-store.d.ts +55 -0
  16. package/lib/common/room-store.js +395 -0
  17. package/lib/creator.js +2 -0
  18. package/lib/electron/app.js +8 -0
  19. package/lib/electron/bootstrap-sdk.js +1 -0
  20. package/lib/electron/injections.d.ts +1 -0
  21. package/lib/electron/injections.js +4 -1
  22. package/lib/electron/preload.js +2 -1
  23. package/lib/modules/Interpreter/add-button/index.css +4 -0
  24. package/lib/modules/Interpreter/add-button/index.d.ts +11 -0
  25. package/lib/modules/Interpreter/add-button/index.js +41 -0
  26. package/lib/modules/Interpreter/config.d.ts +16 -0
  27. package/lib/modules/Interpreter/config.js +17 -0
  28. package/lib/modules/Interpreter/constant.d.ts +44 -0
  29. package/lib/modules/Interpreter/constant.js +60 -0
  30. package/lib/modules/Interpreter/context.d.ts +2 -0
  31. package/lib/modules/Interpreter/context.js +9 -0
  32. package/lib/modules/Interpreter/dialog-content/index.css +33 -0
  33. package/lib/modules/Interpreter/dialog-content/index.d.ts +8 -0
  34. package/lib/modules/Interpreter/dialog-content/index.js +34 -0
  35. package/lib/modules/Interpreter/footer/components/interpreter-btn/index.d.ts +5 -0
  36. package/lib/modules/Interpreter/footer/components/interpreter-btn/index.js +56 -0
  37. package/lib/modules/Interpreter/footer/components/set-btn/index.d.ts +5 -0
  38. package/lib/modules/Interpreter/footer/components/set-btn/index.js +46 -0
  39. package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.d.ts +6 -0
  40. package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.js +28 -0
  41. package/lib/modules/Interpreter/footer/index.css +10 -0
  42. package/lib/modules/Interpreter/footer/index.d.ts +3 -0
  43. package/lib/modules/Interpreter/footer/index.js +35 -0
  44. package/lib/modules/Interpreter/index.css +8 -0
  45. package/lib/modules/Interpreter/index.d.ts +21 -0
  46. package/lib/modules/Interpreter/index.js +110 -0
  47. package/lib/modules/Interpreter/interpreter-list/index.css +21 -0
  48. package/lib/modules/Interpreter/interpreter-list/index.d.ts +3 -0
  49. package/lib/modules/Interpreter/interpreter-list/index.js +65 -0
  50. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +31 -0
  51. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +11 -0
  52. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +141 -0
  53. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ar.png +0 -0
  54. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_cn.png +0 -0
  55. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_de.png +0 -0
  56. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_en.png +0 -0
  57. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_es.png +0 -0
  58. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_fr.png +0 -0
  59. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_hi.png +0 -0
  60. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_id.png +0 -0
  61. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_it.png +0 -0
  62. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_jp.png +0 -0
  63. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ko.png +0 -0
  64. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ms.png +0 -0
  65. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_pt.png +0 -0
  66. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ru.png +0 -0
  67. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_th.png +0 -0
  68. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_tr.png +0 -0
  69. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_vi.png +0 -0
  70. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.d.ts +11 -0
  71. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +119 -0
  72. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +41 -0
  73. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +12 -0
  74. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +118 -0
  75. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.css +34 -0
  76. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +8 -0
  77. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +65 -0
  78. package/lib/modules/Interpreter/loading-wrapper/index.css +53 -0
  79. package/lib/modules/Interpreter/loading-wrapper/index.d.ts +6 -0
  80. package/lib/modules/Interpreter/loading-wrapper/index.js +28 -0
  81. package/lib/modules/Interpreter/store.d.ts +82 -0
  82. package/lib/modules/Interpreter/store.js +1382 -0
  83. package/lib/modules/Interpreter/view.d.ts +3 -0
  84. package/lib/modules/Interpreter/view.js +32 -0
  85. package/lib/modules/action-bar/Interpreter/index.d.ts +6 -0
  86. package/lib/modules/action-bar/Interpreter/index.js +44 -0
  87. package/lib/modules/action-bar/apps/appitems.d.ts +2 -0
  88. package/lib/modules/action-bar/apps/appitems.js +40 -0
  89. package/lib/modules/action-bar/apps/index.css +6 -0
  90. package/lib/modules/action-bar/apps/index.d.ts +4 -0
  91. package/lib/modules/action-bar/apps/index.js +58 -0
  92. package/lib/modules/action-bar/switch-input-language-room/fcr_translateswitch.png +0 -0
  93. package/lib/modules/action-bar/switch-input-language-room/index.css +86 -0
  94. package/lib/modules/action-bar/switch-input-language-room/index.d.ts +17 -0
  95. package/lib/modules/action-bar/switch-input-language-room/index.js +145 -0
  96. package/lib/modules/action-bar/switch-output-language-room/drop-menu.d.ts +1 -0
  97. package/lib/modules/action-bar/switch-output-language-room/drop-menu.js +197 -0
  98. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.css +18 -0
  99. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.d.ts +8 -0
  100. package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.js +59 -0
  101. package/lib/modules/action-bar/switch-output-language-room/index.d.ts +12 -0
  102. package/lib/modules/action-bar/switch-output-language-room/index.js +238 -0
  103. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.css +54 -0
  104. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.d.ts +8 -0
  105. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.js +94 -0
  106. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.css +8 -0
  107. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.d.ts +4 -0
  108. package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.js +31 -0
  109. package/lib/modules/action-bar/switch-output-language-room/notification-bar/dome.png +0 -0
  110. package/lib/modules/action-bar/switch-output-language-room/notification-bar/fcr_translateswitch.png +0 -0
  111. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.css +71 -0
  112. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.d.ts +2 -0
  113. package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.js +82 -0
  114. package/lib/modules/dialog/components/Interpreter/electron.d.ts +2 -0
  115. package/lib/modules/dialog/components/Interpreter/electron.js +72 -0
  116. package/lib/modules/dialog/components/Interpreter/index.css +30 -0
  117. package/lib/modules/dialog/components/Interpreter/index.d.ts +4 -0
  118. package/lib/modules/dialog/components/Interpreter/index.js +61 -0
  119. package/lib/modules/dialog/components/Interpreter/user-queue/index.css +36 -0
  120. package/lib/modules/dialog/components/Interpreter/user-queue/index.d.ts +3 -0
  121. package/lib/modules/dialog/components/Interpreter/user-queue/index.js +47 -0
  122. package/lib/modules/dialog/components/switch-language-channels/electron.d.ts +2 -0
  123. package/lib/modules/dialog/components/switch-language-channels/electron.js +72 -0
  124. package/lib/modules/dialog/components/switch-language-channels/index.css +30 -0
  125. package/lib/modules/dialog/components/switch-language-channels/index.d.ts +4 -0
  126. package/lib/modules/dialog/components/switch-language-channels/index.js +63 -0
  127. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.css +36 -0
  128. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.d.ts +3 -0
  129. package/lib/modules/dialog/components/switch-language-channels/user-queue/index.js +47 -0
  130. package/lib/modules/notification/context.d.ts +2 -0
  131. package/lib/modules/notification/context.js +9 -0
  132. package/lib/modules/notification/index.css +58 -0
  133. package/lib/modules/notification/index.d.ts +15 -0
  134. package/lib/modules/notification/index.js +51 -0
  135. package/lib/modules/notification/interpreter-status/index.css +72 -0
  136. package/lib/modules/notification/interpreter-status/index.d.ts +3 -0
  137. package/lib/modules/notification/interpreter-status/index.js +59 -0
  138. package/lib/modules/notification/store.d.ts +16 -0
  139. package/lib/modules/notification/store.js +127 -0
  140. package/lib/modules/notification/view.d.ts +10 -0
  141. package/lib/modules/notification/view.js +116 -0
  142. package/lib/modules/state-bar/meeting-details.js +4 -3
  143. package/lib/modules/state-bar/store.d.ts +1 -0
  144. package/lib/modules/state-bar/store.js +15 -3
  145. package/lib/modules/state-bar/view.js +6 -4
  146. package/lib/plugins/browser-runtime-plugin.js +4 -1
  147. package/lib/runtime.d.ts +1 -0
  148. package/package.json +5 -5
  149. package/public/index.html +7 -2
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ import './index.css';
3
+ export declare const InterpreterView: FC;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.InterpreterView = void 0;
9
+ var _react = require("react");
10
+ var _mobxReact = require("mobx-react");
11
+ var _context = require("./context");
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+ var _interpreterList = _interopRequireDefault(require("./interpreter-list"));
14
+ var _footer = _interopRequireDefault(require("./footer"));
15
+ require("./index.css");
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ var InterpreterView = exports.InterpreterView = (0, _mobxReact.observer)(function () {
18
+ var _useContext = (0, _react.useContext)(_context.StoreContext),
19
+ setInterpreterListEditState = _useContext.setInterpreterListEditState,
20
+ interpreterUsersEditState = _useContext.interpreterUsersEditState;
21
+ (0, _react.useEffect)(function () {
22
+ return function () {
23
+ if (interpreterUsersEditState) {
24
+ setInterpreterListEditState();
25
+ }
26
+ };
27
+ }, []);
28
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
29
+ className: (0, _classnames["default"])('fcr-simultaneous-interpretation__layout'),
30
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_interpreterList["default"], {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_footer["default"], {})]
31
+ });
32
+ });
@@ -0,0 +1,6 @@
1
+ interface InterpreterPropsType {
2
+ id: string;
3
+ order: number;
4
+ }
5
+ export declare const Interpreter: (props: InterpreterPropsType) => import("react/jsx-runtime").JSX.Element | null;
6
+ export {};
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.Interpreter = void 0;
8
+ var _item = require("../item");
9
+ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
10
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
11
+ var _react = require("react");
12
+ var _context = require("../context");
13
+ var _mobxReact = require("mobx-react");
14
+ var _fcrCore = require("fcr-core");
15
+ var _jsxRuntime = require("react/jsx-runtime");
16
+ var Interpreter = exports.Interpreter = (0, _mobxReact.observer)(function (props) {
17
+ var id = props.id,
18
+ order = props.order;
19
+ var actionStore = (0, _react.useContext)(_context.ActionBarContext);
20
+ var openInterpreterDialog = actionStore.openInterpreterDialog,
21
+ interpreterState = actionStore.interpreterState,
22
+ localUserRole = actionStore.localUserRole;
23
+ if (localUserRole !== _fcrCore.FcrUserRole.HOST) {
24
+ return null;
25
+ }
26
+ var content = interpreterState ? '关闭同声传译' : '开启同声传译';
27
+ var icon = interpreterState ? _type.FcrIconType.FCR_SIMULTANEOUSINTERPRETATION_OFF : _type.FcrIconType.FCR_SIMULTANEOUSINTERPRETATION_ON;
28
+ var title = '同声传译';
29
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
30
+ content: content,
31
+ mouseEnterDelay: 0,
32
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ActionBarItem, {
33
+ id: id,
34
+ order: order,
35
+ onClick: openInterpreterDialog,
36
+ className: "fcr-action-bar-item-wrapper-apps-item",
37
+ icon: icon,
38
+ title: title,
39
+ iconColors: {
40
+ iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
41
+ }
42
+ })
43
+ });
44
+ });
@@ -0,0 +1,2 @@
1
+ import './index.css';
2
+ export declare const Appitems: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/esnext.weak-map.delete-all.js");
10
+ require("core-js/modules/esnext.weak-map.emplace.js");
11
+ require("core-js/modules/web.dom-collections.iterator.js");
12
+ var _typeof = require("@babel/runtime/helpers/typeof");
13
+ Object.defineProperty(exports, "__esModule", {
14
+ value: true
15
+ });
16
+ exports.Appitems = void 0;
17
+ var _react = _interopRequireWildcard(require("react"));
18
+ var _mobxReact = require("mobx-react");
19
+ var _Interpreter = require("../Interpreter");
20
+ var _context = require("../context");
21
+ require("./index.css");
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
25
+ // import { Subtitle } from '../subtitle';
26
+ // import { LiveTranslate } from '../live-translate';
27
+ // import { Effective } from '../effective';
28
+
29
+ var Appitems = exports.Appitems = (0, _mobxReact.observer)(function () {
30
+ var _useContext = (0, _react.useContext)(_context.ActionBarContext),
31
+ hasEnableInterpreterPermission = _useContext.hasEnableInterpreterPermission,
32
+ hasDisableInterpreterPermission = _useContext.hasDisableInterpreterPermission;
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
34
+ className: "action-bar-apps-container",
35
+ children: hasEnableInterpreterPermission && hasDisableInterpreterPermission && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Interpreter.Interpreter, {
36
+ id: "Interpreter",
37
+ order: 24
38
+ }, "Interpreter")
39
+ });
40
+ });
@@ -0,0 +1,6 @@
1
+ .action-bar-apps-container {
2
+ display: flex;
3
+ flex-wrap: nowrap;
4
+ padding: 20px;
5
+ justify-content: space-around;
6
+ }
@@ -0,0 +1,4 @@
1
+ export declare const Apps: ({ id, order }: {
2
+ id: string;
3
+ order: number;
4
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Apps = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
11
+ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
12
+ var _item = require("../item");
13
+ var _react = require("react");
14
+ var _context = require("../context");
15
+ var _mobxReact = require("mobx-react");
16
+ var _appitems = require("./appitems");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ var Apps = exports.Apps = (0, _mobxReact.observer)(function (_ref) {
19
+ var id = _ref.id,
20
+ order = _ref.order;
21
+ var actionStore = (0, _react.useContext)(_context.ActionBarContext);
22
+ var localUserRole = actionStore.localUserRole,
23
+ hasStartScreenSharePermission = actionStore.hasStartScreenSharePermission;
24
+ var _useState = (0, _react.useState)(false),
25
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
26
+ visibleTooltip = _useState2[0],
27
+ setTooltipVisible = _useState2[1];
28
+ var _useState3 = (0, _react.useState)(false),
29
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
30
+ visibleMenu = _useState4[0],
31
+ setMenuVisible = _useState4[1];
32
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
33
+ content: 'Apps',
34
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ActionBarItemWithPopover, {
35
+ popoverProps: {
36
+ trigger: 'click',
37
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_appitems.Appitems, {}),
38
+ overlayClassName: 'attendee__footer-more-actions',
39
+ overlayInnerStyle: {
40
+ boxShadow: 'var(--fcr_web_light_dropup_m)',
41
+ border: 'none',
42
+ width: '303px',
43
+ height: '110px'
44
+ },
45
+ onVisibleChange: function onVisibleChange(visible) {
46
+ (function () {});
47
+ }
48
+ },
49
+ id: id,
50
+ order: order,
51
+ icon: _type.FcrIconType.FCR_MOREAPP,
52
+ title: 'Apps',
53
+ iconColors: {
54
+ iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
55
+ }
56
+ })
57
+ });
58
+ });
@@ -0,0 +1,86 @@
1
+ .switch-language-channels-bar {
2
+ width: 100%;
3
+ height: 60px;
4
+ display: flex;
5
+ justify-content: space-between;
6
+ align-items: center;
7
+ background: var(--fcr_ui_scene_white8);
8
+ border-radius: 30px;
9
+ padding: 5px;
10
+ }
11
+ .switch-language-channels-action {
12
+ /* width: 50%; */
13
+ height: 100%;
14
+ padding: 3px;
15
+ }
16
+ .switch-language-channels-action-bg {
17
+ display: flex;
18
+ justify-content: space-between;
19
+ align-items: center;
20
+ height: 100%;
21
+ width: 100%;
22
+ padding: 8.5px 19.5px;
23
+ }
24
+
25
+ .switch-language-channels-action-icon {
26
+ width: 25px;
27
+ height: 25px;
28
+ border-radius: 50%;
29
+ background: rgba(63, 59, 83, 1);
30
+ }
31
+
32
+ .switch-language-channels-action__checked {
33
+ border-radius: 25px;
34
+ border: 1px solid var(--fcr_ui_scene_card3);
35
+ border-radius: 25px;
36
+ }
37
+ .switch-language-channels-action__checked .switch-language-channels-action-bg {
38
+ border-radius: 25px;
39
+ background: linear-gradient(
40
+ 180deg,
41
+ #00cae0 0%,
42
+ #15d5ea 4.76%,
43
+ #6ae7f5 8.48%,
44
+ #64e8f7 25.6%,
45
+ #64e8f7 48%,
46
+ #00cae0 77.38%,
47
+ #00cae0 100%
48
+ );
49
+ box-shadow: 0px 4px 4px 0px rgba(4, 173, 191, 1) inset;
50
+ }
51
+ .switch-language-channels-action__checked .switch-language-channels-action-icon {
52
+ background: rgba(217, 217, 217, 1);
53
+ }
54
+ .switch-language-channels-action-text {
55
+ color: var(--fcr_ui_scene_black10);
56
+ font-size: 20px;
57
+ margin-left: 8px;
58
+ }
59
+
60
+ .switch-language-channels-action__checked .switch-language-channels-action-text {
61
+ color: var(--fcr_ui_scene_white10);
62
+ }
63
+ .switch-language-channels-guide-content {
64
+ display: flex;
65
+ justify-content: space-between;
66
+ align-items: center;
67
+ }
68
+ .switch-language-channels-guide-content-icon {
69
+ height: 32px;
70
+ width: 32px;
71
+ border-radius: 16px;
72
+ background: var(--fcr_ui_scene_card3);
73
+ display: flex;
74
+ justify-content: center;
75
+ align-items: center;
76
+ margin-right: 12px;
77
+ }
78
+ .switch-language-channels-guide-content-text {
79
+ width: 200px;
80
+ line-height: 19.5px;
81
+ font-size: 13px;
82
+ }
83
+
84
+ .switch-language-loading {
85
+ border-radius: 30px;
86
+ }
@@ -0,0 +1,17 @@
1
+ import { FcrInterpreterUserInfo, FcrLanguage } from 'fcr-core/lib/room-control/interpreter-control/types';
2
+ import './index.css';
3
+ interface SwitchInputLanguageRoomProps {
4
+ interpreter: FcrInterpreterUserInfo;
5
+ }
6
+ export declare enum OpeneStateType {
7
+ CLOSE = 0,
8
+ OPEN = 1
9
+ }
10
+ export interface OptionsType {
11
+ label: string;
12
+ imgSrc: string;
13
+ value: FcrLanguage;
14
+ openeState: OpeneStateType;
15
+ }
16
+ export declare const SwitchInputLanguageRoom: (props: SwitchInputLanguageRoomProps) => import("react/jsx-runtime").JSX.Element;
17
+ export {};
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.SwitchInputLanguageRoom = exports.OpeneStateType = void 0;
9
+ require("core-js/modules/es.array.find.js");
10
+ require("core-js/modules/es.array.map.js");
11
+ require("core-js/modules/es.object.to-string.js");
12
+ require("core-js/modules/esnext.async-iterator.find.js");
13
+ require("core-js/modules/esnext.async-iterator.map.js");
14
+ require("core-js/modules/esnext.iterator.constructor.js");
15
+ require("core-js/modules/esnext.iterator.find.js");
16
+ require("core-js/modules/esnext.iterator.map.js");
17
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
18
+ var _react = require("react");
19
+ var _mobxReact = require("mobx-react");
20
+ var _reactRnd = require("react-rnd");
21
+ var _classnames = _interopRequireDefault(require("classnames"));
22
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
23
+ var _icon = require("agora-ui-foundation/lib/components/icon");
24
+ var _context = require("../context");
25
+ var _useLanguageConfig = require("../../Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig");
26
+ var _guideTooltip = require("../switch-output-language-room/guide-tooltip");
27
+ var _loadingWrapper = require("../../Interpreter/loading-wrapper");
28
+ require("./index.css");
29
+ var _jsxRuntime = require("react/jsx-runtime");
30
+ var OpeneStateType = exports.OpeneStateType = /*#__PURE__*/function (OpeneStateType) {
31
+ OpeneStateType[OpeneStateType["CLOSE"] = 0] = "CLOSE";
32
+ OpeneStateType[OpeneStateType["OPEN"] = 1] = "OPEN";
33
+ return OpeneStateType;
34
+ }({});
35
+ var SwitchInputLanguageRoom = exports.SwitchInputLanguageRoom = (0, _mobxReact.observer)(function (props) {
36
+ var interpreter = props.interpreter;
37
+ var _useContext = (0, _react.useContext)(_context.ActionBarContext),
38
+ changeInputLanguage = _useContext.changeInputLanguage;
39
+ var getLanguageConfig = (0, _useLanguageConfig.useLanguageConfig)();
40
+ var sourceLanguage = interpreter.sourceLanguage,
41
+ targetLanguage = interpreter.targetLanguage;
42
+ var sourceLanguageConfig = getLanguageConfig(sourceLanguage);
43
+ var targetLanguageConfig = getLanguageConfig(targetLanguage);
44
+ var position = (0, _react.useMemo)(function () {
45
+ var windowWidth = window.innerWidth;
46
+ var width = 210;
47
+ var height = 60;
48
+ var x = windowWidth / 2 - width / 2;
49
+ return {
50
+ x: x,
51
+ y: -66,
52
+ width: width,
53
+ height: height
54
+ };
55
+ }, []);
56
+ var guideContent = (0, _react.useMemo)(function () {
57
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
58
+ className: "switch-language-channels-guide-content",
59
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
60
+ className: "switch-language-channels-guide-content-icon",
61
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
62
+ type: _type.FcrIconType.FCR_INTERPRETATION2,
63
+ size: 25
64
+ })
65
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
66
+ className: "switch-language-channels-guide-content-text",
67
+ children: "\u70B9\u51FB\u8FD9\u91CC\u53EF\u4EE5\u5207\u6362\u8981\u4F20\u8FBE\u7684\u8BED\u8A00\u9891\u9053\uFF0C\u5E76\u8BF7\u786E\u5B9A\u662F\u5426\u5DF2\u6253\u5F00\u9EA6\u514B\u98CE\u3002"
68
+ })]
69
+ });
70
+ }, []);
71
+ var _useState = (0, _react.useState)([{
72
+ label: sourceLanguageConfig.abbr,
73
+ imgSrc: sourceLanguageConfig.imgSrc,
74
+ value: sourceLanguageConfig.value,
75
+ openeState: OpeneStateType.OPEN
76
+ }, {
77
+ label: targetLanguageConfig.abbr,
78
+ imgSrc: targetLanguageConfig.imgSrc,
79
+ value: targetLanguageConfig.value,
80
+ openeState: OpeneStateType.CLOSE
81
+ }]),
82
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
83
+ options = _useState2[0],
84
+ setOptions = _useState2[1];
85
+ var _useState3 = (0, _react.useState)(false),
86
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
87
+ loading = _useState4[0],
88
+ setLoading = _useState4[1];
89
+ var handleClick = function handleClick(value) {
90
+ setLoading(true);
91
+ changeInputLanguage({
92
+ language: value,
93
+ options: options,
94
+ callback: function callback(options) {
95
+ setOptions(options);
96
+ setLoading(false);
97
+ }
98
+ });
99
+ };
100
+ (0, _react.useEffect)(function () {
101
+ handleClick(sourceLanguageConfig.value);
102
+ }, [sourceLanguageConfig]);
103
+ var outputLanguageRoom = (0, _react.useMemo)(function () {
104
+ var _options$find;
105
+ return (_options$find = options.find(function (ele) {
106
+ return ele.openeState === OpeneStateType.OPEN;
107
+ })) === null || _options$find === void 0 ? void 0 : _options$find.value;
108
+ }, [options]);
109
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRnd.Rnd, {
110
+ "default": position,
111
+ bounds: "window",
112
+ enableResizing: false,
113
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_loadingWrapper.LoadingWrapper, {
114
+ maskClassName: "switch-language-loading",
115
+ loading: loading,
116
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_guideTooltip.GuideTooltip, {
117
+ content: "",
118
+ guideContent: guideContent,
119
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
120
+ className: "switch-language-channels-bar",
121
+ children: options.map(function (ele) {
122
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
123
+ onClick: function onClick() {
124
+ handleClick(ele.value);
125
+ },
126
+ className: (0, _classnames["default"])('switch-language-channels-action', {
127
+ 'switch-language-channels-action__checked': outputLanguageRoom === ele.value
128
+ }),
129
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
130
+ className: "switch-language-channels-action-bg",
131
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
132
+ className: "switch-language-channels-action-icon",
133
+ src: ele.imgSrc
134
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
135
+ className: "switch-language-channels-action-text",
136
+ children: ele.label
137
+ })]
138
+ })
139
+ }, ele.value);
140
+ })
141
+ })
142
+ })
143
+ })
144
+ });
145
+ });
@@ -0,0 +1 @@
1
+ export declare const SecurityMenu: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.for-each.js");
5
+ require("core-js/modules/es.object.define-properties.js");
6
+ require("core-js/modules/es.object.define-property.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
9
+ require("core-js/modules/es.object.keys.js");
10
+ require("core-js/modules/esnext.async-iterator.filter.js");
11
+ require("core-js/modules/esnext.async-iterator.for-each.js");
12
+ require("core-js/modules/esnext.iterator.constructor.js");
13
+ require("core-js/modules/esnext.iterator.filter.js");
14
+ require("core-js/modules/esnext.iterator.for-each.js");
15
+ require("core-js/modules/web.dom-collections.for-each.js");
16
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
+ Object.defineProperty(exports, "__esModule", {
18
+ value: true
19
+ });
20
+ exports.SecurityMenu = void 0;
21
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
22
+ require("core-js/modules/es.array.filter.js");
23
+ require("core-js/modules/es.array.map.js");
24
+ require("core-js/modules/es.array.push.js");
25
+ require("core-js/modules/es.object.to-string.js");
26
+ require("core-js/modules/esnext.async-iterator.map.js");
27
+ require("core-js/modules/esnext.iterator.map.js");
28
+ var _dropMenu = require("agora-ui-foundation/lib/components/drop-menu");
29
+ var _context = require("../context");
30
+ var _react = require("react");
31
+ var _checkbox = require("agora-ui-foundation/lib/components/checkbox");
32
+ var _mobxReact = require("mobx-react");
33
+ var _i18n = require("agora-ui-foundation/lib/i18n");
34
+ var _jsxRuntime = require("react/jsx-runtime");
35
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
36
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
+ var SecurityMenu = exports.SecurityMenu = (0, _mobxReact.observer)(function () {
38
+ var _useContext = (0, _react.useContext)(_context.ActionBarContext),
39
+ isLockRoomEnabled = _useContext.isLockRoomEnabled,
40
+ setLockRoomEnabled = _useContext.setLockRoomEnabled,
41
+ allowChat = _useContext.allowChat,
42
+ setAllowChat = _useContext.setAllowChat,
43
+ allowUnmuteSelfAudio = _useContext.allowUnmuteSelfAudio,
44
+ setAllowUnmuteSelfAudio = _useContext.setAllowUnmuteSelfAudio,
45
+ allowUnmuteSelfVideo = _useContext.allowUnmuteSelfVideo,
46
+ setAllowUnmuteSelfVideo = _useContext.setAllowUnmuteSelfVideo,
47
+ setAllowScreenShare = _useContext.setAllowScreenShare,
48
+ setAllowBoardWrite = _useContext.setAllowBoardWrite,
49
+ isBoardWriteEnabled = _useContext.isBoardWriteEnabled,
50
+ hasLockRoomPermission = _useContext.hasLockRoomPermission,
51
+ hasEnableStartSharePermission = _useContext.hasEnableStartSharePermission,
52
+ hasAllowChatPermission = _useContext.hasAllowChatPermission,
53
+ hasEnableStartAudioPermission = _useContext.hasEnableStartAudioPermission,
54
+ hasEnableStartVideoPermission = _useContext.hasEnableStartVideoPermission,
55
+ hasEnableChangeNamePermission = _useContext.hasEnableChangeNamePermission,
56
+ hasAllowWriteBoardPermission = _useContext.hasAllowWriteBoardPermission,
57
+ isScreenShareAndBoardEnabled = _useContext.isScreenShareAndBoardEnabled;
58
+ var transI18n = (0, _i18n.useI18n)();
59
+ var allActions = [];
60
+ if (hasLockRoomPermission) {
61
+ allActions.push({
62
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
63
+ checked: isLockRoomEnabled(),
64
+ label: transI18n('fmt_screenshare_controlbar_security_list_lock'),
65
+ styleType: "white"
66
+ }),
67
+ key: 'lock_room',
68
+ type: 'primary',
69
+ onButtonClick: function onButtonClick() {
70
+ setLockRoomEnabled(!isLockRoomEnabled());
71
+ }
72
+ });
73
+ }
74
+ allActions.push({
75
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
76
+ checked: false,
77
+ label: transI18n('fmt_security_options_activatewaitingroom'),
78
+ styleType: "white"
79
+ }),
80
+ key: 'enable_waiting_room',
81
+ type: 'disabled',
82
+ onButtonClick: function onButtonClick() {},
83
+ classNames: 'room-control-drop-with-under-line'
84
+ });
85
+ allActions.push({
86
+ title: transI18n('fmt_screenshare_options_allow'),
87
+ key: 'allow_attendee_title',
88
+ type: 'title'
89
+ });
90
+ if (hasEnableStartSharePermission) {
91
+ allActions.push({
92
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
93
+ checked: isScreenShareAndBoardEnabled,
94
+ label: transI18n('fmt_screenshare_screen_and_board'),
95
+ styleType: "white"
96
+ }),
97
+ key: 'share_screen',
98
+ type: 'primary',
99
+ onButtonClick: function onButtonClick() {
100
+ return setAllowScreenShare();
101
+ }
102
+ });
103
+ }
104
+ if (hasAllowWriteBoardPermission) {
105
+ allActions.push({
106
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
107
+ checked: isBoardWriteEnabled,
108
+ label: transI18n('fmt_screenshare_options_editable'),
109
+ styleType: "white"
110
+ }),
111
+ key: 'share_screen',
112
+ type: 'primary',
113
+ onButtonClick: setAllowBoardWrite
114
+ });
115
+ }
116
+ if (hasAllowChatPermission) {
117
+ allActions.push({
118
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
119
+ checked: allowChat(),
120
+ label: transI18n('fmt_chat_label_chat'),
121
+ styleType: "white"
122
+ }),
123
+ key: 'chat',
124
+ type: 'primary',
125
+ onButtonClick: function onButtonClick() {
126
+ setAllowChat(!allowChat());
127
+ }
128
+ });
129
+ }
130
+ if (hasEnableStartAudioPermission) {
131
+ allActions.push({
132
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
133
+ checked: allowUnmuteSelfAudio(),
134
+ label: transI18n('fmt_screenshare_controlbar_security_list_participant_unmute'),
135
+ styleType: "white"
136
+ }),
137
+ key: 'unmute_yourself',
138
+ type: 'primary',
139
+ onButtonClick: function onButtonClick() {
140
+ setAllowUnmuteSelfAudio(!allowUnmuteSelfAudio());
141
+ }
142
+ });
143
+ }
144
+ if (hasEnableStartVideoPermission) {
145
+ allActions.push({
146
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
147
+ checked: allowUnmuteSelfVideo(),
148
+ label: transI18n('fmt_security_options_openvideo'),
149
+ styleType: "white"
150
+ }),
151
+ key: 'start_video',
152
+ type: 'primary',
153
+ onButtonClick: function onButtonClick() {
154
+ setAllowUnmuteSelfVideo(!allowUnmuteSelfVideo());
155
+ }
156
+ });
157
+ }
158
+ if (hasEnableChangeNamePermission) {
159
+ allActions.push({
160
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
161
+ checked: false,
162
+ label: transI18n('fmt_screenshare_controlbar_security_list_participant_changeName'),
163
+ styleType: "white"
164
+ }),
165
+ key: 'rename',
166
+ type: 'disabled',
167
+ onButtonClick: function onButtonClick() {},
168
+ classNames: 'room-control-drop-with-under-line'
169
+ });
170
+ }
171
+ allActions.push({
172
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_checkbox.FcrCheckbox, {
173
+ checked: false,
174
+ label: transI18n('fmt_security_options_removemultiple'),
175
+ styleType: "white"
176
+ }),
177
+ key: 'remove_fcr-participants',
178
+ type: 'danger',
179
+ onButtonClick: function onButtonClick() {},
180
+ classNames: 'room-control-drop-disable'
181
+ });
182
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_dropMenu.FcrDropMenu, {
183
+ options: allActions.filter(function (v) {
184
+ return v.type !== 'disabled';
185
+ }).map(function (v) {
186
+ if (v.type === 'primary') {
187
+ return _objectSpread(_objectSpread({}, v), {}, {
188
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
189
+ className: "security-drop-menu-checkbox",
190
+ children: v.title
191
+ })
192
+ });
193
+ }
194
+ return _objectSpread({}, v);
195
+ })
196
+ });
197
+ });