@newtonschool/react_proctoring_library 0.0.67-staging → 0.0.69

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.
@@ -8,6 +8,7 @@ require("core-js/modules/es.symbol.description.js");
8
8
  var _react = require("react");
9
9
  var _useGenericFullScreenData = _interopRequireDefault(require("../../hooks/useGenericFullScreenData"));
10
10
  var _ElectronContext = require("../../contexts/ElectronContext");
11
+ var _useKishokMode = _interopRequireDefault(require("../../hooks/electron/useKishokMode"));
11
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
13
  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; }
13
14
  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) { _defineProperty(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; }
@@ -16,12 +17,18 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
16
17
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
17
18
  function FullScreen(_ref) {
18
19
  let {
19
- setAskPermissionAction
20
+ setAskPermissionAction,
21
+ proctoredContext,
22
+ proctorParams
20
23
  } = _ref;
21
24
  const isElectronApp = (0, _react.useContext)(_ElectronContext.ElectronContext);
22
25
  const {
23
26
  setFullscreen
24
27
  } = (0, _useGenericFullScreenData.default)(isElectronApp);
28
+ (0, _useKishokMode.default)({
29
+ proctoredContext,
30
+ proctorParams
31
+ });
25
32
  (0, _react.useEffect)(() => {
26
33
  setAskPermissionAction(oldAskPermissionAction => _objectSpread(_objectSpread({}, oldAskPermissionAction), {}, {
27
34
  fullscreen: () => setFullscreen(true)
@@ -13,6 +13,7 @@ var text = _interopRequireWildcard(require("../../constants/text"));
13
13
  var _permissionBody = require("./permission-body");
14
14
  var _breachUtils = require("../../utils/breachUtils");
15
15
  var _permission = require("../../utils/permission");
16
+ var _jsxRuntime = require("react/jsx-runtime");
16
17
  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); }
17
18
  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; }
18
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -23,28 +24,38 @@ const Permission = _ref => {
23
24
  askPermission
24
25
  } = _ref;
25
26
  const showPermissionModal = !(0, _permission.hasAllPermissions)((0, _breachUtils.getRequiredPermissionsFromProctorParams)(proctorParams), permissions);
26
- return /*#__PURE__*/_react.default.createElement(_reactBootstrap.Modal, {
27
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactBootstrap.Modal, {
27
28
  show: showPermissionModal,
28
29
  size: "lg",
29
30
  backdrop: "static",
30
31
  "aria-labelledby": "contained-modal-title-vcenter",
31
- centered: true
32
- }, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Modal.Header, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Modal.Title, null, text.PERMISSION_TITLE)), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Modal.Body, {
33
- className: "font-medium"
34
- }, /*#__PURE__*/_react.default.createElement(_permissionBody.PermissionBody, {
35
- showFullscreenText: !permissions.fullscreen && proctorParams.fullscreenExit,
36
- showAudioPermissionText: !permissions.audio && (0, _breachUtils.isAudioRequired)(proctorParams),
37
- showVideoPermissionText: !permissions.video && (0, _breachUtils.isWebcamRequired)(proctorParams),
38
- showScreensharePermission: !permissions.screenshare && proctorParams.screenshareSnapshots
39
- })), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Modal.Footer, null, !permissions.screenshare && proctorParams.screenshareSnapshots && /*#__PURE__*/_react.default.createElement(_reactBootstrap.Button, {
40
- onClick: () => {
41
- askPermission(['screenshare']);
42
- }
43
- }, text.ALLOW_SCREENSHARE), !permissions.fullscreen && proctorParams.fullscreenExit && /*#__PURE__*/_react.default.createElement(_reactBootstrap.Button, {
44
- variant: "primary",
45
- onClick: () => {
46
- askPermission(['fullscreen']);
47
- }
48
- }, text.ALLOW_FULLSCREEN)));
32
+ centered: true,
33
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Modal.Header, {
34
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Modal.Title, {
35
+ children: text.PERMISSION_TITLE
36
+ })
37
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Modal.Body, {
38
+ className: "font-medium",
39
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_permissionBody.PermissionBody, {
40
+ showFullscreenText: !permissions.fullscreen && proctorParams.fullscreenExit,
41
+ showAudioPermissionText: !permissions.audio && (0, _breachUtils.isAudioRequired)(proctorParams),
42
+ showVideoPermissionText: !permissions.video && (0, _breachUtils.isWebcamRequired)(proctorParams),
43
+ showScreensharePermission: !permissions.screenshare && proctorParams.screenshareSnapshots
44
+ })
45
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactBootstrap.Modal.Footer, {
46
+ children: [!permissions.screenshare && proctorParams.screenshareSnapshots && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
47
+ onClick: () => {
48
+ askPermission(['screenshare']);
49
+ },
50
+ children: text.ALLOW_SCREENSHARE
51
+ }), !permissions.fullscreen && proctorParams.fullscreenExit && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactBootstrap.Button, {
52
+ variant: "primary",
53
+ onClick: () => {
54
+ askPermission(['fullscreen']);
55
+ },
56
+ children: text.ALLOW_FULLSCREEN
57
+ })]
58
+ })]
59
+ });
49
60
  };
50
61
  exports.Permission = Permission;
@@ -11,6 +11,7 @@ var _urlVideoPermissionHighlight = _interopRequireDefault(require("../../assets/
11
11
  require("./index.scss");
12
12
  var text = _interopRequireWildcard(require("../../constants/text"));
13
13
  var _browserUtils = require("../../utils/browserUtils");
14
+ var _jsxRuntime = require("react/jsx-runtime");
14
15
  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); }
15
16
  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; }
16
17
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -21,30 +22,52 @@ const PermissionBody = _ref => {
21
22
  showVideoPermissionText,
22
23
  showScreensharePermission
23
24
  } = _ref;
24
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
25
- className: "mb-2"
26
- }, text.PERMISSION_GENERIC), showScreensharePermission && /*#__PURE__*/_react.default.createElement("div", {
27
- className: "mb-2"
28
- }, !(0, _browserUtils.isChrome)() && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("strong", null, "Please switch to chrome"), /*#__PURE__*/_react.default.createElement("br", null)), /*#__PURE__*/_react.default.createElement("span", {
29
- className: "pr-2 font-weight-bold"
30
- }, "Screenshare:"), text.PERMISSION_SCREENSHARE), showAudioPermissionText && showVideoPermissionText ? /*#__PURE__*/_react.default.createElement("div", {
31
- className: "mb-2"
32
- }, /*#__PURE__*/_react.default.createElement("span", {
33
- className: "pr-2 font-weight-bold"
34
- }, "Camera/Microphone:"), text.PERMISSION_AUDIO_VIDEO) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showVideoPermissionText && /*#__PURE__*/_react.default.createElement("div", {
35
- className: "mb-2"
36
- }, /*#__PURE__*/_react.default.createElement("span", {
37
- className: "pr-2 font-weight-bold"
38
- }, "Camera:"), text.PERMISSION_VIDEO), showAudioPermissionText && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
39
- className: "pr-2 font-weight-bold"
40
- }, "Microphone:"), text.PERMISSION_AUDIO)), (showAudioPermissionText || showVideoPermissionText) && /*#__PURE__*/_react.default.createElement("div", {
41
- className: "d-flex justify-content-center"
42
- }, /*#__PURE__*/_react.default.createElement("img", {
43
- className: "video-permission-img",
44
- alt: "url_video_permission_highlight",
45
- src: _urlVideoPermissionHighlight.default
46
- })), showFullscreenText && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
47
- className: "pr-2 font-weight-bold"
48
- }, "Fullscreen:"), text.PERMISSION_FULLSCREEN));
25
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
26
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
27
+ className: "mb-2",
28
+ children: text.PERMISSION_GENERIC
29
+ }), showScreensharePermission && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
30
+ className: "mb-2",
31
+ children: [!(0, _browserUtils.isChrome)() && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
32
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("strong", {
33
+ children: "Please switch to chrome"
34
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("br", {})]
35
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
36
+ className: "pr-2 font-weight-bold",
37
+ children: "Screenshare:"
38
+ }), text.PERMISSION_SCREENSHARE]
39
+ }), showAudioPermissionText && showVideoPermissionText ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
40
+ className: "mb-2",
41
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
42
+ className: "pr-2 font-weight-bold",
43
+ children: "Camera/Microphone:"
44
+ }), text.PERMISSION_AUDIO_VIDEO]
45
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
46
+ children: [showVideoPermissionText && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
47
+ className: "mb-2",
48
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
49
+ className: "pr-2 font-weight-bold",
50
+ children: "Camera:"
51
+ }), text.PERMISSION_VIDEO]
52
+ }), showAudioPermissionText && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
53
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
54
+ className: "pr-2 font-weight-bold",
55
+ children: "Microphone:"
56
+ }), text.PERMISSION_AUDIO]
57
+ })]
58
+ }), (showAudioPermissionText || showVideoPermissionText) && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
59
+ className: "d-flex justify-content-center",
60
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
61
+ className: "video-permission-img",
62
+ alt: "url_video_permission_highlight",
63
+ src: _urlVideoPermissionHighlight.default
64
+ })
65
+ }), showFullscreenText && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
66
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
67
+ className: "pr-2 font-weight-bold",
68
+ children: "Fullscreen:"
69
+ }), text.PERMISSION_FULLSCREEN]
70
+ })]
71
+ });
49
72
  };
50
73
  exports.PermissionBody = PermissionBody;
@@ -9,11 +9,12 @@ require("core-js/modules/es.weak-map.js");
9
9
  require("core-js/modules/web.dom-collections.iterator.js");
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _loadable = _interopRequireDefault(require("../../utils/loadable"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
14
  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); }
14
15
  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; } /**
15
16
  * Asynchronously loads the component for FeaturePage
16
17
  */
17
18
  var _default = exports.default = (0, _loadable.default)(() => Promise.resolve().then(() => _interopRequireWildcard(require("./index"))), {
18
- fallback: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)
19
+ fallback: /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {})
19
20
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.symbol.description.js");
4
- require("core-js/modules/es.object.assign.js");
5
4
  require("core-js/modules/es.weak-map.js");
6
5
  Object.defineProperty(exports, "__esModule", {
7
6
  value: true
@@ -20,10 +19,10 @@ var _fullscreen = _interopRequireDefault(require("../fullscreen"));
20
19
  var _ElectronContext = require("../../contexts/ElectronContext");
21
20
  var _useGenericWakeUpLock = _interopRequireDefault(require("../../hooks/useGenericWakeUpLock"));
22
21
  var _breachParameters = _interopRequireDefault(require("../breach-parameters"));
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
23
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
24
  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); }
25
25
  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; }
26
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
27
26
  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; }
28
27
  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) { _defineProperty(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; }
29
28
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -72,45 +71,48 @@ const ProctorApp = _ref => {
72
71
  }
73
72
  });
74
73
  }, [permissions, askPermissionAction]);
75
- return /*#__PURE__*/_react.default.createElement("div", {
76
- className: "".concat(proctorParams.copyPasteProctoring ? 'disable-copy-paste fullwidth fullheight' : 'fullwidth fullheight')
77
- }, shouldShowProctoredComponent && children, !shouldShowProctoredComponent && customPermissionView && /*#__PURE__*/_react.default.createElement(CustomPermissionView, _extends({
78
- permissions: permissions,
79
- proctorParams: proctorParams,
80
- references: references,
81
- actions: {
82
- askPermission
83
- },
84
- browserDetails: (0, _browserUtils.getBrowserDetails)(),
85
- permissionErrors: permissionErrors
86
- }, permissionPassedProps)), !shouldShowProctoredComponent && !customPermissionView && /*#__PURE__*/_react.default.createElement(_permissions.Permission, {
87
- permissions: permissions,
88
- proctorParams: proctorParams,
89
- askPermission: askPermission
90
- }), proctorParams.webcamSnapshots && /*#__PURE__*/_react.default.createElement(_webcamActivityTracker.default, {
91
- logger: logger,
92
- config: config,
93
- proctorParams: proctorParams,
94
- proctoredContext: proctoredContext,
95
- getWebcamSnapshot: getWebcamSnapshot,
96
- proctoringIdentifier: proctoringIdentifier,
97
- setAskPermissionAction: setAskPermissionAction
98
- }), proctorParams.screenshareSnapshots && /*#__PURE__*/_react.default.createElement(_screenshareActivityTracker.default, {
99
- config: config,
100
- getScreengrab: getScreengrab,
101
- proctorParams: proctorParams,
102
- proctoredContext: proctoredContext,
103
- proctoringIdentifier: proctoringIdentifier,
104
- setAskPermissionAction: setAskPermissionAction
105
- }), proctorParams.fullscreenExit && /*#__PURE__*/_react.default.createElement(_fullscreen.default, {
106
- setAskPermissionAction: setAskPermissionAction
107
- }), /*#__PURE__*/_react.default.createElement(_breachParameters.default, {
108
- config: config,
109
- getProctorParamValues: getProctorParamValues,
110
- permissions: permissions,
111
- proctorParams: proctorParams,
112
- proctoringIdentifier: proctoringIdentifier
113
- }));
74
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
75
+ className: "".concat(proctorParams.copyPasteProctoring ? 'disable-copy-paste fullwidth fullheight' : 'fullwidth fullheight'),
76
+ children: [shouldShowProctoredComponent && children, !shouldShowProctoredComponent && customPermissionView && /*#__PURE__*/(0, _jsxRuntime.jsx)(CustomPermissionView, _objectSpread({
77
+ permissions: permissions,
78
+ proctorParams: proctorParams,
79
+ references: references,
80
+ actions: {
81
+ askPermission
82
+ },
83
+ browserDetails: (0, _browserUtils.getBrowserDetails)(),
84
+ permissionErrors: permissionErrors
85
+ }, permissionPassedProps)), !shouldShowProctoredComponent && !customPermissionView && /*#__PURE__*/(0, _jsxRuntime.jsx)(_permissions.Permission, {
86
+ permissions: permissions,
87
+ proctorParams: proctorParams,
88
+ askPermission: askPermission
89
+ }), proctorParams.webcamSnapshots && /*#__PURE__*/(0, _jsxRuntime.jsx)(_webcamActivityTracker.default, {
90
+ logger: logger,
91
+ config: config,
92
+ proctorParams: proctorParams,
93
+ proctoredContext: proctoredContext,
94
+ getWebcamSnapshot: getWebcamSnapshot,
95
+ proctoringIdentifier: proctoringIdentifier,
96
+ setAskPermissionAction: setAskPermissionAction
97
+ }), proctorParams.screenshareSnapshots && /*#__PURE__*/(0, _jsxRuntime.jsx)(_screenshareActivityTracker.default, {
98
+ config: config,
99
+ getScreengrab: getScreengrab,
100
+ proctorParams: proctorParams,
101
+ proctoredContext: proctoredContext,
102
+ proctoringIdentifier: proctoringIdentifier,
103
+ setAskPermissionAction: setAskPermissionAction
104
+ }), proctorParams.fullscreenExit && /*#__PURE__*/(0, _jsxRuntime.jsx)(_fullscreen.default, {
105
+ setAskPermissionAction: setAskPermissionAction,
106
+ proctorParams: proctorParams,
107
+ proctoredContext: proctoredContext
108
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_breachParameters.default, {
109
+ config: config,
110
+ getProctorParamValues: getProctorParamValues,
111
+ permissions: permissions,
112
+ proctorParams: proctorParams,
113
+ proctoringIdentifier: proctoringIdentifier
114
+ })]
115
+ });
114
116
  };
115
117
  exports.ProctorApp = ProctorApp;
116
118
  var _default = exports.default = ProctorApp;
@@ -9,11 +9,12 @@ require("core-js/modules/es.weak-map.js");
9
9
  require("core-js/modules/web.dom-collections.iterator.js");
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _loadable = _interopRequireDefault(require("../../utils/loadable"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
14
  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); }
14
15
  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; } /**
15
16
  * Asynchronously loads the component for FeaturePage
16
17
  */
17
18
  var _default = exports.default = (0, _loadable.default)(() => Promise.resolve().then(() => _interopRequireWildcard(require("./index"))), {
18
- fallback: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)
19
+ fallback: /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {})
19
20
  });
@@ -12,6 +12,7 @@ var _defaults = require("../../constants/defaults");
12
12
  var _useIsElectron = _interopRequireDefault(require("../../hooks/electron/useIsElectron"));
13
13
  var _ElectronContext = require("../../contexts/ElectronContext");
14
14
  var _useGenericFullScreenData = _interopRequireDefault(require("../../hooks/useGenericFullScreenData"));
15
+ var _jsxRuntime = require("react/jsx-runtime");
15
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
17
  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); }
17
18
  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; }
@@ -66,7 +67,7 @@ const ProctoredContextApp = _ref => {
66
67
  // endTest
67
68
  // })
68
69
 
69
- return /*#__PURE__*/_react.default.createElement(Context.Provider, {
70
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Context.Provider, {
70
71
  value: _objectSpread(_objectSpread({}, customContext), {}, {
71
72
  permissions,
72
73
  permissionSetter: {
@@ -91,9 +92,11 @@ const ProctoredContextApp = _ref => {
91
92
  screenshareReference
92
93
  },
93
94
  screenshareStream
95
+ }),
96
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ElectronContext.ElectronContextProvider, {
97
+ value: isElectronApp,
98
+ children: children
94
99
  })
95
- }, /*#__PURE__*/_react.default.createElement(_ElectronContext.ElectronContextProvider, {
96
- value: isElectronApp
97
- }, children));
100
+ });
98
101
  };
99
102
  var _default = exports.default = ProctoredContextApp;
@@ -36,6 +36,9 @@ function ElectronScreenShare(_ref) {
36
36
  try {
37
37
  await window.electron.permissions.requestScreenCapturePermission();
38
38
  const streams = await window.electron.streams.getScreenStream();
39
+ if (streams.length > 1) {
40
+ throw new Error('Multiple Screens found. Please use only one during proctoring');
41
+ }
39
42
  const startedScreenShareRecording = await window.electron.actions.startScreenShareRecording(streams[0].id);
40
43
  if (!startedScreenShareRecording) {
41
44
  throw new Error('Error starting screen share recording');
@@ -10,6 +10,7 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _ElectronContext = require("../../contexts/ElectronContext");
11
11
  var _electron = _interopRequireDefault(require("./electron"));
12
12
  var _web = _interopRequireDefault(require("./web"));
13
+ var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
15
  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); }
15
16
  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; }
@@ -24,14 +25,14 @@ const ScreenShare = _ref => {
24
25
  } = _ref;
25
26
  const isElectronApp = (0, _react.useContext)(_ElectronContext.ElectronContext);
26
27
  if (isElectronApp) {
27
- return /*#__PURE__*/_react.default.createElement(_electron.default, {
28
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_electron.default, {
28
29
  setAskPermissionAction: setAskPermissionAction,
29
30
  proctorParams: proctorParams,
30
31
  proctoredContext: proctoredContext,
31
32
  config: config
32
33
  });
33
34
  }
34
- return /*#__PURE__*/_react.default.createElement(_web.default, {
35
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.default, {
35
36
  proctoredContext: proctoredContext,
36
37
  setAskPermissionAction: setAskPermissionAction,
37
38
  getScreengrab: getScreengrab,
@@ -12,6 +12,7 @@ var _react = _interopRequireWildcard(require("react"));
12
12
  var _webcamMicrophoneUtils = require("../../utils/webcamMicrophoneUtils");
13
13
  var _dom = require("../../constants/dom");
14
14
  var _useBreachData = require("../../hooks/useBreachData");
15
+ var _jsxRuntime = require("react/jsx-runtime");
15
16
  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); }
16
17
  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; }
17
18
  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; }
@@ -86,7 +87,7 @@ function WebScreenShare(_ref) {
86
87
  sendScreengrab();
87
88
  }
88
89
  }, [breachData]);
89
- return /*#__PURE__*/_react.default.createElement("video", {
90
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("video", {
90
91
  ref: screenShareReference,
91
92
  className: "captured-video-canvas hide",
92
93
  id: _dom.SCREENSHARE_REFERENCE_ID
@@ -1,17 +1,25 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.description.js");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = ElectronWebCam;
7
8
  require("core-js/modules/es.promise.js");
8
- require("core-js/modules/es.symbol.description.js");
9
+ require("core-js/modules/es.weak-map.js");
10
+ require("core-js/modules/web.dom-collections.iterator.js");
9
11
  var _react = require("react");
12
+ var _loadable = _interopRequireDefault(require("../../utils/loadable"));
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
15
  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; }
11
16
  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) { _defineProperty(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; }
12
17
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
13
18
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
14
19
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
+ 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); }
21
+ 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; }
22
+ const Webcam = (0, _loadable.default)(() => Promise.resolve().then(() => _interopRequireWildcard(require('react-webcam'))));
15
23
  function ElectronWebCam(_ref) {
16
24
  let {
17
25
  setAskPermissionAction,
@@ -21,11 +29,13 @@ function ElectronWebCam(_ref) {
21
29
  } = _ref;
22
30
  const {
23
31
  permissionSetter,
32
+ permissions,
24
33
  references,
25
34
  setPermissionErrors,
26
35
  device
27
36
  } = (0, _react.useContext)(proctoredContext);
28
37
  const setVideoPermission = permissionSetter.video;
38
+ const isVideoTurnedOn = permissions.video;
29
39
  const webcamReference = references.webcamReference;
30
40
  const {
31
41
  recurring = false,
@@ -45,6 +55,9 @@ function ElectronWebCam(_ref) {
45
55
  throw new Error('Electron app does not have permission to access webcam');
46
56
  }
47
57
  const devices = await window.electron.streams.getWebcamStream();
58
+ if (devices.length === 0) {
59
+ throw new Error('No webcam devices found');
60
+ }
48
61
  const permissionGranted = await window.electron.actions.startWebCamRecording(devices[0].deviceId);
49
62
  if (permissionGranted) {
50
63
  device.setWebCamDeviceId(devices[0].deviceId);
@@ -106,5 +119,13 @@ function ElectronWebCam(_ref) {
106
119
  };
107
120
  }
108
121
  }, [deviceId]);
109
- return null;
122
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
123
+ children: isVideoTurnedOn && /*#__PURE__*/(0, _jsxRuntime.jsx)(Webcam, {
124
+ audio: false,
125
+ screenshotFormat: "image/jpeg",
126
+ ref: webcamReference,
127
+ className: "captured-video-canvas hide",
128
+ id: 'WEBCAM_REFERENCE_ID'
129
+ })
130
+ });
110
131
  }
@@ -10,6 +10,7 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _ElectronContext = require("../../contexts/ElectronContext");
11
11
  var _electron = _interopRequireDefault(require("./electron"));
12
12
  var _web = _interopRequireDefault(require("./web"));
13
+ var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
15
  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); }
15
16
  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,14 +26,14 @@ const WebCam = _ref => {
25
26
  } = _ref;
26
27
  const isElectronApp = (0, _react.useContext)(_ElectronContext.ElectronContext);
27
28
  if (isElectronApp) {
28
- return /*#__PURE__*/_react.default.createElement(_electron.default, {
29
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_electron.default, {
29
30
  setAskPermissionAction: setAskPermissionAction,
30
31
  proctorParams: proctorParams,
31
32
  proctoredContext: proctoredContext,
32
33
  config: config
33
34
  });
34
35
  }
35
- return /*#__PURE__*/_react.default.createElement(_web.default, {
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_web.default, {
36
37
  proctoredContext: proctoredContext,
37
38
  setAskPermissionAction: setAskPermissionAction,
38
39
  proctorParams: proctorParams,
@@ -16,6 +16,7 @@ var _browserUtils = require("../../utils/browserUtils");
16
16
  var _webcamMicrophoneUtils = require("../../utils/webcamMicrophoneUtils");
17
17
  var _dom = require("../../constants/dom");
18
18
  var _useBreachData = require("../../hooks/useBreachData");
19
+ var _jsxRuntime = require("react/jsx-runtime");
19
20
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
21
  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); }
21
22
  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; }
@@ -103,24 +104,25 @@ const WebWebCam = _ref => {
103
104
  }
104
105
  }
105
106
  }, [setVideoPermission, setAudioPermission, proctorParams]);
106
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _breachUtils.isWebcamRequired)(proctorParams) && /*#__PURE__*/_react.default.createElement(_reactWebcam.default, {
107
- audio: (0, _breachUtils.isAudioRequired)(),
108
- screenshotFormat: "image/jpeg",
109
- ref: webcamReference,
110
- onUserMedia: () => {
111
- setVideoPermission(true);
112
- },
113
- onUserMediaError: err => {
114
- logger("Retry Count = ".concat(retryCount, " | Webcam error, onUserMediaError | ").concat(err.toString()));
115
- if (retryCount === 0) {
116
- setVideoPermission(false);
117
- } else {
118
- setRetryCount(retryCount - 1);
119
- }
120
- },
121
- className: "captured-video-canvas hide",
122
- id: _dom.WEBCAM_REFERENCE_ID,
123
- key: retryCount
124
- }));
107
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
108
+ children: (0, _breachUtils.isWebcamRequired)(proctorParams) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactWebcam.default, {
109
+ audio: (0, _breachUtils.isAudioRequired)(),
110
+ screenshotFormat: "image/jpeg",
111
+ ref: webcamReference,
112
+ onUserMedia: () => {
113
+ setVideoPermission(true);
114
+ },
115
+ onUserMediaError: err => {
116
+ logger("Retry Count = ".concat(retryCount, " | Webcam error, onUserMediaError | ").concat(err.toString()));
117
+ if (retryCount === 0) {
118
+ setVideoPermission(false);
119
+ } else {
120
+ setRetryCount(retryCount - 1);
121
+ }
122
+ },
123
+ className: "captured-video-canvas hide",
124
+ id: _dom.WEBCAM_REFERENCE_ID
125
+ }, retryCount)
126
+ });
125
127
  };
126
128
  var _default = exports.default = WebWebCam;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useKishokMode;
7
+ require("core-js/modules/web.dom-collections.iterator.js");
8
+ var _react = require("react");
9
+ var _breachUtils = require("../../utils/breachUtils");
10
+ var _useGenericFullScreenData = _interopRequireDefault(require("../useGenericFullScreenData"));
11
+ var _ElectronContext = require("../../contexts/ElectronContext");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function useKishokMode(_ref) {
14
+ let {
15
+ proctoredContext,
16
+ proctorParams
17
+ } = _ref;
18
+ const {
19
+ permissions
20
+ } = (0, _react.useContext)(proctoredContext);
21
+ const [connectedToInternet, setConnectedToInternet] = (0, _react.useState)(true);
22
+ const isElectronApp = (0, _react.useContext)(_ElectronContext.ElectronContext);
23
+ const {
24
+ isFullscreen
25
+ } = (0, _useGenericFullScreenData.default)(isElectronApp);
26
+ const shouldShowProctoredComponent = (0, _breachUtils.showProctoredComponent)(proctorParams, permissions);
27
+ (0, _react.useEffect)(() => {
28
+ const updateOnlineStatus = () => {
29
+ setConnectedToInternet(window.navigator.onLine);
30
+ };
31
+ window.addEventListener('online', updateOnlineStatus);
32
+ window.addEventListener('offline', updateOnlineStatus);
33
+ updateOnlineStatus();
34
+ }, []);
35
+ (0, _react.useEffect)(() => {
36
+ if (typeof window !== 'undefined' && shouldShowProctoredComponent && isFullscreen && isElectronApp && connectedToInternet) {
37
+ window.electron.actions.enableKioskMode();
38
+ } else {
39
+ var _window$electron, _window$electron$acti;
40
+ (_window$electron = window.electron) === null || _window$electron === void 0 ? void 0 : (_window$electron$acti = _window$electron.actions) === null || _window$electron$acti === void 0 ? void 0 : _window$electron$acti.disableKioskMode();
41
+ }
42
+ }, [isFullscreen, shouldShowProctoredComponent, isElectronApp]);
43
+ }
@@ -12,7 +12,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
12
12
  const browserFullscreenElementProp = (0, _utils.getBrowserFullscreenElementProp)();
13
13
  function useFullscreenData() {
14
14
  const fullScreenElement = (0, _react.useRef)(document.documentElement);
15
- const [isFullscreen, setIsFullscreen] = (0, _react.useState)(document[browserFullscreenElementProp] != null || typeof window !== 'undefined' && !!window.NS_TESTING_ENVIRONMENT);
15
+ const [isFullscreen, setIsFullscreen] = (0, _react.useState)(typeof window !== 'undefined' && (document[browserFullscreenElementProp] != null || !!window.NS_TESTING_ENVIRONMENT));
16
16
  const setFullscreen = (0, _react.useCallback)(() => {
17
17
  var _fullScreenElement$cu, _fullScreenElement$cu2, _fullScreenElement$cu3, _fullScreenElement$cu4, _fullScreenElement$cu5, _fullScreenElement$cu6;
18
18
  if (!fullScreenElement || !fullScreenElement.current) {
package/dist/index.js CHANGED
@@ -15,4 +15,12 @@ Object.defineProperty(exports, "ProctoredContextApp", {
15
15
  return _components.ProctoredContextApp;
16
16
  }
17
17
  });
18
- var _components = require("./components");
18
+ Object.defineProperty(exports, "useIsElectron", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _useIsElectron.default;
22
+ }
23
+ });
24
+ var _components = require("./components");
25
+ var _useIsElectron = _interopRequireDefault(require("./hooks/electron/useIsElectron"));
26
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -13,6 +13,9 @@ const PROPERTY_TYPES = {
13
13
  BLUR: 'blur'
14
14
  };
15
15
  const getBrowserPropPrefix = () => {
16
+ if (typeof window === 'undefined') {
17
+ return '';
18
+ }
16
19
  if (typeof document.msHidden !== 'undefined') {
17
20
  return 'ms';
18
21
  } else if (typeof document.webkitHidden !== 'undefined') {
@@ -21,6 +24,9 @@ const getBrowserPropPrefix = () => {
21
24
  return '';
22
25
  };
23
26
  const getBrowserPropForHidden = () => {
27
+ if (typeof window === 'undefined') {
28
+ return 'hidden';
29
+ }
24
30
  if (typeof document.hidden !== 'undefined') {
25
31
  return 'hidden';
26
32
  }
@@ -49,6 +55,9 @@ exports.getFocusEventName = getFocusEventName;
49
55
  const getBlurEventName = () => getBrowserDocumentProp(PROPERTY_TYPES.BLUR);
50
56
  exports.getBlurEventName = getBlurEventName;
51
57
  const getBrowserFullscreenElementProp = () => {
58
+ if (typeof document === 'undefined') {
59
+ return '';
60
+ }
52
61
  if (typeof document.fullscreenElement !== 'undefined') {
53
62
  return 'fullscreenElement';
54
63
  } else if (typeof document.mozFullScreenElement !== 'undefined') {
@@ -9,9 +9,12 @@ require("core-js/modules/es.array.includes.js");
9
9
  require("core-js/modules/es.string.includes.js");
10
10
  var _defaults = require("../constants/defaults");
11
11
  const isGPUAvailable = () => {
12
- const canvas = document.createElement("canvas");
13
- const webgl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
14
- const debugInfo = webgl === null || webgl === void 0 ? void 0 : webgl.getExtension("webgl_debug_renderer_info");
12
+ if (typeof window === 'undefined') {
13
+ return false;
14
+ }
15
+ const canvas = document.createElement('canvas');
16
+ const webgl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
17
+ const debugInfo = webgl === null || webgl === void 0 ? void 0 : webgl.getExtension('webgl_debug_renderer_info');
15
18
  if (!debugInfo) {
16
19
  return false;
17
20
  }
@@ -6,9 +6,16 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
+ require("core-js/modules/es.symbol.description.js");
9
10
  var _react = _interopRequireWildcard(require("react"));
11
+ var _jsxRuntime = require("react/jsx-runtime");
10
12
  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); }
11
13
  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; }
14
+ 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; }
15
+ 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) { _defineProperty(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; }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
18
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
12
19
  const loadable = function loadable(importFunc) {
13
20
  let {
14
21
  fallback = null
@@ -16,8 +23,9 @@ const loadable = function loadable(importFunc) {
16
23
  fallback: null
17
24
  };
18
25
  const LazyComponent = /*#__PURE__*/(0, _react.lazy)(importFunc);
19
- return props => /*#__PURE__*/_react.default.createElement(_react.Suspense, {
20
- fallback: fallback
21
- }, /*#__PURE__*/_react.default.createElement(LazyComponent, props));
26
+ return props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.Suspense, {
27
+ fallback: fallback,
28
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LazyComponent, _objectSpread({}, props))
29
+ });
22
30
  };
23
31
  var _default = exports.default = loadable;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@newtonschool/react_proctoring_library",
3
- "version": "0.0.67-staging",
3
+ "version": "0.0.69",
4
4
  "description": "Used to proctor online tests",
5
5
  "author": "ayushkagrawal,shreyachandra,weastel",
6
6
  "main": "dist/index.js",