@newtonschool/react_proctoring_library 0.0.75 → 0.0.76

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,7 +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
+ var _useKioskMode = _interopRequireDefault(require("../../hooks/electron/useKioskMode"));
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
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; }
14
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; }
@@ -25,13 +25,15 @@ function FullScreen(_ref) {
25
25
  const {
26
26
  setFullscreen
27
27
  } = (0, _useGenericFullScreenData.default)(isElectronApp);
28
- (0, _useKishokMode.default)({
28
+ (0, _useKioskMode.default)({
29
29
  proctoredContext,
30
30
  proctorParams
31
31
  });
32
32
  (0, _react.useEffect)(() => {
33
33
  setAskPermissionAction(oldAskPermissionAction => _objectSpread(_objectSpread({}, oldAskPermissionAction), {}, {
34
- fullscreen: () => setFullscreen(true)
34
+ fullscreen: () => {
35
+ setFullscreen(true);
36
+ }
35
37
  }));
36
38
  }, [setAskPermissionAction, setFullscreen]);
37
39
  return null;
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = ElectronWebCam;
8
+ require("core-js/modules/es.array.includes.js");
9
+ require("core-js/modules/es.string.includes.js");
8
10
  require("core-js/modules/web.dom-collections.iterator.js");
9
11
  require("core-js/modules/es.promise.js");
10
12
  var _react = require("react");
@@ -16,11 +18,17 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
16
18
  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
19
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
18
20
  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); }
21
+ const getMacBookDevice = function getMacBookDevice() {
22
+ let devices = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
23
+ if (devices.length === 1) {
24
+ return devices[0];
25
+ }
26
+ return devices.find(device => device.label.includes('FaceTime HD Camera'));
27
+ };
19
28
  function ElectronWebCam(_ref) {
20
29
  let {
21
30
  setAskPermissionAction,
22
31
  proctoredContext,
23
- proctorParams,
24
32
  config
25
33
  } = _ref;
26
34
  const {
@@ -54,9 +62,13 @@ function ElectronWebCam(_ref) {
54
62
  if (devices.length === 0) {
55
63
  throw new Error('No webcam devices found');
56
64
  }
57
- const permissionGranted = await window.electron.actions.startWebCamRecording(devices[0].deviceId);
65
+ const macBookDevice = getMacBookDevice(devices);
66
+ if (!device) {
67
+ throw new Error('No webcam devices found');
68
+ }
69
+ const permissionGranted = await window.electron.actions.startWebCamRecording(macBookDevice.deviceId);
58
70
  if (permissionGranted) {
59
- device.setWebCamDeviceId(devices[0].deviceId);
71
+ device.setWebCamDeviceId(macBookDevice.deviceId);
60
72
  } else {
61
73
  throw new Error('Error starting webcam recording');
62
74
  }
@@ -3,14 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = useKishokMode;
6
+ exports.default = useKioskMode;
7
7
  require("core-js/modules/web.dom-collections.iterator.js");
8
8
  var _react = require("react");
9
9
  var _breachUtils = require("../../utils/breachUtils");
10
10
  var _useGenericFullScreenData = _interopRequireDefault(require("../useGenericFullScreenData"));
11
11
  var _ElectronContext = require("../../contexts/ElectronContext");
12
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- function useKishokMode(_ref) {
13
+ function useKioskMode(_ref) {
14
14
  let {
15
15
  proctoredContext,
16
16
  proctorParams
@@ -3,35 +3,23 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = useWakeUpLock;
6
+ exports.default = usePageVisibility;
7
7
  require("core-js/modules/web.dom-collections.iterator.js");
8
- require("core-js/modules/es.promise.js");
9
8
  var _react = require("react");
10
9
  var _ElectronContext = require("../../contexts/ElectronContext");
11
- function useWakeUpLock() {
12
- const [isWakeUpLockAcquired, setIsWakeUpLockAcquired] = (0, _react.useState)(0);
10
+ function usePageVisibility(isProctorParam) {
11
+ const [isPageFocused, setIsPageFocused] = (0, _react.useState)(true);
13
12
  const isElectronApp = (0, _react.useContext)(_ElectronContext.ElectronContext);
14
- const acquireWakeUpLock = async () => {
15
- const id = await window.electron.actions.startWakeLock();
16
- setIsWakeUpLockAcquired(id);
17
- };
18
- const releaseWakeUpLock = async () => {
19
- window.electron.actions.stopWakeLock(isWakeUpLockAcquired);
20
- setIsWakeUpLockAcquired(0);
21
- };
22
13
  (0, _react.useEffect)(() => {
23
14
  if (isElectronApp) {
24
- const isWakeUpLockChangeHandler = isPageFocused => {
25
- setIsWakeUpLockAcquired(isPageFocused);
15
+ const isPageFocusChanged = isPageFocused => {
16
+ setIsPageFocused(isPageFocused);
26
17
  };
27
- const signal = window.electron.listener.isPageVisibilityChanged(isWakeUpLockChangeHandler);
18
+ const signal = window.electron.listener.isPageFocusedChanged(isPageFocusChanged);
28
19
  return () => {
29
- window.electron.listener.removeListener(signal, isWakeUpLockChangeHandler);
20
+ window.electron.listener.removeListener(signal, isPageFocusChanged);
30
21
  };
31
22
  }
32
23
  }, [isElectronApp]);
33
- return {
34
- acquireWakeUpLock,
35
- releaseWakeUpLock
36
- };
24
+ return isPageFocused && isProctorParam;
37
25
  }
@@ -8,6 +8,7 @@ var _useFullScreenData = _interopRequireDefault(require("./web/useFullScreenData
8
8
  var _useFullScreenData2 = _interopRequireDefault(require("./electron/useFullScreenData"));
9
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  function useGenericFullScreenData(isElectronApp) {
11
+ console.log(isElectronApp, 'isElectronApp');
11
12
  const {
12
13
  isFullscreen: webIsFullScreen,
13
14
  setFullscreen: setWebIsFullScreen
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@newtonschool/react_proctoring_library",
3
- "version": "0.0.75",
3
+ "version": "0.0.76",
4
4
  "description": "Used to proctor online tests",
5
5
  "author": "ayushkagrawal,shreyachandra,weastel",
6
6
  "main": "dist/index.js",