studiokit-scaffolding-js 4.3.21 → 4.3.22
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 +30 -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 +84 -82
- 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,13 +1,13 @@
|
|
|
1
|
-
import { TokenPersistenceService } from 'studiokit-auth-js';
|
|
2
|
-
import { CaliperToken } from 'studiokit-caliper-js/lib/types';
|
|
3
|
-
export declare const returnUrlKey = "studioKit:login:returnUrl";
|
|
4
|
-
export declare const identityProviderKey = "studioKit:auth:identityProvider";
|
|
5
|
-
export declare const isCasGatewayRequestedKey = "studioKit:auth:isCasGatewayRequested";
|
|
6
|
-
export interface PersistenceService extends TokenPersistenceService {
|
|
7
|
-
getItem: (key: string) => any | Promise<any>;
|
|
8
|
-
setItem: (key: string, item: any) => void | Promise<void>;
|
|
9
|
-
removeItem: (key: string) => void | Promise<void>;
|
|
10
|
-
getPersistedCaliperToken: () => CaliperToken | null | Promise<CaliperToken | null>;
|
|
11
|
-
}
|
|
12
|
-
declare const service: PersistenceService;
|
|
13
|
-
export default service;
|
|
1
|
+
import { TokenPersistenceService } from 'studiokit-auth-js';
|
|
2
|
+
import { CaliperToken } from 'studiokit-caliper-js/lib/types';
|
|
3
|
+
export declare const returnUrlKey = "studioKit:login:returnUrl";
|
|
4
|
+
export declare const identityProviderKey = "studioKit:auth:identityProvider";
|
|
5
|
+
export declare const isCasGatewayRequestedKey = "studioKit:auth:isCasGatewayRequested";
|
|
6
|
+
export interface PersistenceService extends TokenPersistenceService {
|
|
7
|
+
getItem: (key: string) => any | Promise<any>;
|
|
8
|
+
setItem: (key: string, item: any) => void | Promise<void>;
|
|
9
|
+
removeItem: (key: string) => void | Promise<void>;
|
|
10
|
+
getPersistedCaliperToken: () => CaliperToken | null | Promise<CaliperToken | null>;
|
|
11
|
+
}
|
|
12
|
+
declare const service: PersistenceService;
|
|
13
|
+
export default service;
|
|
@@ -1,45 +1,45 @@
|
|
|
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.isCasGatewayRequestedKey = exports.identityProviderKey = exports.returnUrlKey = void 0;
|
|
7
|
-
var local_storage_fallback_1 = __importDefault(require("local-storage-fallback"));
|
|
8
|
-
var tokenKey = '@authStore:oauthToken';
|
|
9
|
-
var caliperTokenKey = 'studioKit:caliperService:token';
|
|
10
|
-
exports.returnUrlKey = 'studioKit:login:returnUrl';
|
|
11
|
-
exports.identityProviderKey = 'studioKit:auth:identityProvider';
|
|
12
|
-
exports.isCasGatewayRequestedKey = 'studioKit:auth:isCasGatewayRequested';
|
|
13
|
-
var getItem = function (key) {
|
|
14
|
-
var itemValue = local_storage_fallback_1.default.getItem(key);
|
|
15
|
-
if (!itemValue) {
|
|
16
|
-
return null;
|
|
17
|
-
}
|
|
18
|
-
return JSON.parse(itemValue);
|
|
19
|
-
};
|
|
20
|
-
var setItem = function (key, item) {
|
|
21
|
-
local_storage_fallback_1.default.setItem(key, JSON.stringify(item));
|
|
22
|
-
};
|
|
23
|
-
var removeItem = function (key) {
|
|
24
|
-
return local_storage_fallback_1.default.removeItem(key);
|
|
25
|
-
};
|
|
26
|
-
var getPersistedToken = function () {
|
|
27
|
-
var token = getItem(tokenKey);
|
|
28
|
-
return token;
|
|
29
|
-
};
|
|
30
|
-
var persistToken = function (token) {
|
|
31
|
-
setItem(tokenKey, token);
|
|
32
|
-
};
|
|
33
|
-
var getPersistedCaliperToken = function () {
|
|
34
|
-
var token = getItem(caliperTokenKey);
|
|
35
|
-
return token;
|
|
36
|
-
};
|
|
37
|
-
var service = {
|
|
38
|
-
getItem: getItem,
|
|
39
|
-
setItem: setItem,
|
|
40
|
-
removeItem: removeItem,
|
|
41
|
-
getPersistedToken: getPersistedToken,
|
|
42
|
-
persistToken: persistToken,
|
|
43
|
-
getPersistedCaliperToken: getPersistedCaliperToken
|
|
44
|
-
};
|
|
45
|
-
exports.default = service;
|
|
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.isCasGatewayRequestedKey = exports.identityProviderKey = exports.returnUrlKey = void 0;
|
|
7
|
+
var local_storage_fallback_1 = __importDefault(require("local-storage-fallback"));
|
|
8
|
+
var tokenKey = '@authStore:oauthToken';
|
|
9
|
+
var caliperTokenKey = 'studioKit:caliperService:token';
|
|
10
|
+
exports.returnUrlKey = 'studioKit:login:returnUrl';
|
|
11
|
+
exports.identityProviderKey = 'studioKit:auth:identityProvider';
|
|
12
|
+
exports.isCasGatewayRequestedKey = 'studioKit:auth:isCasGatewayRequested';
|
|
13
|
+
var getItem = function (key) {
|
|
14
|
+
var itemValue = local_storage_fallback_1.default.getItem(key);
|
|
15
|
+
if (!itemValue) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
return JSON.parse(itemValue);
|
|
19
|
+
};
|
|
20
|
+
var setItem = function (key, item) {
|
|
21
|
+
local_storage_fallback_1.default.setItem(key, JSON.stringify(item));
|
|
22
|
+
};
|
|
23
|
+
var removeItem = function (key) {
|
|
24
|
+
return local_storage_fallback_1.default.removeItem(key);
|
|
25
|
+
};
|
|
26
|
+
var getPersistedToken = function () {
|
|
27
|
+
var token = getItem(tokenKey);
|
|
28
|
+
return token;
|
|
29
|
+
};
|
|
30
|
+
var persistToken = function (token) {
|
|
31
|
+
setItem(tokenKey, token);
|
|
32
|
+
};
|
|
33
|
+
var getPersistedCaliperToken = function () {
|
|
34
|
+
var token = getItem(caliperTokenKey);
|
|
35
|
+
return token;
|
|
36
|
+
};
|
|
37
|
+
var service = {
|
|
38
|
+
getItem: getItem,
|
|
39
|
+
setItem: setItem,
|
|
40
|
+
removeItem: removeItem,
|
|
41
|
+
getPersistedToken: getPersistedToken,
|
|
42
|
+
persistToken: persistToken,
|
|
43
|
+
getPersistedCaliperToken: getPersistedCaliperToken
|
|
44
|
+
};
|
|
45
|
+
exports.default = service;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { TicketProviderService } from 'studiokit-auth-js';
|
|
2
|
-
declare const ticketProviderService: TicketProviderService;
|
|
3
|
-
export default ticketProviderService;
|
|
1
|
+
import { TicketProviderService } from 'studiokit-auth-js';
|
|
2
|
+
declare const ticketProviderService: TicketProviderService;
|
|
3
|
+
export default ticketProviderService;
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
var query_string_1 = require("query-string");
|
|
18
|
-
var windowService_1 = __importDefault(require("./windowService"));
|
|
19
|
-
var ticketProviderService = {
|
|
20
|
-
getTicket: function () {
|
|
21
|
-
var location = windowService_1.default.getLocation();
|
|
22
|
-
return query_string_1.parse(location.search).ticket;
|
|
23
|
-
},
|
|
24
|
-
getAppServiceName: function () {
|
|
25
|
-
var location = windowService_1.default.getLocation();
|
|
26
|
-
return location.protocol + "//" + location.host;
|
|
27
|
-
},
|
|
28
|
-
removeTicket: function () {
|
|
29
|
-
var location = windowService_1.default.getLocation();
|
|
30
|
-
var history = windowService_1.default.getHistory();
|
|
31
|
-
var parsedSearch = query_string_1.parse(location.search);
|
|
32
|
-
var ticket = parsedSearch.ticket, newSearch = __rest(parsedSearch, ["ticket"]);
|
|
33
|
-
var newSearchString = query_string_1.stringify(newSearch);
|
|
34
|
-
if (newSearchString) {
|
|
35
|
-
newSearchString = "?" + newSearchString;
|
|
36
|
-
}
|
|
37
|
-
history.pushState('', '', location.protocol + "//" + location.host + location.pathname + newSearchString);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
exports.default = ticketProviderService;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var query_string_1 = require("query-string");
|
|
18
|
+
var windowService_1 = __importDefault(require("./windowService"));
|
|
19
|
+
var ticketProviderService = {
|
|
20
|
+
getTicket: function () {
|
|
21
|
+
var location = windowService_1.default.getLocation();
|
|
22
|
+
return query_string_1.parse(location.search).ticket;
|
|
23
|
+
},
|
|
24
|
+
getAppServiceName: function () {
|
|
25
|
+
var location = windowService_1.default.getLocation();
|
|
26
|
+
return location.protocol + "//" + location.host;
|
|
27
|
+
},
|
|
28
|
+
removeTicket: function () {
|
|
29
|
+
var location = windowService_1.default.getLocation();
|
|
30
|
+
var history = windowService_1.default.getHistory();
|
|
31
|
+
var parsedSearch = query_string_1.parse(location.search);
|
|
32
|
+
var ticket = parsedSearch.ticket, newSearch = __rest(parsedSearch, ["ticket"]);
|
|
33
|
+
var newSearchString = query_string_1.stringify(newSearch);
|
|
34
|
+
if (newSearchString) {
|
|
35
|
+
newSearchString = "?" + newSearchString;
|
|
36
|
+
}
|
|
37
|
+
history.pushState('', '', location.protocol + "//" + location.host + location.pathname + newSearchString);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
exports.default = ticketProviderService;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { SimpleLocation } from '../types';
|
|
2
|
-
export interface WindowService {
|
|
3
|
-
setLocation: (value?: SimpleLocation) => void;
|
|
4
|
-
getLocation: () => SimpleLocation | Location;
|
|
5
|
-
setHistory: (value?: History) => void;
|
|
6
|
-
getHistory: () => History;
|
|
7
|
-
}
|
|
8
|
-
declare const windowService: WindowService;
|
|
9
|
-
export default windowService;
|
|
1
|
+
import { SimpleLocation } from '../types';
|
|
2
|
+
export interface WindowService {
|
|
3
|
+
setLocation: (value?: SimpleLocation) => void;
|
|
4
|
+
getLocation: () => SimpleLocation | Location;
|
|
5
|
+
setHistory: (value?: History) => void;
|
|
6
|
+
getHistory: () => History;
|
|
7
|
+
}
|
|
8
|
+
declare const windowService: WindowService;
|
|
9
|
+
export default windowService;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var location;
|
|
4
|
-
var history;
|
|
5
|
-
var windowService = {
|
|
6
|
-
setLocation: function (value) {
|
|
7
|
-
location = value;
|
|
8
|
-
},
|
|
9
|
-
getLocation: function () { return location || window.location; },
|
|
10
|
-
setHistory: function (value) {
|
|
11
|
-
history = value;
|
|
12
|
-
},
|
|
13
|
-
getHistory: function () { return history || window.history; }
|
|
14
|
-
};
|
|
15
|
-
exports.default = windowService;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var location;
|
|
4
|
+
var history;
|
|
5
|
+
var windowService = {
|
|
6
|
+
setLocation: function (value) {
|
|
7
|
+
location = value;
|
|
8
|
+
},
|
|
9
|
+
getLocation: function () { return location || window.location; },
|
|
10
|
+
setHistory: function (value) {
|
|
11
|
+
history = value;
|
|
12
|
+
},
|
|
13
|
+
getHistory: function () { return history || window.history; }
|
|
14
|
+
};
|
|
15
|
+
exports.default = windowService;
|
package/lib/setupTests.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
package/lib/setupTests.js
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
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 enzyme_adapter_react_17_1 = __importDefault(require("@wojtekmaj/enzyme-adapter-react-17"));
|
|
7
|
-
var enzyme_1 = require("enzyme");
|
|
8
|
-
// import MockDate from 'mockdate'
|
|
9
|
-
// import { defaultDate } from './constants/mockData'
|
|
10
|
-
jest.mock('./redux/actionCreator');
|
|
11
|
-
jest.mock('./utils/timezone', function () {
|
|
12
|
-
return {
|
|
13
|
-
getDefaultTimeZone: function () { return 'America/Indianapolis'; },
|
|
14
|
-
guessTimeZoneId: function () { return 'America/Indianapolis'; }
|
|
15
|
-
};
|
|
16
|
-
});
|
|
17
|
-
// globally mock the date
|
|
18
|
-
// beforeEach(() => {
|
|
19
|
-
// console.log('test')
|
|
20
|
-
// MockDate.set(defaultDate)
|
|
21
|
-
// })
|
|
22
|
-
// afterEach(() => {
|
|
23
|
-
// MockDate.reset()
|
|
24
|
-
// })
|
|
25
|
-
enzyme_1.configure({ adapter: new enzyme_adapter_react_17_1.default() });
|
|
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 enzyme_adapter_react_17_1 = __importDefault(require("@wojtekmaj/enzyme-adapter-react-17"));
|
|
7
|
+
var enzyme_1 = require("enzyme");
|
|
8
|
+
// import MockDate from 'mockdate'
|
|
9
|
+
// import { defaultDate } from './constants/mockData'
|
|
10
|
+
jest.mock('./redux/actionCreator');
|
|
11
|
+
jest.mock('./utils/timezone', function () {
|
|
12
|
+
return {
|
|
13
|
+
getDefaultTimeZone: function () { return 'America/Indianapolis'; },
|
|
14
|
+
guessTimeZoneId: function () { return 'America/Indianapolis'; }
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
// globally mock the date
|
|
18
|
+
// beforeEach(() => {
|
|
19
|
+
// console.log('test')
|
|
20
|
+
// MockDate.set(defaultDate)
|
|
21
|
+
// })
|
|
22
|
+
// afterEach(() => {
|
|
23
|
+
// MockDate.reset()
|
|
24
|
+
// })
|
|
25
|
+
enzyme_1.configure({ adapter: new enzyme_adapter_react_17_1.default() });
|
package/lib/startup.d.ts
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { History } from 'history';
|
|
2
|
-
import { Persistor } from 'redux-persist';
|
|
3
|
-
import { EndpointMappings } from 'studiokit-net-js';
|
|
4
|
-
import { CustomStore } from './redux/configureStore';
|
|
5
|
-
import { AppConfiguration, BaseReduxState } from './types';
|
|
6
|
-
export interface StartupResponse<TReduxState extends BaseReduxState> {
|
|
7
|
-
history: History<any>;
|
|
8
|
-
store: CustomStore<TReduxState>;
|
|
9
|
-
persistor: Persistor;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
|
|
13
|
-
*
|
|
14
|
-
* Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
|
|
15
|
-
* * `redux/sagas/rootSaga`
|
|
16
|
-
* * `setOtherDependentSagas` to add more sagas
|
|
17
|
-
* * `redux/sagas/postLoginDataSaga`
|
|
18
|
-
* * `setOnPostLogin` to load more data after login
|
|
19
|
-
* * `redux/configureReducers`
|
|
20
|
-
* * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
|
|
21
|
-
*
|
|
22
|
-
* @template TReduxState The type of state to be stored in redux
|
|
23
|
-
*
|
|
24
|
-
* @param appConfig The static configuration for the application.
|
|
25
|
-
* @param endpointMappings The mapping of redux models to api endpoints.
|
|
26
|
-
*
|
|
27
|
-
* @returns An object containing the created `history`, `store`, and `persistor` objects.
|
|
28
|
-
*/
|
|
29
|
-
export declare const startup: <TReduxState extends BaseReduxState<import("./types").BaseModelsState<import("./types").Group, import("./types").BaseSearchModelsState<import("./types").Group>>>>(appConfig: AppConfiguration, endpointMappings: EndpointMappings) => StartupResponse<TReduxState>;
|
|
1
|
+
import { History } from 'history';
|
|
2
|
+
import { Persistor } from 'redux-persist';
|
|
3
|
+
import { EndpointMappings } from 'studiokit-net-js';
|
|
4
|
+
import { CustomStore } from './redux/configureStore';
|
|
5
|
+
import { AppConfiguration, BaseReduxState } from './types';
|
|
6
|
+
export interface StartupResponse<TReduxState extends BaseReduxState> {
|
|
7
|
+
history: History<any>;
|
|
8
|
+
store: CustomStore<TReduxState>;
|
|
9
|
+
persistor: Persistor;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
|
|
13
|
+
*
|
|
14
|
+
* Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
|
|
15
|
+
* * `redux/sagas/rootSaga`
|
|
16
|
+
* * `setOtherDependentSagas` to add more sagas
|
|
17
|
+
* * `redux/sagas/postLoginDataSaga`
|
|
18
|
+
* * `setOnPostLogin` to load more data after login
|
|
19
|
+
* * `redux/configureReducers`
|
|
20
|
+
* * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
|
|
21
|
+
*
|
|
22
|
+
* @template TReduxState The type of state to be stored in redux
|
|
23
|
+
*
|
|
24
|
+
* @param appConfig The static configuration for the application.
|
|
25
|
+
* @param endpointMappings The mapping of redux models to api endpoints.
|
|
26
|
+
*
|
|
27
|
+
* @returns An object containing the created `history`, `store`, and `persistor` objects.
|
|
28
|
+
*/
|
|
29
|
+
export declare const startup: <TReduxState extends BaseReduxState<import("./types").BaseModelsState<import("./types").Group, import("./types").BaseSearchModelsState<import("./types").Group>>>>(appConfig: AppConfiguration, endpointMappings: EndpointMappings) => StartupResponse<TReduxState>;
|
package/lib/startup.js
CHANGED
|
@@ -1,128 +1,128 @@
|
|
|
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
|
-
exports.startup = void 0;
|
|
26
|
-
var applicationinsights_web_1 = require("@microsoft/applicationinsights-web");
|
|
27
|
-
var Sentry = __importStar(require("@sentry/react"));
|
|
28
|
-
var tracing_1 = require("@sentry/tracing");
|
|
29
|
-
var history_1 = require("history");
|
|
30
|
-
var react_ga_1 = __importDefault(require("react-ga"));
|
|
31
|
-
var configuration_1 = require("./constants/configuration");
|
|
32
|
-
var configureStore_1 = __importDefault(require("./redux/configureStore"));
|
|
33
|
-
var logger_1 = require("./utils/logger");
|
|
34
|
-
var url_1 = require("./utils/url");
|
|
35
|
-
/**
|
|
36
|
-
* The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
|
|
37
|
-
*
|
|
38
|
-
* Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
|
|
39
|
-
* * `redux/sagas/rootSaga`
|
|
40
|
-
* * `setOtherDependentSagas` to add more sagas
|
|
41
|
-
* * `redux/sagas/postLoginDataSaga`
|
|
42
|
-
* * `setOnPostLogin` to load more data after login
|
|
43
|
-
* * `redux/configureReducers`
|
|
44
|
-
* * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
|
|
45
|
-
*
|
|
46
|
-
* @template TReduxState The type of state to be stored in redux
|
|
47
|
-
*
|
|
48
|
-
* @param appConfig The static configuration for the application.
|
|
49
|
-
* @param endpointMappings The mapping of redux models to api endpoints.
|
|
50
|
-
*
|
|
51
|
-
* @returns An object containing the created `history`, `store`, and `persistor` objects.
|
|
52
|
-
*/
|
|
53
|
-
var startup = function (appConfig, endpointMappings) {
|
|
54
|
-
// set initial config, enabling `getApiBaseUrl` and `getShardKey`
|
|
55
|
-
configuration_1.setAppConfig(appConfig);
|
|
56
|
-
// update API_BASE_URL with final value
|
|
57
|
-
var apiBaseUrl = url_1.getApiBaseUrl(appConfig.TIER, appConfig.API_BASE_URL);
|
|
58
|
-
appConfig.API_BASE_URL = apiBaseUrl;
|
|
59
|
-
configuration_1.setEndpointMappings(endpointMappings);
|
|
60
|
-
logger_1.setLogger(logger_1.createLogger());
|
|
61
|
-
// History and Listener
|
|
62
|
-
var history = history_1.createBrowserHistory();
|
|
63
|
-
var locationListener = function (location, action) {
|
|
64
|
-
// send pageview to Google Analytics
|
|
65
|
-
if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
|
|
66
|
-
react_ga_1.default.pageview(location.pathname);
|
|
67
|
-
}
|
|
68
|
-
// send pageview to Application Insights
|
|
69
|
-
if (appInsights) {
|
|
70
|
-
appInsights.trackPageView({ uri: location.pathname });
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
history.listen(locationListener);
|
|
74
|
-
// Sentry
|
|
75
|
-
if (appConfig.SENTRY_DSN) {
|
|
76
|
-
Sentry.init({
|
|
77
|
-
dsn: appConfig.SENTRY_DSN,
|
|
78
|
-
release: appConfig.VERSION,
|
|
79
|
-
environment: appConfig.TIER,
|
|
80
|
-
debug: appConfig.NODE_ENV !== 'production',
|
|
81
|
-
// limit depth of data attached to breadcrumbs and contexts
|
|
82
|
-
normalizeDepth: 15,
|
|
83
|
-
beforeBreadcrumb: function (breadcrumb, hint) {
|
|
84
|
-
// do not track console logs when running in development mode (locally)
|
|
85
|
-
return breadcrumb.category === 'console' && appConfig.NODE_ENV !== 'production' ? null : breadcrumb;
|
|
86
|
-
},
|
|
87
|
-
// enable performance tracing
|
|
88
|
-
integrations: [
|
|
89
|
-
new tracing_1.Integrations.BrowserTracing({
|
|
90
|
-
routingInstrumentation: Sentry.reactRouterV5Instrumentation(history)
|
|
91
|
-
})
|
|
92
|
-
],
|
|
93
|
-
// set a uniform sample rate
|
|
94
|
-
tracesSampleRate: appConfig.SENTRY_TRACES_SAMPLE_RATE
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
// Unhandled Errors
|
|
98
|
-
window.onunhandledrejection = function (evt) {
|
|
99
|
-
if (evt.reason.name === 'ChunkLoadError' || evt.reason.code === 'CSS_CHUNK_LOAD_FAILED') {
|
|
100
|
-
window.alert("A new version of " + appConfig.APP_NAME + " is available. Your browser will now refresh. If you see this message again, please clear your browser cache and try again.");
|
|
101
|
-
document.location.reload();
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
Sentry.captureException(evt.reason);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
// Google Analytics
|
|
108
|
-
if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
|
|
109
|
-
react_ga_1.default.initialize(appConfig.GOOGLE_ANALYTICS_TRACKING_ID);
|
|
110
|
-
// track initial page
|
|
111
|
-
react_ga_1.default.pageview(window.location.pathname);
|
|
112
|
-
}
|
|
113
|
-
// Application Insights
|
|
114
|
-
var appInsights;
|
|
115
|
-
if (appConfig.APP_INSIGHTS_KEY) {
|
|
116
|
-
appInsights = new applicationinsights_web_1.ApplicationInsights({
|
|
117
|
-
config: {
|
|
118
|
-
instrumentationKey: appConfig.APP_INSIGHTS_KEY
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
appInsights.loadAppInsights();
|
|
122
|
-
}
|
|
123
|
-
// Redux Store and Persistor
|
|
124
|
-
var _a = configureStore_1.default(history), store = _a.store, persistor = _a.persistor;
|
|
125
|
-
var response = { history: history, store: store, persistor: persistor };
|
|
126
|
-
return response;
|
|
127
|
-
};
|
|
128
|
-
exports.startup = startup;
|
|
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
|
+
exports.startup = void 0;
|
|
26
|
+
var applicationinsights_web_1 = require("@microsoft/applicationinsights-web");
|
|
27
|
+
var Sentry = __importStar(require("@sentry/react"));
|
|
28
|
+
var tracing_1 = require("@sentry/tracing");
|
|
29
|
+
var history_1 = require("history");
|
|
30
|
+
var react_ga_1 = __importDefault(require("react-ga"));
|
|
31
|
+
var configuration_1 = require("./constants/configuration");
|
|
32
|
+
var configureStore_1 = __importDefault(require("./redux/configureStore"));
|
|
33
|
+
var logger_1 = require("./utils/logger");
|
|
34
|
+
var url_1 = require("./utils/url");
|
|
35
|
+
/**
|
|
36
|
+
* The main startup method for your app. Should be called before rendering your app or importing other scaffolding modules.
|
|
37
|
+
*
|
|
38
|
+
* Optional startup methods are available to provide additional configuration. Call these **before** `startup`. These methods can all be imported from `studiokit-scaffolding-js`.
|
|
39
|
+
* * `redux/sagas/rootSaga`
|
|
40
|
+
* * `setOtherDependentSagas` to add more sagas
|
|
41
|
+
* * `redux/sagas/postLoginDataSaga`
|
|
42
|
+
* * `setOnPostLogin` to load more data after login
|
|
43
|
+
* * `redux/configureReducers`
|
|
44
|
+
* * `updatePersistBlacklist` and `setOtherReducers` to add more reducers
|
|
45
|
+
*
|
|
46
|
+
* @template TReduxState The type of state to be stored in redux
|
|
47
|
+
*
|
|
48
|
+
* @param appConfig The static configuration for the application.
|
|
49
|
+
* @param endpointMappings The mapping of redux models to api endpoints.
|
|
50
|
+
*
|
|
51
|
+
* @returns An object containing the created `history`, `store`, and `persistor` objects.
|
|
52
|
+
*/
|
|
53
|
+
var startup = function (appConfig, endpointMappings) {
|
|
54
|
+
// set initial config, enabling `getApiBaseUrl` and `getShardKey`
|
|
55
|
+
configuration_1.setAppConfig(appConfig);
|
|
56
|
+
// update API_BASE_URL with final value
|
|
57
|
+
var apiBaseUrl = url_1.getApiBaseUrl(appConfig.TIER, appConfig.API_BASE_URL);
|
|
58
|
+
appConfig.API_BASE_URL = apiBaseUrl;
|
|
59
|
+
configuration_1.setEndpointMappings(endpointMappings);
|
|
60
|
+
logger_1.setLogger(logger_1.createLogger());
|
|
61
|
+
// History and Listener
|
|
62
|
+
var history = history_1.createBrowserHistory();
|
|
63
|
+
var locationListener = function (location, action) {
|
|
64
|
+
// send pageview to Google Analytics
|
|
65
|
+
if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
|
|
66
|
+
react_ga_1.default.pageview(location.pathname);
|
|
67
|
+
}
|
|
68
|
+
// send pageview to Application Insights
|
|
69
|
+
if (appInsights) {
|
|
70
|
+
appInsights.trackPageView({ uri: location.pathname });
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
history.listen(locationListener);
|
|
74
|
+
// Sentry
|
|
75
|
+
if (appConfig.SENTRY_DSN) {
|
|
76
|
+
Sentry.init({
|
|
77
|
+
dsn: appConfig.SENTRY_DSN,
|
|
78
|
+
release: appConfig.VERSION,
|
|
79
|
+
environment: appConfig.TIER,
|
|
80
|
+
debug: appConfig.NODE_ENV !== 'production',
|
|
81
|
+
// limit depth of data attached to breadcrumbs and contexts
|
|
82
|
+
normalizeDepth: 15,
|
|
83
|
+
beforeBreadcrumb: function (breadcrumb, hint) {
|
|
84
|
+
// do not track console logs when running in development mode (locally)
|
|
85
|
+
return breadcrumb.category === 'console' && appConfig.NODE_ENV !== 'production' ? null : breadcrumb;
|
|
86
|
+
},
|
|
87
|
+
// enable performance tracing
|
|
88
|
+
integrations: [
|
|
89
|
+
new tracing_1.Integrations.BrowserTracing({
|
|
90
|
+
routingInstrumentation: Sentry.reactRouterV5Instrumentation(history)
|
|
91
|
+
})
|
|
92
|
+
],
|
|
93
|
+
// set a uniform sample rate
|
|
94
|
+
tracesSampleRate: appConfig.SENTRY_TRACES_SAMPLE_RATE
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
// Unhandled Errors
|
|
98
|
+
window.onunhandledrejection = function (evt) {
|
|
99
|
+
if (evt.reason.name === 'ChunkLoadError' || evt.reason.code === 'CSS_CHUNK_LOAD_FAILED') {
|
|
100
|
+
window.alert("A new version of " + appConfig.APP_NAME + " is available. Your browser will now refresh. If you see this message again, please clear your browser cache and try again.");
|
|
101
|
+
document.location.reload();
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
Sentry.captureException(evt.reason);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
// Google Analytics
|
|
108
|
+
if (appConfig.GOOGLE_ANALYTICS_TRACKING_ID) {
|
|
109
|
+
react_ga_1.default.initialize(appConfig.GOOGLE_ANALYTICS_TRACKING_ID);
|
|
110
|
+
// track initial page
|
|
111
|
+
react_ga_1.default.pageview(window.location.pathname);
|
|
112
|
+
}
|
|
113
|
+
// Application Insights
|
|
114
|
+
var appInsights;
|
|
115
|
+
if (appConfig.APP_INSIGHTS_KEY) {
|
|
116
|
+
appInsights = new applicationinsights_web_1.ApplicationInsights({
|
|
117
|
+
config: {
|
|
118
|
+
instrumentationKey: appConfig.APP_INSIGHTS_KEY
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
appInsights.loadAppInsights();
|
|
122
|
+
}
|
|
123
|
+
// Redux Store and Persistor
|
|
124
|
+
var _a = configureStore_1.default(history), store = _a.store, persistor = _a.persistor;
|
|
125
|
+
var response = { history: history, store: store, persistor: persistor };
|
|
126
|
+
return response;
|
|
127
|
+
};
|
|
128
|
+
exports.startup = startup;
|