studiokit-scaffolding-js 7.0.12 → 7.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +137 -137
- package/lib/components/ActionList.d.ts +2 -2
- package/lib/components/ActionList.js +166 -87
- package/lib/components/AlertDialog.d.ts +3 -3
- package/lib/components/AlertDialog.js +133 -18
- package/lib/components/AlertWithIcon.js +93 -52
- package/lib/components/ConnectedModal.d.ts +1 -2
- package/lib/components/ConnectedModal.js +43 -37
- package/lib/components/Dropdowns/GroupsDropdown.d.ts +4 -4
- package/lib/components/Dropdowns/GroupsDropdown.js +69 -82
- package/lib/components/Dropdowns/ManagedNavDropdown.d.ts +2 -2
- package/lib/components/Dropdowns/ManagedNavDropdown.js +99 -111
- package/lib/components/Dropdowns/UserDropdown.js +109 -70
- package/lib/components/Dropdowns/index.js +27 -11
- package/lib/components/EntityOwnerList.d.ts +3 -3
- package/lib/components/EntityOwnerList.js +52 -60
- package/lib/components/Error.js +107 -27
- package/lib/components/ErrorBoundary.js +133 -94
- package/lib/components/ErrorMessage.d.ts +2 -2
- package/lib/components/ErrorMessage.js +44 -14
- package/lib/components/Forms/DateField.d.ts +2 -2
- package/lib/components/Forms/DateField.js +63 -95
- package/lib/components/Forms/TimeField.d.ts +2 -2
- package/lib/components/Forms/TimeField.js +84 -108
- package/lib/components/Forms/index.js +27 -13
- package/lib/components/Groups/CreateEditCopySaveButtons.d.ts +2 -2
- package/lib/components/Groups/CreateEditCopySaveButtons.js +102 -14
- package/lib/components/Groups/ExternalGroups/Attach.d.ts +6 -7
- package/lib/components/Groups/ExternalGroups/Attach.js +213 -188
- package/lib/components/Groups/ExternalGroups/Table.js +183 -76
- package/lib/components/Groups/GroupCreateOrEditCommonProps.js +5 -1
- package/lib/components/Groups/RosterSyncInfo.js +140 -49
- package/lib/components/HOC/AccessibleAppComponent.d.ts +2 -2
- package/lib/components/HOC/AccessibleAppComponent.js +101 -124
- package/lib/components/HOC/ActivityRequiredComponent.d.ts +14 -14
- package/lib/components/HOC/ActivityRequiredComponent.js +93 -107
- package/lib/components/HOC/AsyncComponent.d.ts +9 -9
- package/lib/components/HOC/AsyncComponent.js +53 -129
- package/lib/components/HOC/AuthenticatedComponent.d.ts +4 -4
- package/lib/components/HOC/AuthenticatedComponent.js +59 -96
- package/lib/components/HOC/CollectionComponent.d.ts +12 -12
- package/lib/components/HOC/CollectionComponent.js +171 -171
- package/lib/components/HOC/CollectionFirstItemComponent.d.ts +13 -13
- package/lib/components/HOC/CollectionFirstItemComponent.js +52 -94
- package/lib/components/HOC/CollectionItemComponent.d.ts +9 -9
- package/lib/components/HOC/CollectionItemComponent.js +169 -168
- package/lib/components/HOC/ConnectedModalComponent.d.ts +9 -9
- package/lib/components/HOC/ConnectedModalComponent.js +110 -140
- package/lib/components/HOC/DataDependentComponent.d.ts +3 -55
- package/lib/components/HOC/DataDependentComponent.js +30 -79
- package/lib/components/HOC/EntityComponent.d.ts +13 -13
- package/lib/components/HOC/EntityComponent.js +74 -112
- package/lib/components/HOC/FullscreenModalComponent.d.ts +9 -9
- package/lib/components/HOC/FullscreenModalComponent.js +165 -185
- package/lib/components/HOC/GroupActivityRequiredComponent.d.ts +2 -2
- package/lib/components/HOC/GroupActivityRequiredComponent.js +48 -47
- package/lib/components/HOC/GuidComponent.d.ts +1 -1
- package/lib/components/HOC/GuidComponent.js +29 -68
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.d.ts +28 -29
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +42 -65
- package/lib/components/HOC/ModelErrorRedirectComponent.d.ts +10 -10
- package/lib/components/HOC/ModelErrorRedirectComponent.js +51 -94
- package/lib/components/HOC/SearchPersistorComponent.d.ts +4 -4
- package/lib/components/HOC/SearchPersistorComponent.js +243 -216
- package/lib/components/HOC/UnauthenticatedComponent.d.ts +12 -12
- package/lib/components/HOC/UnauthenticatedComponent.js +37 -82
- package/lib/components/HOC/UserComponent.d.ts +1 -1
- package/lib/components/HOC/UserComponent.js +12 -11
- package/lib/components/Icons/IconAlphaList.js +34 -20
- package/lib/components/Icons/IconExternalUser.js +34 -20
- package/lib/components/Icons/IconImpersonation.js +34 -20
- package/lib/components/Icons/IconStopImpersonating.js +34 -20
- package/lib/components/Icons/IconTable.js +35 -21
- package/lib/components/Icons/IconTableDeleteCol.js +34 -20
- package/lib/components/Icons/IconTableDeleteRow.js +34 -20
- package/lib/components/Icons/IconTableInsertCol.js +34 -20
- package/lib/components/Icons/IconTableInsertRow.js +34 -20
- package/lib/components/Impersonation/Button.d.ts +2 -2
- package/lib/components/Impersonation/Button.js +76 -56
- package/lib/components/Impersonation/Link.d.ts +2 -2
- package/lib/components/Impersonation/Link.js +76 -53
- package/lib/components/Impersonation/UserDetail.css +22 -22
- package/lib/components/Impersonation/UserDetail.d.ts +2 -2
- package/lib/components/Impersonation/UserDetail.js +66 -17
- package/lib/components/Loading.js +27 -21
- package/lib/components/LockDownBrowser/Check.js +194 -107
- package/lib/components/LockDownBrowser/ExitButton.js +27 -14
- package/lib/components/LockDownBrowser/Launch.js +70 -85
- package/lib/components/Lti/Confirm.js +152 -33
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.d.ts +4 -2
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +170 -78
- package/lib/components/Lti/Launch.js +105 -49
- package/lib/components/Lti/LaunchGroup.js +85 -39
- package/lib/components/ManageTable.d.ts +1 -2
- package/lib/components/ManageTable.js +309 -104
- package/lib/components/ManageTableNoDataComponent.js +42 -22
- package/lib/components/NewVersionAlert.d.ts +2 -2
- package/lib/components/NewVersionAlert.js +82 -91
- package/lib/components/NotFound.js +87 -28
- package/lib/components/Notifications.d.ts +4 -4
- package/lib/components/Notifications.js +187 -169
- package/lib/components/PaginationNextButton.js +33 -21
- package/lib/components/PaginationPreviousButton.js +33 -21
- package/lib/components/Quill/CustomToolbar.d.ts +2 -2
- package/lib/components/Quill/CustomToolbar.js +432 -257
- package/lib/components/Quill/Formats/Image.d.ts +10 -25
- package/lib/components/Quill/Formats/Image.js +80 -86
- package/lib/components/Quill/Formats/List.d.ts +6 -3
- package/lib/components/Quill/Formats/List.js +52 -74
- package/lib/components/Quill/Formats/Video.d.ts +2 -1
- package/lib/components/Quill/Formats/Video.js +31 -45
- package/lib/components/Quill/ImageDropModule.d.ts +1 -1
- package/lib/components/Quill/ImageDropModule.js +149 -122
- package/lib/components/Quill/ImageWarning.d.ts +2 -2
- package/lib/components/Quill/ImageWarning.js +45 -32
- package/lib/components/Quill/ImageWithAltTextModal.d.ts +0 -1
- package/lib/components/Quill/ImageWithAltTextModal.js +425 -141
- package/lib/components/Quill/Specs/CustomImageSpec.d.ts +1 -1
- package/lib/components/Quill/Specs/CustomImageSpec.js +43 -51
- package/lib/components/Quill/Specs/CustomVideoSpec.d.ts +1 -1
- package/lib/components/Quill/Specs/CustomVideoSpec.js +35 -44
- package/lib/components/Quill/TableModule/Blots/BaseTableBlot.d.ts +2 -1
- package/lib/components/Quill/TableModule/Blots/BaseTableBlot.js +105 -121
- package/lib/components/Quill/TableModule/Blots/TableBlot.js +53 -66
- package/lib/components/Quill/TableModule/Blots/TableBodyBlot.js +54 -67
- package/lib/components/Quill/TableModule/Blots/TableCellBlot.d.ts +1 -1
- package/lib/components/Quill/TableModule/Blots/TableCellBlot.js +225 -241
- package/lib/components/Quill/TableModule/Blots/TableContainer.js +82 -99
- package/lib/components/Quill/TableModule/Blots/TableRowBlot.js +76 -87
- package/lib/components/Quill/TableModule/constants.js +45 -41
- package/lib/components/Quill/TableModule/index.css +171 -171
- package/lib/components/Quill/TableModule/index.d.ts +14 -5
- package/lib/components/Quill/TableModule/index.js +373 -313
- package/lib/components/Quill/TableModule/utils.js +45 -45
- package/lib/components/Quill/accessibilityFix.d.ts +0 -1
- package/lib/components/Quill/accessibilityFix.js +235 -251
- package/lib/components/Quill/index.js +36 -32
- package/lib/components/RefreshIndicator/Bordered.js +48 -32
- package/lib/components/RefreshIndicator/Inline.js +48 -33
- package/lib/components/RefreshIndicator/index.d.ts +2 -2
- package/lib/components/RefreshIndicator/index.js +263 -113
- package/lib/components/SearchControls.js +216 -31
- package/lib/components/SentryRoute.js +10 -23
- package/lib/components/Tables/RoleFilter.d.ts +3 -4
- package/lib/components/Tables/RoleFilter.js +71 -46
- package/lib/components/Tables/TextFilter.d.ts +2 -3
- package/lib/components/Tables/TextFilter.js +62 -20
- package/lib/components/UserRoles/Add.d.ts +3 -3
- package/lib/components/UserRoles/Add.js +199 -161
- package/lib/components/UserRoles/Context.js +11 -9
- package/lib/components/UserRoles/RoleCell.js +180 -100
- package/lib/components/UserRoles/Select.js +157 -51
- package/lib/components/UserRoles/Table.js +221 -102
- package/lib/components/UserRoles/index.d.ts +6 -6
- package/lib/components/UserRoles/index.js +537 -466
- package/lib/config/eslint/index.d.ts +2 -0
- package/lib/config/eslint/index.js +36 -0
- package/lib/config/eslint/lib/order.d.ts +3 -0
- package/lib/config/eslint/lib/order.js +30 -0
- package/lib/config/eslint/lib/prettier.d.ts +3 -0
- package/lib/config/eslint/lib/prettier.js +23 -0
- package/lib/config/eslint/lib/typescript.d.ts +2 -0
- package/lib/config/eslint/lib/typescript.js +98 -0
- package/lib/config/eslint/react.d.ts +2 -0
- package/lib/config/eslint/react.js +30 -0
- package/lib/constants/baseActivity.js +30 -26
- package/lib/constants/baseRole.js +14 -10
- package/lib/constants/configuration.d.ts +1 -1
- package/lib/constants/configuration.js +43 -39
- package/lib/constants/externalProviderType.js +10 -6
- package/lib/constants/fetchErrorData.js +15 -11
- package/lib/constants/index.js +137 -23
- package/lib/constants/lockDownBrowser.js +28 -24
- package/lib/constants/mockData.d.ts +4 -6
- package/lib/constants/mockData.js +385 -326
- package/lib/constants/modelStatus.js +15 -11
- package/lib/constants/notificationType.js +12 -8
- package/lib/constants/operatingSystem.js +12 -8
- package/lib/constants/shard.js +11 -7
- package/lib/constants/table.js +21 -21
- package/lib/constants/tier.js +12 -8
- package/lib/constants/userRole.d.ts +1 -2
- package/lib/constants/userRole.js +15 -17
- package/lib/css/base/_base.css +98 -98
- package/lib/css/base/_typography.css +130 -130
- package/lib/css/components/_alert.css +86 -86
- package/lib/css/components/_bootstrap-grid.css +28 -28
- package/lib/css/components/_buttons.css +397 -397
- package/lib/css/components/_forms.css +101 -101
- package/lib/css/components/_menu.css +56 -56
- package/lib/css/components/_modals.css +46 -46
- package/lib/css/components/_quill.css +315 -315
- package/lib/css/components/_tables.css +497 -497
- package/lib/css/components/_tags.css +12 -12
- package/lib/css/index-with-variables.css +15 -15
- package/lib/css/index.css +14 -14
- package/lib/css/utils/_border.css +463 -463
- package/lib/css/utils/_color.css +317 -317
- package/lib/css/utils/_display.css +305 -312
- package/lib/css/utils/_general.css +48 -48
- package/lib/css/utils/_icon.css +16 -16
- package/lib/css/utils/_text.css +25 -24
- package/lib/css/utils/_width.css +60 -60
- package/lib/css/variables.css +84 -84
- package/lib/endpointMappings.js +197 -193
- package/lib/hooks/useCollection.js +83 -65
- package/lib/hooks/useCollectionConfiguration.d.ts +0 -1
- package/lib/hooks/useCollectionConfiguration.js +185 -88
- package/lib/hooks/useCollectionItem.js +155 -58
- package/lib/hooks/useEventCalback.d.ts +14 -0
- package/lib/hooks/useEventCalback.js +51 -0
- package/lib/hooks/useGuid.js +21 -10
- package/lib/hooks/usePrevious.d.ts +24 -1
- package/lib/hooks/usePrevious.js +84 -14
- package/lib/index.js +156 -36
- package/lib/redux/actionCreator.d.ts +6 -6
- package/lib/redux/actionCreator.js +51 -40
- package/lib/redux/actions/AuthAction.js +44 -31
- package/lib/redux/actions/ModalAction.d.ts +1 -1
- package/lib/redux/actions/ModalAction.js +10 -6
- package/lib/redux/actions/ModelAction.d.ts +1 -1
- package/lib/redux/actions/ModelAction.js +77 -49
- package/lib/redux/actions/NotificationAction.js +10 -6
- package/lib/redux/actions/SearchAction.js +9 -5
- package/lib/redux/actions/index.js +60 -16
- package/lib/redux/configureReducers.d.ts +2 -5
- package/lib/redux/configureReducers.js +67 -78
- package/lib/redux/configureStore.d.ts +2 -2
- package/lib/redux/configureStore.js +83 -115
- package/lib/redux/helpers.js +7 -2
- package/lib/redux/reducers/authReducer.js +52 -46
- package/lib/redux/reducers/index.js +41 -15
- package/lib/redux/reducers/modalsReducer.js +49 -52
- package/lib/redux/reducers/modelsReducer.d.ts +2 -2
- package/lib/redux/reducers/modelsReducer.js +183 -182
- package/lib/redux/reducers/notificationsReducer.js +26 -21
- package/lib/redux/reducers/searchReducer.js +26 -20
- package/lib/redux/sagas/appInsightsSaga.js +24 -62
- package/lib/redux/sagas/authSaga.js +287 -414
- package/lib/redux/sagas/caliperSaga.js +169 -263
- package/lib/redux/sagas/clockOffsetSaga.js +36 -77
- package/lib/redux/sagas/configurationSaga.js +13 -46
- package/lib/redux/sagas/downtimeApiErrorSaga.d.ts +0 -1
- package/lib/redux/sagas/downtimeApiErrorSaga.js +23 -64
- package/lib/redux/sagas/errorSaga.d.ts +0 -1
- package/lib/redux/sagas/errorSaga.js +29 -63
- package/lib/redux/sagas/googleAnalyticsSaga.js +29 -69
- package/lib/redux/sagas/identityProviderSaga.js +24 -69
- package/lib/redux/sagas/initialDataLoadSaga.js +38 -29
- package/lib/redux/sagas/lockDownBrowserErrorSaga.d.ts +0 -1
- package/lib/redux/sagas/lockDownBrowserErrorSaga.js +32 -81
- package/lib/redux/sagas/modelFetchSaga.js +379 -459
- package/lib/redux/sagas/noStoreSaga.d.ts +1 -1
- package/lib/redux/sagas/noStoreSaga.js +68 -101
- package/lib/redux/sagas/postLoginDataSaga.js +47 -79
- package/lib/redux/sagas/postLoginRedirectSaga.js +30 -71
- package/lib/redux/sagas/rootSaga.js +85 -137
- package/lib/redux/sagas/sentrySaga.js +29 -85
- package/lib/redux/sagas/userIdSaga.js +18 -54
- package/lib/services/codeProviderService.js +25 -29
- package/lib/services/dateService.js +14 -12
- package/lib/services/documentService.js +18 -13
- package/lib/services/fetchService.js +134 -168
- package/lib/services/persistenceService.d.ts +4 -4
- package/lib/services/persistenceService.js +45 -43
- package/lib/services/ticketProviderService.js +29 -33
- package/lib/services/tokenPersistenceService.js +13 -9
- package/lib/services/windowService.js +21 -17
- package/lib/startup.d.ts +1 -1
- package/lib/startup.js +132 -135
- package/lib/types/AppConfiguration.js +5 -1
- package/lib/types/Artifact.js +11 -7
- package/lib/types/BaseReduxState.js +5 -1
- package/lib/types/Client.js +5 -1
- package/lib/types/Collection.d.ts +3 -3
- package/lib/types/Collection.js +5 -1
- package/lib/types/Configuration.js +5 -1
- package/lib/types/DeepLinkingResponseRequest.js +5 -1
- package/lib/types/DeletableModel.js +5 -1
- package/lib/types/Event.js +5 -1
- package/lib/types/ExternalGroup.js +5 -1
- package/lib/types/ExternalProvider.js +5 -1
- package/lib/types/ExternalTerm.js +5 -1
- package/lib/types/Group.js +5 -1
- package/lib/types/IdentityProvider.js +5 -1
- package/lib/types/LtiLaunch.js +5 -1
- package/lib/types/NameOnlyEntity.js +5 -1
- package/lib/types/Notification.d.ts +2 -2
- package/lib/types/Notification.js +5 -1
- package/lib/types/OptionalRecord.d.ts +1 -1
- package/lib/types/OptionalRecord.js +5 -1
- package/lib/types/OwnerSchedule.d.ts +3 -1
- package/lib/types/OwnerSchedule.js +5 -1
- package/lib/types/PropertyOfType.d.ts +3 -3
- package/lib/types/PropertyOfType.js +5 -1
- package/lib/types/Quill.js +5 -1
- package/lib/types/RoleDescription.d.ts +0 -1
- package/lib/types/RoleDescription.js +5 -1
- package/lib/types/Search.js +5 -1
- package/lib/types/SimpleLocation.js +5 -1
- package/lib/types/UniTime.js +5 -1
- package/lib/types/User.js +5 -1
- package/lib/types/UserRole.js +5 -1
- package/lib/types/auth/AuthState.js +5 -1
- package/lib/types/auth/CasV1LoginRequestBody.js +5 -1
- package/lib/types/auth/ClientCredentials.js +5 -1
- package/lib/types/auth/CodeProviderService.js +5 -1
- package/lib/types/auth/LocalLoginRequestBody.js +5 -1
- package/lib/types/auth/TicketProviderService.js +5 -1
- package/lib/types/auth/TokenPersistenceService.js +5 -1
- package/lib/types/auth/index.js +82 -18
- package/lib/types/externals.d.js +2 -0
- package/lib/types/index.js +313 -39
- package/lib/types/net/EndpointConfig.js +5 -1
- package/lib/types/net/EndpointMapping.js +5 -1
- package/lib/types/net/EndpointMappings.js +5 -1
- package/lib/types/net/ErrorHandler.d.ts +1 -1
- package/lib/types/net/ErrorHandler.js +5 -1
- package/lib/types/net/FetchConfig.d.ts +1 -1
- package/lib/types/net/FetchConfig.js +5 -1
- package/lib/types/net/FetchErrorData.js +10 -6
- package/lib/types/net/FetchResult.d.ts +2 -2
- package/lib/types/net/FetchResult.js +5 -1
- package/lib/types/net/HTTPMethod.d.ts +1 -1
- package/lib/types/net/HTTPMethod.js +5 -1
- package/lib/types/net/HTTPStatusCode.js +16 -12
- package/lib/types/net/Metadata.js +5 -1
- package/lib/types/net/Model.js +5 -1
- package/lib/types/net/ModelCollection.js +5 -1
- package/lib/types/net/ModelsState.js +5 -1
- package/lib/types/net/OAuthToken.js +5 -1
- package/lib/types/net/OAuthTokenOrNull.d.ts +1 -1
- package/lib/types/net/OAuthTokenOrNull.js +5 -1
- package/lib/types/net/TokenAccessFunction.d.ts +1 -1
- package/lib/types/net/TokenAccessFunction.js +5 -1
- package/lib/types/net/index.js +181 -27
- package/lib/utils/baseActivity.d.ts +2 -2
- package/lib/utils/baseActivity.js +138 -136
- package/lib/utils/baseRole.js +37 -33
- package/lib/utils/collection.js +432 -310
- package/lib/utils/cookies.js +22 -37
- package/lib/utils/date.js +320 -320
- package/lib/utils/dom.js +186 -174
- package/lib/utils/domainIdentifier.js +9 -9
- package/lib/utils/entityUserRole.js +6 -2
- package/lib/utils/error.d.ts +1 -1
- package/lib/utils/error.js +18 -16
- package/lib/utils/events.js +40 -33
- package/lib/utils/externalGroup.js +25 -21
- package/lib/utils/externalProviders.js +8 -4
- package/lib/utils/externalTerms.js +9 -6
- package/lib/utils/fetch.d.ts +1 -1
- package/lib/utils/fetch.js +188 -185
- package/lib/utils/group.js +17 -9
- package/lib/utils/groupDates.d.ts +1 -1
- package/lib/utils/groupDates.js +43 -39
- package/lib/utils/groupRoles.js +28 -28
- package/lib/utils/lockDownBrowser.js +16 -12
- package/lib/utils/logger.js +30 -25
- package/lib/utils/lti.js +10 -5
- package/lib/utils/model.d.ts +2 -2
- package/lib/utils/model.js +39 -48
- package/lib/utils/number.js +23 -26
- package/lib/utils/promise.d.ts +6 -1
- package/lib/utils/promise.js +34 -15
- package/lib/utils/quill.js +66 -77
- package/lib/utils/route.d.ts +2 -2
- package/lib/utils/route.js +61 -60
- package/lib/utils/search.d.ts +1 -1
- package/lib/utils/search.js +78 -85
- package/lib/utils/shard.js +38 -41
- package/lib/utils/sort.d.ts +3 -3
- package/lib/utils/sort.js +62 -58
- package/lib/utils/string.js +14 -10
- package/lib/utils/table.d.ts +3 -3
- package/lib/utils/table.js +39 -36
- package/lib/utils/timezone.js +12 -26
- package/lib/utils/url.d.ts +2 -1
- package/lib/utils/url.js +146 -200
- package/lib/utils/user.js +59 -61
- package/lib/utils/userAgent.js +11 -11
- package/lib/utils/userRole.d.ts +3 -3
- package/lib/utils/userRole.js +58 -56
- package/package.json +224 -207
- package/lib/config/eslint/index.cjs +0 -21
- package/lib/config/eslint/lib/order.cjs +0 -22
- package/lib/config/eslint/lib/prettier.cjs +0 -18
- package/lib/config/eslint/lib/typescript.cjs +0 -86
- package/lib/config/eslint/react.cjs +0 -9
|
@@ -2,7 +2,7 @@ import { SagaIterator } from '@redux-saga/core';
|
|
|
2
2
|
import { AnyAction } from 'redux';
|
|
3
3
|
import { FetchErrorData } from '../../types';
|
|
4
4
|
import { ModelFetchRequestAction } from '../actions';
|
|
5
|
-
export
|
|
5
|
+
export type HookFunction<T = any> = (input: T | FetchErrorData | null) => void;
|
|
6
6
|
export declare const matchesNoStoreAction: (incomingAction: AnyAction) => incomingAction is ModelFetchRequestAction;
|
|
7
7
|
export declare const matchesFailedNoStoreHookAction: (incomingAction: AnyAction, noStoreAction: ModelFetchRequestAction) => boolean;
|
|
8
8
|
export declare const takeMatchesFailedNoStoreHookAction: (noStoreAction: ModelFetchRequestAction) => (incomingAction: AnyAction) => boolean;
|
|
@@ -1,119 +1,86 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
case 0: case 1: t = op; break;
|
|
13
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
14
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
15
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
16
|
-
default:
|
|
17
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
18
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
19
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
20
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
21
|
-
if (t[2]) _.ops.pop();
|
|
22
|
-
_.trys.pop(); continue;
|
|
23
|
-
}
|
|
24
|
-
op = body.call(thisArg, _);
|
|
25
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
26
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.handleAction = exports.noStoreHooks = exports.unregisterNoStoreActionHook = exports.registerNoStoreActionHook = exports.takeMatchesReceivedNoStoreHookAction = exports.matchesReceivedNoStoreHookAction = exports.takeMatchesFailedNoStoreHookAction = exports.matchesFailedNoStoreHookAction = exports.matchesNoStoreAction = void 0;
|
|
31
|
-
var lodash_1 = require("lodash");
|
|
32
|
-
var effects_1 = require("redux-saga/effects");
|
|
33
|
-
var actions_1 = require("../actions");
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = noStoreSaga;
|
|
7
|
+
exports.handleAction = handleAction;
|
|
8
|
+
exports.unregisterNoStoreActionHook = exports.takeMatchesReceivedNoStoreHookAction = exports.takeMatchesFailedNoStoreHookAction = exports.registerNoStoreActionHook = exports.noStoreHooks = exports.matchesReceivedNoStoreHookAction = exports.matchesNoStoreAction = exports.matchesFailedNoStoreHookAction = void 0;
|
|
9
|
+
var _lodash = require("lodash");
|
|
10
|
+
var _effects = require("redux-saga/effects");
|
|
11
|
+
var _actions = require("../actions");
|
|
34
12
|
//#region Helpers
|
|
35
|
-
|
|
36
|
-
|
|
13
|
+
|
|
14
|
+
const matchesNoStoreAction = incomingAction => {
|
|
15
|
+
return incomingAction.type === _actions.MODEL_FETCH_REQUEST_ACTION_TYPE.FETCH_REQUEST && incomingAction.noStore === true;
|
|
37
16
|
};
|
|
38
17
|
exports.matchesNoStoreAction = matchesNoStoreAction;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
noStoreAction.noStore === true &&
|
|
42
|
-
incomingAction.guid === noStoreAction.guid);
|
|
18
|
+
const matchesFailedNoStoreHookAction = (incomingAction, noStoreAction) => {
|
|
19
|
+
return incomingAction.type === _actions.MODEL_FETCH_ERROR_ACTION_TYPE.TRANSIENT_FETCH_FAILED && noStoreAction.noStore === true && incomingAction.guid === noStoreAction.guid;
|
|
43
20
|
};
|
|
44
21
|
exports.matchesFailedNoStoreHookAction = matchesFailedNoStoreHookAction;
|
|
45
|
-
|
|
22
|
+
const takeMatchesFailedNoStoreHookAction = noStoreAction => incomingAction => matchesFailedNoStoreHookAction(incomingAction, noStoreAction);
|
|
46
23
|
exports.takeMatchesFailedNoStoreHookAction = takeMatchesFailedNoStoreHookAction;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
noStoreAction.noStore === true &&
|
|
50
|
-
incomingAction.guid === noStoreAction.guid);
|
|
24
|
+
const matchesReceivedNoStoreHookAction = (incomingAction, noStoreAction) => {
|
|
25
|
+
return incomingAction.type === _actions.MODEL_FETCH_RESULT_ACTION_TYPE.TRANSIENT_FETCH_RESULT_RECEIVED && noStoreAction.noStore === true && incomingAction.guid === noStoreAction.guid;
|
|
51
26
|
};
|
|
52
27
|
exports.matchesReceivedNoStoreHookAction = matchesReceivedNoStoreHookAction;
|
|
53
|
-
|
|
54
|
-
|
|
28
|
+
const takeMatchesReceivedNoStoreHookAction = noStoreAction => incomingAction => matchesReceivedNoStoreHookAction(incomingAction, noStoreAction);
|
|
29
|
+
|
|
55
30
|
//#endregion Helpers
|
|
31
|
+
|
|
56
32
|
//#region Hooks
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
33
|
+
exports.takeMatchesReceivedNoStoreHookAction = takeMatchesReceivedNoStoreHookAction;
|
|
34
|
+
const hooks = {};
|
|
35
|
+
const registerNoStoreActionHook = (key, hook) => {
|
|
36
|
+
hooks[key] = hook;
|
|
60
37
|
};
|
|
61
38
|
exports.registerNoStoreActionHook = registerNoStoreActionHook;
|
|
62
|
-
|
|
63
|
-
|
|
39
|
+
const unregisterNoStoreActionHook = key => {
|
|
40
|
+
delete hooks[key];
|
|
64
41
|
};
|
|
65
42
|
exports.unregisterNoStoreActionHook = unregisterNoStoreActionHook;
|
|
66
|
-
|
|
43
|
+
const noStoreHooks = exports.noStoreHooks = {
|
|
44
|
+
registerNoStoreActionHook,
|
|
45
|
+
unregisterNoStoreActionHook
|
|
46
|
+
};
|
|
47
|
+
|
|
67
48
|
//#endregion Hooks
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
hook((resultAction === null || resultAction === void 0 ? void 0 : resultAction.data) || null);
|
|
101
|
-
return [2 /*return*/];
|
|
102
|
-
}
|
|
103
|
-
});
|
|
49
|
+
|
|
50
|
+
function* handleAction(noStoreAction) {
|
|
51
|
+
const guid = noStoreAction.guid;
|
|
52
|
+
if ((0, _lodash.isNil)(guid)) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
if ((0, _lodash.isNil)(hooks[guid])) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const {
|
|
59
|
+
resultAction,
|
|
60
|
+
errorAction
|
|
61
|
+
} = yield (0, _effects.race)({
|
|
62
|
+
resultAction: (0, _effects.take)(takeMatchesReceivedNoStoreHookAction(noStoreAction)),
|
|
63
|
+
errorAction: (0, _effects.take)(takeMatchesFailedNoStoreHookAction(noStoreAction))
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
// check that the hook still exists after the result/error
|
|
67
|
+
const hook = hooks[guid];
|
|
68
|
+
if ((0, _lodash.isNil)(hook)) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// return `errorData` on failure. modelFetchSaga will ALWAYS create `errorData`
|
|
73
|
+
if (errorAction) {
|
|
74
|
+
hook(errorAction.errorData);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
// return `data` or `null` on a successful fetch result
|
|
78
|
+
// `data` can technically be `undefined`, e.g. if the server response is a NoContent (204),
|
|
79
|
+
// so the caller will need to determine if `null` is treated as an error or success
|
|
80
|
+
hook(resultAction?.data || null);
|
|
104
81
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
switch (_a.label) {
|
|
109
|
-
case 0:
|
|
110
|
-
/* istanbul ignore next */
|
|
111
|
-
return [4 /*yield*/, effects_1.takeEvery(exports.matchesNoStoreAction, handleAction)];
|
|
112
|
-
case 1:
|
|
113
|
-
/* istanbul ignore next */
|
|
114
|
-
_a.sent();
|
|
115
|
-
return [2 /*return*/];
|
|
116
|
-
}
|
|
117
|
-
});
|
|
82
|
+
function* noStoreSaga() {
|
|
83
|
+
/* istanbul ignore next */
|
|
84
|
+
yield (0, _effects.takeEvery)(matchesNoStoreAction, handleAction);
|
|
118
85
|
}
|
|
119
|
-
|
|
86
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwicmVxdWlyZSIsIl9lZmZlY3RzIiwiX2FjdGlvbnMiLCJtYXRjaGVzTm9TdG9yZUFjdGlvbiIsImluY29taW5nQWN0aW9uIiwidHlwZSIsIk1PREVMX0ZFVENIX1JFUVVFU1RfQUNUSU9OX1RZUEUiLCJGRVRDSF9SRVFVRVNUIiwibm9TdG9yZSIsImV4cG9ydHMiLCJtYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24iLCJub1N0b3JlQWN0aW9uIiwiTU9ERUxfRkVUQ0hfRVJST1JfQUNUSU9OX1RZUEUiLCJUUkFOU0lFTlRfRkVUQ0hfRkFJTEVEIiwiZ3VpZCIsInRha2VNYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24iLCJtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbiIsIk1PREVMX0ZFVENIX1JFU1VMVF9BQ1RJT05fVFlQRSIsIlRSQU5TSUVOVF9GRVRDSF9SRVNVTFRfUkVDRUlWRUQiLCJ0YWtlTWF0Y2hlc1JlY2VpdmVkTm9TdG9yZUhvb2tBY3Rpb24iLCJob29rcyIsInJlZ2lzdGVyTm9TdG9yZUFjdGlvbkhvb2siLCJrZXkiLCJob29rIiwidW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rIiwibm9TdG9yZUhvb2tzIiwiaGFuZGxlQWN0aW9uIiwiaXNOaWwiLCJyZXN1bHRBY3Rpb24iLCJlcnJvckFjdGlvbiIsInJhY2UiLCJ0YWtlIiwiZXJyb3JEYXRhIiwiZGF0YSIsIm5vU3RvcmVTYWdhIiwidGFrZUV2ZXJ5Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlZHV4L3NhZ2FzL25vU3RvcmVTYWdhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNhZ2FJdGVyYXRvciB9IGZyb20gJ0ByZWR1eC1zYWdhL2NvcmUnXHJcbmltcG9ydCB7IGlzTmlsIH0gZnJvbSAnbG9kYXNoJ1xyXG5pbXBvcnQgeyBBbnlBY3Rpb24gfSBmcm9tICdyZWR1eCdcclxuaW1wb3J0IHsgcmFjZSwgdGFrZSwgdGFrZUV2ZXJ5IH0gZnJvbSAncmVkdXgtc2FnYS9lZmZlY3RzJ1xyXG5pbXBvcnQgeyBGZXRjaEVycm9yRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJ1xyXG5pbXBvcnQge1xyXG5cdE1PREVMX0ZFVENIX0VSUk9SX0FDVElPTl9UWVBFLFxyXG5cdE1PREVMX0ZFVENIX1JFUVVFU1RfQUNUSU9OX1RZUEUsXHJcblx0TU9ERUxfRkVUQ0hfUkVTVUxUX0FDVElPTl9UWVBFLFxyXG5cdE1vZGVsRmV0Y2hFcnJvckFjdGlvbixcclxuXHRNb2RlbEZldGNoUmVxdWVzdEFjdGlvbixcclxuXHRNb2RlbEZldGNoUmVzdWx0QWN0aW9uXHJcbn0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbmV4cG9ydCB0eXBlIEhvb2tGdW5jdGlvbjxUID0gYW55PiA9IChpbnB1dDogVCB8IEZldGNoRXJyb3JEYXRhIHwgbnVsbCkgPT4gdm9pZFxyXG5cclxuLy8jcmVnaW9uIEhlbHBlcnNcclxuXHJcbmV4cG9ydCBjb25zdCBtYXRjaGVzTm9TdG9yZUFjdGlvbiA9IChpbmNvbWluZ0FjdGlvbjogQW55QWN0aW9uKTogaW5jb21pbmdBY3Rpb24gaXMgTW9kZWxGZXRjaFJlcXVlc3RBY3Rpb24gPT4ge1xyXG5cdHJldHVybiBpbmNvbWluZ0FjdGlvbi50eXBlID09PSBNT0RFTF9GRVRDSF9SRVFVRVNUX0FDVElPTl9UWVBFLkZFVENIX1JFUVVFU1QgJiYgaW5jb21pbmdBY3Rpb24ubm9TdG9yZSA9PT0gdHJ1ZVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgbWF0Y2hlc0ZhaWxlZE5vU3RvcmVIb29rQWN0aW9uID0gKGluY29taW5nQWN0aW9uOiBBbnlBY3Rpb24sIG5vU3RvcmVBY3Rpb246IE1vZGVsRmV0Y2hSZXF1ZXN0QWN0aW9uKSA9PiB7XHJcblx0cmV0dXJuIChcclxuXHRcdGluY29taW5nQWN0aW9uLnR5cGUgPT09IE1PREVMX0ZFVENIX0VSUk9SX0FDVElPTl9UWVBFLlRSQU5TSUVOVF9GRVRDSF9GQUlMRUQgJiZcclxuXHRcdG5vU3RvcmVBY3Rpb24ubm9TdG9yZSA9PT0gdHJ1ZSAmJlxyXG5cdFx0aW5jb21pbmdBY3Rpb24uZ3VpZCA9PT0gbm9TdG9yZUFjdGlvbi5ndWlkXHJcblx0KVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgdGFrZU1hdGNoZXNGYWlsZWROb1N0b3JlSG9va0FjdGlvbiA9XHJcblx0KG5vU3RvcmVBY3Rpb246IE1vZGVsRmV0Y2hSZXF1ZXN0QWN0aW9uKSA9PiAoaW5jb21pbmdBY3Rpb246IEFueUFjdGlvbikgPT5cclxuXHRcdG1hdGNoZXNGYWlsZWROb1N0b3JlSG9va0FjdGlvbihpbmNvbWluZ0FjdGlvbiwgbm9TdG9yZUFjdGlvbilcclxuXHJcbmV4cG9ydCBjb25zdCBtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbiA9IChpbmNvbWluZ0FjdGlvbjogQW55QWN0aW9uLCBub1N0b3JlQWN0aW9uOiBNb2RlbEZldGNoUmVxdWVzdEFjdGlvbikgPT4ge1xyXG5cdHJldHVybiAoXHJcblx0XHRpbmNvbWluZ0FjdGlvbi50eXBlID09PSBNT0RFTF9GRVRDSF9SRVNVTFRfQUNUSU9OX1RZUEUuVFJBTlNJRU5UX0ZFVENIX1JFU1VMVF9SRUNFSVZFRCAmJlxyXG5cdFx0bm9TdG9yZUFjdGlvbi5ub1N0b3JlID09PSB0cnVlICYmXHJcblx0XHRpbmNvbWluZ0FjdGlvbi5ndWlkID09PSBub1N0b3JlQWN0aW9uLmd1aWRcclxuXHQpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB0YWtlTWF0Y2hlc1JlY2VpdmVkTm9TdG9yZUhvb2tBY3Rpb24gPVxyXG5cdChub1N0b3JlQWN0aW9uOiBNb2RlbEZldGNoUmVxdWVzdEFjdGlvbikgPT4gKGluY29taW5nQWN0aW9uOiBBbnlBY3Rpb24pID0+XHJcblx0XHRtYXRjaGVzUmVjZWl2ZWROb1N0b3JlSG9va0FjdGlvbihpbmNvbWluZ0FjdGlvbiwgbm9TdG9yZUFjdGlvbilcclxuXHJcbi8vI2VuZHJlZ2lvbiBIZWxwZXJzXHJcblxyXG4vLyNyZWdpb24gSG9va3NcclxuXHJcbmNvbnN0IGhvb2tzOiB7IFtrZXk6IHN0cmluZ106IEhvb2tGdW5jdGlvbiB9ID0ge31cclxuXHJcbmV4cG9ydCBjb25zdCByZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rID0gPFQ+KGtleTogc3RyaW5nLCBob29rOiBIb29rRnVuY3Rpb248VD4pID0+IHtcclxuXHRob29rc1trZXldID0gaG9va1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgdW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rID0gKGtleTogc3RyaW5nKSA9PiB7XHJcblx0ZGVsZXRlIGhvb2tzW2tleV1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IG5vU3RvcmVIb29rcyA9IHsgcmVnaXN0ZXJOb1N0b3JlQWN0aW9uSG9vaywgdW5yZWdpc3Rlck5vU3RvcmVBY3Rpb25Ib29rIH1cclxuXHJcbi8vI2VuZHJlZ2lvbiBIb29rc1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uKiBoYW5kbGVBY3Rpb24obm9TdG9yZUFjdGlvbjogTW9kZWxGZXRjaFJlcXVlc3RBY3Rpb24pOiBTYWdhSXRlcmF0b3Ige1xyXG5cdGNvbnN0IGd1aWQgPSBub1N0b3JlQWN0aW9uLmd1aWRcclxuXHRpZiAoaXNOaWwoZ3VpZCkpIHtcclxuXHRcdHJldHVyblxyXG5cdH1cclxuXHRpZiAoaXNOaWwoaG9va3NbZ3VpZF0pKSB7XHJcblx0XHRyZXR1cm5cclxuXHR9XHJcblxyXG5cdGNvbnN0IHtcclxuXHRcdHJlc3VsdEFjdGlvbixcclxuXHRcdGVycm9yQWN0aW9uXHJcblx0fTogeyByZXN1bHRBY3Rpb24/OiBNb2RlbEZldGNoUmVzdWx0QWN0aW9uOyBlcnJvckFjdGlvbj86IE1vZGVsRmV0Y2hFcnJvckFjdGlvbiB9ID0geWllbGQgcmFjZSh7XHJcblx0XHRyZXN1bHRBY3Rpb246IHRha2UodGFrZU1hdGNoZXNSZWNlaXZlZE5vU3RvcmVIb29rQWN0aW9uKG5vU3RvcmVBY3Rpb24pKSxcclxuXHRcdGVycm9yQWN0aW9uOiB0YWtlKHRha2VNYXRjaGVzRmFpbGVkTm9TdG9yZUhvb2tBY3Rpb24obm9TdG9yZUFjdGlvbikpXHJcblx0fSlcclxuXHJcblx0Ly8gY2hlY2sgdGhhdCB0aGUgaG9vayBzdGlsbCBleGlzdHMgYWZ0ZXIgdGhlIHJlc3VsdC9lcnJvclxyXG5cdGNvbnN0IGhvb2sgPSBob29rc1tndWlkXVxyXG5cdGlmIChpc05pbChob29rKSkge1xyXG5cdFx0cmV0dXJuXHJcblx0fVxyXG5cclxuXHQvLyByZXR1cm4gYGVycm9yRGF0YWAgb24gZmFpbHVyZS4gbW9kZWxGZXRjaFNhZ2Egd2lsbCBBTFdBWVMgY3JlYXRlIGBlcnJvckRhdGFgXHJcblx0aWYgKGVycm9yQWN0aW9uKSB7XHJcblx0XHRob29rKGVycm9yQWN0aW9uLmVycm9yRGF0YSlcclxuXHRcdHJldHVyblxyXG5cdH1cclxuXHQvLyByZXR1cm4gYGRhdGFgIG9yIGBudWxsYCBvbiBhIHN1Y2Nlc3NmdWwgZmV0Y2ggcmVzdWx0XHJcblx0Ly8gYGRhdGFgIGNhbiB0ZWNobmljYWxseSBiZSBgdW5kZWZpbmVkYCwgZS5nLiBpZiB0aGUgc2VydmVyIHJlc3BvbnNlIGlzIGEgTm9Db250ZW50ICgyMDQpLFxyXG5cdC8vIHNvIHRoZSBjYWxsZXIgd2lsbCBuZWVkIHRvIGRldGVybWluZSBpZiBgbnVsbGAgaXMgdHJlYXRlZCBhcyBhbiBlcnJvciBvciBzdWNjZXNzXHJcblx0aG9vayhyZXN1bHRBY3Rpb24/LmRhdGEgfHwgbnVsbClcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24qIG5vU3RvcmVTYWdhKCk6IFNhZ2FJdGVyYXRvciB7XHJcblx0LyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cclxuXHR5aWVsZCB0YWtlRXZlcnkobWF0Y2hlc05vU3RvcmVBY3Rpb24sIGhhbmRsZUFjdGlvbilcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQ0EsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBRUEsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsUUFBQSxHQUFBRixPQUFBO0FBV0E7O0FBRU8sTUFBTUcsb0JBQW9CLEdBQUlDLGNBQXlCLElBQWdEO0VBQzdHLE9BQU9BLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLQyx3Q0FBK0IsQ0FBQ0MsYUFBYSxJQUFJSCxjQUFjLENBQUNJLE9BQU8sS0FBSyxJQUFJO0FBQ2hILENBQUM7QUFBQUMsT0FBQSxDQUFBTixvQkFBQSxHQUFBQSxvQkFBQTtBQUVNLE1BQU1PLDhCQUE4QixHQUFHQSxDQUFDTixjQUF5QixFQUFFTyxhQUFzQyxLQUFLO0VBQ3BILE9BQ0NQLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLTyxzQ0FBNkIsQ0FBQ0Msc0JBQXNCLElBQzVFRixhQUFhLENBQUNILE9BQU8sS0FBSyxJQUFJLElBQzlCSixjQUFjLENBQUNVLElBQUksS0FBS0gsYUFBYSxDQUFDRyxJQUFJO0FBRTVDLENBQUM7QUFBQUwsT0FBQSxDQUFBQyw4QkFBQSxHQUFBQSw4QkFBQTtBQUVNLE1BQU1LLGtDQUFrQyxHQUM3Q0osYUFBc0MsSUFBTVAsY0FBeUIsSUFDckVNLDhCQUE4QixDQUFDTixjQUFjLEVBQUVPLGFBQWEsQ0FBQztBQUFBRixPQUFBLENBQUFNLGtDQUFBLEdBQUFBLGtDQUFBO0FBRXhELE1BQU1DLGdDQUFnQyxHQUFHQSxDQUFDWixjQUF5QixFQUFFTyxhQUFzQyxLQUFLO0VBQ3RILE9BQ0NQLGNBQWMsQ0FBQ0MsSUFBSSxLQUFLWSx1Q0FBOEIsQ0FBQ0MsK0JBQStCLElBQ3RGUCxhQUFhLENBQUNILE9BQU8sS0FBSyxJQUFJLElBQzlCSixjQUFjLENBQUNVLElBQUksS0FBS0gsYUFBYSxDQUFDRyxJQUFJO0FBRTVDLENBQUM7QUFBQUwsT0FBQSxDQUFBTyxnQ0FBQSxHQUFBQSxnQ0FBQTtBQUVNLE1BQU1HLG9DQUFvQyxHQUMvQ1IsYUFBc0MsSUFBTVAsY0FBeUIsSUFDckVZLGdDQUFnQyxDQUFDWixjQUFjLEVBQUVPLGFBQWEsQ0FBQzs7QUFFakU7O0FBRUE7QUFBQUYsT0FBQSxDQUFBVSxvQ0FBQSxHQUFBQSxvQ0FBQTtBQUVBLE1BQU1DLEtBQXNDLEdBQUcsQ0FBQyxDQUFDO0FBRTFDLE1BQU1DLHlCQUF5QixHQUFHQSxDQUFJQyxHQUFXLEVBQUVDLElBQXFCLEtBQUs7RUFDbkZILEtBQUssQ0FBQ0UsR0FBRyxDQUFDLEdBQUdDLElBQUk7QUFDbEIsQ0FBQztBQUFBZCxPQUFBLENBQUFZLHlCQUFBLEdBQUFBLHlCQUFBO0FBRU0sTUFBTUcsMkJBQTJCLEdBQUlGLEdBQVcsSUFBSztFQUMzRCxPQUFPRixLQUFLLENBQUNFLEdBQUcsQ0FBQztBQUNsQixDQUFDO0FBQUFiLE9BQUEsQ0FBQWUsMkJBQUEsR0FBQUEsMkJBQUE7QUFFTSxNQUFNQyxZQUFZLEdBQUFoQixPQUFBLENBQUFnQixZQUFBLEdBQUc7RUFBRUoseUJBQXlCO0VBQUVHO0FBQTRCLENBQUM7O0FBRXRGOztBQUVPLFVBQVVFLFlBQVlBLENBQUNmLGFBQXNDLEVBQWdCO0VBQ25GLE1BQU1HLElBQUksR0FBR0gsYUFBYSxDQUFDRyxJQUFJO0VBQy9CLElBQUksSUFBQWEsYUFBSyxFQUFDYixJQUFJLENBQUMsRUFBRTtJQUNoQjtFQUNEO0VBQ0EsSUFBSSxJQUFBYSxhQUFLLEVBQUNQLEtBQUssQ0FBQ04sSUFBSSxDQUFDLENBQUMsRUFBRTtJQUN2QjtFQUNEO0VBRUEsTUFBTTtJQUNMYyxZQUFZO0lBQ1pDO0VBQytFLENBQUMsR0FBRyxNQUFNLElBQUFDLGFBQUksRUFBQztJQUM5RkYsWUFBWSxFQUFFLElBQUFHLGFBQUksRUFBQ1osb0NBQW9DLENBQUNSLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZFa0IsV0FBVyxFQUFFLElBQUFFLGFBQUksRUFBQ2hCLGtDQUFrQyxDQUFDSixhQUFhLENBQUM7RUFDcEUsQ0FBQyxDQUFDOztFQUVGO0VBQ0EsTUFBTVksSUFBSSxHQUFHSCxLQUFLLENBQUNOLElBQUksQ0FBQztFQUN4QixJQUFJLElBQUFhLGFBQUssRUFBQ0osSUFBSSxDQUFDLEVBQUU7SUFDaEI7RUFDRDs7RUFFQTtFQUNBLElBQUlNLFdBQVcsRUFBRTtJQUNoQk4sSUFBSSxDQUFDTSxXQUFXLENBQUNHLFNBQVMsQ0FBQztJQUMzQjtFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0FULElBQUksQ0FBQ0ssWUFBWSxFQUFFSyxJQUFJLElBQUksSUFBSSxDQUFDO0FBQ2pDO0FBRWUsVUFBVUMsV0FBV0EsQ0FBQSxFQUFpQjtFQUNwRDtFQUNBLE1BQU0sSUFBQUMsa0JBQVMsRUFBQ2hDLG9CQUFvQixFQUFFdUIsWUFBWSxDQUFDO0FBQ3BEIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,87 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
8
|
-
while (_) try {
|
|
9
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
10
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
11
|
-
switch (op[0]) {
|
|
12
|
-
case 0: case 1: t = op; break;
|
|
13
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
14
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
15
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
16
|
-
default:
|
|
17
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
18
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
19
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
20
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
21
|
-
if (t[2]) _.ops.pop();
|
|
22
|
-
_.trys.pop(); continue;
|
|
23
|
-
}
|
|
24
|
-
op = body.call(thisArg, _);
|
|
25
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
26
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = postLoginDataSaga;
|
|
30
7
|
exports.setOnPostLoginSaga = void 0;
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
var
|
|
8
|
+
var _effects = require("redux-saga/effects");
|
|
9
|
+
var _actionCreator = require("../actionCreator");
|
|
10
|
+
var _actions = require("../actions");
|
|
34
11
|
//#region Setup
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
*
|
|
40
|
-
*
|
|
12
|
+
|
|
13
|
+
let onPostLoginSaga;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Sets or clears a saga that will run after login. It is called inside of `postLoginDataSaga`.
|
|
17
|
+
* * If the saga returns `true`, the parent saga will load "groups" and "externalProviders".
|
|
18
|
+
* * If the saga returns `false`, the parent saga will restart, assuming the child saga has logged out the user.
|
|
19
|
+
* @param value The saga
|
|
41
20
|
*/
|
|
42
|
-
|
|
43
|
-
|
|
21
|
+
const setOnPostLoginSaga = value => {
|
|
22
|
+
onPostLoginSaga = value;
|
|
44
23
|
};
|
|
45
|
-
|
|
24
|
+
|
|
46
25
|
//#endregion Setup
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
actionCreator_1.dispatchModelFetchRequest({ modelName: 'groups' });
|
|
70
|
-
// grab external providers once a day (for those tab-leaver-openers)
|
|
71
|
-
actionCreator_1.dispatchPeriodicModelFetchRequest({
|
|
72
|
-
modelName: 'externalProviders',
|
|
73
|
-
taskId: externalProvidersTaskId,
|
|
74
|
-
period: 1000 * 60 * 60 * 24
|
|
75
|
-
});
|
|
76
|
-
return [4 /*yield*/, effects_1.take(actions_1.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED)];
|
|
77
|
-
case 5:
|
|
78
|
-
_a.sent();
|
|
79
|
-
actionCreator_1.dispatchPeriodicModelFetchTerminateAction({
|
|
80
|
-
taskId: externalProvidersTaskId
|
|
81
|
-
});
|
|
82
|
-
return [3 /*break*/, 1];
|
|
83
|
-
case 6: return [2 /*return*/];
|
|
84
|
-
}
|
|
26
|
+
exports.setOnPostLoginSaga = setOnPostLoginSaga;
|
|
27
|
+
function* postLoginDataSaga() {
|
|
28
|
+
const externalProvidersTaskId = 'external-provider-refresh';
|
|
29
|
+
while (true) {
|
|
30
|
+
yield (0, _effects.take)(_actions.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
|
|
31
|
+
if (onPostLoginSaga) {
|
|
32
|
+
const result = yield (0, _effects.call)(onPostLoginSaga);
|
|
33
|
+
if (!result) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// load groups on initial login. refreshing happens elsewhere
|
|
39
|
+
(0, _actionCreator.dispatchModelFetchRequest)({
|
|
40
|
+
modelName: 'groups'
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
// grab external providers once a day (for those tab-leaver-openers)
|
|
44
|
+
(0, _actionCreator.dispatchPeriodicModelFetchRequest)({
|
|
45
|
+
modelName: 'externalProviders',
|
|
46
|
+
taskId: externalProvidersTaskId,
|
|
47
|
+
period: 1000 * 60 * 60 * 24
|
|
85
48
|
});
|
|
49
|
+
yield (0, _effects.take)(_actions.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
|
|
50
|
+
(0, _actionCreator.dispatchPeriodicModelFetchTerminateAction)({
|
|
51
|
+
taskId: externalProvidersTaskId
|
|
52
|
+
});
|
|
53
|
+
}
|
|
86
54
|
}
|
|
87
|
-
|
|
55
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZWZmZWN0cyIsInJlcXVpcmUiLCJfYWN0aW9uQ3JlYXRvciIsIl9hY3Rpb25zIiwib25Qb3N0TG9naW5TYWdhIiwic2V0T25Qb3N0TG9naW5TYWdhIiwidmFsdWUiLCJleHBvcnRzIiwicG9zdExvZ2luRGF0YVNhZ2EiLCJleHRlcm5hbFByb3ZpZGVyc1Rhc2tJZCIsInRha2UiLCJBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUiLCJHRVRfVE9LRU5fU1VDQ0VFREVEIiwicmVzdWx0IiwiY2FsbCIsImRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QiLCJtb2RlbE5hbWUiLCJkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFJlcXVlc3QiLCJ0YXNrSWQiLCJwZXJpb2QiLCJBVVRIX0FDVElPTl9UWVBFIiwiTE9HX09VVF9SRVFVRVNURUQiLCJkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFRlcm1pbmF0ZUFjdGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWR1eC9zYWdhcy9wb3N0TG9naW5EYXRhU2FnYS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYWdhLCBTYWdhSXRlcmF0b3IgfSBmcm9tICdyZWR1eC1zYWdhJ1xyXG5pbXBvcnQgeyBjYWxsLCB0YWtlIH0gZnJvbSAncmVkdXgtc2FnYS9lZmZlY3RzJ1xyXG5pbXBvcnQge1xyXG5cdGRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QsXHJcblx0ZGlzcGF0Y2hQZXJpb2RpY01vZGVsRmV0Y2hSZXF1ZXN0LFxyXG5cdGRpc3BhdGNoUGVyaW9kaWNNb2RlbEZldGNoVGVybWluYXRlQWN0aW9uXHJcbn0gZnJvbSAnLi4vYWN0aW9uQ3JlYXRvcidcclxuaW1wb3J0IHsgQVVUSF9BQ1RJT05fVFlQRSwgQVVUSF9UT0tFTl9TVUNDRVNTX0FDVElPTl9UWVBFIH0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbi8vI3JlZ2lvbiBTZXR1cFxyXG5cclxubGV0IG9uUG9zdExvZ2luU2FnYTogU2FnYSB8IHVuZGVmaW5lZFxyXG5cclxuLyoqXHJcbiAqIFNldHMgb3IgY2xlYXJzIGEgc2FnYSB0aGF0IHdpbGwgcnVuIGFmdGVyIGxvZ2luLiBJdCBpcyBjYWxsZWQgaW5zaWRlIG9mIGBwb3N0TG9naW5EYXRhU2FnYWAuXHJcbiAqICogSWYgdGhlIHNhZ2EgcmV0dXJucyBgdHJ1ZWAsIHRoZSBwYXJlbnQgc2FnYSB3aWxsIGxvYWQgXCJncm91cHNcIiBhbmQgXCJleHRlcm5hbFByb3ZpZGVyc1wiLlxyXG4gKiAqIElmIHRoZSBzYWdhIHJldHVybnMgYGZhbHNlYCwgdGhlIHBhcmVudCBzYWdhIHdpbGwgcmVzdGFydCwgYXNzdW1pbmcgdGhlIGNoaWxkIHNhZ2EgaGFzIGxvZ2dlZCBvdXQgdGhlIHVzZXIuXHJcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgc2FnYVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IHNldE9uUG9zdExvZ2luU2FnYSA9ICh2YWx1ZTogU2FnYSkgPT4ge1xyXG5cdG9uUG9zdExvZ2luU2FnYSA9IHZhbHVlXHJcbn1cclxuXHJcbi8vI2VuZHJlZ2lvbiBTZXR1cFxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24qIHBvc3RMb2dpbkRhdGFTYWdhKCk6IFNhZ2FJdGVyYXRvciB7XHJcblx0Y29uc3QgZXh0ZXJuYWxQcm92aWRlcnNUYXNrSWQgPSAnZXh0ZXJuYWwtcHJvdmlkZXItcmVmcmVzaCdcclxuXHR3aGlsZSAodHJ1ZSkge1xyXG5cdFx0eWllbGQgdGFrZShBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUuR0VUX1RPS0VOX1NVQ0NFRURFRClcclxuXHRcdGlmIChvblBvc3RMb2dpblNhZ2EpIHtcclxuXHRcdFx0Y29uc3QgcmVzdWx0ID0geWllbGQgY2FsbChvblBvc3RMb2dpblNhZ2EpXHJcblx0XHRcdGlmICghcmVzdWx0KSB7XHJcblx0XHRcdFx0Y29udGludWVcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIGxvYWQgZ3JvdXBzIG9uIGluaXRpYWwgbG9naW4uIHJlZnJlc2hpbmcgaGFwcGVucyBlbHNld2hlcmVcclxuXHRcdGRpc3BhdGNoTW9kZWxGZXRjaFJlcXVlc3QoeyBtb2RlbE5hbWU6ICdncm91cHMnIH0pXHJcblxyXG5cdFx0Ly8gZ3JhYiBleHRlcm5hbCBwcm92aWRlcnMgb25jZSBhIGRheSAoZm9yIHRob3NlIHRhYi1sZWF2ZXItb3BlbmVycylcclxuXHRcdGRpc3BhdGNoUGVyaW9kaWNNb2RlbEZldGNoUmVxdWVzdCh7XHJcblx0XHRcdG1vZGVsTmFtZTogJ2V4dGVybmFsUHJvdmlkZXJzJyxcclxuXHRcdFx0dGFza0lkOiBleHRlcm5hbFByb3ZpZGVyc1Rhc2tJZCxcclxuXHRcdFx0cGVyaW9kOiAxMDAwICogNjAgKiA2MCAqIDI0XHJcblx0XHR9KVxyXG5cclxuXHRcdHlpZWxkIHRha2UoQVVUSF9BQ1RJT05fVFlQRS5MT0dfT1VUX1JFUVVFU1RFRClcclxuXHJcblx0XHRkaXNwYXRjaFBlcmlvZGljTW9kZWxGZXRjaFRlcm1pbmF0ZUFjdGlvbih7XHJcblx0XHRcdHRhc2tJZDogZXh0ZXJuYWxQcm92aWRlcnNUYXNrSWRcclxuXHRcdH0pXHJcblx0fVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBLElBQUFBLFFBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLGNBQUEsR0FBQUQsT0FBQTtBQUtBLElBQUFFLFFBQUEsR0FBQUYsT0FBQTtBQUVBOztBQUVBLElBQUlHLGVBQWlDOztBQUVyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxNQUFNQyxrQkFBa0IsR0FBSUMsS0FBVyxJQUFLO0VBQ2xERixlQUFlLEdBQUdFLEtBQUs7QUFDeEIsQ0FBQzs7QUFFRDtBQUFBQyxPQUFBLENBQUFGLGtCQUFBLEdBQUFBLGtCQUFBO0FBRWUsVUFBVUcsaUJBQWlCQSxDQUFBLEVBQWlCO0VBQzFELE1BQU1DLHVCQUF1QixHQUFHLDJCQUEyQjtFQUMzRCxPQUFPLElBQUksRUFBRTtJQUNaLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyx1Q0FBOEIsQ0FBQ0MsbUJBQW1CLENBQUM7SUFDOUQsSUFBSVIsZUFBZSxFQUFFO01BQ3BCLE1BQU1TLE1BQU0sR0FBRyxNQUFNLElBQUFDLGFBQUksRUFBQ1YsZUFBZSxDQUFDO01BQzFDLElBQUksQ0FBQ1MsTUFBTSxFQUFFO1FBQ1o7TUFDRDtJQUNEOztJQUVBO0lBQ0EsSUFBQUUsd0NBQXlCLEVBQUM7TUFBRUMsU0FBUyxFQUFFO0lBQVMsQ0FBQyxDQUFDOztJQUVsRDtJQUNBLElBQUFDLGdEQUFpQyxFQUFDO01BQ2pDRCxTQUFTLEVBQUUsbUJBQW1CO01BQzlCRSxNQUFNLEVBQUVULHVCQUF1QjtNQUMvQlUsTUFBTSxFQUFFLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0lBQzFCLENBQUMsQ0FBQztJQUVGLE1BQU0sSUFBQVQsYUFBSSxFQUFDVSx5QkFBZ0IsQ0FBQ0MsaUJBQWlCLENBQUM7SUFFOUMsSUFBQUMsd0RBQXlDLEVBQUM7TUFDekNKLE1BQU0sRUFBRVQ7SUFDVCxDQUFDLENBQUM7RUFDSDtBQUNEIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,74 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
16
|
-
default:
|
|
17
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
18
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
19
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
20
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
21
|
-
if (t[2]) _.ops.pop();
|
|
22
|
-
_.trys.pop(); continue;
|
|
23
|
-
}
|
|
24
|
-
op = body.call(thisArg, _);
|
|
25
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
26
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
var connected_react_router_1 = require("connected-react-router");
|
|
31
|
-
var effects_1 = require("redux-saga/effects");
|
|
32
|
-
var persistenceService_1 = require("../../services/persistenceService");
|
|
33
|
-
var windowService_1 = require("../../services/windowService");
|
|
34
|
-
var actions_1 = require("../actions");
|
|
35
|
-
/**
|
|
36
|
-
* Redirect the user after a successful log in.
|
|
37
|
-
* Uses the saved `returnUrl`, if any, if different from the current pathname and is not the root url.
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = postLoginRedirectSaga;
|
|
7
|
+
var _connectedReactRouter = require("connected-react-router");
|
|
8
|
+
var _effects = require("redux-saga/effects");
|
|
9
|
+
var _persistenceService = require("../../services/persistenceService");
|
|
10
|
+
var _windowService = require("../../services/windowService");
|
|
11
|
+
var _actions = require("../actions");
|
|
12
|
+
/**
|
|
13
|
+
* Redirect the user after a successful log in.
|
|
14
|
+
* Uses the saved `returnUrl`, if any, if different from the current pathname and is not the root url.
|
|
38
15
|
*/
|
|
39
|
-
function postLoginRedirectSaga() {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
if (!(returnUrl && returnUrl !== pathname && returnUrl !== '/' && pathname === '/')) return [3 /*break*/, 4];
|
|
56
|
-
return [4 /*yield*/, effects_1.put(connected_react_router_1.push(returnUrl))];
|
|
57
|
-
case 3:
|
|
58
|
-
_a.sent();
|
|
59
|
-
_a.label = 4;
|
|
60
|
-
case 4:
|
|
61
|
-
if (!returnUrl) return [3 /*break*/, 6];
|
|
62
|
-
return [4 /*yield*/, effects_1.call(persistenceService_1.persistenceService.removeItem, persistenceService_1.returnUrlKey)];
|
|
63
|
-
case 5:
|
|
64
|
-
_a.sent();
|
|
65
|
-
_a.label = 6;
|
|
66
|
-
case 6: return [4 /*yield*/, effects_1.take(actions_1.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED)];
|
|
67
|
-
case 7:
|
|
68
|
-
_a.sent();
|
|
69
|
-
return [3 /*break*/, 0];
|
|
70
|
-
case 8: return [2 /*return*/];
|
|
71
|
-
}
|
|
72
|
-
});
|
|
16
|
+
function* postLoginRedirectSaga() {
|
|
17
|
+
while (true) {
|
|
18
|
+
yield (0, _effects.take)(_actions.AUTH_TOKEN_SUCCESS_ACTION_TYPE.GET_TOKEN_SUCCEEDED);
|
|
19
|
+
const location = _windowService.windowService.getLocation();
|
|
20
|
+
const pathname = location.pathname;
|
|
21
|
+
const returnUrl = yield (0, _effects.call)(_persistenceService.persistenceService.getItem, _persistenceService.returnUrlKey);
|
|
22
|
+
// redirect to the `returnUrl` if it is different than the current pathname and is not the root url
|
|
23
|
+
if (typeof returnUrl === 'string' && returnUrl && returnUrl !== pathname && returnUrl !== '/' && pathname === '/') {
|
|
24
|
+
yield (0, _effects.put)((0, _connectedReactRouter.push)(returnUrl));
|
|
25
|
+
}
|
|
26
|
+
// always clear `returnUrl`
|
|
27
|
+
if (returnUrl) {
|
|
28
|
+
yield (0, _effects.call)(_persistenceService.persistenceService.removeItem, _persistenceService.returnUrlKey);
|
|
29
|
+
}
|
|
30
|
+
yield (0, _effects.take)(_actions.AUTH_ACTION_TYPE.LOG_OUT_REQUESTED);
|
|
31
|
+
}
|
|
73
32
|
}
|
|
74
|
-
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29ubmVjdGVkUmVhY3RSb3V0ZXIiLCJyZXF1aXJlIiwiX2VmZmVjdHMiLCJfcGVyc2lzdGVuY2VTZXJ2aWNlIiwiX3dpbmRvd1NlcnZpY2UiLCJfYWN0aW9ucyIsInBvc3RMb2dpblJlZGlyZWN0U2FnYSIsInRha2UiLCJBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUiLCJHRVRfVE9LRU5fU1VDQ0VFREVEIiwibG9jYXRpb24iLCJ3aW5kb3dTZXJ2aWNlIiwiZ2V0TG9jYXRpb24iLCJwYXRobmFtZSIsInJldHVyblVybCIsImNhbGwiLCJwZXJzaXN0ZW5jZVNlcnZpY2UiLCJnZXRJdGVtIiwicmV0dXJuVXJsS2V5IiwicHV0IiwicHVzaCIsInJlbW92ZUl0ZW0iLCJBVVRIX0FDVElPTl9UWVBFIiwiTE9HX09VVF9SRVFVRVNURUQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVkdXgvc2FnYXMvcG9zdExvZ2luUmVkaXJlY3RTYWdhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHB1c2ggfSBmcm9tICdjb25uZWN0ZWQtcmVhY3Qtcm91dGVyJ1xyXG5pbXBvcnQgeyBTYWdhSXRlcmF0b3IgfSBmcm9tICdyZWR1eC1zYWdhJ1xyXG5pbXBvcnQgeyBjYWxsLCBwdXQsIHRha2UgfSBmcm9tICdyZWR1eC1zYWdhL2VmZmVjdHMnXHJcbmltcG9ydCB7IHBlcnNpc3RlbmNlU2VydmljZSwgcmV0dXJuVXJsS2V5IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGVyc2lzdGVuY2VTZXJ2aWNlJ1xyXG5pbXBvcnQgeyB3aW5kb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2luZG93U2VydmljZSdcclxuaW1wb3J0IHsgQVVUSF9BQ1RJT05fVFlQRSwgQVVUSF9UT0tFTl9TVUNDRVNTX0FDVElPTl9UWVBFIH0gZnJvbSAnLi4vYWN0aW9ucydcclxuXHJcbi8qKlxyXG4gKiBSZWRpcmVjdCB0aGUgdXNlciBhZnRlciBhIHN1Y2Nlc3NmdWwgbG9nIGluLlxyXG4gKiBVc2VzIHRoZSBzYXZlZCBgcmV0dXJuVXJsYCwgaWYgYW55LCBpZiBkaWZmZXJlbnQgZnJvbSB0aGUgY3VycmVudCBwYXRobmFtZSBhbmQgaXMgbm90IHRoZSByb290IHVybC5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKiBwb3N0TG9naW5SZWRpcmVjdFNhZ2EoKTogU2FnYUl0ZXJhdG9yIHtcclxuXHR3aGlsZSAodHJ1ZSkge1xyXG5cdFx0eWllbGQgdGFrZShBVVRIX1RPS0VOX1NVQ0NFU1NfQUNUSU9OX1RZUEUuR0VUX1RPS0VOX1NVQ0NFRURFRClcclxuXHRcdGNvbnN0IGxvY2F0aW9uID0gd2luZG93U2VydmljZS5nZXRMb2NhdGlvbigpXHJcblx0XHRjb25zdCBwYXRobmFtZSA9IGxvY2F0aW9uLnBhdGhuYW1lXHJcblx0XHRjb25zdCByZXR1cm5VcmwgPSB5aWVsZCBjYWxsKHBlcnNpc3RlbmNlU2VydmljZS5nZXRJdGVtLCByZXR1cm5VcmxLZXkpXHJcblx0XHQvLyByZWRpcmVjdCB0byB0aGUgYHJldHVyblVybGAgaWYgaXQgaXMgZGlmZmVyZW50IHRoYW4gdGhlIGN1cnJlbnQgcGF0aG5hbWUgYW5kIGlzIG5vdCB0aGUgcm9vdCB1cmxcclxuXHRcdGlmIChcclxuXHRcdFx0dHlwZW9mIHJldHVyblVybCA9PT0gJ3N0cmluZycgJiZcclxuXHRcdFx0cmV0dXJuVXJsICYmXHJcblx0XHRcdHJldHVyblVybCAhPT0gcGF0aG5hbWUgJiZcclxuXHRcdFx0cmV0dXJuVXJsICE9PSAnLycgJiZcclxuXHRcdFx0cGF0aG5hbWUgPT09ICcvJ1xyXG5cdFx0KSB7XHJcblx0XHRcdHlpZWxkIHB1dChwdXNoKHJldHVyblVybCkpXHJcblx0XHR9XHJcblx0XHQvLyBhbHdheXMgY2xlYXIgYHJldHVyblVybGBcclxuXHRcdGlmIChyZXR1cm5VcmwpIHtcclxuXHRcdFx0eWllbGQgY2FsbChwZXJzaXN0ZW5jZVNlcnZpY2UucmVtb3ZlSXRlbSwgcmV0dXJuVXJsS2V5KVxyXG5cdFx0fVxyXG5cdFx0eWllbGQgdGFrZShBVVRIX0FDVElPTl9UWVBFLkxPR19PVVRfUkVRVUVTVEVEKVxyXG5cdH1cclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLHFCQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxtQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsY0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDZSxVQUFVSyxxQkFBcUJBLENBQUEsRUFBaUI7RUFDOUQsT0FBTyxJQUFJLEVBQUU7SUFDWixNQUFNLElBQUFDLGFBQUksRUFBQ0MsdUNBQThCLENBQUNDLG1CQUFtQixDQUFDO0lBQzlELE1BQU1DLFFBQVEsR0FBR0MsNEJBQWEsQ0FBQ0MsV0FBVyxDQUFDLENBQUM7SUFDNUMsTUFBTUMsUUFBUSxHQUFHSCxRQUFRLENBQUNHLFFBQVE7SUFDbEMsTUFBTUMsU0FBUyxHQUFHLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyxzQ0FBa0IsQ0FBQ0MsT0FBTyxFQUFFQyxnQ0FBWSxDQUFDO0lBQ3RFO0lBQ0EsSUFDQyxPQUFPSixTQUFTLEtBQUssUUFBUSxJQUM3QkEsU0FBUyxJQUNUQSxTQUFTLEtBQUtELFFBQVEsSUFDdEJDLFNBQVMsS0FBSyxHQUFHLElBQ2pCRCxRQUFRLEtBQUssR0FBRyxFQUNmO01BQ0QsTUFBTSxJQUFBTSxZQUFHLEVBQUMsSUFBQUMsMEJBQUksRUFBQ04sU0FBUyxDQUFDLENBQUM7SUFDM0I7SUFDQTtJQUNBLElBQUlBLFNBQVMsRUFBRTtNQUNkLE1BQU0sSUFBQUMsYUFBSSxFQUFDQyxzQ0FBa0IsQ0FBQ0ssVUFBVSxFQUFFSCxnQ0FBWSxDQUFDO0lBQ3hEO0lBQ0EsTUFBTSxJQUFBWCxhQUFJLEVBQUNlLHlCQUFnQixDQUFDQyxpQkFBaUIsQ0FBQztFQUMvQztBQUNEIiwiaWdub3JlTGlzdCI6W119
|