studiokit-scaffolding-js 4.5.12-next.3.9 → 4.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,12 +19,11 @@ var Error = function (props) {
19
19
  react_1.default.createElement(react_bootstrap_1.Col, { md: 8 },
20
20
  react_1.default.createElement("h1", null, "Uh oh!"),
21
21
  message && react_1.default.createElement("blockquote", null, message),
22
+ react_1.default.createElement("p", null, " Sorry, but it looks like something went wrong while processing your request."),
22
23
  react_1.default.createElement("p", null,
23
- "Sorry, but it looks like something went wrong while processing your request.",
24
- react_1.default.createElement("br", null),
25
- lockDownBrowserInfo.isClientLockDownBrowser && react_1.default.createElement(LockDownBrowserExitButton_1.LockDownBrowserExitButton, null),
26
24
  "If you have any questions or concerns please contact us at",
27
25
  ' ',
28
- react_1.default.createElement("a", { href: "mailto:tlt@purdue.edu" }, "tlt@purdue.edu")))))));
26
+ react_1.default.createElement("a", { href: "mailto:tlt@purdue.edu" }, "tlt@purdue.edu")),
27
+ lockDownBrowserInfo.isClientLockDownBrowser && react_1.default.createElement(LockDownBrowserExitButton_1.LockDownBrowserExitButton, null))))));
29
28
  };
30
29
  exports.default = Error;
@@ -14,8 +14,8 @@ var LockDownBrowserExitButton = function () {
14
14
  return (react_1.default.createElement(Button_1.default, { className: "btn-primary mb4", onClick: function () {
15
15
  return history.push({
16
16
  pathname: location.pathname,
17
- search: "?" + constants_1.lockDownBrowserExitQueryParam
17
+ search: "?" + constants_1.LOCKDOWN_BROWSER_KEY.EXIT_BROWSER + "=" + constants_1.LOCKDOWN_BROWSER_TRUE
18
18
  });
19
- } }, "Close Browser"));
19
+ } }, "Close LockDown Browser"));
20
20
  };
21
21
  exports.LockDownBrowserExitButton = LockDownBrowserExitButton;
@@ -1,5 +1,4 @@
1
- export declare const lockDownBrowserExitQueryParam = "rldbxb=1";
2
- export declare enum LOCKDOWN_BROWSER_COOKIE {
1
+ export declare enum LOCKDOWN_BROWSER_KEY {
3
2
  /** Cookie set by LDB to claim it is LDB. */
4
3
  CLIENT_IS_LOCK_DOWN_BROWSER = "rldbci",
5
4
  /** Cookie set by LDB containing the client build identifier. */
@@ -9,6 +8,8 @@ export declare enum LOCKDOWN_BROWSER_COOKIE {
9
8
  /** Cookie set by LDB containing the build date, if the client is on mac. */
10
9
  BUILD_DATE_MAC = "rldbbdm",
11
10
  /** Cookie set by LDB containing the build date, if the client is on iPad. */
12
- BUILD_DATE_IPAD = "rldbbdi"
11
+ BUILD_DATE_IPAD = "rldbbdi",
12
+ /** Query param to direct LDB to close itself */
13
+ EXIT_BROWSER = "rldbxb"
13
14
  }
14
15
  export declare const LOCKDOWN_BROWSER_TRUE = "1";
@@ -1,18 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LOCKDOWN_BROWSER_TRUE = exports.LOCKDOWN_BROWSER_COOKIE = exports.lockDownBrowserExitQueryParam = void 0;
4
- exports.lockDownBrowserExitQueryParam = 'rldbxb=1';
5
- var LOCKDOWN_BROWSER_COOKIE;
6
- (function (LOCKDOWN_BROWSER_COOKIE) {
3
+ exports.LOCKDOWN_BROWSER_TRUE = exports.LOCKDOWN_BROWSER_KEY = void 0;
4
+ var LOCKDOWN_BROWSER_KEY;
5
+ (function (LOCKDOWN_BROWSER_KEY) {
7
6
  /** Cookie set by LDB to claim it is LDB. */
8
- LOCKDOWN_BROWSER_COOKIE["CLIENT_IS_LOCK_DOWN_BROWSER"] = "rldbci";
7
+ LOCKDOWN_BROWSER_KEY["CLIENT_IS_LOCK_DOWN_BROWSER"] = "rldbci";
9
8
  /** Cookie set by LDB containing the client build identifier. */
10
- LOCKDOWN_BROWSER_COOKIE["BUILD_ID"] = "rldbid";
9
+ LOCKDOWN_BROWSER_KEY["BUILD_ID"] = "rldbid";
11
10
  /** Cookie set by LDB containing the build date, if the client is on windows. */
12
- LOCKDOWN_BROWSER_COOKIE["BUILD_DATE_WINDOWS"] = "rldbbdw";
11
+ LOCKDOWN_BROWSER_KEY["BUILD_DATE_WINDOWS"] = "rldbbdw";
13
12
  /** Cookie set by LDB containing the build date, if the client is on mac. */
14
- LOCKDOWN_BROWSER_COOKIE["BUILD_DATE_MAC"] = "rldbbdm";
13
+ LOCKDOWN_BROWSER_KEY["BUILD_DATE_MAC"] = "rldbbdm";
15
14
  /** Cookie set by LDB containing the build date, if the client is on iPad. */
16
- LOCKDOWN_BROWSER_COOKIE["BUILD_DATE_IPAD"] = "rldbbdi";
17
- })(LOCKDOWN_BROWSER_COOKIE = exports.LOCKDOWN_BROWSER_COOKIE || (exports.LOCKDOWN_BROWSER_COOKIE = {}));
15
+ LOCKDOWN_BROWSER_KEY["BUILD_DATE_IPAD"] = "rldbbdi";
16
+ /** Query param to direct LDB to close itself */
17
+ LOCKDOWN_BROWSER_KEY["EXIT_BROWSER"] = "rldbxb";
18
+ })(LOCKDOWN_BROWSER_KEY = exports.LOCKDOWN_BROWSER_KEY || (exports.LOCKDOWN_BROWSER_KEY = {}));
18
19
  exports.LOCKDOWN_BROWSER_TRUE = '1';
@@ -1,2 +1,2 @@
1
1
  /// <reference types="connected-react-router" />
2
- export default function caliperSaga(): Generator<import("redux-saga/effects").TakeEffect | import("redux-saga/effects").PutEffect<import("connected-react-router").CallHistoryMethodAction<[import("history").LocationDescriptorObject<unknown>]>>, void, unknown>;
2
+ export default function lockDownBrowserSaga(runIndefinitely?: boolean): Generator<import("redux-saga/effects").TakeEffect | import("redux-saga/effects").PutEffect<import("connected-react-router").CallHistoryMethodAction<[import("history").LocationDescriptorObject<unknown>]>>, void, unknown>;
@@ -28,34 +28,54 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
30
  var connected_react_router_1 = require("connected-react-router");
31
+ var query_string_1 = require("query-string");
31
32
  var effects_1 = require("redux-saga/effects");
32
33
  var studiokit_net_js_1 = require("studiokit-net-js");
33
- function caliperSaga() {
34
+ function lockDownBrowserSaga(runIndefinitely) {
35
+ var _loop_1;
36
+ if (runIndefinitely === void 0) { runIndefinitely = true; }
34
37
  return __generator(this, function (_a) {
35
38
  switch (_a.label) {
36
39
  case 0:
37
- if (!true) return [3 /*break*/, 3];
38
- // wait for any LDB error
39
- return [4 /*yield*/, effects_1.take(function (action) {
40
- var _a, _b;
41
- return (action === null || action === void 0 ? void 0 : action.type) === studiokit_net_js_1.NET_ACTION.TRY_FETCH_FAILED &&
42
- ((_b = (_a = action === null || action === void 0 ? void 0 : action.errorData) === null || _a === void 0 ? void 0 : _a.message) === null || _b === void 0 ? void 0 : _b.indexOf('LockDown Browser')) !== 0;
43
- })
44
- // redirect to known LDB error route
45
- ];
46
- case 1:
47
- // wait for any LDB error
48
- _a.sent();
49
- // redirect to known LDB error route
50
- return [4 /*yield*/, effects_1.put(connected_react_router_1.push({
51
- pathname: '/error'
52
- }))];
40
+ _loop_1 = function () {
41
+ var message;
42
+ return __generator(this, function (_a) {
43
+ switch (_a.label) {
44
+ case 0:
45
+ message = '';
46
+ // wait for any LDB error
47
+ return [4 /*yield*/, effects_1.take(function (action) {
48
+ var _a;
49
+ message = (_a = action === null || action === void 0 ? void 0 : action.errorData) === null || _a === void 0 ? void 0 : _a.message;
50
+ return (action === null || action === void 0 ? void 0 : action.type) === studiokit_net_js_1.NET_ACTION.TRY_FETCH_FAILED && !!(message === null || message === void 0 ? void 0 : message.includes('LockDown Browser'));
51
+ })
52
+ // redirect to known LDB error route
53
+ ];
54
+ case 1:
55
+ // wait for any LDB error
56
+ _a.sent();
57
+ // redirect to known LDB error route
58
+ return [4 /*yield*/, effects_1.put(connected_react_router_1.push({
59
+ pathname: '/error',
60
+ search: query_string_1.stringify({ message: message })
61
+ }))];
62
+ case 2:
63
+ // redirect to known LDB error route
64
+ _a.sent();
65
+ return [2 /*return*/];
66
+ }
67
+ });
68
+ };
69
+ _a.label = 1;
70
+ case 1: return [5 /*yield**/, _loop_1()];
53
71
  case 2:
54
- // redirect to known LDB error route
55
72
  _a.sent();
56
- return [3 /*break*/, 0];
57
- case 3: return [2 /*return*/];
73
+ _a.label = 3;
74
+ case 3:
75
+ if (runIndefinitely) return [3 /*break*/, 1];
76
+ _a.label = 4;
77
+ case 4: return [2 /*return*/];
58
78
  }
59
79
  });
60
80
  }
61
- exports.default = caliperSaga;
81
+ exports.default = lockDownBrowserSaga;
@@ -6,11 +6,11 @@ var cookies_1 = require("./cookies");
6
6
  var getLockDownBrowserInfo = function () {
7
7
  var cookies = cookies_1.getCookies();
8
8
  return {
9
- isClientLockDownBrowser: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_COOKIE.CLIENT_IS_LOCK_DOWN_BROWSER] === lockDownBrowser_1.LOCKDOWN_BROWSER_TRUE,
10
- buildId: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_COOKIE.BUILD_ID],
11
- buildDateWindows: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_COOKIE.BUILD_DATE_WINDOWS],
12
- buildDateMac: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_COOKIE.BUILD_DATE_MAC],
13
- buildDateIpad: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_COOKIE.BUILD_DATE_IPAD]
9
+ isClientLockDownBrowser: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.CLIENT_IS_LOCK_DOWN_BROWSER] === lockDownBrowser_1.LOCKDOWN_BROWSER_TRUE,
10
+ buildId: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_ID],
11
+ buildDateWindows: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_WINDOWS],
12
+ buildDateMac: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_MAC],
13
+ buildDateIpad: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_IPAD]
14
14
  };
15
15
  };
16
16
  exports.getLockDownBrowserInfo = getLockDownBrowserInfo;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "studiokit-scaffolding-js",
3
- "version": "4.5.12-next.3.9",
3
+ "version": "4.6.0",
4
4
  "description": "Common scaffolding for Studio apps at Purdue",
5
5
  "repository": "https://gitlab.com/purdue-informatics/studiokit/studiokit-scaffolding-js",
6
6
  "license": "MIT",