studiokit-scaffolding-js 4.3.20 → 4.3.21
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.
- package/LICENSE +21 -21
- package/README.md +127 -127
- package/lib/components/ActionList.d.ts +20 -20
- package/lib/components/ActionList.js +94 -94
- package/lib/components/AlertDialog.d.ts +18 -18
- package/lib/components/AlertDialog.js +21 -21
- package/lib/components/AlertWithIcon.d.ts +7 -7
- package/lib/components/AlertWithIcon.js +57 -57
- package/lib/components/Blots/CustomImageSpec.d.ts +14 -14
- package/lib/components/Blots/CustomImageSpec.js +45 -45
- package/lib/components/Blots/CustomVideoSpec.d.ts +16 -16
- package/lib/components/Blots/CustomVideoSpec.js +47 -47
- package/lib/components/ConnectedModal.d.ts +6 -6
- package/lib/components/ConnectedModal.js +11 -11
- package/lib/components/Dropdowns/GroupsDropdown.d.ts +18 -18
- package/lib/components/Dropdowns/GroupsDropdown.js +90 -90
- package/lib/components/Dropdowns/ManagedNavDropdown.d.ts +32 -32
- package/lib/components/Dropdowns/ManagedNavDropdown.js +118 -118
- package/lib/components/Dropdowns/UserDropdown.d.ts +6 -6
- package/lib/components/Dropdowns/UserDropdown.js +76 -76
- package/lib/components/Dropdowns/index.d.ts +3 -3
- package/lib/components/Dropdowns/index.js +12 -12
- package/lib/components/EntityOwnerList.d.ts +11 -11
- package/lib/components/EntityOwnerList.js +63 -63
- package/lib/components/ErrorBoundary.d.ts +11 -11
- package/lib/components/ErrorBoundary.js +74 -74
- package/lib/components/Forms/DateField.d.ts +13 -13
- package/lib/components/Forms/DateField.js +99 -99
- package/lib/components/Forms/TimeField.d.ts +11 -11
- package/lib/components/Forms/TimeField.js +112 -112
- package/lib/components/Forms/index.d.ts +2 -2
- package/lib/components/Forms/index.js +14 -14
- package/lib/components/Groups/CreateEditCopySaveButtons.d.ts +10 -10
- package/lib/components/Groups/CreateEditCopySaveButtons.js +18 -18
- package/lib/components/Groups/GroupCreateOrEditCommonProps.d.ts +6 -6
- package/lib/components/Groups/GroupCreateOrEditCommonProps.js +2 -2
- package/lib/components/Groups/RosterSyncInfo.d.ts +5 -5
- package/lib/components/Groups/RosterSyncInfo.js +54 -54
- package/lib/components/HOC/AccessibleAppComponent.d.ts +15 -15
- package/lib/components/HOC/AccessibleAppComponent.js +135 -135
- package/lib/components/HOC/ActivityRequiredComponent.d.ts +105 -105
- package/lib/components/HOC/ActivityRequiredComponent.js +101 -101
- package/lib/components/HOC/AsyncComponent.d.ts +37 -37
- package/lib/components/HOC/AsyncComponent.js +136 -136
- package/lib/components/HOC/AuthenticatedComponent.d.ts +10 -10
- package/lib/components/HOC/AuthenticatedComponent.js +104 -104
- package/lib/components/HOC/CollectionComponent.d.ts +61 -61
- package/lib/components/HOC/CollectionComponent.js +175 -175
- package/lib/components/HOC/CollectionFirstItemComponent.d.ts +67 -67
- package/lib/components/HOC/CollectionFirstItemComponent.js +94 -94
- package/lib/components/HOC/CollectionItemComponent.d.ts +61 -61
- package/lib/components/HOC/CollectionItemComponent.js +172 -172
- package/lib/components/HOC/ConnectedModalComponent.d.ts +26 -26
- package/lib/components/HOC/ConnectedModalComponent.js +110 -110
- package/lib/components/HOC/DataDependentComponent.d.ts +61 -61
- package/lib/components/HOC/DataDependentComponent.js +90 -90
- package/lib/components/HOC/EntityComponent.d.ts +83 -83
- package/lib/components/HOC/EntityComponent.js +120 -120
- package/lib/components/HOC/FullscreenModalComponent.d.ts +74 -74
- package/lib/components/HOC/FullscreenModalComponent.js +173 -173
- package/lib/components/HOC/GroupActivityRequiredComponent.d.ts +29 -29
- package/lib/components/HOC/GroupActivityRequiredComponent.js +49 -49
- package/lib/components/HOC/GuidComponent.d.ts +14 -14
- package/lib/components/HOC/GuidComponent.js +72 -72
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.d.ts +172 -172
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +72 -72
- package/lib/components/HOC/ModelErrorRedirectComponent.d.ts +69 -69
- package/lib/components/HOC/ModelErrorRedirectComponent.js +101 -101
- package/lib/components/HOC/SearchPersistorComponent.d.ts +85 -85
- package/lib/components/HOC/SearchPersistorComponent.js +198 -198
- package/lib/components/HOC/UnauthenticatedComponent.d.ts +62 -62
- package/lib/components/HOC/UnauthenticatedComponent.js +90 -90
- package/lib/components/HOC/UserComponent.d.ts +3 -3
- package/lib/components/HOC/UserComponent.js +12 -12
- package/lib/components/Icons/IconExternalUser.d.ts +3 -3
- package/lib/components/Icons/IconExternalUser.js +24 -24
- package/lib/components/Icons/IconImpersonation.d.ts +3 -3
- package/lib/components/Icons/IconImpersonation.js +24 -24
- package/lib/components/Icons/IconStopImpersonating.d.ts +3 -3
- package/lib/components/Icons/IconStopImpersonating.js +24 -24
- package/lib/components/Impersonation/Button.d.ts +7 -7
- package/lib/components/Impersonation/Button.js +61 -61
- package/lib/components/Impersonation/Link.d.ts +7 -7
- package/lib/components/Impersonation/Link.js +58 -58
- package/lib/components/Impersonation/UserDetail.css +22 -22
- package/lib/components/Impersonation/UserDetail.d.ts +22 -22
- package/lib/components/Impersonation/UserDetail.js +23 -23
- package/lib/components/Loading.d.ts +4 -4
- package/lib/components/Loading.js +24 -24
- package/lib/components/Lti/Confirm.d.ts +8 -8
- package/lib/components/Lti/Confirm.js +37 -37
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.d.ts +15 -15
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +83 -83
- package/lib/components/Lti/Launch.d.ts +21 -21
- package/lib/components/Lti/Launch.js +52 -52
- package/lib/components/Lti/LaunchGroup.d.ts +9 -9
- package/lib/components/Lti/LaunchGroup.js +45 -45
- package/lib/components/NewVersionAlert.d.ts +18 -18
- package/lib/components/NewVersionAlert.js +97 -97
- package/lib/components/NotFound.d.ts +3 -3
- package/lib/components/NotFound.js +28 -28
- package/lib/components/Notifications.d.ts +39 -39
- package/lib/components/Notifications.js +175 -175
- package/lib/components/RefreshIndicator/Bordered.d.ts +7 -7
- package/lib/components/RefreshIndicator/Bordered.js +35 -35
- package/lib/components/RefreshIndicator/Inline.d.ts +4 -4
- package/lib/components/RefreshIndicator/Inline.js +36 -36
- package/lib/components/RefreshIndicator/index.d.ts +21 -21
- package/lib/components/RefreshIndicator/index.js +116 -116
- package/lib/components/SearchControls.d.ts +14 -14
- package/lib/components/SearchControls.js +34 -34
- package/lib/components/SentryRoute.d.ts +3 -3
- package/lib/components/SentryRoute.js +25 -25
- package/lib/components/Tables/RoleFilter.d.ts +14 -14
- package/lib/components/Tables/RoleFilter.js +53 -53
- package/lib/components/Tables/TextFilter.d.ts +7 -7
- package/lib/components/Tables/TextFilter.js +26 -26
- package/lib/components/UserRoles/Add.d.ts +31 -31
- package/lib/components/UserRoles/Add.js +165 -165
- package/lib/components/UserRoles/RoleCell.d.ts +21 -21
- package/lib/components/UserRoles/RoleCell.js +53 -53
- package/lib/components/UserRoles/Select.d.ts +27 -27
- package/lib/components/UserRoles/Select.js +44 -44
- package/lib/components/UserRoles/Table.d.ts +16 -16
- package/lib/components/UserRoles/Table.js +99 -99
- package/lib/components/UserRoles/index.d.ts +76 -76
- package/lib/components/UserRoles/index.js +361 -361
- package/lib/constants/baseActivity.d.ts +25 -25
- package/lib/constants/baseActivity.js +29 -29
- package/lib/constants/baseRole.d.ts +9 -9
- package/lib/constants/baseRole.js +13 -13
- package/lib/constants/configuration.d.ts +8 -8
- package/lib/constants/configuration.js +39 -39
- package/lib/constants/externalProviderType.d.ts +5 -5
- package/lib/constants/externalProviderType.js +9 -9
- package/lib/constants/index.d.ts +8 -8
- package/lib/constants/index.js +20 -20
- package/lib/constants/mockData.d.ts +82 -84
- package/lib/constants/mockData.js +379 -379
- package/lib/constants/modelStatus.d.ts +10 -10
- package/lib/constants/modelStatus.js +14 -14
- package/lib/constants/notificationType.d.ts +7 -7
- package/lib/constants/notificationType.js +11 -11
- package/lib/constants/shard.d.ts +6 -6
- package/lib/constants/shard.js +10 -10
- package/lib/constants/tier.d.ts +6 -6
- package/lib/constants/tier.js +10 -10
- package/lib/constants/userRole.d.ts +2 -2
- package/lib/constants/userRole.js +21 -21
- package/lib/css/base/_base.css +98 -98
- package/lib/css/base/_typography.css +130 -130
- package/lib/css/components/_alert.css +85 -85
- package/lib/css/components/_bootstrap-grid.css +28 -28
- package/lib/css/components/_buttons.css +325 -325
- package/lib/css/components/_forms.css +91 -91
- package/lib/css/components/_menu.css +56 -56
- package/lib/css/components/_modals.css +41 -41
- package/lib/css/components/_tables.css +426 -426
- package/lib/css/components/_tags.css +12 -12
- package/lib/css/index-with-variables.css +14 -14
- package/lib/css/index.css +13 -13
- package/lib/css/utils/_border.css +463 -463
- package/lib/css/utils/_color.css +271 -271
- package/lib/css/utils/_display.css +312 -312
- package/lib/css/utils/_general.css +48 -48
- package/lib/css/utils/_icon.css +16 -16
- package/lib/css/utils/_text.css +24 -24
- package/lib/css/utils/_width.css +60 -60
- package/lib/css/variables.css +70 -70
- package/lib/endpointMappings.d.ts +4 -4
- package/lib/endpointMappings.js +173 -173
- package/lib/hooks/useCollection.d.ts +6 -6
- package/lib/hooks/useCollection.js +61 -61
- package/lib/hooks/useCollectionConfiguration.d.ts +27 -27
- package/lib/hooks/useCollectionConfiguration.js +67 -67
- package/lib/hooks/useCollectionItem.d.ts +6 -6
- package/lib/hooks/useCollectionItem.js +54 -54
- package/lib/hooks/useGuid.d.ts +4 -4
- package/lib/hooks/useGuid.js +14 -14
- package/lib/hooks/usePrevious.d.ts +5 -5
- package/lib/hooks/usePrevious.js +18 -18
- package/lib/index.d.ts +8 -8
- package/lib/index.js +30 -30
- package/lib/redux/actionCreator.d.ts +5 -5
- package/lib/redux/actionCreator.js +16 -16
- package/lib/redux/actions.d.ts +12 -12
- package/lib/redux/actions.js +30 -30
- package/lib/redux/configureReducers.d.ts +22 -22
- package/lib/redux/configureReducers.js +94 -94
- package/lib/redux/configureStore.d.ts +14 -14
- package/lib/redux/configureStore.js +118 -118
- package/lib/redux/helpers.d.ts +2 -2
- package/lib/redux/helpers.js +7 -7
- package/lib/redux/reducers/index.d.ts +4 -4
- package/lib/redux/reducers/index.js +12 -12
- package/lib/redux/reducers/modalsReducer.d.ts +8 -8
- package/lib/redux/reducers/modalsReducer.js +54 -54
- package/lib/redux/reducers/notificationsReducer.d.ts +9 -9
- package/lib/redux/reducers/notificationsReducer.js +27 -27
- package/lib/redux/reducers/searchReducer.d.ts +17 -17
- package/lib/redux/reducers/searchReducer.js +26 -26
- package/lib/redux/sagas/caliperSaga.d.ts +2 -2
- package/lib/redux/sagas/caliperSaga.js +296 -296
- package/lib/redux/sagas/clockOffsetSaga.d.ts +10 -10
- package/lib/redux/sagas/clockOffsetSaga.js +81 -81
- package/lib/redux/sagas/configurationSaga.d.ts +1 -1
- package/lib/redux/sagas/configurationSaga.js +48 -48
- package/lib/redux/sagas/errorSaga.d.ts +2 -2
- package/lib/redux/sagas/errorSaga.js +66 -66
- package/lib/redux/sagas/identityProviderSaga.d.ts +2 -2
- package/lib/redux/sagas/identityProviderSaga.js +91 -91
- package/lib/redux/sagas/initialDataLoadSaga.d.ts +1 -1
- package/lib/redux/sagas/initialDataLoadSaga.js +33 -33
- package/lib/redux/sagas/postLoginDataSaga.d.ts +9 -9
- package/lib/redux/sagas/postLoginDataSaga.js +87 -87
- package/lib/redux/sagas/postLoginRedirectSaga.d.ts +6 -6
- package/lib/redux/sagas/postLoginRedirectSaga.js +96 -96
- package/lib/redux/sagas/rootSaga.d.ts +5 -5
- package/lib/redux/sagas/rootSaga.js +144 -144
- package/lib/redux/sagas/sentrySaga.d.ts +1 -1
- package/lib/redux/sagas/sentrySaga.js +103 -103
- package/lib/services/codeProviderService.d.ts +3 -3
- package/lib/services/codeProviderService.js +36 -36
- package/lib/services/documentService.d.ts +10 -10
- package/lib/services/documentService.js +17 -17
- package/lib/services/persistenceService.d.ts +13 -13
- package/lib/services/persistenceService.js +45 -45
- package/lib/services/ticketProviderService.d.ts +3 -3
- package/lib/services/ticketProviderService.js +40 -40
- package/lib/services/windowService.d.ts +9 -9
- package/lib/services/windowService.js +15 -15
- package/lib/setupTests.d.ts +1 -1
- package/lib/setupTests.js +25 -25
- package/lib/startup.d.ts +29 -29
- package/lib/startup.js +128 -128
- package/lib/types/AppConfiguration.d.ts +32 -32
- package/lib/types/AppConfiguration.js +2 -2
- package/lib/types/Artifact.d.ts +14 -14
- package/lib/types/Artifact.js +9 -9
- package/lib/types/BaseReduxState.d.ts +57 -57
- package/lib/types/BaseReduxState.js +2 -2
- package/lib/types/Client.d.ts +6 -6
- package/lib/types/Client.js +2 -2
- package/lib/types/Collection.d.ts +175 -175
- package/lib/types/Collection.js +2 -2
- package/lib/types/Configuration.d.ts +12 -12
- package/lib/types/Configuration.js +2 -2
- package/lib/types/DeepLinkingResponseRequest.d.ts +4 -4
- package/lib/types/DeepLinkingResponseRequest.js +2 -2
- package/lib/types/DeletableModel.d.ts +4 -4
- package/lib/types/DeletableModel.js +2 -2
- package/lib/types/External.d.ts +31 -31
- package/lib/types/External.js +2 -2
- package/lib/types/Group.d.ts +19 -19
- package/lib/types/Group.js +2 -2
- package/lib/types/IdentityProvider.d.ts +11 -11
- package/lib/types/IdentityProvider.js +2 -2
- package/lib/types/LtiLaunch.d.ts +20 -20
- package/lib/types/LtiLaunch.js +2 -2
- package/lib/types/NameOnlyEntity.d.ts +3 -3
- package/lib/types/NameOnlyEntity.js +2 -2
- package/lib/types/Notification.d.ts +15 -15
- package/lib/types/Notification.js +2 -2
- package/lib/types/OptionalRecord.d.ts +4 -4
- package/lib/types/OptionalRecord.js +2 -2
- package/lib/types/OwnerSchedule.d.ts +9 -9
- package/lib/types/OwnerSchedule.js +2 -2
- package/lib/types/PropertyOfType.d.ts +12 -12
- package/lib/types/PropertyOfType.js +2 -2
- package/lib/types/RoleDescription.d.ts +4 -4
- package/lib/types/RoleDescription.js +2 -2
- package/lib/types/Search.d.ts +11 -11
- package/lib/types/Search.js +2 -2
- package/lib/types/SimpleLocation.d.ts +46 -46
- package/lib/types/SimpleLocation.js +2 -2
- package/lib/types/UniTime.d.ts +17 -17
- package/lib/types/UniTime.js +2 -2
- package/lib/types/User.d.ts +68 -68
- package/lib/types/User.js +2 -2
- package/lib/types/UserRole.d.ts +19 -19
- package/lib/types/UserRole.js +2 -2
- package/lib/types/index.d.ts +21 -21
- package/lib/types/index.js +33 -33
- package/lib/utils/baseActivity.d.ts +63 -63
- package/lib/utils/baseActivity.js +155 -155
- package/lib/utils/baseRole.d.ts +2 -2
- package/lib/utils/baseRole.js +38 -38
- package/lib/utils/collection.d.ts +43 -43
- package/lib/utils/collection.js +337 -337
- package/lib/utils/date.d.ts +162 -162
- package/lib/utils/date.js +401 -401
- package/lib/utils/domainIdentifier.d.ts +2 -2
- package/lib/utils/domainIdentifier.js +12 -12
- package/lib/utils/entityUserRole.d.ts +3 -3
- package/lib/utils/entityUserRole.js +7 -7
- package/lib/utils/externalGroup.d.ts +4 -4
- package/lib/utils/externalGroup.js +32 -32
- package/lib/utils/externalProviders.d.ts +2 -2
- package/lib/utils/externalProviders.js +11 -11
- package/lib/utils/externalTerms.d.ts +2 -2
- package/lib/utils/externalTerms.js +10 -10
- package/lib/utils/group.d.ts +15 -15
- package/lib/utils/group.js +15 -15
- package/lib/utils/groupDates.d.ts +9 -9
- package/lib/utils/groupDates.js +52 -52
- package/lib/utils/groupRoles.d.ts +8 -8
- package/lib/utils/groupRoles.js +42 -42
- package/lib/utils/logger.d.ts +10 -10
- package/lib/utils/logger.js +34 -34
- package/lib/utils/lti.d.ts +3 -3
- package/lib/utils/lti.js +9 -9
- package/lib/utils/model.d.ts +15 -15
- package/lib/utils/model.js +58 -58
- package/lib/utils/number.d.ts +13 -13
- package/lib/utils/number.js +32 -32
- package/lib/utils/promise.d.ts +5 -5
- package/lib/utils/promise.js +17 -17
- package/lib/utils/route.d.ts +5 -5
- package/lib/utils/route.js +69 -69
- package/lib/utils/shard.d.ts +3 -3
- package/lib/utils/shard.js +45 -45
- package/lib/utils/sort.d.ts +11 -11
- package/lib/utils/sort.js +69 -69
- package/lib/utils/string.d.ts +2 -2
- package/lib/utils/string.js +16 -16
- package/lib/utils/timezone.d.ts +2 -2
- package/lib/utils/timezone.js +32 -32
- package/lib/utils/url.d.ts +23 -23
- package/lib/utils/url.js +163 -163
- package/lib/utils/user.d.ts +8 -8
- package/lib/utils/user.js +73 -73
- package/lib/utils/userRole.d.ts +21 -21
- package/lib/utils/userRole.js +48 -48
- package/package.json +192 -192
|
@@ -1,116 +1,116 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
var CircularProgress_1 = __importDefault(require("@material-ui/core/CircularProgress"));
|
|
26
|
-
var Sentry = __importStar(require("@sentry/react"));
|
|
27
|
-
var detect_browser_1 = require("detect-browser");
|
|
28
|
-
var react_1 = __importStar(require("react"));
|
|
29
|
-
var logger_1 = require("../../utils/logger");
|
|
30
|
-
var Shortcut = function (_a) {
|
|
31
|
-
var content = _a.content;
|
|
32
|
-
return react_1.default.createElement("span", { className: "tag ma0 mb1" }, content);
|
|
33
|
-
};
|
|
34
|
-
var getRefreshShortcut = function () {
|
|
35
|
-
var _a;
|
|
36
|
-
var browser = detect_browser_1.detect();
|
|
37
|
-
if ((browser === null || browser === void 0 ? void 0 : browser.os) === 'Mac OS') {
|
|
38
|
-
return react_1.default.createElement(Shortcut, { content: "command+R" });
|
|
39
|
-
}
|
|
40
|
-
if ((_a = browser === null || browser === void 0 ? void 0 : browser.os) === null || _a === void 0 ? void 0 : _a.includes('Windows')) {
|
|
41
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
42
|
-
react_1.default.createElement(Shortcut, { content: "control+R" }),
|
|
43
|
-
" or ",
|
|
44
|
-
react_1.default.createElement(Shortcut, { content: "F5" })));
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
var getHardRefreshShortcut = function () {
|
|
48
|
-
var _a;
|
|
49
|
-
var browser = detect_browser_1.detect();
|
|
50
|
-
if ((browser === null || browser === void 0 ? void 0 : browser.os) === 'Mac OS') {
|
|
51
|
-
if (browser.name === 'safari') {
|
|
52
|
-
return react_1.default.createElement(Shortcut, { content: "command+option+R" });
|
|
53
|
-
}
|
|
54
|
-
return react_1.default.createElement(Shortcut, { content: "command+option+R" });
|
|
55
|
-
}
|
|
56
|
-
if ((_a = browser === null || browser === void 0 ? void 0 : browser.os) === null || _a === void 0 ? void 0 : _a.includes('Windows')) {
|
|
57
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
58
|
-
react_1.default.createElement(Shortcut, { content: "control+shift+R" }),
|
|
59
|
-
" or ",
|
|
60
|
-
react_1.default.createElement(Shortcut, { content: "control+F5" })));
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
var RefreshIndicator = function (_a) {
|
|
64
|
-
var hideWarning = _a.hideWarning, logAndWarnAfterSeconds = _a.logAndWarnAfterSeconds, warningClassName = _a.warningClassName, warningMessage = _a.warningMessage, label = _a.label, labelClassName = _a.labelClassName, loaderSize = _a.loaderSize, loaderStyle = _a.loaderStyle;
|
|
65
|
-
var _b = react_1.useState(0), seconds = _b[0], setSeconds = _b[1];
|
|
66
|
-
var _c = react_1.useState(false), hasLogged = _c[0], setHasLogged = _c[1];
|
|
67
|
-
var localLogAndWarnAfterSeconds = logAndWarnAfterSeconds !== undefined ? logAndWarnAfterSeconds : 15;
|
|
68
|
-
// every time seconds changes, set a 1 sec interval for the next second, a.k.a re-render every second
|
|
69
|
-
react_1.useEffect(function () {
|
|
70
|
-
var interval = setInterval(function () {
|
|
71
|
-
setSeconds(function (seconds) { return seconds + 1; });
|
|
72
|
-
}, 1000);
|
|
73
|
-
return function () { return clearInterval(interval); };
|
|
74
|
-
}, [seconds]);
|
|
75
|
-
var shouldLog = seconds >= localLogAndWarnAfterSeconds;
|
|
76
|
-
var shouldWarn = shouldLog && !hideWarning;
|
|
77
|
-
// log an exception one time, if component has been rendered at least `warnAfterSeconds`
|
|
78
|
-
react_1.useEffect(function () {
|
|
79
|
-
if (!hasLogged && shouldLog) {
|
|
80
|
-
var error = new Error("Loading for more than " + localLogAndWarnAfterSeconds + " seconds");
|
|
81
|
-
var logger = logger_1.getLogger();
|
|
82
|
-
logger.warn(error);
|
|
83
|
-
Sentry.captureException(error);
|
|
84
|
-
setHasLogged(true);
|
|
85
|
-
}
|
|
86
|
-
}, [hasLogged, localLogAndWarnAfterSeconds, seconds, shouldLog, shouldWarn]);
|
|
87
|
-
var refreshShortcut = getRefreshShortcut();
|
|
88
|
-
var hardRefreshShortcut = getHardRefreshShortcut();
|
|
89
|
-
return (react_1.default.createElement("div", null,
|
|
90
|
-
react_1.default.createElement(CircularProgress_1.default, { size: loaderSize !== null && loaderSize !== void 0 ? loaderSize : 40, style: loaderStyle !== null && loaderStyle !== void 0 ? loaderStyle : {
|
|
91
|
-
display: 'inherit',
|
|
92
|
-
position: 'relative',
|
|
93
|
-
margin: '2rem auto 1rem'
|
|
94
|
-
} }),
|
|
95
|
-
label && react_1.default.createElement("p", { className: "tc i f4" + (labelClassName ? " " + labelClassName : '') }, label),
|
|
96
|
-
shouldWarn && (react_1.default.createElement("div", { "aria-live": "polite" }, warningMessage !== null && warningMessage !== void 0 ? warningMessage : (react_1.default.createElement("div", { className: "tl center mw7 ph5" + (warningClassName ? " " + warningClassName : '') },
|
|
97
|
-
react_1.default.createElement("h2", null, "Stuck loading?"),
|
|
98
|
-
react_1.default.createElement("p", { className: "mb3" }, "If the page does not finish loading soon, please try one of the following:"),
|
|
99
|
-
react_1.default.createElement("ul", { className: "mb3" },
|
|
100
|
-
react_1.default.createElement("li", { className: !refreshShortcut && !!hardRefreshShortcut ? 'mb2' : '' },
|
|
101
|
-
"Refresh the page",
|
|
102
|
-
refreshShortcut ? react_1.default.createElement(react_1.default.Fragment, null,
|
|
103
|
-
", ",
|
|
104
|
-
refreshShortcut) : ''),
|
|
105
|
-
hardRefreshShortcut && react_1.default.createElement("li", null,
|
|
106
|
-
"\"Hard Refresh\" the page, ",
|
|
107
|
-
hardRefreshShortcut),
|
|
108
|
-
react_1.default.createElement("li", { className: !!refreshShortcut || !!hardRefreshShortcut ? 'mb2' : '' }, "Try a different browser"),
|
|
109
|
-
react_1.default.createElement("li", null, "Clear your browser cache and then refresh")),
|
|
110
|
-
react_1.default.createElement("p", { className: "mb3" },
|
|
111
|
-
"If you are still experiencing loading issues, please contact us at",
|
|
112
|
-
' ',
|
|
113
|
-
react_1.default.createElement("a", { href: "mailto:tlt@purdue.edu" }, "tlt@purdue.edu"),
|
|
114
|
-
".")))))));
|
|
115
|
-
};
|
|
116
|
-
exports.default = RefreshIndicator;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
var CircularProgress_1 = __importDefault(require("@material-ui/core/CircularProgress"));
|
|
26
|
+
var Sentry = __importStar(require("@sentry/react"));
|
|
27
|
+
var detect_browser_1 = require("detect-browser");
|
|
28
|
+
var react_1 = __importStar(require("react"));
|
|
29
|
+
var logger_1 = require("../../utils/logger");
|
|
30
|
+
var Shortcut = function (_a) {
|
|
31
|
+
var content = _a.content;
|
|
32
|
+
return react_1.default.createElement("span", { className: "tag ma0 mb1" }, content);
|
|
33
|
+
};
|
|
34
|
+
var getRefreshShortcut = function () {
|
|
35
|
+
var _a;
|
|
36
|
+
var browser = detect_browser_1.detect();
|
|
37
|
+
if ((browser === null || browser === void 0 ? void 0 : browser.os) === 'Mac OS') {
|
|
38
|
+
return react_1.default.createElement(Shortcut, { content: "command+R" });
|
|
39
|
+
}
|
|
40
|
+
if ((_a = browser === null || browser === void 0 ? void 0 : browser.os) === null || _a === void 0 ? void 0 : _a.includes('Windows')) {
|
|
41
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
42
|
+
react_1.default.createElement(Shortcut, { content: "control+R" }),
|
|
43
|
+
" or ",
|
|
44
|
+
react_1.default.createElement(Shortcut, { content: "F5" })));
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
var getHardRefreshShortcut = function () {
|
|
48
|
+
var _a;
|
|
49
|
+
var browser = detect_browser_1.detect();
|
|
50
|
+
if ((browser === null || browser === void 0 ? void 0 : browser.os) === 'Mac OS') {
|
|
51
|
+
if (browser.name === 'safari') {
|
|
52
|
+
return react_1.default.createElement(Shortcut, { content: "command+option+R" });
|
|
53
|
+
}
|
|
54
|
+
return react_1.default.createElement(Shortcut, { content: "command+option+R" });
|
|
55
|
+
}
|
|
56
|
+
if ((_a = browser === null || browser === void 0 ? void 0 : browser.os) === null || _a === void 0 ? void 0 : _a.includes('Windows')) {
|
|
57
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
58
|
+
react_1.default.createElement(Shortcut, { content: "control+shift+R" }),
|
|
59
|
+
" or ",
|
|
60
|
+
react_1.default.createElement(Shortcut, { content: "control+F5" })));
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
var RefreshIndicator = function (_a) {
|
|
64
|
+
var hideWarning = _a.hideWarning, logAndWarnAfterSeconds = _a.logAndWarnAfterSeconds, warningClassName = _a.warningClassName, warningMessage = _a.warningMessage, label = _a.label, labelClassName = _a.labelClassName, loaderSize = _a.loaderSize, loaderStyle = _a.loaderStyle;
|
|
65
|
+
var _b = react_1.useState(0), seconds = _b[0], setSeconds = _b[1];
|
|
66
|
+
var _c = react_1.useState(false), hasLogged = _c[0], setHasLogged = _c[1];
|
|
67
|
+
var localLogAndWarnAfterSeconds = logAndWarnAfterSeconds !== undefined ? logAndWarnAfterSeconds : 15;
|
|
68
|
+
// every time seconds changes, set a 1 sec interval for the next second, a.k.a re-render every second
|
|
69
|
+
react_1.useEffect(function () {
|
|
70
|
+
var interval = setInterval(function () {
|
|
71
|
+
setSeconds(function (seconds) { return seconds + 1; });
|
|
72
|
+
}, 1000);
|
|
73
|
+
return function () { return clearInterval(interval); };
|
|
74
|
+
}, [seconds]);
|
|
75
|
+
var shouldLog = seconds >= localLogAndWarnAfterSeconds;
|
|
76
|
+
var shouldWarn = shouldLog && !hideWarning;
|
|
77
|
+
// log an exception one time, if component has been rendered at least `warnAfterSeconds`
|
|
78
|
+
react_1.useEffect(function () {
|
|
79
|
+
if (!hasLogged && shouldLog) {
|
|
80
|
+
var error = new Error("Loading for more than " + localLogAndWarnAfterSeconds + " seconds");
|
|
81
|
+
var logger = logger_1.getLogger();
|
|
82
|
+
logger.warn(error);
|
|
83
|
+
Sentry.captureException(error);
|
|
84
|
+
setHasLogged(true);
|
|
85
|
+
}
|
|
86
|
+
}, [hasLogged, localLogAndWarnAfterSeconds, seconds, shouldLog, shouldWarn]);
|
|
87
|
+
var refreshShortcut = getRefreshShortcut();
|
|
88
|
+
var hardRefreshShortcut = getHardRefreshShortcut();
|
|
89
|
+
return (react_1.default.createElement("div", null,
|
|
90
|
+
react_1.default.createElement(CircularProgress_1.default, { size: loaderSize !== null && loaderSize !== void 0 ? loaderSize : 40, style: loaderStyle !== null && loaderStyle !== void 0 ? loaderStyle : {
|
|
91
|
+
display: 'inherit',
|
|
92
|
+
position: 'relative',
|
|
93
|
+
margin: '2rem auto 1rem'
|
|
94
|
+
} }),
|
|
95
|
+
label && react_1.default.createElement("p", { className: "tc i f4" + (labelClassName ? " " + labelClassName : '') }, label),
|
|
96
|
+
shouldWarn && (react_1.default.createElement("div", { "aria-live": "polite" }, warningMessage !== null && warningMessage !== void 0 ? warningMessage : (react_1.default.createElement("div", { className: "tl center mw7 ph5" + (warningClassName ? " " + warningClassName : '') },
|
|
97
|
+
react_1.default.createElement("h2", null, "Stuck loading?"),
|
|
98
|
+
react_1.default.createElement("p", { className: "mb3" }, "If the page does not finish loading soon, please try one of the following:"),
|
|
99
|
+
react_1.default.createElement("ul", { className: "mb3" },
|
|
100
|
+
react_1.default.createElement("li", { className: !refreshShortcut && !!hardRefreshShortcut ? 'mb2' : '' },
|
|
101
|
+
"Refresh the page",
|
|
102
|
+
refreshShortcut ? react_1.default.createElement(react_1.default.Fragment, null,
|
|
103
|
+
", ",
|
|
104
|
+
refreshShortcut) : ''),
|
|
105
|
+
hardRefreshShortcut && react_1.default.createElement("li", null,
|
|
106
|
+
"\"Hard Refresh\" the page, ",
|
|
107
|
+
hardRefreshShortcut),
|
|
108
|
+
react_1.default.createElement("li", { className: !!refreshShortcut || !!hardRefreshShortcut ? 'mb2' : '' }, "Try a different browser"),
|
|
109
|
+
react_1.default.createElement("li", null, "Clear your browser cache and then refresh")),
|
|
110
|
+
react_1.default.createElement("p", { className: "mb3" },
|
|
111
|
+
"If you are still experiencing loading issues, please contact us at",
|
|
112
|
+
' ',
|
|
113
|
+
react_1.default.createElement("a", { href: "mailto:tlt@purdue.edu" }, "tlt@purdue.edu"),
|
|
114
|
+
".")))))));
|
|
115
|
+
};
|
|
116
|
+
exports.default = RefreshIndicator;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
|
-
import { Search } from '../types';
|
|
3
|
-
import { SearchPersistorMethods } from './HOC/SearchPersistorComponent';
|
|
4
|
-
interface SearchControlsMethods extends Pick<SearchPersistorMethods, 'handleSearchClick' | 'handleKeywordsChange' | 'handleKeywordsKeyDown' | 'resetSearch'>, Partial<Pick<SearchPersistorMethods, 'handleQueryAllChange'>> {
|
|
5
|
-
}
|
|
6
|
-
export interface SearchControlsProps extends Search, SearchControlsMethods {
|
|
7
|
-
keywordPlaceholder: string;
|
|
8
|
-
queryAllText?: string;
|
|
9
|
-
handleDateChange?: (dateString: string, date?: Date) => void;
|
|
10
|
-
canReadAnyGlobally?: boolean;
|
|
11
|
-
canReadSome?: boolean;
|
|
12
|
-
}
|
|
13
|
-
declare const SearchControls: FunctionComponent<SearchControlsProps>;
|
|
14
|
-
export default SearchControls;
|
|
1
|
+
import { FunctionComponent } from 'react';
|
|
2
|
+
import { Search } from '../types';
|
|
3
|
+
import { SearchPersistorMethods } from './HOC/SearchPersistorComponent';
|
|
4
|
+
interface SearchControlsMethods extends Pick<SearchPersistorMethods, 'handleSearchClick' | 'handleKeywordsChange' | 'handleKeywordsKeyDown' | 'resetSearch'>, Partial<Pick<SearchPersistorMethods, 'handleQueryAllChange'>> {
|
|
5
|
+
}
|
|
6
|
+
export interface SearchControlsProps extends Search, SearchControlsMethods {
|
|
7
|
+
keywordPlaceholder: string;
|
|
8
|
+
queryAllText?: string;
|
|
9
|
+
handleDateChange?: (dateString: string, date?: Date) => void;
|
|
10
|
+
canReadAnyGlobally?: boolean;
|
|
11
|
+
canReadSome?: boolean;
|
|
12
|
+
}
|
|
13
|
+
declare const SearchControls: FunctionComponent<SearchControlsProps>;
|
|
14
|
+
export default SearchControls;
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var Button_1 = __importDefault(require("@material-ui/core/Button"));
|
|
7
|
-
var Autorenew_1 = __importDefault(require("@material-ui/icons/Autorenew"));
|
|
8
|
-
var Search_1 = __importDefault(require("@material-ui/icons/Search"));
|
|
9
|
-
var react_1 = __importDefault(require("react"));
|
|
10
|
-
var react_bootstrap_1 = require("react-bootstrap");
|
|
11
|
-
var AlertWithIcon_1 = __importDefault(require("./AlertWithIcon"));
|
|
12
|
-
var DateField_1 = __importDefault(require("./Forms/DateField"));
|
|
13
|
-
var SearchControls = function (_a) {
|
|
14
|
-
var keywords = _a.keywords, invalidKeywords = _a.invalidKeywords, dateString = _a.dateString, queryAll = _a.queryAll, requiredMessage = _a.requiredMessage, handleKeywordsChange = _a.handleKeywordsChange, handleKeywordsKeyDown = _a.handleKeywordsKeyDown, handleSearchClick = _a.handleSearchClick, resetSearch = _a.resetSearch, handleQueryAllChange = _a.handleQueryAllChange, keywordPlaceholder = _a.keywordPlaceholder, handleDateChange = _a.handleDateChange, queryAllText = _a.queryAllText, canReadAnyGlobally = _a.canReadAnyGlobally, canReadSome = _a.canReadSome;
|
|
15
|
-
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
16
|
-
!!requiredMessage && (react_1.default.createElement(AlertWithIcon_1.default, { variant: "danger", className: "mb0", id: "requiredMessageAlert" },
|
|
17
|
-
react_1.default.createElement("p", null, requiredMessage))),
|
|
18
|
-
react_1.default.createElement(react_bootstrap_1.FormGroup, { controlId: "keywords", className: "fl-ns mw5-ns mr3-ns mb3 mb0-ns w-100-lt-xs" },
|
|
19
|
-
react_1.default.createElement(react_bootstrap_1.FormLabel, { className: "f7 b" }, "Keywords"),
|
|
20
|
-
react_1.default.createElement(react_bootstrap_1.FormControl, { type: "text", placeholder: keywordPlaceholder, name: "keywords", onChange: handleKeywordsChange, onKeyDown: handleKeywordsKeyDown, value: keywords, isInvalid: invalidKeywords }),
|
|
21
|
-
invalidKeywords && (react_1.default.createElement(react_bootstrap_1.FormText, { className: "i f6", id: "invalidKeywords", muted: true }, "Please enter at least 3 characters."))),
|
|
22
|
-
!!handleDateChange && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
23
|
-
react_1.default.createElement("span", { id: "and-or-label", className: "i mw3-ns mr3-ns mt3-ns pv3-ns fl-ns tc w-100-lt-xs date-align" }, "and / or"),
|
|
24
|
-
react_1.default.createElement(DateField_1.default, { id: "date", onChange: handleDateChange, label: "Date", "aria-label": "Active date", className: "fl-ns mw5-ns mr3-ns mb3 mb0-ns w-100-lt-xs date-align", value: dateString }))),
|
|
25
|
-
react_1.default.createElement("div", { className: "fl-ns mt3-ns pt3-ns w-100-lt-xs" },
|
|
26
|
-
canReadAnyGlobally && !!handleQueryAllChange && (react_1.default.createElement(react_bootstrap_1.FormCheck, { name: "queryAll", id: "queryAll", checked: queryAll, disabled: canReadAnyGlobally && !canReadSome, onChange: handleQueryAllChange, className: "fl-ns f6 mr2-ns mb3 mt2 w-100-lt-xs", label: react_1.default.createElement("span", { className: "b black" }, queryAllText || 'Search All') })),
|
|
27
|
-
react_1.default.createElement(Button_1.default, { color: "primary", className: "btn btn-primary fr-ns ml2-ns mb3 w-100-lt-xs", onClick: handleSearchClick },
|
|
28
|
-
react_1.default.createElement(Search_1.default, { className: "fill-white v-mid" }),
|
|
29
|
-
"Search"),
|
|
30
|
-
react_1.default.createElement(Button_1.default, { className: "btn btn-text color-pink fr-ns mb3 w-100-lt-xs", onClick: resetSearch },
|
|
31
|
-
react_1.default.createElement(Autorenew_1.default, { className: "fill-pink v-mid" }),
|
|
32
|
-
"Reset"))));
|
|
33
|
-
};
|
|
34
|
-
exports.default = SearchControls;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var Button_1 = __importDefault(require("@material-ui/core/Button"));
|
|
7
|
+
var Autorenew_1 = __importDefault(require("@material-ui/icons/Autorenew"));
|
|
8
|
+
var Search_1 = __importDefault(require("@material-ui/icons/Search"));
|
|
9
|
+
var react_1 = __importDefault(require("react"));
|
|
10
|
+
var react_bootstrap_1 = require("react-bootstrap");
|
|
11
|
+
var AlertWithIcon_1 = __importDefault(require("./AlertWithIcon"));
|
|
12
|
+
var DateField_1 = __importDefault(require("./Forms/DateField"));
|
|
13
|
+
var SearchControls = function (_a) {
|
|
14
|
+
var keywords = _a.keywords, invalidKeywords = _a.invalidKeywords, dateString = _a.dateString, queryAll = _a.queryAll, requiredMessage = _a.requiredMessage, handleKeywordsChange = _a.handleKeywordsChange, handleKeywordsKeyDown = _a.handleKeywordsKeyDown, handleSearchClick = _a.handleSearchClick, resetSearch = _a.resetSearch, handleQueryAllChange = _a.handleQueryAllChange, keywordPlaceholder = _a.keywordPlaceholder, handleDateChange = _a.handleDateChange, queryAllText = _a.queryAllText, canReadAnyGlobally = _a.canReadAnyGlobally, canReadSome = _a.canReadSome;
|
|
15
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
16
|
+
!!requiredMessage && (react_1.default.createElement(AlertWithIcon_1.default, { variant: "danger", className: "mb0", id: "requiredMessageAlert" },
|
|
17
|
+
react_1.default.createElement("p", null, requiredMessage))),
|
|
18
|
+
react_1.default.createElement(react_bootstrap_1.FormGroup, { controlId: "keywords", className: "fl-ns mw5-ns mr3-ns mb3 mb0-ns w-100-lt-xs" },
|
|
19
|
+
react_1.default.createElement(react_bootstrap_1.FormLabel, { className: "f7 b" }, "Keywords"),
|
|
20
|
+
react_1.default.createElement(react_bootstrap_1.FormControl, { type: "text", placeholder: keywordPlaceholder, name: "keywords", onChange: handleKeywordsChange, onKeyDown: handleKeywordsKeyDown, value: keywords, isInvalid: invalidKeywords }),
|
|
21
|
+
invalidKeywords && (react_1.default.createElement(react_bootstrap_1.FormText, { className: "i f6", id: "invalidKeywords", muted: true }, "Please enter at least 3 characters."))),
|
|
22
|
+
!!handleDateChange && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
23
|
+
react_1.default.createElement("span", { id: "and-or-label", className: "i mw3-ns mr3-ns mt3-ns pv3-ns fl-ns tc w-100-lt-xs date-align" }, "and / or"),
|
|
24
|
+
react_1.default.createElement(DateField_1.default, { id: "date", onChange: handleDateChange, label: "Date", "aria-label": "Active date", className: "fl-ns mw5-ns mr3-ns mb3 mb0-ns w-100-lt-xs date-align", value: dateString }))),
|
|
25
|
+
react_1.default.createElement("div", { className: "fl-ns mt3-ns pt3-ns w-100-lt-xs" },
|
|
26
|
+
canReadAnyGlobally && !!handleQueryAllChange && (react_1.default.createElement(react_bootstrap_1.FormCheck, { name: "queryAll", id: "queryAll", checked: queryAll, disabled: canReadAnyGlobally && !canReadSome, onChange: handleQueryAllChange, className: "fl-ns f6 mr2-ns mb3 mt2 w-100-lt-xs", label: react_1.default.createElement("span", { className: "b black" }, queryAllText || 'Search All') })),
|
|
27
|
+
react_1.default.createElement(Button_1.default, { color: "primary", className: "btn btn-primary fr-ns ml2-ns mb3 w-100-lt-xs", onClick: handleSearchClick },
|
|
28
|
+
react_1.default.createElement(Search_1.default, { className: "fill-white v-mid" }),
|
|
29
|
+
"Search"),
|
|
30
|
+
react_1.default.createElement(Button_1.default, { className: "btn btn-text color-pink fr-ns mb3 w-100-lt-xs", onClick: resetSearch },
|
|
31
|
+
react_1.default.createElement(Autorenew_1.default, { className: "fill-pink v-mid" }),
|
|
32
|
+
"Reset"))));
|
|
33
|
+
};
|
|
34
|
+
exports.default = SearchControls;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Route as NormalRoute } from 'react-router';
|
|
2
|
-
declare const Route: typeof NormalRoute;
|
|
3
|
-
export default Route;
|
|
1
|
+
import { Route as NormalRoute } from 'react-router';
|
|
2
|
+
declare const Route: typeof NormalRoute;
|
|
3
|
+
export default Route;
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
var Sentry = __importStar(require("@sentry/react"));
|
|
23
|
-
var react_router_1 = require("react-router");
|
|
24
|
-
var Route = Sentry.withSentryRouting(react_router_1.Route);
|
|
25
|
-
exports.default = Route;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
var Sentry = __importStar(require("@sentry/react"));
|
|
23
|
+
var react_router_1 = require("react-router");
|
|
24
|
+
var Route = Sentry.withSentryRouting(react_router_1.Route);
|
|
25
|
+
exports.default = Route;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { Filter } from 'react-table';
|
|
3
|
-
import { UserRole } from '../../types';
|
|
4
|
-
export declare enum ROLE_FILTER {
|
|
5
|
-
ALL = "ALL",
|
|
6
|
-
MANUAL = "MANUAL",
|
|
7
|
-
EXTERNAL = "EXTERNAL"
|
|
8
|
-
}
|
|
9
|
-
export declare const RoleFilter: (roles: string[], textForRole?: ((role: string) => string) | undefined, hasExternal?: boolean | undefined) => ({ filter, onChange }: {
|
|
10
|
-
filter: Filter;
|
|
11
|
-
onChange: any;
|
|
12
|
-
}) => JSX.Element;
|
|
13
|
-
export declare const roleUserRoleFilterMethod: (filter: Filter, userRole: UserRole) => boolean;
|
|
14
|
-
export declare const roleFilterMethod: (filter: Filter, row: any) => boolean;
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Filter } from 'react-table';
|
|
3
|
+
import { UserRole } from '../../types';
|
|
4
|
+
export declare enum ROLE_FILTER {
|
|
5
|
+
ALL = "ALL",
|
|
6
|
+
MANUAL = "MANUAL",
|
|
7
|
+
EXTERNAL = "EXTERNAL"
|
|
8
|
+
}
|
|
9
|
+
export declare const RoleFilter: (roles: string[], textForRole?: ((role: string) => string) | undefined, hasExternal?: boolean | undefined) => ({ filter, onChange }: {
|
|
10
|
+
filter: Filter;
|
|
11
|
+
onChange: any;
|
|
12
|
+
}) => JSX.Element;
|
|
13
|
+
export declare const roleUserRoleFilterMethod: (filter: Filter, userRole: UserRole) => boolean;
|
|
14
|
+
export declare const roleFilterMethod: (filter: Filter, row: any) => boolean;
|
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.roleFilterMethod = exports.roleUserRoleFilterMethod = exports.RoleFilter = exports.ROLE_FILTER = void 0;
|
|
7
|
-
var react_1 = __importDefault(require("react"));
|
|
8
|
-
var react_bootstrap_1 = require("react-bootstrap");
|
|
9
|
-
var baseRole_1 = require("../../utils/baseRole");
|
|
10
|
-
var userRole_1 = require("../../utils/userRole");
|
|
11
|
-
var ROLE_FILTER;
|
|
12
|
-
(function (ROLE_FILTER) {
|
|
13
|
-
ROLE_FILTER["ALL"] = "ALL";
|
|
14
|
-
ROLE_FILTER["MANUAL"] = "MANUAL";
|
|
15
|
-
ROLE_FILTER["EXTERNAL"] = "EXTERNAL";
|
|
16
|
-
})(ROLE_FILTER = exports.ROLE_FILTER || (exports.ROLE_FILTER = {}));
|
|
17
|
-
var RoleFilter = function (roles, textForRole, hasExternal) { return function (_a) {
|
|
18
|
-
var filter = _a.filter, onChange = _a.onChange;
|
|
19
|
-
// we have nothing to filter if there is only one role and no external userRoles
|
|
20
|
-
if (roles.length === 1 && !hasExternal) {
|
|
21
|
-
return react_1.default.createElement(react_1.default.Fragment, null);
|
|
22
|
-
}
|
|
23
|
-
return (react_1.default.createElement(react_bootstrap_1.FormControl, { className: "w-100", "aria-label": "Filter column", as: "select", onChange: function (event) {
|
|
24
|
-
onChange(event.target.value);
|
|
25
|
-
}, value: filter ? filter.value : ROLE_FILTER.ALL },
|
|
26
|
-
react_1.default.createElement("option", { value: ROLE_FILTER.ALL }, "Show All"),
|
|
27
|
-
roles.length > 1 && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
28
|
-
react_1.default.createElement("option", { disabled: true }, "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),
|
|
29
|
-
roles.map(function (role) { return (react_1.default.createElement("option", { key: role, value: role }, textForRole ? textForRole(role) : baseRole_1.textForBaseRole(role))); }))),
|
|
30
|
-
hasExternal && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
31
|
-
react_1.default.createElement("option", { disabled: true }, "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),
|
|
32
|
-
react_1.default.createElement("option", { value: ROLE_FILTER.MANUAL }, "Manually Added"),
|
|
33
|
-
react_1.default.createElement("option", { value: ROLE_FILTER.EXTERNAL }, "Roster Synced")))));
|
|
34
|
-
}; };
|
|
35
|
-
exports.RoleFilter = RoleFilter;
|
|
36
|
-
var roleUserRoleFilterMethod = function (filter, userRole) {
|
|
37
|
-
switch (filter.value) {
|
|
38
|
-
case ROLE_FILTER.ALL:
|
|
39
|
-
return true;
|
|
40
|
-
case ROLE_FILTER.MANUAL:
|
|
41
|
-
return !userRole_1.isExternal(userRole);
|
|
42
|
-
case ROLE_FILTER.EXTERNAL:
|
|
43
|
-
return userRole_1.isExternal(userRole);
|
|
44
|
-
default:
|
|
45
|
-
return userRole.role === filter.value;
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
exports.roleUserRoleFilterMethod = roleUserRoleFilterMethod;
|
|
49
|
-
var roleFilterMethod = function (filter, row) {
|
|
50
|
-
var user = row.role;
|
|
51
|
-
return user.roles.some(function (r) { return exports.roleUserRoleFilterMethod(filter, r); });
|
|
52
|
-
};
|
|
53
|
-
exports.roleFilterMethod = roleFilterMethod;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.roleFilterMethod = exports.roleUserRoleFilterMethod = exports.RoleFilter = exports.ROLE_FILTER = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var react_bootstrap_1 = require("react-bootstrap");
|
|
9
|
+
var baseRole_1 = require("../../utils/baseRole");
|
|
10
|
+
var userRole_1 = require("../../utils/userRole");
|
|
11
|
+
var ROLE_FILTER;
|
|
12
|
+
(function (ROLE_FILTER) {
|
|
13
|
+
ROLE_FILTER["ALL"] = "ALL";
|
|
14
|
+
ROLE_FILTER["MANUAL"] = "MANUAL";
|
|
15
|
+
ROLE_FILTER["EXTERNAL"] = "EXTERNAL";
|
|
16
|
+
})(ROLE_FILTER = exports.ROLE_FILTER || (exports.ROLE_FILTER = {}));
|
|
17
|
+
var RoleFilter = function (roles, textForRole, hasExternal) { return function (_a) {
|
|
18
|
+
var filter = _a.filter, onChange = _a.onChange;
|
|
19
|
+
// we have nothing to filter if there is only one role and no external userRoles
|
|
20
|
+
if (roles.length === 1 && !hasExternal) {
|
|
21
|
+
return react_1.default.createElement(react_1.default.Fragment, null);
|
|
22
|
+
}
|
|
23
|
+
return (react_1.default.createElement(react_bootstrap_1.FormControl, { className: "w-100", "aria-label": "Filter column", as: "select", onChange: function (event) {
|
|
24
|
+
onChange(event.target.value);
|
|
25
|
+
}, value: filter ? filter.value : ROLE_FILTER.ALL },
|
|
26
|
+
react_1.default.createElement("option", { value: ROLE_FILTER.ALL }, "Show All"),
|
|
27
|
+
roles.length > 1 && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
28
|
+
react_1.default.createElement("option", { disabled: true }, "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),
|
|
29
|
+
roles.map(function (role) { return (react_1.default.createElement("option", { key: role, value: role }, textForRole ? textForRole(role) : baseRole_1.textForBaseRole(role))); }))),
|
|
30
|
+
hasExternal && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
31
|
+
react_1.default.createElement("option", { disabled: true }, "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"),
|
|
32
|
+
react_1.default.createElement("option", { value: ROLE_FILTER.MANUAL }, "Manually Added"),
|
|
33
|
+
react_1.default.createElement("option", { value: ROLE_FILTER.EXTERNAL }, "Roster Synced")))));
|
|
34
|
+
}; };
|
|
35
|
+
exports.RoleFilter = RoleFilter;
|
|
36
|
+
var roleUserRoleFilterMethod = function (filter, userRole) {
|
|
37
|
+
switch (filter.value) {
|
|
38
|
+
case ROLE_FILTER.ALL:
|
|
39
|
+
return true;
|
|
40
|
+
case ROLE_FILTER.MANUAL:
|
|
41
|
+
return !userRole_1.isExternal(userRole);
|
|
42
|
+
case ROLE_FILTER.EXTERNAL:
|
|
43
|
+
return userRole_1.isExternal(userRole);
|
|
44
|
+
default:
|
|
45
|
+
return userRole.role === filter.value;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
exports.roleUserRoleFilterMethod = roleUserRoleFilterMethod;
|
|
49
|
+
var roleFilterMethod = function (filter, row) {
|
|
50
|
+
var user = row.role;
|
|
51
|
+
return user.roles.some(function (r) { return exports.roleUserRoleFilterMethod(filter, r); });
|
|
52
|
+
};
|
|
53
|
+
exports.roleFilterMethod = roleFilterMethod;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { Filter } from 'react-table';
|
|
3
|
-
export declare const TextFilter: ({ filter, onChange }: {
|
|
4
|
-
filter: Filter;
|
|
5
|
-
onChange: any;
|
|
6
|
-
}) => JSX.Element;
|
|
7
|
-
export declare const textFilterMethod: (filter: Filter, row: any) => any;
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { Filter } from 'react-table';
|
|
3
|
+
export declare const TextFilter: ({ filter, onChange }: {
|
|
4
|
+
filter: Filter;
|
|
5
|
+
onChange: any;
|
|
6
|
+
}) => JSX.Element;
|
|
7
|
+
export declare const textFilterMethod: (filter: Filter, row: any) => any;
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.textFilterMethod = exports.TextFilter = void 0;
|
|
7
|
-
var Search_1 = __importDefault(require("@material-ui/icons/Search"));
|
|
8
|
-
var react_1 = __importDefault(require("react"));
|
|
9
|
-
var react_bootstrap_1 = require("react-bootstrap");
|
|
10
|
-
var TextFilter = function (_a) {
|
|
11
|
-
var filter = _a.filter, onChange = _a.onChange;
|
|
12
|
-
return (react_1.default.createElement(react_bootstrap_1.FormGroup, { className: "flex table-search-container mb0" },
|
|
13
|
-
react_1.default.createElement(Search_1.default, { className: "ma1 icon-size-1 v-mid fill-black" }),
|
|
14
|
-
react_1.default.createElement(react_bootstrap_1.FormControl, { className: "table-search-input", type: "search", "aria-label": "search", placeholder: "search", onChange: function (event) {
|
|
15
|
-
onChange(event.target.value);
|
|
16
|
-
}, value: filter ? filter.value : '' })));
|
|
17
|
-
};
|
|
18
|
-
exports.TextFilter = TextFilter;
|
|
19
|
-
var textFilterMethod = function (filter, row) {
|
|
20
|
-
var text = row[filter.id];
|
|
21
|
-
if (!text && filter.value) {
|
|
22
|
-
return false;
|
|
23
|
-
}
|
|
24
|
-
return text.toLowerCase().includes(filter.value.toLowerCase());
|
|
25
|
-
};
|
|
26
|
-
exports.textFilterMethod = textFilterMethod;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.textFilterMethod = exports.TextFilter = void 0;
|
|
7
|
+
var Search_1 = __importDefault(require("@material-ui/icons/Search"));
|
|
8
|
+
var react_1 = __importDefault(require("react"));
|
|
9
|
+
var react_bootstrap_1 = require("react-bootstrap");
|
|
10
|
+
var TextFilter = function (_a) {
|
|
11
|
+
var filter = _a.filter, onChange = _a.onChange;
|
|
12
|
+
return (react_1.default.createElement(react_bootstrap_1.FormGroup, { className: "flex table-search-container mb0" },
|
|
13
|
+
react_1.default.createElement(Search_1.default, { className: "ma1 icon-size-1 v-mid fill-black" }),
|
|
14
|
+
react_1.default.createElement(react_bootstrap_1.FormControl, { className: "table-search-input", type: "search", "aria-label": "search", placeholder: "search", onChange: function (event) {
|
|
15
|
+
onChange(event.target.value);
|
|
16
|
+
}, value: filter ? filter.value : '' })));
|
|
17
|
+
};
|
|
18
|
+
exports.TextFilter = TextFilter;
|
|
19
|
+
var textFilterMethod = function (filter, row) {
|
|
20
|
+
var text = row[filter.id];
|
|
21
|
+
if (!text && filter.value) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
return text.toLowerCase().includes(filter.value.toLowerCase());
|
|
25
|
+
};
|
|
26
|
+
exports.textFilterMethod = textFilterMethod;
|