fcr-ui-scene 3.7.7 → 3.7.8-rc.2

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 (237) hide show
  1. package/lib/creator/index.js +13 -19
  2. package/lib/creator/provider-initializer.browser.js +2 -2
  3. package/lib/creator/provider-initializer.electron.js +2 -2
  4. package/lib/electron/bootstrap-sdk.js +89 -35
  5. package/lib/electron/hang-detection/index.d.ts +3 -0
  6. package/lib/electron/hang-detection/index.js +15 -0
  7. package/lib/electron/hang-detection/manager.d.ts +28 -0
  8. package/lib/electron/hang-detection/manager.js +231 -0
  9. package/lib/electron/hang-detection/types.d.ts +14 -0
  10. package/lib/electron/sdk-helper.js +6 -2
  11. package/lib/electron/until.d.ts +1 -4
  12. package/lib/electron/until.js +12 -4
  13. package/lib/index.js +8 -1
  14. package/lib/modules/action-bar/components/screen-share/index.electron.js +1 -1
  15. package/lib/modules/components/control-bar/components/switch-theme/index.js +4 -2
  16. package/lib/modules/components/control-bar/index.js +1 -3
  17. package/lib/modules/components/leave-meeting/store.base.d.ts +1 -0
  18. package/lib/modules/components/leave-meeting/store.base.js +46 -5
  19. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.d.ts +1 -0
  20. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.js +2 -1
  21. package/lib/modules/dialog/dialogs/share-screen-selection/index.js +0 -12
  22. package/lib/modules/participant/store.base.js +0 -1
  23. package/lib/modules/share-screen/store.base.js +0 -2
  24. package/lib/modules/share-screen/store.electron.js +54 -22
  25. package/lib/modules/state-bar/store.base.electron.js +6 -2
  26. package/lib/modules/video-window/popover-watcher.js +4 -1
  27. package/lib/modules/video-window/store.js +7 -1
  28. package/lib/modules/video-window/view.js +14 -4
  29. package/lib/providers/board-share/bar-control/base.d.ts +2 -0
  30. package/lib/providers/board-share/bar-control/base.js +13 -3
  31. package/lib/providers/board-share/bar-control/electron.d.ts +1 -0
  32. package/lib/providers/board-share/bar-control/electron.js +15 -4
  33. package/lib/providers/board-share/provider.base.d.ts +1 -0
  34. package/lib/providers/board-share/provider.base.js +3 -1
  35. package/lib/providers/board-share/provider.electron.d.ts +1 -0
  36. package/lib/providers/board-share/provider.electron.js +8 -2
  37. package/lib/providers/board-share/type.d.ts +2 -0
  38. package/lib/providers/dialog/provider.electron.js +10 -2
  39. package/lib/providers/screen-share/strategy/browser.js +51 -4
  40. package/lib/providers/screen-share/strategy/electron.js +77 -8
  41. package/lib/providers/screen-share/stream-state-sync.d.ts +3 -1
  42. package/lib/providers/screen-share/stream-state-sync.js +133 -40
  43. package/lib/providers/window/main-window.js +0 -3
  44. package/lib/providers/window/renderer-window.d.ts +3 -0
  45. package/lib/providers/window/renderer-window.js +47 -4
  46. package/lib/providers/window/type.d.ts +1 -0
  47. package/lib/scenes/main-scene.d.ts +1 -0
  48. package/lib/scenes/main-scene.js +32 -1
  49. package/lib/utilities/logger.js +1 -1
  50. package/package.json +5 -5
  51. package/public/index.html +2 -149
  52. package/public/meeting-manager.js +391 -0
  53. package/installer/icons/favicon.ico +0 -0
  54. package/installer/icons/favicon.png +0 -0
  55. package/installer/icons/icon.png +0 -0
  56. package/installer/mac/entitlements.mac.plist +0 -16
  57. package/lib/creator.d.ts +0 -36
  58. package/lib/creator.js +0 -465
  59. package/lib/modules/action-bar/index.d.ts +0 -58
  60. package/lib/modules/action-bar/index.dev.d.ts +0 -0
  61. package/lib/modules/action-bar/index.dev.js +0 -94
  62. package/lib/modules/action-bar/index.js +0 -109
  63. package/lib/modules/action-bar/store.d.ts +0 -259
  64. package/lib/modules/action-bar/store.js +0 -1529
  65. package/lib/modules/action-bar/types.d.ts +0 -90
  66. package/lib/modules/action-bar/view.d.ts +0 -5
  67. package/lib/modules/action-bar/view.js +0 -112
  68. package/lib/modules/annotation/annotation-index.d.ts +0 -2
  69. package/lib/modules/annotation/annotation-index.js +0 -80
  70. package/lib/modules/annotation/annotation-toolbar-store.d.ts +0 -75
  71. package/lib/modules/annotation/annotation-toolbar-store.js +0 -459
  72. package/lib/modules/annotation/board-cursor.css +0 -77
  73. package/lib/modules/annotation/components/color-picker/components/color.d.ts +0 -5
  74. package/lib/modules/annotation/components/color-picker/components/color.js +0 -38
  75. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +0 -1
  76. package/lib/modules/annotation/components/color-picker/components/panel.js +0 -109
  77. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +0 -1
  78. package/lib/modules/annotation/components/color-picker/components/picker.js +0 -75
  79. package/lib/modules/annotation/components/color-picker/index.d.ts +0 -2
  80. package/lib/modules/annotation/components/color-picker/index.js +0 -47
  81. package/lib/modules/annotation/components/eraser-picker.d.ts +0 -4
  82. package/lib/modules/annotation/components/eraser-picker.js +0 -144
  83. package/lib/modules/annotation/components/expansion/index.d.ts +0 -1
  84. package/lib/modules/annotation/components/expansion/index.js +0 -100
  85. package/lib/modules/annotation/components/extra-tool-picker.d.ts +0 -1
  86. package/lib/modules/annotation/components/extra-tool-picker.js +0 -62
  87. package/lib/modules/annotation/components/history.d.ts +0 -2
  88. package/lib/modules/annotation/components/history.js +0 -78
  89. package/lib/modules/annotation/components/icons/fold-icon.d.ts +0 -2
  90. package/lib/modules/annotation/components/icons/fold-icon.js +0 -41
  91. package/lib/modules/annotation/components/icons/move-icon.d.ts +0 -1
  92. package/lib/modules/annotation/components/icons/move-icon.js +0 -66
  93. package/lib/modules/annotation/components/item/index.d.ts +0 -1
  94. package/lib/modules/annotation/components/item/index.js +0 -43
  95. package/lib/modules/annotation/components/move-handle.d.ts +0 -5
  96. package/lib/modules/annotation/components/move-handle.js +0 -134
  97. package/lib/modules/annotation/components/pen-picker.d.ts +0 -4
  98. package/lib/modules/annotation/components/pen-picker.js +0 -155
  99. package/lib/modules/annotation/components/screen-capture-picker.d.ts +0 -4
  100. package/lib/modules/annotation/components/screen-capture-picker.js +0 -85
  101. package/lib/modules/annotation/components/shape-picker.d.ts +0 -4
  102. package/lib/modules/annotation/components/shape-picker.js +0 -210
  103. package/lib/modules/annotation/hooks/index.d.ts +0 -14
  104. package/lib/modules/annotation/hooks/index.js +0 -292
  105. package/lib/modules/annotation/index.d.ts +0 -45
  106. package/lib/modules/annotation/index.js +0 -168
  107. package/lib/modules/annotation/store.d.ts +0 -98
  108. package/lib/modules/annotation/store.js +0 -620
  109. package/lib/modules/annotation/style.css +0 -36
  110. package/lib/modules/annotation/view.d.ts +0 -3
  111. package/lib/modules/annotation/view.js +0 -44
  112. package/lib/modules/components/device-control/store.d.ts +0 -42
  113. package/lib/modules/components/device-control/store.js +0 -241
  114. package/lib/modules/components/leave-meeting/store.d.ts +0 -39
  115. package/lib/modules/components/leave-meeting/store.js +0 -270
  116. package/lib/modules/control-bar/components/annotation-button/index.d.ts +0 -1
  117. package/lib/modules/control-bar/components/annotation-button/index.js +0 -72
  118. package/lib/modules/control-bar/reactor.d.ts +0 -2
  119. package/lib/modules/control-bar/reactor.js +0 -8
  120. package/lib/modules/control-bar/types.d.ts +0 -20
  121. package/lib/modules/control-bar/types.js +0 -6
  122. package/lib/modules/dialog/dialogs/pre-setting/index.css +0 -26
  123. package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +0 -6
  124. package/lib/modules/dialog/dialogs/pre-setting/index.js +0 -62
  125. package/lib/modules/dialog/dialogs/widget/electron.d.ts +0 -6
  126. package/lib/modules/dialog/dialogs/widget/electron.js +0 -38
  127. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +0 -14
  128. package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -110
  129. package/lib/modules/dialog/hooks/useElectron.d.ts +0 -28
  130. package/lib/modules/dialog/hooks/useElectron.js +0 -277
  131. package/lib/modules/dialog/store.d.ts +0 -135
  132. package/lib/modules/dialog/store.js +0 -616
  133. package/lib/modules/event-confirm/components/window/index.d.ts +0 -7
  134. package/lib/modules/event-confirm/components/window/index.js +0 -221
  135. package/lib/modules/event-confirm/index.css +0 -24
  136. package/lib/modules/event-confirm/index.d.ts +0 -27
  137. package/lib/modules/event-confirm/index.js +0 -76
  138. package/lib/modules/event-confirm/store.d.ts +0 -50
  139. package/lib/modules/event-confirm/store.js +0 -394
  140. package/lib/modules/event-confirm/view.d.ts +0 -2
  141. package/lib/modules/event-confirm/view.js +0 -55
  142. package/lib/modules/event-toast/store.d.ts +0 -27
  143. package/lib/modules/event-toast/store.js +0 -205
  144. package/lib/modules/layout/store.d.ts +0 -176
  145. package/lib/modules/layout/store.js +0 -1452
  146. package/lib/modules/participant/store.d.ts +0 -222
  147. package/lib/modules/participant/store.js +0 -1929
  148. package/lib/modules/pc-audio-connect/index.d.ts +0 -22
  149. package/lib/modules/pc-audio-connect/index.js +0 -67
  150. package/lib/modules/pc-audio-connect/store.d.ts +0 -46
  151. package/lib/modules/pc-audio-connect/store.js +0 -304
  152. package/lib/modules/setting/common/advance-link.d.ts +0 -3
  153. package/lib/modules/setting/common/advance-link.js +0 -27
  154. package/lib/modules/setting/common/index.css +0 -26
  155. package/lib/modules/setting/common/useNamespace.d.ts +0 -15
  156. package/lib/modules/setting/common/useNamespace.js +0 -66
  157. package/lib/modules/setting/dialog-wrapper.d.ts +0 -2
  158. package/lib/modules/setting/dialog-wrapper.js +0 -110
  159. package/lib/modules/setting/store.d.ts +0 -261
  160. package/lib/modules/setting/store.js +0 -1321
  161. package/lib/modules/share-screen/store.d.ts +0 -148
  162. package/lib/modules/share-screen/store.js +0 -960
  163. package/lib/modules/share-screen/types.d.ts +0 -26
  164. package/lib/modules/share-screen/types.js +0 -6
  165. package/lib/modules/state-bar/store.d.ts +0 -124
  166. package/lib/modules/state-bar/store.js +0 -664
  167. package/lib/modules/whiteboard/components/progress/electron.d.ts +0 -1
  168. package/lib/modules/whiteboard/components/progress/electron.js +0 -33
  169. package/lib/modules/widget/store.d.ts +0 -14
  170. package/lib/modules/widget/store.js +0 -28
  171. package/lib/providers/annotation-provider.d.ts +0 -124
  172. package/lib/providers/annotation-provider.js +0 -369
  173. package/lib/providers/dialog-provider.d.ts +0 -137
  174. package/lib/providers/dialog-provider.js +0 -194
  175. package/lib/providers/message-provider.d.ts +0 -69
  176. package/lib/providers/message-provider.js +0 -140
  177. package/lib/providers/room-provider.d.ts +0 -194
  178. package/lib/providers/room-provider.js +0 -916
  179. package/lib/providers/screen-share-provider.d.ts +0 -245
  180. package/lib/providers/screen-share-provider.js +0 -850
  181. package/lib/providers/sharing-provider.d.ts +0 -42
  182. package/lib/providers/sharing-provider.js +0 -228
  183. package/lib/providers/user-setting-storage-provider.d.ts +0 -21
  184. package/lib/providers/user-setting-storage-provider.js +0 -65
  185. package/lib/providers/whiteboard-provider.d.ts +0 -24
  186. package/lib/providers/whiteboard-provider.js +0 -128
  187. package/lib/shared-data-source/annotation-data.d.ts +0 -17
  188. package/lib/shared-data-source/annotation-data.js +0 -110
  189. package/lib/shared-data-source/app-list-data.d.ts +0 -34
  190. package/lib/shared-data-source/app-list-data.js +0 -133
  191. package/lib/shared-data-source/chat-data.d.ts +0 -25
  192. package/lib/shared-data-source/chat-data.js +0 -139
  193. package/lib/shared-data-source/config.d.ts +0 -35
  194. package/lib/shared-data-source/config.js +0 -40
  195. package/lib/shared-data-source/confirm-data.d.ts +0 -44
  196. package/lib/shared-data-source/confirm-data.js +0 -201
  197. package/lib/shared-data-source/device-privilege-data.d.ts +0 -8
  198. package/lib/shared-data-source/device-privilege-data.js +0 -25
  199. package/lib/shared-data-source/interpreter.d.ts +0 -77
  200. package/lib/shared-data-source/interpreter.js +0 -247
  201. package/lib/shared-data-source/layout-data.d.ts +0 -31
  202. package/lib/shared-data-source/layout-data.js +0 -189
  203. package/lib/shared-data-source/meeting-time.d.ts +0 -90
  204. package/lib/shared-data-source/meeting-time.js +0 -416
  205. package/lib/shared-data-source/member-data.d.ts +0 -139
  206. package/lib/shared-data-source/member-data.js +0 -517
  207. package/lib/shared-data-source/pin-data.d.ts +0 -13
  208. package/lib/shared-data-source/pin-data.js +0 -111
  209. package/lib/shared-data-source/screen-share-data.d.ts +0 -357
  210. package/lib/shared-data-source/screen-share-data.js +0 -513
  211. package/lib/shared-data-source/security-data.d.ts +0 -39
  212. package/lib/shared-data-source/security-data.js +0 -156
  213. package/lib/shared-data-source/setting.d.ts +0 -67
  214. package/lib/shared-data-source/setting.js +0 -220
  215. package/lib/shared-data-source/speaker-spotlight.d.ts +0 -5
  216. package/lib/shared-data-source/speaker-spotlight.js +0 -15
  217. package/lib/shared-data-source/video-window.d.ts +0 -165
  218. package/lib/shared-data-source/video-window.js +0 -1266
  219. package/lib/shared-data-source/waiting-room.d.ts +0 -46
  220. package/lib/shared-data-source/waiting-room.js +0 -222
  221. package/lib/shared-data-source/whiteboard-data.d.ts +0 -70
  222. package/lib/shared-data-source/whiteboard-data.js +0 -348
  223. package/lib/utilities/board-context.d.ts +0 -4
  224. package/lib/utilities/board-context.js +0 -12
  225. package/lib/utilities/copyText.d.ts +0 -2
  226. package/lib/utilities/copyText.js +0 -48
  227. package/lib/utilities/renderer-event.d.ts +0 -10
  228. package/lib/utilities/renderer-event.js +0 -95
  229. package/lib/utilities/screen-capture-permission.d.ts +0 -2
  230. package/lib/utilities/screen-capture-permission.js +0 -24
  231. package/lib/utilities/screen.d.ts +0 -3
  232. package/lib/utilities/screen.js +0 -53
  233. package/lib/utilities/video-track-render-context.d.ts +0 -6
  234. package/lib/utilities/video-track-render-context.js +0 -9
  235. package/lib/waiting-room-control-manager.d.ts +0 -28
  236. package/lib/waiting-room-control-manager.js +0 -230
  237. /package/lib/{modules/action-bar → electron/hang-detection}/types.js +0 -0
@@ -1,72 +0,0 @@
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.AnnotationButton = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _tooltipsButton = require("agora-ui-foundation/lib/components/tooltips-button");
11
- var _i18n = require("agora-ui-foundation/lib/i18n");
12
- var _type = require("agora-ui-foundation/lib/components/icon/type");
13
- var _annotationMenu = _interopRequireDefault(require("../../../components/annotation-menu"));
14
- var _react = require("react");
15
- var _mobxReact = require("mobx-react");
16
- var _store = require("../../store");
17
- var _view = require("../../view");
18
- var _jsxRuntime = require("react/jsx-runtime");
19
- var AnnotationButton = exports.AnnotationButton = (0, _mobxReact.observer)(function () {
20
- var transI18n = (0, _i18n.useI18n)();
21
- var _useState = (0, _react.useState)(false),
22
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
23
- visible = _useState2[0],
24
- setVisible = _useState2[1];
25
- var _useContext = (0, _react.useContext)(_view.ControlbarContext),
26
- browserWindow = _useContext.browserWindow;
27
- var _useContext2 = (0, _react.useContext)(_store.StoreContext),
28
- toggleAnnotation = _useContext2.toggleAnnotation,
29
- hasAnnotationAllowWritePermission = _useContext2.hasAnnotationAllowWritePermission,
30
- allowAnnotationWriteState = _useContext2.allowAnnotationWriteState,
31
- setAllAnnotationWrite = _useContext2.setAllAnnotationWrite,
32
- isSharingScreen = _useContext2.isSharingScreen,
33
- log = _useContext2.log;
34
- var handleBlur = function handleBlur() {
35
- setVisible(false);
36
- };
37
- (0, _react.useEffect)(function () {
38
- browserWindow === null || browserWindow === void 0 || browserWindow.on('blur', handleBlur);
39
- return function () {
40
- browserWindow === null || browserWindow === void 0 || browserWindow.off('blur', handleBlur);
41
- };
42
- }, [browserWindow]);
43
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltipsButton.FrcTooltipButton, {
44
- active: visible,
45
- tooltip: {
46
- content: transI18n('fmt_screenshare_controlbar_button_annotations'),
47
- icon: {
48
- type: _type.FcrIconType.FCR_RENAME,
49
- size: 32,
50
- colors: {
51
- iconPrimary: 'var(--fcr_web_ui_scene_mainicon1)'
52
- }
53
- }
54
- },
55
- onTooltipButtonClick: isSharingScreen ? toggleAnnotation : function () {
56
- return log('share screen is starting, please wait a moment to operate');
57
- },
58
- withPopover: true,
59
- popover: {
60
- content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_annotationMenu["default"], {
61
- allowAnnotationWriteState: allowAnnotationWriteState,
62
- hasAnnotationAllowWritePermission: hasAnnotationAllowWritePermission,
63
- setAllowAnnotationWrite: setAllAnnotationWrite,
64
- showClear: true
65
- }),
66
- onVisibleChange: function onVisibleChange(visible) {
67
- setVisible(visible);
68
- },
69
- visible: visible
70
- }
71
- });
72
- });
@@ -1,2 +0,0 @@
1
- declare class FcrUIMouseEventReactor {
2
- }
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
5
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
6
- var FcrUIMouseEventReactor = /*#__PURE__*/(0, _createClass2["default"])(function FcrUIMouseEventReactor() {
7
- (0, _classCallCheck2["default"])(this, FcrUIMouseEventReactor);
8
- });
@@ -1,20 +0,0 @@
1
- import { TransferPosition } from './enums';
2
- export interface MorePopoverContentProps {
3
- hasChatPermission: boolean;
4
- closePopover?: () => void;
5
- }
6
- export interface IShareStateNav {
7
- onShareStateNavTransferPosition: (targetPosition: TransferPosition) => void;
8
- onStopShare: () => void;
9
- currentPosition: TransferPosition;
10
- }
11
- export interface ITransferPositionIconProps {
12
- currentPosition: TransferPosition;
13
- onTransferPositionButtonClick: (targetPosition: TransferPosition) => void;
14
- }
15
- export type CurrentShareBounds = {
16
- x: number;
17
- y: number;
18
- width: number;
19
- height: number;
20
- };
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.object.define-property.js");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
@@ -1,26 +0,0 @@
1
- .fcr-device-setting-dialog-wrapper {
2
- display: flex;
3
- flex-direction: column;
4
- height: 100%;
5
- background: var(--fcr_mobile_ui_scene_color_popup_fill2);
6
- border-radius: 16px;
7
- box-shadow: var(--fcr_web_light_dropup);
8
- border: 1px solid var(--fcr_ui_scene_line1);
9
- }
10
-
11
- .fcr-device-setting-dialog-wrapper .frc-window-header {
12
- cursor: move;
13
- height: 46px;
14
- }
15
-
16
- .fcr-device-setting-dialog-wrapper .fcr-device-settings {
17
- height: calc(100% - 46px);
18
- }
19
- .fcr-device-setting-dialog-wrapper .fcr-device-settings-audio {
20
- padding: 0;
21
- }
22
-
23
- .fcr-device-setting-dialog-wrapper .frc-window-header .frc-window-header__title {
24
- height: 46px;
25
- line-height: 46px;
26
- }
@@ -1,6 +0,0 @@
1
- import { PropsWithChildren } from 'react';
2
- import './index.css';
3
- declare const DeviceSettingDialog: ({ children, onClose }: PropsWithChildren<{
4
- onClose: () => void;
5
- }>) => import("react/jsx-runtime").JSX.Element;
6
- export default DeviceSettingDialog;
@@ -1,62 +0,0 @@
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["default"] = void 0;
9
- require("core-js/modules/web.timers.js");
10
- var _env = require("agora-foundation/lib/utilities/env");
11
- var _i18n = require("agora-ui-foundation/lib/i18n");
12
- var _constant = require("../../../../utilities/constant");
13
- var _normalWindow = _interopRequireDefault(require("../../components/normal-window"));
14
- require("./index.css");
15
- var _jsxRuntime = require("react/jsx-runtime");
16
- var ELECTRON_HEIGHT = 556;
17
- var WEB_HEIGHT = 600;
18
- var DeviceSettingDialog = function DeviceSettingDialog(_ref) {
19
- var children = _ref.children,
20
- onClose = _ref.onClose;
21
- var t = (0, _i18n.useI18n)();
22
- var height = (0, _env.isElectron)() ? ELECTRON_HEIGHT : WEB_HEIGHT;
23
- var config = {
24
- fullscreen: false,
25
- maximizable: false,
26
- trafficLightPosition: {
27
- x: 10,
28
- y: 60
29
- },
30
- width: 580,
31
- height: 600,
32
- minWidth: 580,
33
- minHeight: 600,
34
- maxWidth: 670,
35
- maxHeight: 800,
36
- title: t('fmt_settings_option_setting'),
37
- resizable: false
38
- };
39
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_normalWindow["default"], {
40
- height: height,
41
- dialogKey: _constant.FcrUIDialogKey.DEVICE_SETTINGS,
42
- config: config,
43
- style: {
44
- zIndex: 10
45
- },
46
- onClose: onClose,
47
- onOpened: function onOpened(_ref2) {
48
- var browserWindow = _ref2.browserWindow;
49
- if (browserWindow) {
50
- browserWindow.setAlwaysOnTop(true);
51
- setTimeout(function () {
52
- browserWindow.show();
53
- browserWindow.setAlwaysOnTop(false);
54
- browserWindow.moveTop();
55
- browserWindow.focus();
56
- }, 600);
57
- }
58
- },
59
- children: children
60
- });
61
- };
62
- var _default = exports["default"] = DeviceSettingDialog;
@@ -1,6 +0,0 @@
1
- import { PropsWithChildren } from 'react';
2
- import { FcrUIWebWidgetConfig } from '../../../../type';
3
- export declare const WidgetElectronDialog: ({ children, params, dialogId, }: PropsWithChildren<{
4
- params: FcrUIWebWidgetConfig;
5
- dialogId: string;
6
- }>) => null;
@@ -1,38 +0,0 @@
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.WidgetElectronDialog = void 0;
8
- require("core-js/modules/es.function.name.js");
9
- var _constant = require("../../../../utilities/constant");
10
- var _useElectron = require("../../hooks/useElectron");
11
- var WidgetElectronDialog = exports.WidgetElectronDialog = function WidgetElectronDialog(_ref) {
12
- var _params$popupSize, _params$popupSize2;
13
- var children = _ref.children,
14
- params = _ref.params,
15
- dialogId = _ref.dialogId;
16
- var width = (_params$popupSize = params.popupSize) !== null && _params$popupSize !== void 0 && _params$popupSize.width ? params.popupSize.width + 2 : undefined;
17
- var height = (_params$popupSize2 = params.popupSize) !== null && _params$popupSize2 !== void 0 && _params$popupSize2.height ? params.popupSize.height + 76 : undefined;
18
- var config = {
19
- fullscreen: false,
20
- maximizable: false,
21
- trafficLightPosition: {
22
- x: 10,
23
- y: 60
24
- },
25
- width: width,
26
- height: height,
27
- title: params.name,
28
- resizable: false
29
- };
30
- (0, _useElectron.useElectronDialog)({
31
- config: config,
32
- dialogKey: _constant.FcrUIDialogKey.WIDGET,
33
- dialogId: dialogId,
34
- children: children,
35
- hasCustomShadow: false
36
- });
37
- return null;
38
- };
@@ -1,14 +0,0 @@
1
- export declare function usePopoverWatcher({ wrapperClass, offset, onAdded, onRemoved, }: {
2
- wrapperClass: string;
3
- onAdded?: () => void;
4
- onRemoved?: () => void;
5
- offset?: {
6
- vertical: number;
7
- horizontal: number;
8
- };
9
- }): {
10
- watcher: ({ browserWindow, newRendererWindow, }: {
11
- browserWindow?: Electron.BrowserWindow;
12
- newRendererWindow?: Window;
13
- }) => void;
14
- };
@@ -1,110 +0,0 @@
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.usePopoverWatcher = usePopoverWatcher;
8
- require("core-js/modules/es.array.for-each.js");
9
- require("core-js/modules/es.object.to-string.js");
10
- require("core-js/modules/esnext.iterator.constructor.js");
11
- require("core-js/modules/esnext.iterator.for-each.js");
12
- require("core-js/modules/web.dom-collections.for-each.js");
13
- var _lodash = require("lodash");
14
- var _react = require("react");
15
- function usePopoverWatcher(_ref) {
16
- var wrapperClass = _ref.wrapperClass,
17
- _ref$offset = _ref.offset,
18
- offset = _ref$offset === void 0 ? {
19
- vertical: 0,
20
- horizontal: 0
21
- } : _ref$offset,
22
- onAdded = _ref.onAdded,
23
- onRemoved = _ref.onRemoved;
24
- var observerRef = (0, _react.useRef)();
25
- var wrapperDomRef = (0, _react.useRef)();
26
- function watcher(_ref2) {
27
- var browserWindow = _ref2.browserWindow,
28
- newRendererWindow = _ref2.newRendererWindow;
29
- if (!newRendererWindow || !browserWindow) {
30
- return;
31
- }
32
- if (observerRef.current) observerRef.current.disconnect();
33
- var body = newRendererWindow.document.body;
34
- var browserWindowBounds = browserWindow.getBounds();
35
- var threshold = calculateThreshold(browserWindow, body);
36
- browserWindow.addListener(
37
- // @ts-ignore
38
- 'custom-move', (0, _lodash.debounce)(function () {
39
- threshold = calculateThreshold(browserWindow, body);
40
- }, 200));
41
- observerRef.current = new MutationObserver(function (mutationsList) {
42
- var popover = body.querySelector('.fcr-popover');
43
- wrapperDomRef.current = body.querySelector(wrapperClass);
44
- var wrapper = wrapperDomRef.current;
45
- mutationsList.forEach(function (mutation) {
46
- if (mutation.type === 'childList') {
47
- mutation.addedNodes.forEach(function (node) {
48
- if (node.nodeType === Node.ELEMENT_NODE && node.contains(popover)) {
49
- if (popover) {
50
- var wrapperHeight = wrapper.offsetHeight,
51
- wrapperWidth = wrapper.offsetWidth;
52
- var offsetHeight = popover.offsetHeight,
53
- popoverWidth = popover.offsetWidth,
54
- offsetTop = popover.offsetTop,
55
- offsetLeft = popover.offsetLeft;
56
- // 如果 popover 展开,根据 popover 的尺寸调整窗口的尺寸可以正好容纳 popover
57
- browserWindow.setBounds({
58
- height: wrapperHeight + offsetHeight + offset.vertical,
59
- width: wrapperWidth + offset.horizontal,
60
- y: threshold.placement === 'top' ? threshold.y - offsetHeight : threshold.y
61
- });
62
- // if (wrapper) {
63
- // const rect = wrapper.getBoundingClientRect();
64
- // wrapper.setAttribute('style', `height: ${rect.height}px;width: ${rect.width}px`);
65
- // // popover.setAttribute('style', `left: ${offsetLeft}px;top: ${offsetTop}px`);
66
- // }
67
- onAdded === null || onAdded === void 0 || onAdded();
68
- }
69
- }
70
- });
71
- mutation.removedNodes.forEach(function (node) {
72
- var _classList;
73
- if ((_classList = node.classList) !== null && _classList !== void 0 && _classList.contains('fcr-popover')) {
74
- onRemoved === null || onRemoved === void 0 || onRemoved();
75
- var width = browserWindowBounds.width,
76
- height = browserWindowBounds.height;
77
- browserWindow.setBounds({
78
- width: width,
79
- height: height,
80
- y: threshold.y
81
- });
82
- browserWindow.setResizable(true);
83
- }
84
- });
85
- }
86
- });
87
- });
88
- observerRef.current.observe(newRendererWindow.document.body, {
89
- childList: true,
90
- subtree: true
91
- });
92
- }
93
- return {
94
- watcher: watcher
95
- };
96
- }
97
- function calculateThreshold(browserWindow, body) {
98
- var _body$querySelector;
99
- var bounds = browserWindow.getBounds();
100
- var nearDisplay = window.runtime.screen.getDisplayNearestPoint(bounds);
101
- var nearDisplayBounds = nearDisplay.bounds;
102
- var middleThreshold = nearDisplayBounds.height / 2;
103
- var placement = bounds.y > middleThreshold ? 'top' : 'bottom';
104
- (_body$querySelector = body.querySelector('#root')) === null || _body$querySelector === void 0 || _body$querySelector.setAttribute('style', "display: flex;align-items: ".concat(placement === 'top' ? 'flex-end' : 'flex-start'));
105
- return {
106
- placement: placement,
107
- x: bounds.x,
108
- y: bounds.y
109
- };
110
- }
@@ -1,28 +0,0 @@
1
- import { FcrUIDialogHooksProps } from '../type';
2
- export declare const DialogInstanceContext: import("react").Context<{
3
- browserWindow: Electron.BrowserWindow;
4
- newRendererWindow: Window;
5
- resizable: boolean;
6
- baseUrl: string;
7
- closeDialog: () => void;
8
- /**
9
- * @param continueClose - 继续关闭窗口的回调函数
10
- */
11
- continueClose: () => void;
12
- /**
13
- * 窗口关闭时是否已被拦截,此值只反应状态,不会影响继续关闭的逻辑
14
- */
15
- interceptedClose: boolean;
16
- /**
17
- * 重置被拦截状态
18
- */
19
- setInterceptedClose: (interceptedClose: boolean) => void;
20
- }>;
21
- export declare const shadowOffset: number;
22
- export declare const enterFullScreenHandler: () => void;
23
- export declare const leaveFullScreenHandler: () => void;
24
- export declare function useElectronDialog(props: FcrUIDialogHooksProps): {
25
- store: import("../store").default;
26
- browserWindow: Electron.BrowserWindow | undefined;
27
- newRendererWindow: Window | undefined;
28
- };