studiokit-scaffolding-js 7.0.12-next.2.9 → 7.0.13-alpha.1
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 +87 -166
- package/lib/components/AlertDialog.d.ts +3 -3
- package/lib/components/AlertDialog.js +18 -133
- package/lib/components/AlertWithIcon.js +52 -93
- package/lib/components/ConnectedModal.d.ts +2 -1
- package/lib/components/ConnectedModal.js +37 -43
- package/lib/components/Dropdowns/GroupsDropdown.d.ts +4 -4
- package/lib/components/Dropdowns/GroupsDropdown.js +82 -69
- package/lib/components/Dropdowns/ManagedNavDropdown.d.ts +2 -2
- package/lib/components/Dropdowns/ManagedNavDropdown.js +111 -99
- package/lib/components/Dropdowns/UserDropdown.js +70 -109
- package/lib/components/Dropdowns/index.js +11 -27
- package/lib/components/EntityOwnerList.d.ts +3 -3
- package/lib/components/EntityOwnerList.js +60 -52
- package/lib/components/Error.js +27 -107
- package/lib/components/ErrorBoundary.js +94 -133
- package/lib/components/ErrorMessage.d.ts +2 -2
- package/lib/components/ErrorMessage.js +14 -44
- package/lib/components/Forms/DateField.d.ts +2 -2
- package/lib/components/Forms/DateField.js +95 -63
- package/lib/components/Forms/TimeField.d.ts +2 -2
- package/lib/components/Forms/TimeField.js +108 -84
- package/lib/components/Forms/index.js +13 -27
- package/lib/components/Groups/CreateEditCopySaveButtons.d.ts +2 -2
- package/lib/components/Groups/CreateEditCopySaveButtons.js +14 -102
- package/lib/components/Groups/ExternalGroups/Attach.d.ts +7 -6
- package/lib/components/Groups/ExternalGroups/Attach.js +188 -213
- package/lib/components/Groups/ExternalGroups/Table.js +76 -183
- package/lib/components/Groups/GroupCreateOrEditCommonProps.js +1 -5
- package/lib/components/Groups/RosterSyncInfo.js +49 -140
- package/lib/components/HOC/AccessibleAppComponent.d.ts +2 -2
- package/lib/components/HOC/AccessibleAppComponent.js +124 -101
- package/lib/components/HOC/ActivityRequiredComponent.d.ts +14 -14
- package/lib/components/HOC/ActivityRequiredComponent.js +107 -93
- package/lib/components/HOC/AsyncComponent.d.ts +9 -9
- package/lib/components/HOC/AsyncComponent.js +129 -53
- package/lib/components/HOC/AuthenticatedComponent.d.ts +4 -4
- package/lib/components/HOC/AuthenticatedComponent.js +96 -59
- 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 +94 -52
- package/lib/components/HOC/CollectionItemComponent.d.ts +9 -9
- package/lib/components/HOC/CollectionItemComponent.js +168 -169
- package/lib/components/HOC/ConnectedModalComponent.d.ts +9 -9
- package/lib/components/HOC/ConnectedModalComponent.js +140 -110
- package/lib/components/HOC/DataDependentComponent.d.ts +55 -3
- package/lib/components/HOC/DataDependentComponent.js +79 -30
- package/lib/components/HOC/EntityComponent.d.ts +13 -13
- package/lib/components/HOC/EntityComponent.js +112 -74
- package/lib/components/HOC/FullscreenModalComponent.d.ts +9 -9
- package/lib/components/HOC/FullscreenModalComponent.js +185 -165
- package/lib/components/HOC/GroupActivityRequiredComponent.d.ts +2 -2
- package/lib/components/HOC/GroupActivityRequiredComponent.js +47 -48
- package/lib/components/HOC/GuidComponent.d.ts +1 -1
- package/lib/components/HOC/GuidComponent.js +68 -29
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.d.ts +29 -28
- package/lib/components/HOC/ModelContextDependencyVerifyComponent.js +65 -42
- package/lib/components/HOC/ModelErrorRedirectComponent.d.ts +10 -10
- package/lib/components/HOC/ModelErrorRedirectComponent.js +94 -51
- package/lib/components/HOC/SearchPersistorComponent.d.ts +4 -4
- package/lib/components/HOC/SearchPersistorComponent.js +216 -243
- package/lib/components/HOC/UnauthenticatedComponent.d.ts +12 -12
- package/lib/components/HOC/UnauthenticatedComponent.js +82 -37
- package/lib/components/HOC/UserComponent.d.ts +1 -1
- package/lib/components/HOC/UserComponent.js +11 -12
- package/lib/components/Icons/IconAlphaList.js +20 -34
- package/lib/components/Icons/IconExternalUser.js +20 -34
- package/lib/components/Icons/IconImpersonation.js +20 -34
- package/lib/components/Icons/IconStopImpersonating.js +20 -34
- package/lib/components/Icons/IconTable.js +21 -35
- package/lib/components/Icons/IconTableDeleteCol.js +20 -34
- package/lib/components/Icons/IconTableDeleteRow.js +20 -34
- package/lib/components/Icons/IconTableInsertCol.js +20 -34
- package/lib/components/Icons/IconTableInsertRow.js +20 -34
- package/lib/components/Impersonation/Button.d.ts +2 -2
- package/lib/components/Impersonation/Button.js +56 -76
- package/lib/components/Impersonation/Link.d.ts +2 -2
- package/lib/components/Impersonation/Link.js +53 -76
- package/lib/components/Impersonation/UserDetail.css +22 -22
- package/lib/components/Impersonation/UserDetail.d.ts +2 -2
- package/lib/components/Impersonation/UserDetail.js +17 -66
- package/lib/components/Loading.js +21 -27
- package/lib/components/LockDownBrowser/Check.js +107 -194
- package/lib/components/LockDownBrowser/ExitButton.js +14 -27
- package/lib/components/LockDownBrowser/Launch.js +85 -70
- package/lib/components/Lti/Confirm.js +33 -152
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.d.ts +2 -4
- package/lib/components/Lti/CreateNonLtiGroupAlertDialog.js +78 -170
- package/lib/components/Lti/Launch.js +49 -105
- package/lib/components/Lti/LaunchGroup.js +39 -85
- package/lib/components/ManageTable.d.ts +2 -1
- package/lib/components/ManageTable.js +104 -309
- package/lib/components/ManageTableNoDataComponent.js +22 -42
- package/lib/components/NewVersionAlert.d.ts +2 -2
- package/lib/components/NewVersionAlert.js +91 -82
- package/lib/components/NotFound.js +28 -87
- package/lib/components/Notifications.d.ts +4 -4
- package/lib/components/Notifications.js +169 -187
- package/lib/components/PaginationNextButton.js +21 -33
- package/lib/components/PaginationPreviousButton.js +21 -33
- package/lib/components/Quill/CustomToolbar.d.ts +2 -2
- package/lib/components/Quill/CustomToolbar.js +257 -432
- package/lib/components/Quill/Formats/Image.d.ts +25 -10
- package/lib/components/Quill/Formats/Image.js +86 -80
- package/lib/components/Quill/Formats/List.d.ts +3 -6
- package/lib/components/Quill/Formats/List.js +74 -52
- package/lib/components/Quill/Formats/Video.d.ts +1 -2
- package/lib/components/Quill/Formats/Video.js +45 -31
- package/lib/components/Quill/ImageDropModule.d.ts +1 -1
- package/lib/components/Quill/ImageDropModule.js +122 -149
- package/lib/components/Quill/ImageWarning.d.ts +2 -2
- package/lib/components/Quill/ImageWarning.js +32 -45
- package/lib/components/Quill/ImageWithAltTextModal.d.ts +1 -0
- package/lib/components/Quill/ImageWithAltTextModal.js +141 -425
- package/lib/components/Quill/Specs/CustomImageSpec.d.ts +1 -1
- package/lib/components/Quill/Specs/CustomImageSpec.js +51 -43
- package/lib/components/Quill/Specs/CustomVideoSpec.d.ts +1 -1
- package/lib/components/Quill/Specs/CustomVideoSpec.js +44 -35
- package/lib/components/Quill/TableModule/Blots/BaseTableBlot.d.ts +1 -2
- package/lib/components/Quill/TableModule/Blots/BaseTableBlot.js +121 -105
- package/lib/components/Quill/TableModule/Blots/TableBlot.js +66 -53
- package/lib/components/Quill/TableModule/Blots/TableBodyBlot.js +67 -54
- package/lib/components/Quill/TableModule/Blots/TableCellBlot.d.ts +1 -1
- package/lib/components/Quill/TableModule/Blots/TableCellBlot.js +241 -225
- package/lib/components/Quill/TableModule/Blots/TableContainer.js +99 -82
- package/lib/components/Quill/TableModule/Blots/TableRowBlot.js +87 -76
- package/lib/components/Quill/TableModule/constants.js +41 -45
- package/lib/components/Quill/TableModule/index.css +171 -171
- package/lib/components/Quill/TableModule/index.d.ts +5 -14
- package/lib/components/Quill/TableModule/index.js +313 -373
- package/lib/components/Quill/TableModule/utils.js +45 -45
- package/lib/components/Quill/accessibilityFix.d.ts +1 -0
- package/lib/components/Quill/accessibilityFix.js +251 -235
- package/lib/components/Quill/index.js +32 -36
- package/lib/components/RefreshIndicator/Bordered.js +32 -48
- package/lib/components/RefreshIndicator/Inline.js +33 -48
- package/lib/components/RefreshIndicator/index.d.ts +2 -2
- package/lib/components/RefreshIndicator/index.js +113 -263
- package/lib/components/SearchControls.js +31 -216
- package/lib/components/SentryRoute.js +23 -10
- package/lib/components/Tables/RoleFilter.d.ts +4 -3
- package/lib/components/Tables/RoleFilter.js +46 -71
- package/lib/components/Tables/TextFilter.d.ts +3 -2
- package/lib/components/Tables/TextFilter.js +20 -62
- package/lib/components/UserRoles/Add.d.ts +3 -3
- package/lib/components/UserRoles/Add.js +161 -199
- package/lib/components/UserRoles/Context.js +9 -11
- package/lib/components/UserRoles/RoleCell.js +100 -180
- package/lib/components/UserRoles/Select.js +54 -157
- package/lib/components/UserRoles/Table.js +102 -221
- package/lib/components/UserRoles/index.d.ts +6 -6
- package/lib/components/UserRoles/index.js +466 -537
- package/lib/config/eslint/index.cjs +21 -0
- package/lib/config/eslint/lib/order.cjs +22 -0
- package/lib/config/eslint/lib/prettier.cjs +18 -0
- package/lib/config/eslint/lib/typescript.cjs +86 -0
- package/lib/config/eslint/react.cjs +9 -0
- package/lib/constants/baseActivity.js +26 -30
- package/lib/constants/baseRole.js +10 -14
- package/lib/constants/configuration.d.ts +1 -1
- package/lib/constants/configuration.js +39 -43
- package/lib/constants/externalProviderType.js +6 -10
- package/lib/constants/fetchErrorData.js +11 -15
- package/lib/constants/index.js +23 -137
- package/lib/constants/lockDownBrowser.js +24 -28
- package/lib/constants/mockData.d.ts +6 -4
- package/lib/constants/mockData.js +326 -385
- package/lib/constants/modelStatus.js +11 -15
- package/lib/constants/notificationType.js +8 -12
- package/lib/constants/operatingSystem.js +8 -12
- package/lib/constants/shard.js +7 -11
- package/lib/constants/table.js +21 -21
- package/lib/constants/tier.js +8 -12
- package/lib/constants/userRole.d.ts +2 -1
- package/lib/constants/userRole.js +17 -15
- 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 +312 -305
- package/lib/css/utils/_general.css +48 -48
- package/lib/css/utils/_icon.css +16 -16
- package/lib/css/utils/_text.css +24 -25
- package/lib/css/utils/_width.css +60 -60
- package/lib/css/variables.css +84 -84
- package/lib/endpointMappings.js +193 -197
- package/lib/hooks/useCollection.js +65 -83
- package/lib/hooks/useCollectionConfiguration.d.ts +1 -0
- package/lib/hooks/useCollectionConfiguration.js +88 -185
- package/lib/hooks/useCollectionItem.js +58 -155
- package/lib/hooks/useGuid.js +10 -21
- package/lib/hooks/usePrevious.d.ts +1 -24
- package/lib/hooks/usePrevious.js +14 -84
- package/lib/index.js +36 -156
- package/lib/redux/actionCreator.d.ts +6 -6
- package/lib/redux/actionCreator.js +40 -51
- package/lib/redux/actions/AuthAction.js +31 -44
- package/lib/redux/actions/ModalAction.d.ts +1 -1
- package/lib/redux/actions/ModalAction.js +6 -10
- package/lib/redux/actions/ModelAction.d.ts +1 -1
- package/lib/redux/actions/ModelAction.js +49 -77
- package/lib/redux/actions/NotificationAction.js +6 -10
- package/lib/redux/actions/SearchAction.js +5 -9
- package/lib/redux/actions/index.js +16 -60
- package/lib/redux/configureReducers.d.ts +5 -2
- package/lib/redux/configureReducers.js +78 -67
- package/lib/redux/configureStore.d.ts +2 -2
- package/lib/redux/configureStore.js +115 -83
- package/lib/redux/helpers.js +2 -7
- package/lib/redux/reducers/authReducer.js +46 -52
- package/lib/redux/reducers/index.js +15 -41
- package/lib/redux/reducers/modalsReducer.js +52 -49
- package/lib/redux/reducers/modelsReducer.d.ts +2 -2
- package/lib/redux/reducers/modelsReducer.js +182 -183
- package/lib/redux/reducers/notificationsReducer.js +21 -26
- package/lib/redux/reducers/searchReducer.js +20 -26
- package/lib/redux/sagas/appInsightsSaga.js +62 -24
- package/lib/redux/sagas/authSaga.js +414 -287
- package/lib/redux/sagas/caliperSaga.js +263 -169
- package/lib/redux/sagas/clockOffsetSaga.js +77 -36
- package/lib/redux/sagas/configurationSaga.js +46 -13
- package/lib/redux/sagas/downtimeApiErrorSaga.d.ts +1 -0
- package/lib/redux/sagas/downtimeApiErrorSaga.js +64 -23
- package/lib/redux/sagas/errorSaga.d.ts +1 -0
- package/lib/redux/sagas/errorSaga.js +63 -29
- package/lib/redux/sagas/googleAnalyticsSaga.js +69 -29
- package/lib/redux/sagas/identityProviderSaga.js +69 -24
- package/lib/redux/sagas/initialDataLoadSaga.js +29 -38
- package/lib/redux/sagas/lockDownBrowserErrorSaga.d.ts +1 -0
- package/lib/redux/sagas/lockDownBrowserErrorSaga.js +81 -32
- package/lib/redux/sagas/modelFetchSaga.js +459 -379
- package/lib/redux/sagas/noStoreSaga.d.ts +1 -1
- package/lib/redux/sagas/noStoreSaga.js +101 -68
- package/lib/redux/sagas/postLoginDataSaga.js +79 -47
- package/lib/redux/sagas/postLoginRedirectSaga.js +71 -30
- package/lib/redux/sagas/rootSaga.js +137 -85
- package/lib/redux/sagas/sentrySaga.js +85 -29
- package/lib/redux/sagas/userIdSaga.js +54 -18
- package/lib/services/codeProviderService.js +29 -25
- package/lib/services/dateService.js +12 -14
- package/lib/services/documentService.js +13 -18
- package/lib/services/fetchService.js +168 -134
- package/lib/services/persistenceService.d.ts +4 -4
- package/lib/services/persistenceService.js +43 -45
- package/lib/services/ticketProviderService.js +33 -29
- package/lib/services/tokenPersistenceService.js +9 -13
- package/lib/services/windowService.js +17 -21
- package/lib/startup.d.ts +1 -1
- package/lib/startup.js +135 -132
- package/lib/types/AppConfiguration.js +1 -5
- package/lib/types/Artifact.js +7 -11
- package/lib/types/BaseReduxState.js +1 -5
- package/lib/types/Client.js +1 -5
- package/lib/types/Collection.d.ts +3 -3
- package/lib/types/Collection.js +1 -5
- package/lib/types/Configuration.js +1 -5
- package/lib/types/DeepLinkingResponseRequest.js +1 -5
- package/lib/types/DeletableModel.js +1 -5
- package/lib/types/Event.js +1 -5
- package/lib/types/ExternalGroup.js +1 -5
- package/lib/types/ExternalProvider.js +1 -5
- package/lib/types/ExternalTerm.js +1 -5
- package/lib/types/Group.js +1 -5
- package/lib/types/IdentityProvider.js +1 -5
- package/lib/types/LtiLaunch.js +1 -5
- package/lib/types/NameOnlyEntity.js +1 -5
- package/lib/types/Notification.d.ts +2 -2
- package/lib/types/Notification.js +1 -5
- package/lib/types/OptionalRecord.d.ts +1 -1
- package/lib/types/OptionalRecord.js +1 -5
- package/lib/types/OwnerSchedule.d.ts +1 -3
- package/lib/types/OwnerSchedule.js +1 -5
- package/lib/types/PropertyOfType.d.ts +3 -3
- package/lib/types/PropertyOfType.js +1 -5
- package/lib/types/Quill.js +1 -5
- package/lib/types/RoleDescription.d.ts +1 -0
- package/lib/types/RoleDescription.js +1 -5
- package/lib/types/Search.js +1 -5
- package/lib/types/SimpleLocation.js +1 -5
- package/lib/types/UniTime.js +1 -5
- package/lib/types/User.js +1 -5
- package/lib/types/UserRole.js +1 -5
- package/lib/types/auth/AuthState.js +1 -5
- package/lib/types/auth/CasV1LoginRequestBody.js +1 -5
- package/lib/types/auth/ClientCredentials.js +1 -5
- package/lib/types/auth/CodeProviderService.js +1 -5
- package/lib/types/auth/LocalLoginRequestBody.js +1 -5
- package/lib/types/auth/TicketProviderService.js +1 -5
- package/lib/types/auth/TokenPersistenceService.js +1 -5
- package/lib/types/auth/index.js +18 -82
- package/lib/types/index.js +39 -313
- package/lib/types/net/EndpointConfig.js +1 -5
- package/lib/types/net/EndpointMapping.js +1 -5
- package/lib/types/net/EndpointMappings.js +1 -5
- package/lib/types/net/ErrorHandler.d.ts +1 -1
- package/lib/types/net/ErrorHandler.js +1 -5
- package/lib/types/net/FetchConfig.d.ts +1 -1
- package/lib/types/net/FetchConfig.js +1 -5
- package/lib/types/net/FetchErrorData.js +6 -10
- package/lib/types/net/FetchResult.d.ts +2 -2
- package/lib/types/net/FetchResult.js +1 -5
- package/lib/types/net/HTTPMethod.d.ts +1 -1
- package/lib/types/net/HTTPMethod.js +1 -5
- package/lib/types/net/HTTPStatusCode.js +12 -16
- package/lib/types/net/Metadata.js +1 -5
- package/lib/types/net/Model.js +1 -5
- package/lib/types/net/ModelCollection.js +1 -5
- package/lib/types/net/ModelsState.js +1 -5
- package/lib/types/net/OAuthToken.js +1 -5
- package/lib/types/net/OAuthTokenOrNull.d.ts +1 -1
- package/lib/types/net/OAuthTokenOrNull.js +1 -5
- package/lib/types/net/TokenAccessFunction.d.ts +1 -1
- package/lib/types/net/TokenAccessFunction.js +1 -5
- package/lib/types/net/index.js +27 -181
- package/lib/utils/baseActivity.d.ts +2 -2
- package/lib/utils/baseActivity.js +136 -138
- package/lib/utils/baseRole.js +33 -37
- package/lib/utils/collection.js +310 -432
- package/lib/utils/cookies.js +37 -22
- package/lib/utils/date.js +320 -320
- package/lib/utils/dom.js +174 -186
- package/lib/utils/domainIdentifier.js +9 -9
- package/lib/utils/entityUserRole.js +2 -6
- package/lib/utils/error.d.ts +1 -1
- package/lib/utils/error.js +16 -18
- package/lib/utils/events.js +33 -40
- package/lib/utils/externalGroup.js +21 -25
- package/lib/utils/externalProviders.js +4 -8
- package/lib/utils/externalTerms.js +6 -9
- package/lib/utils/fetch.d.ts +1 -1
- package/lib/utils/fetch.js +185 -188
- package/lib/utils/group.js +9 -17
- package/lib/utils/groupDates.d.ts +1 -1
- package/lib/utils/groupDates.js +39 -43
- package/lib/utils/groupRoles.js +28 -28
- package/lib/utils/lockDownBrowser.js +12 -16
- package/lib/utils/logger.js +25 -30
- package/lib/utils/lti.js +5 -10
- package/lib/utils/model.d.ts +2 -2
- package/lib/utils/model.js +48 -39
- package/lib/utils/number.js +26 -23
- package/lib/utils/promise.d.ts +1 -6
- package/lib/utils/promise.js +15 -34
- package/lib/utils/quill.js +77 -66
- package/lib/utils/route.d.ts +2 -2
- package/lib/utils/route.js +60 -61
- package/lib/utils/search.d.ts +1 -1
- package/lib/utils/search.js +85 -78
- package/lib/utils/shard.js +41 -38
- package/lib/utils/sort.d.ts +3 -3
- package/lib/utils/sort.js +58 -62
- package/lib/utils/string.js +10 -14
- package/lib/utils/table.d.ts +3 -3
- package/lib/utils/table.js +36 -39
- package/lib/utils/timezone.js +26 -12
- package/lib/utils/url.d.ts +1 -2
- package/lib/utils/url.js +201 -146
- package/lib/utils/user.js +61 -59
- package/lib/utils/userAgent.js +11 -11
- package/lib/utils/userRole.d.ts +3 -3
- package/lib/utils/userRole.js +56 -58
- package/package.json +207 -226
- package/lib/config/eslint/index.d.ts +0 -2
- package/lib/config/eslint/index.js +0 -36
- package/lib/config/eslint/lib/order.d.ts +0 -3
- package/lib/config/eslint/lib/order.js +0 -30
- package/lib/config/eslint/lib/prettier.d.ts +0 -3
- package/lib/config/eslint/lib/prettier.js +0 -23
- package/lib/config/eslint/lib/typescript.d.ts +0 -2
- package/lib/config/eslint/lib/typescript.js +0 -98
- package/lib/config/eslint/react.d.ts +0 -2
- package/lib/config/eslint/react.js +0 -30
- package/lib/hooks/useEventCalback.d.ts +0 -14
- package/lib/hooks/useEventCalback.js +0 -51
- package/lib/types/externals.d.js +0 -2
package/lib/utils/groupDates.js
CHANGED
|
@@ -1,56 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return externalTerm;
|
|
12
|
-
}
|
|
13
|
-
return null;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isGroupEnded = exports.filterGroupsByEndDate = exports.getStartDate = exports.getEndDate = exports.getTermOrDatesUIText = exports.getTerm = void 0;
|
|
4
|
+
var date_1 = require("./date");
|
|
5
|
+
var getTerm = function (externalTerms, group) {
|
|
6
|
+
if (!!group.externalTermId && Object.keys(externalTerms).length > 0) {
|
|
7
|
+
var externalTerm = externalTerms[group.externalTermId];
|
|
8
|
+
return externalTerm;
|
|
9
|
+
}
|
|
10
|
+
return null;
|
|
14
11
|
};
|
|
15
12
|
exports.getTerm = getTerm;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
var getTermOrDatesUIText = function (externalTerms, group) {
|
|
14
|
+
// linked term
|
|
15
|
+
var externalTerm = exports.getTerm(externalTerms, group);
|
|
16
|
+
if (externalTerm) {
|
|
17
|
+
return externalTerm.name;
|
|
18
|
+
}
|
|
19
|
+
// group dates
|
|
20
|
+
if (!!group.startDate && !!group.endDate) {
|
|
21
|
+
return date_1.getFormattedNumberedDate(group.startDate) + " - " + date_1.getFormattedNumberedDate(group.endDate);
|
|
22
|
+
}
|
|
23
|
+
// no term or dates
|
|
24
|
+
return 'N/A';
|
|
28
25
|
};
|
|
29
26
|
exports.getTermOrDatesUIText = getTermOrDatesUIText;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
27
|
+
var getEndDate = function (externalTerms, group) {
|
|
28
|
+
var externalTerm = exports.getTerm(externalTerms, group);
|
|
29
|
+
if (externalTerm) {
|
|
30
|
+
return externalTerm.endDate;
|
|
31
|
+
}
|
|
32
|
+
return group.endDate;
|
|
36
33
|
};
|
|
37
34
|
exports.getEndDate = getEndDate;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
35
|
+
var getStartDate = function (externalTerms, group) {
|
|
36
|
+
var externalTerm = exports.getTerm(externalTerms, group);
|
|
37
|
+
if (externalTerm) {
|
|
38
|
+
return externalTerm.startDate;
|
|
39
|
+
}
|
|
40
|
+
return group.startDate;
|
|
44
41
|
};
|
|
45
42
|
exports.getStartDate = getStartDate;
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
var filterGroupsByEndDate = function (groups, externalTerms, filterFunction) {
|
|
44
|
+
return groups.filter(function (g) { return !!g.id && !g.isDeleted && filterFunction(exports.getEndDate(externalTerms, g)); });
|
|
48
45
|
};
|
|
49
46
|
exports.filterGroupsByEndDate = filterGroupsByEndDate;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
47
|
+
var isGroupEnded = function (externalTerms, group) {
|
|
48
|
+
var groupEndDateMoment = date_1.getLocalMomentFromUtc(exports.getEndDate(externalTerms, group));
|
|
49
|
+
var localMoment = date_1.getLocalMomentFromUtc();
|
|
50
|
+
return groupEndDateMoment <= localMoment;
|
|
54
51
|
};
|
|
55
52
|
exports.isGroupEnded = isGroupEnded;
|
|
56
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGF0ZSIsInJlcXVpcmUiLCJnZXRUZXJtIiwiZXh0ZXJuYWxUZXJtcyIsImdyb3VwIiwiZXh0ZXJuYWxUZXJtSWQiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwiZXh0ZXJuYWxUZXJtIiwiZXhwb3J0cyIsImdldFRlcm1PckRhdGVzVUlUZXh0IiwibmFtZSIsInN0YXJ0RGF0ZSIsImVuZERhdGUiLCJnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUiLCJnZXRFbmREYXRlIiwiZ2V0U3RhcnREYXRlIiwiZmlsdGVyR3JvdXBzQnlFbmREYXRlIiwiZ3JvdXBzIiwiZmlsdGVyRnVuY3Rpb24iLCJmaWx0ZXIiLCJnIiwiaWQiLCJpc0RlbGV0ZWQiLCJpc0dyb3VwRW5kZWQiLCJncm91cEVuZERhdGVNb21lbnQiLCJnZXRMb2NhbE1vbWVudEZyb21VdGMiLCJsb2NhbE1vbWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ncm91cERhdGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4dGVybmFsVGVybSwgR3JvdXAsIE1vZGVsQ29sbGVjdGlvbiB9IGZyb20gJy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUsIGdldExvY2FsTW9tZW50RnJvbVV0YyB9IGZyb20gJy4vZGF0ZSdcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRUZXJtID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRpZiAoISFncm91cC5leHRlcm5hbFRlcm1JZCAmJiBPYmplY3Qua2V5cyhleHRlcm5hbFRlcm1zKS5sZW5ndGggPiAwKSB7XHJcblx0XHRjb25zdCBleHRlcm5hbFRlcm0gPSBleHRlcm5hbFRlcm1zW2dyb3VwLmV4dGVybmFsVGVybUlkXVxyXG5cdFx0cmV0dXJuIGV4dGVybmFsVGVybVxyXG5cdH1cclxuXHRyZXR1cm4gbnVsbFxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZ2V0VGVybU9yRGF0ZXNVSVRleHQgPSAoZXh0ZXJuYWxUZXJtczogTW9kZWxDb2xsZWN0aW9uPEV4dGVybmFsVGVybT4sIGdyb3VwOiBHcm91cCkgPT4ge1xyXG5cdC8vIGxpbmtlZCB0ZXJtXHJcblx0Y29uc3QgZXh0ZXJuYWxUZXJtID0gZ2V0VGVybShleHRlcm5hbFRlcm1zLCBncm91cClcclxuXHRpZiAoZXh0ZXJuYWxUZXJtKSB7XHJcblx0XHRyZXR1cm4gZXh0ZXJuYWxUZXJtLm5hbWVcclxuXHR9XHJcblx0Ly8gZ3JvdXAgZGF0ZXNcclxuXHRpZiAoISFncm91cC5zdGFydERhdGUgJiYgISFncm91cC5lbmREYXRlKSB7XHJcblx0XHRyZXR1cm4gYCR7Z2V0Rm9ybWF0dGVkTnVtYmVyZWREYXRlKGdyb3VwLnN0YXJ0RGF0ZSl9IC0gJHtnZXRGb3JtYXR0ZWROdW1iZXJlZERhdGUoZ3JvdXAuZW5kRGF0ZSl9YFxyXG5cdH1cclxuXHQvLyBubyB0ZXJtIG9yIGRhdGVzXHJcblx0cmV0dXJuICdOL0EnXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBnZXRFbmREYXRlID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRjb25zdCBleHRlcm5hbFRlcm0gPSBnZXRUZXJtKGV4dGVybmFsVGVybXMsIGdyb3VwKVxyXG5cdGlmIChleHRlcm5hbFRlcm0pIHtcclxuXHRcdHJldHVybiBleHRlcm5hbFRlcm0uZW5kRGF0ZVxyXG5cdH1cclxuXHRyZXR1cm4gZ3JvdXAuZW5kRGF0ZSBhcyBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdldFN0YXJ0RGF0ZSA9IChleHRlcm5hbFRlcm1zOiBNb2RlbENvbGxlY3Rpb248RXh0ZXJuYWxUZXJtPiwgZ3JvdXA6IEdyb3VwKSA9PiB7XHJcblx0Y29uc3QgZXh0ZXJuYWxUZXJtID0gZ2V0VGVybShleHRlcm5hbFRlcm1zLCBncm91cClcclxuXHRpZiAoZXh0ZXJuYWxUZXJtKSB7XHJcblx0XHRyZXR1cm4gZXh0ZXJuYWxUZXJtLnN0YXJ0RGF0ZVxyXG5cdH1cclxuXHRyZXR1cm4gZ3JvdXAuc3RhcnREYXRlIGFzIHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZmlsdGVyR3JvdXBzQnlFbmREYXRlID0gKFxyXG5cdGdyb3VwczogR3JvdXBbXSxcclxuXHRleHRlcm5hbFRlcm1zOiBNb2RlbENvbGxlY3Rpb248RXh0ZXJuYWxUZXJtPixcclxuXHRmaWx0ZXJGdW5jdGlvbjogKGRhdGVUaW1lVXRjPzogc3RyaW5nLCBub3dVdGM/OiBzdHJpbmcpID0+IGJvb2xlYW5cclxuKSA9PiB7XHJcblx0cmV0dXJuIGdyb3Vwcy5maWx0ZXIoZyA9PiAhIWcuaWQgJiYgIWcuaXNEZWxldGVkICYmIGZpbHRlckZ1bmN0aW9uKGdldEVuZERhdGUoZXh0ZXJuYWxUZXJtcywgZykpKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgaXNHcm91cEVuZGVkID0gKGV4dGVybmFsVGVybXM6IE1vZGVsQ29sbGVjdGlvbjxFeHRlcm5hbFRlcm0+LCBncm91cDogR3JvdXApID0+IHtcclxuXHRjb25zdCBncm91cEVuZERhdGVNb21lbnQgPSBnZXRMb2NhbE1vbWVudEZyb21VdGMoZ2V0RW5kRGF0ZShleHRlcm5hbFRlcm1zLCBncm91cCkpXHJcblx0Y29uc3QgbG9jYWxNb21lbnQgPSBnZXRMb2NhbE1vbWVudEZyb21VdGMoKVxyXG5cdHJldHVybiBncm91cEVuZERhdGVNb21lbnQgPD0gbG9jYWxNb21lbnRcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUVPLE1BQU1DLE9BQU8sR0FBR0EsQ0FBQ0MsYUFBNEMsRUFBRUMsS0FBWSxLQUFLO0VBQ3RGLElBQUksQ0FBQyxDQUFDQSxLQUFLLENBQUNDLGNBQWMsSUFBSUMsTUFBTSxDQUFDQyxJQUFJLENBQUNKLGFBQWEsQ0FBQyxDQUFDSyxNQUFNLEdBQUcs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
|
package/lib/utils/groupRoles.js
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
return filterGroupsByRole(groups, _baseRole.BASE_ROLE.GROUP_LEARNER);
|
|
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.filterSyncedGroupUsers = exports.filterManualGroupUsers = exports.groupsAsAnythingButLearner = exports.groupsAsGrader = exports.groupsAsOwner = exports.groupsAsLearner = void 0;
|
|
7
|
+
var lodash_1 = __importDefault(require("lodash"));
|
|
8
|
+
var baseRole_1 = require("../constants/baseRole");
|
|
9
|
+
var model_1 = require("./model");
|
|
10
|
+
var userRole_1 = require("./userRole");
|
|
11
|
+
var groupsAsLearner = function (groups) {
|
|
12
|
+
return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_LEARNER);
|
|
14
13
|
};
|
|
15
14
|
exports.groupsAsLearner = groupsAsLearner;
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
var groupsAsOwner = function (groups) {
|
|
16
|
+
return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_OWNER);
|
|
18
17
|
};
|
|
19
18
|
exports.groupsAsOwner = groupsAsOwner;
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
var groupsAsGrader = function (groups) {
|
|
20
|
+
return filterGroupsByRole(groups, baseRole_1.BASE_ROLE.GROUP_GRADER);
|
|
22
21
|
};
|
|
23
22
|
exports.groupsAsGrader = groupsAsGrader;
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
var groupsAsAnythingButLearner = function (groups) {
|
|
24
|
+
return filterGroupsByRoleOtherThanRole(groups, baseRole_1.BASE_ROLE.GROUP_LEARNER);
|
|
26
25
|
};
|
|
27
26
|
exports.groupsAsAnythingButLearner = groupsAsAnythingButLearner;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return _lodash.default.values(_lodash.default.omitBy((0, _model.getModelArray)(groups), (value, key) => !groupHasRole(value, key) || !_lodash.default.includes(value.roles, role)));
|
|
27
|
+
var groupHasRole = function (value, key) {
|
|
28
|
+
return key !== '_metadata' && !!value && !!value.id && !!value.roles;
|
|
31
29
|
};
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
var filterGroupsByRole = function (groups, role) {
|
|
31
|
+
return lodash_1.default.values(lodash_1.default.omitBy(model_1.getModelArray(groups), function (value, key) { return !groupHasRole(value, key) || !lodash_1.default.includes(value.roles, role); }));
|
|
34
32
|
};
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
var filterGroupsByRoleOtherThanRole = function (groups, role) {
|
|
34
|
+
return lodash_1.default.values(lodash_1.default.omitBy(model_1.getModelArray(groups), function (value, key) { return !groupHasRole(value, key) || lodash_1.default.every(value.roles, function (r) { return r === role; }); }));
|
|
35
|
+
};
|
|
36
|
+
var filterManualGroupUsers = function (groupUsers) {
|
|
37
|
+
return groupUsers.filter(function (groupUser) { return !groupUser.roles.some(function (r) { return userRole_1.isExternal(r); }); });
|
|
37
38
|
};
|
|
38
39
|
exports.filterManualGroupUsers = filterManualGroupUsers;
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
var filterSyncedGroupUsers = function (groupUsers) {
|
|
41
|
+
return groupUsers.filter(function (groupUser) { return groupUser.roles.some(function (r) { return userRole_1.isExternal(r); }); });
|
|
41
42
|
};
|
|
42
43
|
exports.filterSyncedGroupUsers = filterSyncedGroupUsers;
|
|
43
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfYmFzZVJvbGUiLCJfbW9kZWwiLCJfdXNlclJvbGUiLCJncm91cHNBc0xlYXJuZXIiLCJncm91cHMiLCJmaWx0ZXJHcm91cHNCeVJvbGUiLCJCQVNFX1JPTEUiLCJHUk9VUF9MRUFSTkVSIiwiZXhwb3J0cyIsImdyb3Vwc0FzT3duZXIiLCJHUk9VUF9PV05FUiIsImdyb3Vwc0FzR3JhZGVyIiwiR1JPVVBfR1JBREVSIiwiZ3JvdXBzQXNBbnl0aGluZ0J1dExlYXJuZXIiLCJmaWx0ZXJHcm91cHNCeVJvbGVPdGhlclRoYW5Sb2xlIiwiZ3JvdXBIYXNSb2xlIiwidmFsdWUiLCJrZXkiLCJpZCIsInJvbGVzIiwicm9sZSIsIl8iLCJ2YWx1ZXMiLCJvbWl0QnkiLCJnZXRNb2RlbEFycmF5IiwiaW5jbHVkZXMiLCJldmVyeSIsInIiLCJmaWx0ZXJNYW51YWxHcm91cFVzZXJzIiwiZ3JvdXBVc2VycyIsImZpbHRlciIsImdyb3VwVXNlciIsInNvbWUiLCJpc0V4dGVybmFsIiwiZmlsdGVyU3luY2VkR3JvdXBVc2VycyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ncm91cFJvbGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCdcclxuaW1wb3J0IHsgQkFTRV9ST0xFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2Jhc2VSb2xlJ1xyXG5pbXBvcnQgeyBHcm91cCwgTWV0YWRhdGEsIE1vZGVsQ29sbGVjdGlvbiwgVXNlcldpdGhSb2xlcyB9IGZyb20gJy4uL3R5cGVzJ1xyXG5pbXBvcnQgeyBnZXRNb2RlbEFycmF5IH0gZnJvbSAnLi9tb2RlbCdcclxuaW1wb3J0IHsgaXNFeHRlcm5hbCB9IGZyb20gJy4vdXNlclJvbGUnXHJcblxyXG5leHBvcnQgY29uc3QgZ3JvdXBzQXNMZWFybmVyID0gKGdyb3VwczogTW9kZWxDb2xsZWN0aW9uPEdyb3VwPikgPT4ge1xyXG5cdHJldHVybiBmaWx0ZXJHcm91cHNCeVJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfTEVBUk5FUilcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdyb3Vwc0FzT3duZXIgPSAoZ3JvdXBzOiBNb2RlbENvbGxlY3Rpb248R3JvdXA+KSA9PiB7XHJcblx0cmV0dXJuIGZpbHRlckdyb3Vwc0J5Um9sZShncm91cHMsIEJBU0VfUk9MRS5HUk9VUF9PV05FUilcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdyb3Vwc0FzR3JhZGVyID0gKGdyb3VwczogTW9kZWxDb2xsZWN0aW9uPEdyb3VwPikgPT4ge1xyXG5cdHJldHVybiBmaWx0ZXJHcm91cHNCeVJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfR1JBREVSKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZ3JvdXBzQXNBbnl0aGluZ0J1dExlYXJuZXIgPSAoZ3JvdXBzOiBNb2RlbENvbGxlY3Rpb248R3JvdXA+KSA9PiB7XHJcblx0cmV0dXJuIGZpbHRlckdyb3Vwc0J5Um9sZU90aGVyVGhhblJvbGUoZ3JvdXBzLCBCQVNFX1JPTEUuR1JPVVBfTEVBUk5FUilcclxufVxyXG5cclxuY29uc3QgZ3JvdXBIYXNSb2xlID0gKHZhbHVlOiBHcm91cCB8IE1ldGFkYXRhIHwgbnVsbCB8IHVuZGVmaW5lZCwga2V5OiBzdHJpbmcpID0+XHJcblx0a2V5ICE9PSAnX21ldGFkYXRhJyAmJiAhIXZhbHVlICYmICEhKHZhbHVlIGFzIEdyb3VwKS5pZCAmJiAhISh2YWx1ZSBhcyBHcm91cCkucm9sZXNcclxuXHJcbmNvbnN0IGZpbHRlckdyb3Vwc0J5Um9sZSA9IChncm91cHM6IE1vZGVsQ29sbGVjdGlvbjxHcm91cD4sIHJvbGU6IHN0cmluZykgPT4ge1xyXG5cdHJldHVybiBfLnZhbHVlcyhcclxuXHRcdF8ub21pdEJ5KGdldE1vZGVsQXJyYXkoZ3JvdXBzKSwgKHZhbHVlLCBrZXkpID0+ICFncm91cEhhc1JvbGUodmFsdWUsIGtleSkgfHwgIV8uaW5jbHVkZXModmFsdWUucm9sZXMsIHJvbGUpKVxyXG5cdClcclxufVxyXG5cclxuY29uc3QgZmlsdGVyR3JvdXBzQnlSb2xlT3RoZXJUaGFuUm9sZSA9IChncm91cHM6IE1vZGVsQ29sbGVjdGlvbjxHcm91cD4sIHJvbGU6IHN0cmluZykgPT4ge1xyXG5cdHJldHVybiBfLnZhbHVlcyhcclxuXHRcdF8ub21pdEJ5KFxyXG5cdFx0XHRnZXRNb2RlbEFycmF5KGdyb3VwcyksXHJcblx0XHRcdCh2YWx1ZSwga2V5KSA9PiAhZ3JvdXBIYXNSb2xlKHZhbHVlLCBrZXkpIHx8IF8uZXZlcnkodmFsdWUucm9sZXMsIHIgPT4gciA9PT0gcm9sZSlcclxuXHRcdClcclxuXHQpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBmaWx0ZXJNYW51YWxHcm91cFVzZXJzID0gKGdyb3VwVXNlcnM6IFVzZXJXaXRoUm9sZXNbXSkgPT4ge1xyXG5cdHJldHVybiBncm91cFVzZXJzLmZpbHRlcihncm91cFVzZXIgPT4gIWdyb3VwVXNlci5yb2xlcy5zb21lKHIgPT4gaXNFeHRlcm5hbChyKSkpXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBmaWx0ZXJTeW5jZWRHcm91cFVzZXJzID0gKGdyb3VwVXNlcnM6IFVzZXJXaXRoUm9sZXNbXSkgPT4ge1xyXG5cdHJldHVybiBncm91cFVzZXJzLmZpbHRlcihncm91cFVzZXIgPT4gZ3JvdXBVc2VyLnJvbGVzLnNvbWUociA9PiBpc0V4dGVybmFsKHIpKSlcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxTQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxNQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxTQUFBLEdBQUFILE9BQUE7QUFFTyxNQUFNSSxlQUFlLEdBQUlDLE1BQThCLElBQUs7RUFDbEUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ0MsYUFBYSxDQUFDO0FBQzNELENBQUM7QUFBQUMsT0FBQSxDQUFBTCxlQUFBLEdBQUFBLGVBQUE7QUFFTSxNQUFNTSxhQUFhLEdBQUlMLE1BQThCLElBQUs7RUFDaEUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ0ksV0FBVyxDQUFDO0FBQ3pELENBQUM7QUFBQUYsT0FBQSxDQUFBQyxhQUFBLEdBQUFBLGFBQUE7QUFFTSxNQUFNRSxjQUFjLEdBQUlQLE1BQThCLElBQUs7RUFDakUsT0FBT0Msa0JBQWtCLENBQUNELE1BQU0sRUFBRUUsbUJBQVMsQ0FBQ00sWUFBWSxDQUFDO0FBQzFELENBQUM7QUFBQUosT0FBQSxDQUFBRyxjQUFBLEdBQUFBLGNBQUE7QUFFTSxNQUFNRSwwQkFBMEIsR0FBSVQsTUFBOEIsSUFBSztFQUM3RSxPQUFPVSwrQkFBK0IsQ0FBQ1YsTUFBTSxFQUFFRSxtQkFBUyxDQUFDQyxhQUFhLENBQUM7QUFDeEUsQ0FBQztBQUFBQyxPQUFBLENBQUFLLDBCQUFBLEdBQUFBLDBCQUFBO0FBRUQsTUFBTUUsWUFBWSxHQUFHQSxDQUFDQyxLQUEwQyxFQUFFQyxHQUFXLEtBQzVFQSxHQUFHLEtBQUssV0FBVyxJQUFJLENBQUMsQ0FBQ0QsS0FBSyxJQUFJLENBQUMsQ0FBRUEsS0FBSyxDQUFXRSxFQUFFLElBQUksQ0FBQyxDQUFFRixLQUFLLENBQVdHLEtBQUs7QUFFcEYsTUFBTWQsa0JBQWtCLEdBQUdBLENBQUNELE1BQThCLEVBQUVnQixJQUFZLEtBQUs7RUFDNUUsT0FBT0MsZUFBQyxDQUFDQyxNQUFNLENBQ2RELGVBQUMsQ0FBQ0UsTUFBTSxDQUFDLElBQUFDLG9CQUFhLEVBQUNwQixNQUFNLENBQUMsRUFBRSxDQUFDWSxLQUFLLEVBQUVDLEdBQUcsS0FBSyxDQUFDRixZQUFZLENBQUNDLEtBQUssRUFBRUMsR0FBRyxDQUFDLElBQUksQ0FBQ0ksZUFBQyxDQUFDSSxRQUFRLENBQUNULEtBQUssQ0FBQ0csS0FBSyxFQUFFQyxJQUFJLENBQUMsQ0FDNUcsQ0FBQztBQUNGLENBQUM7QUFFRCxNQUFNTiwrQkFBK0IsR0FBR0EsQ0FBQ1YsTUFBOEIsRUFBRWdCLElBQVksS0FBSztFQUN6RixPQUFPQyxlQUFDLENBQUNDLE1BQU0sQ0FDZEQsZUFBQyxDQUFDRSxNQUFNLENBQ1AsSUFBQUMsb0JBQWEsRUFBQ3BCLE1BQU0sQ0FBQyxFQUNyQixDQUFDWSxLQUFLLEVBQUVDLEdBQUcsS0FBSyxDQUFDRixZQUFZLENBQUNDLEtBQUssRUFBRUMsR0FBRyxDQUFDLElBQUlJLGVBQUMsQ0FBQ0ssS0FBSyxDQUFDVixLQUFLLENBQUNHLEtBQUssRUFBRVEsQ0FBQyxJQUFJQSxDQUFDLEtBQUtQLElBQUksQ0FDbEYsQ0FDRCxDQUFDO0FBQ0YsQ0FBQztBQUVNLE1BQU1RLHNCQUFzQixHQUFJQyxVQUEyQixJQUFLO0VBQ3RFLE9BQU9BLFVBQVUsQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTLElBQUksQ0FBQ0EsU0FBUyxDQUFDWixLQUFLLENBQUNhLElBQUksQ0FBQ0wsQ0FBQyxJQUFJLElBQUFNLG9CQUFVLEVBQUNOLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakYsQ0FBQztBQUFBbkIsT0FBQSxDQUFBb0Isc0JBQUEsR0FBQUEsc0JBQUE7QUFFTSxNQUFNTSxzQkFBc0IsR0FBSUwsVUFBMkIsSUFBSztFQUN0RSxPQUFPQSxVQUFVLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxJQUFJQSxTQUFTLENBQUNaLEtBQUssQ0FBQ2EsSUFBSSxDQUFDTCxDQUFDLElBQUksSUFBQU0sb0JBQVUsRUFBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoRixDQUFDO0FBQUFuQixPQUFBLENBQUEwQixzQkFBQSxHQUFBQSxzQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.getLockDownBrowserInfo = void 0;
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
4
|
+
var lockDownBrowser_1 = require("../constants/lockDownBrowser");
|
|
5
|
+
var cookies_1 = require("./cookies");
|
|
6
|
+
var getLockDownBrowserInfo = function () {
|
|
7
|
+
var cookies = cookies_1.getCookies();
|
|
8
|
+
return {
|
|
9
|
+
isClientLockDownBrowser: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.CLIENT_IS_LOCK_DOWN_BROWSER] === lockDownBrowser_1.LOCKDOWN_BROWSER_TRUE,
|
|
10
|
+
buildId: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_ID],
|
|
11
|
+
buildDateWindows: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_WINDOWS],
|
|
12
|
+
buildDateMac: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_MAC],
|
|
13
|
+
buildDateIpad: cookies[lockDownBrowser_1.LOCKDOWN_BROWSER_KEY.BUILD_DATE_IPAD]
|
|
14
|
+
};
|
|
18
15
|
};
|
|
19
16
|
exports.getLockDownBrowserInfo = getLockDownBrowserInfo;
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9ja0Rvd25Ccm93c2VyIiwicmVxdWlyZSIsIl9jb29raWVzIiwiZ2V0TG9ja0Rvd25Ccm93c2VySW5mbyIsImNvb2tpZXMiLCJnZXRDb29raWVzIiwiaXNDbGllbnRMb2NrRG93bkJyb3dzZXIiLCJMT0NLRE9XTl9CUk9XU0VSX0tFWSIsIkNMSUVOVF9JU19MT0NLX0RPV05fQlJPV1NFUiIsIkxPQ0tET1dOX0JST1dTRVJfVFJVRSIsImJ1aWxkSWQiLCJCVUlMRF9JRCIsImJ1aWxkRGF0ZVdpbmRvd3MiLCJCVUlMRF9EQVRFX1dJTkRPV1MiLCJidWlsZERhdGVNYWMiLCJCVUlMRF9EQVRFX01BQyIsImJ1aWxkRGF0ZUlwYWQiLCJCVUlMRF9EQVRFX0lQQUQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2xvY2tEb3duQnJvd3Nlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMT0NLRE9XTl9CUk9XU0VSX0tFWSwgTE9DS0RPV05fQlJPV1NFUl9UUlVFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2xvY2tEb3duQnJvd3NlcidcclxuaW1wb3J0IHsgZ2V0Q29va2llcyB9IGZyb20gJy4vY29va2llcydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9ja0Rvd25Ccm93c2VySW5mbyB7XHJcblx0aXNDbGllbnRMb2NrRG93bkJyb3dzZXI6IGJvb2xlYW5cclxuXHRidWlsZElkPzogc3RyaW5nXHJcblx0YnVpbGREYXRlV2luZG93cz86IHN0cmluZ1xyXG5cdGJ1aWxkRGF0ZU1hYz86IHN0cmluZ1xyXG5cdGJ1aWxkRGF0ZUlwYWQ/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGdldExvY2tEb3duQnJvd3NlckluZm8gPSAoKTogTG9ja0Rvd25Ccm93c2VySW5mbyA9PiB7XHJcblx0Y29uc3QgY29va2llcyA9IGdldENvb2tpZXMoKVxyXG5cdHJldHVybiB7XHJcblx0XHRpc0NsaWVudExvY2tEb3duQnJvd3NlcjogY29va2llc1tMT0NLRE9XTl9CUk9XU0VSX0tFWS5DTElFTlRfSVNfTE9DS19ET1dOX0JST1dTRVJdID09PSBMT0NLRE9XTl9CUk9XU0VSX1RSVUUsXHJcblx0XHRidWlsZElkOiBjb29raWVzW0xPQ0tET1dOX0JST1dTRVJfS0VZLkJVSUxEX0lEXSxcclxuXHRcdGJ1aWxkRGF0ZVdpbmRvd3M6IGNvb2tpZXNbTE9DS0RPV05fQlJPV1NFUl9LRVkuQlVJTERfREFURV9XSU5ET1dTXSxcclxuXHRcdGJ1aWxkRGF0ZU1hYzogY29va2llc1tMT0NLRE9XTl9CUk9XU0VSX0tFWS5CVUlMRF9EQVRFX01BQ10sXHJcblx0XHRidWlsZERhdGVJcGFkOiBjb29raWVzW0xPQ0tET1dOX0JST1dTRVJfS0VZLkJVSUxEX0RBVEVfSVBBRF1cclxuXHR9XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxnQkFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBVU8sTUFBTUUsc0JBQXNCLEdBQUdBLENBQUEsS0FBMkI7RUFDaEUsTUFBTUMsT0FBTyxHQUFHLElBQUFDLG1CQUFVLEVBQUMsQ0FBQztFQUM1QixPQUFPO0lBQ05DLHVCQUF1QixFQUFFRixPQUFPLENBQUNHLHFDQUFvQixDQUFDQywyQkFBMkIsQ0FBQyxLQUFLQyxzQ0FBcUI7SUFDNUdDLE9BQU8sRUFBRU4sT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ0ksUUFBUSxDQUFDO0lBQy9DQyxnQkFBZ0IsRUFBRVIsT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ00sa0JBQWtCLENBQUM7SUFDbEVDLFlBQVksRUFBRVYsT0FBTyxDQUFDRyxxQ0FBb0IsQ0FBQ1EsY0FBYyxDQUFDO0lBQzFEQyxhQUFhLEVBQUVaLE9BQU8sQ0FBQ0cscUNBQW9CLENBQUNVLGVBQWU7RUFDNUQsQ0FBQztBQUNGLENBQUM7QUFBQUMsT0FBQSxDQUFBZixzQkFBQSxHQUFBQSxzQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
package/lib/utils/logger.js
CHANGED
|
@@ -1,39 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
exports.getLogger = getLogger;
|
|
9
|
-
exports.setLogger = setLogger;
|
|
10
|
-
var _configuration = require("../constants/configuration");
|
|
11
|
-
let logger;
|
|
12
|
-
const falseLog = () => {
|
|
13
|
-
return;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getLogger = exports.setLogger = exports.createLogger = exports.dummyLogger = void 0;
|
|
4
|
+
var configuration_1 = require("../constants/configuration");
|
|
5
|
+
var logger;
|
|
6
|
+
var falseLog = function () {
|
|
7
|
+
return;
|
|
14
8
|
};
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
9
|
+
exports.dummyLogger = {
|
|
10
|
+
debug: falseLog,
|
|
11
|
+
info: falseLog,
|
|
12
|
+
warn: falseLog,
|
|
13
|
+
error: falseLog
|
|
20
14
|
};
|
|
21
15
|
function createLogger() {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
};
|
|
16
|
+
if (configuration_1.getAppConfig().NODE_ENV === 'production' || !window.console || !console) {
|
|
17
|
+
return exports.dummyLogger;
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
debug: console.debug,
|
|
21
|
+
info: console.info,
|
|
22
|
+
warn: console.warn,
|
|
23
|
+
error: console.error
|
|
24
|
+
};
|
|
32
25
|
}
|
|
26
|
+
exports.createLogger = createLogger;
|
|
33
27
|
function setLogger(value) {
|
|
34
|
-
|
|
28
|
+
logger = value;
|
|
35
29
|
}
|
|
30
|
+
exports.setLogger = setLogger;
|
|
36
31
|
function getLogger() {
|
|
37
|
-
|
|
32
|
+
return logger;
|
|
38
33
|
}
|
|
39
|
-
|
|
34
|
+
exports.getLogger = getLogger;
|
package/lib/utils/lti.js
CHANGED
|
@@ -1,14 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.isInsideIFrame = exports.isBasicLaunch = void 0;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isBasicLaunch = exports.isInsideIFrame = void 0;
|
|
7
4
|
// Check if we are inside an iframe
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
// Check whether this is a regular launch or a Deep Link launch
|
|
5
|
+
var isInsideIFrame = function () { return window !== window.parent; };
|
|
11
6
|
exports.isInsideIFrame = isInsideIFrame;
|
|
12
|
-
|
|
7
|
+
// Check whether this is a regular launch or a Deep Link launch
|
|
8
|
+
var isBasicLaunch = function (ltiLaunch) { return !ltiLaunch.deepLinkingReturnUrl; };
|
|
13
9
|
exports.isBasicLaunch = isBasicLaunch;
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc0luc2lkZUlGcmFtZSIsIndpbmRvdyIsInBhcmVudCIsImV4cG9ydHMiLCJpc0Jhc2ljTGF1bmNoIiwibHRpTGF1bmNoIiwiZGVlcExpbmtpbmdSZXR1cm5VcmwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvbHRpLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEx0aUxhdW5jaCB9IGZyb20gJy4uL3R5cGVzJ1xyXG5cclxuLy8gQ2hlY2sgaWYgd2UgYXJlIGluc2lkZSBhbiBpZnJhbWVcclxuZXhwb3J0IGNvbnN0IGlzSW5zaWRlSUZyYW1lID0gKCkgPT4gd2luZG93ICE9PSB3aW5kb3cucGFyZW50XHJcblxyXG4vLyBDaGVjayB3aGV0aGVyIHRoaXMgaXMgYSByZWd1bGFyIGxhdW5jaCBvciBhIERlZXAgTGluayBsYXVuY2hcclxuZXhwb3J0IGNvbnN0IGlzQmFzaWNMYXVuY2ggPSAobHRpTGF1bmNoOiBMdGlMYXVuY2gpID0+ICFsdGlMYXVuY2guZGVlcExpbmtpbmdSZXR1cm5VcmxcclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQTtBQUNPLE1BQU1BLGNBQWMsR0FBR0EsQ0FBQSxLQUFNQyxNQUFNLEtBQUtBLE1BQU0sQ0FBQ0MsTUFBTTs7QUFFNUQ7QUFBQUMsT0FBQSxDQUFBSCxjQUFBLEdBQUFBLGNBQUE7QUFDTyxNQUFNSSxhQUFhLEdBQUlDLFNBQW9CLElBQUssQ0FBQ0EsU0FBUyxDQUFDQyxvQkFBb0I7QUFBQUgsT0FBQSxDQUFBQyxhQUFBLEdBQUFBLGFBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
package/lib/utils/model.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { MODEL_STATUS } from '../constants/modelStatus';
|
|
2
2
|
import { Model, ModelCollection } from '../types';
|
|
3
|
-
export declare const getModelArray: <T extends Model>(model: ModelCollection<T>, guid?: string) => T[];
|
|
3
|
+
export declare const getModelArray: <T extends Model>(model: ModelCollection<T>, guid?: string | undefined) => T[];
|
|
4
4
|
export declare const getModelMinusRelations: <T extends Model>(model: T) => Partial<T>;
|
|
5
|
-
export declare const getModelFetchResult: <T extends Model>(model?: T, nextModel?: T) => {
|
|
5
|
+
export declare const getModelFetchResult: <T extends Model>(model?: T | undefined, nextModel?: T | undefined) => {
|
|
6
6
|
isFinished: boolean;
|
|
7
7
|
isSuccess: boolean;
|
|
8
8
|
error: import("../types").FetchErrorData | undefined;
|
package/lib/utils/model.js
CHANGED
|
@@ -1,46 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleModelFetchFinish = exports.getModelFetchResult = exports.getModelMinusRelations = exports.getModelArray = void 0;
|
|
4
|
+
var lodash_1 = require("lodash");
|
|
5
|
+
var modelStatus_1 = require("../constants/modelStatus");
|
|
6
|
+
var getModelArray = function (model, guid) {
|
|
7
|
+
return Object.keys(model)
|
|
8
|
+
.filter(function (key) { return key !== '_metadata' && key !== guid && !!model[key]; })
|
|
9
|
+
.map(function (key) { return model[key]; });
|
|
10
|
+
};
|
|
11
11
|
exports.getModelArray = getModelArray;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
var getModelMinusRelations = function (model) {
|
|
13
|
+
return Object.keys(model)
|
|
14
|
+
.filter(function (key) { return key !== 'guid' && !lodash_1.isPlainObject(model[key]) && !lodash_1.isArray(model[key]); })
|
|
15
|
+
.reduce(function (retval, key) {
|
|
16
|
+
retval[key] = model[key];
|
|
17
|
+
return retval;
|
|
18
|
+
}, {});
|
|
19
|
+
};
|
|
16
20
|
exports.getModelMinusRelations = getModelMinusRelations;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
isFinished
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
21
|
+
var getModelFetchResult = function (model, nextModel) {
|
|
22
|
+
// from (no model, empty model, fetching model) to (fetched model), e.g. GET
|
|
23
|
+
var didFetch = (!model || !model._metadata || model._metadata.isFetching) &&
|
|
24
|
+
!!nextModel &&
|
|
25
|
+
!!nextModel._metadata &&
|
|
26
|
+
!nextModel._metadata.isFetching;
|
|
27
|
+
// from (fetching model) to (no model), e.g. DELETED
|
|
28
|
+
var didDelete = !!model && !!model._metadata && model._metadata.isFetching && !nextModel;
|
|
29
|
+
var isFinished = didFetch || didDelete;
|
|
30
|
+
var isSuccess = isFinished && (didDelete || (!!nextModel && !!nextModel._metadata && !nextModel._metadata.hasError));
|
|
31
|
+
var error = (isFinished && !didDelete && !!nextModel && !!nextModel._metadata && nextModel._metadata.lastFetchErrorData) ||
|
|
32
|
+
undefined;
|
|
33
|
+
return {
|
|
34
|
+
isFinished: isFinished,
|
|
35
|
+
isSuccess: isSuccess,
|
|
36
|
+
error: error
|
|
37
|
+
};
|
|
30
38
|
};
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* When the model has finished fetching, call `changeModelStatus`.
|
|
34
|
-
* If `fetchingId` is provided, `model` and `prevModel` are assumed to be `ModelCollection`,
|
|
35
|
-
* and the model found at `fetchingId` is used.
|
|
36
|
-
*/
|
|
37
39
|
exports.getModelFetchResult = getModelFetchResult;
|
|
40
|
+
/**
|
|
41
|
+
* When the model has finished fetching, call `changeModelStatus`.
|
|
42
|
+
* If `fetchingId` is provided, `model` and `prevModel` are assumed to be `ModelCollection`,
|
|
43
|
+
* and the model found at `fetchingId` is used.
|
|
44
|
+
*/
|
|
38
45
|
function handleModelFetchFinish(model, prevModel, fetchingId, changeModelStatus) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
var fetchingModel = fetchingId ? model[fetchingId] : model;
|
|
47
|
+
var prevFetchingModel = fetchingId
|
|
48
|
+
? prevModel[fetchingId]
|
|
49
|
+
: prevModel;
|
|
50
|
+
var modelFetchResult = exports.getModelFetchResult(prevFetchingModel, fetchingModel);
|
|
51
|
+
if (modelFetchResult.isFinished) {
|
|
52
|
+
changeModelStatus(!modelFetchResult.isSuccess ? modelStatus_1.MODEL_STATUS.ERROR : modelStatus_1.MODEL_STATUS.READY, undefined);
|
|
53
|
+
}
|
|
45
54
|
}
|
|
46
|
-
|
|
55
|
+
exports.handleModelFetchFinish = handleModelFetchFinish;
|
package/lib/utils/number.js
CHANGED
|
@@ -1,29 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @
|
|
14
|
-
* @param decimalString - The number to validate. Must be passed as a string (i.e. from a web form)
|
|
15
|
-
* @param precision - The number of digits allowed in the value
|
|
16
|
-
* @param scale - The number of digits allowed to the right of the decimal point in the value
|
|
17
|
-
* @returns A boolean indicating whether the number falls within the precision and scale constraints provided
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.modulo = exports.hasPrecisionAndScale = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Validates that the input is a number and that the number falls within
|
|
6
|
+
* the precision and scale constraints provided.
|
|
7
|
+
* https://docs.microsoft.com/en-us/sql/t-sql/data-types/precision-scale-and-length-transact-sql?view=sql-server-2017
|
|
8
|
+
*
|
|
9
|
+
* @export
|
|
10
|
+
* @param decimalString - The number to validate. Must be passed as a string (i.e. from a web form)
|
|
11
|
+
* @param precision - The number of digits allowed in the value
|
|
12
|
+
* @param scale - The number of digits allowed to the right of the decimal point in the value
|
|
13
|
+
* @returns A boolean indicating whether the number falls within the precision and scale constraints provided
|
|
18
14
|
*/
|
|
19
15
|
function hasPrecisionAndScale(decimalString, precision, scale) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
if (typeof decimalString !== 'string' ||
|
|
17
|
+
isNaN(Number(decimalString)) ||
|
|
18
|
+
isNaN(precision) ||
|
|
19
|
+
isNaN(scale) ||
|
|
20
|
+
precision <= 0 ||
|
|
21
|
+
scale < 0) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
var parts = decimalString.toString().split('.');
|
|
25
|
+
return !!(new RegExp(precision === scale ? '^0$' : "^-?\\d{1," + (precision - scale) + "}$").exec(parts[0]) &&
|
|
26
|
+
(parts.length > 1 ? new RegExp("^\\d{1," + scale + "}$").exec(parts[1]) : true));
|
|
25
27
|
}
|
|
28
|
+
exports.hasPrecisionAndScale = hasPrecisionAndScale;
|
|
26
29
|
function modulo(n, m) {
|
|
27
|
-
|
|
30
|
+
return ((n % m) + m) % m;
|
|
28
31
|
}
|
|
29
|
-
|
|
32
|
+
exports.modulo = modulo;
|
package/lib/utils/promise.d.ts
CHANGED
|
@@ -2,9 +2,4 @@ export interface CancellablePromise<T> {
|
|
|
2
2
|
promise: Promise<T>;
|
|
3
3
|
cancel(): void;
|
|
4
4
|
}
|
|
5
|
-
export declare
|
|
6
|
-
isCancelled: boolean;
|
|
7
|
-
constructor();
|
|
8
|
-
}
|
|
9
|
-
export declare const isErrorCancelled: (error: unknown) => boolean;
|
|
10
|
-
export declare const cancellablePromise: <T>(promise: Promise<T>) => CancellablePromise<T>;
|
|
5
|
+
export declare const cancelablePromise: <T>(promise: Promise<T>) => CancellablePromise<T>;
|
package/lib/utils/promise.js
CHANGED
|
@@ -1,36 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
exports.CancelledError = CancelledError;
|
|
18
|
-
const isErrorCancelled = error => {
|
|
19
|
-
return !!error && error instanceof CancelledError && error.isCancelled;
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cancelablePromise = void 0;
|
|
4
|
+
var cancelablePromise = function (promise) {
|
|
5
|
+
var isCancelled = false;
|
|
6
|
+
var wrappedPromise = new Promise(function (resolve, reject) {
|
|
7
|
+
promise.then(function (val) { return (isCancelled ? reject({ isCancelled: true }) : resolve(val)); }, function (error) { return (isCancelled ? reject({ isCancelled: true }) : reject(error)); });
|
|
8
|
+
});
|
|
9
|
+
var response = {
|
|
10
|
+
promise: wrappedPromise,
|
|
11
|
+
cancel: function () {
|
|
12
|
+
isCancelled = true;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
return response;
|
|
20
16
|
};
|
|
21
|
-
exports.
|
|
22
|
-
const cancellablePromise = promise => {
|
|
23
|
-
let isCancelled = false;
|
|
24
|
-
const wrappedPromise = new Promise((resolve, reject) => {
|
|
25
|
-
promise.then(val => isCancelled ? reject(new CancelledError()) : resolve(val), error => isCancelled ? reject(new CancelledError()) : reject(error));
|
|
26
|
-
});
|
|
27
|
-
const response = {
|
|
28
|
-
promise: wrappedPromise,
|
|
29
|
-
cancel() {
|
|
30
|
-
isCancelled = true;
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
return response;
|
|
34
|
-
};
|
|
35
|
-
exports.cancellablePromise = cancellablePromise;
|
|
36
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDYW5jZWxsZWRFcnJvciIsIkVycm9yIiwiY29uc3RydWN0b3IiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsIm5hbWUiLCJpc0NhbmNlbGxlZCIsImV4cG9ydHMiLCJpc0Vycm9yQ2FuY2VsbGVkIiwiZXJyb3IiLCJjYW5jZWxsYWJsZVByb21pc2UiLCJwcm9taXNlIiwid3JhcHBlZFByb21pc2UiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInRoZW4iLCJ2YWwiLCJyZXNwb25zZSIsImNhbmNlbCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9wcm9taXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FuY2VsbGFibGVQcm9taXNlPFQ+IHtcclxuXHRwcm9taXNlOiBQcm9taXNlPFQ+XHJcblx0Y2FuY2VsKCk6IHZvaWRcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENhbmNlbGxlZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xyXG5cdHB1YmxpYyBpc0NhbmNlbGxlZDogYm9vbGVhblxyXG5cdGNvbnN0cnVjdG9yKCkge1xyXG5cdFx0c3VwZXIoJ1Byb21pc2Ugd2FzIGNhbmNlbGxlZCcpXHJcblx0XHR0aGlzLm5hbWUgPSAnQ2FuY2VsbGVkRXJyb3InXHJcblx0XHR0aGlzLmlzQ2FuY2VsbGVkID0gdHJ1ZVxyXG5cdH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGlzRXJyb3JDYW5jZWxsZWQgPSAoZXJyb3I6IHVua25vd24pID0+IHtcclxuXHRyZXR1cm4gISFlcnJvciAmJiBlcnJvciBpbnN0YW5jZW9mIENhbmNlbGxlZEVycm9yICYmIGVycm9yLmlzQ2FuY2VsbGVkXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBjYW5jZWxsYWJsZVByb21pc2UgPSA8VD4ocHJvbWlzZTogUHJvbWlzZTxUPikgPT4ge1xyXG5cdGxldCBpc0NhbmNlbGxlZCA9IGZhbHNlXHJcblxyXG5cdGNvbnN0IHdyYXBwZWRQcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG5cdFx0cHJvbWlzZS50aGVuKFxyXG5cdFx0XHR2YWwgPT4gKGlzQ2FuY2VsbGVkID8gcmVqZWN0KG5ldyBDYW5jZWxsZWRFcnJvcigpKSA6IHJlc29sdmUodmFsKSksXHJcblx0XHRcdChlcnJvcjogdW5rbm93bikgPT4gKGlzQ2FuY2VsbGVkID8gcmVqZWN0KG5ldyBDYW5jZWxsZWRFcnJvcigpKSA6IHJlamVjdChlcnJvciBhcyBFcnJvcikpXHJcblx0XHQpXHJcblx0fSlcclxuXHJcblx0Y29uc3QgcmVzcG9uc2U6IENhbmNlbGxhYmxlUHJvbWlzZTxUPiA9IHtcclxuXHRcdHByb21pc2U6IHdyYXBwZWRQcm9taXNlLFxyXG5cdFx0Y2FuY2VsKCkge1xyXG5cdFx0XHRpc0NhbmNlbGxlZCA9IHRydWVcclxuXHRcdH1cclxuXHR9XHJcblx0cmV0dXJuIHJlc3BvbnNlXHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUtPLE1BQU1BLGNBQWMsU0FBU0MsS0FBSyxDQUFDO0VBRXpDQyxXQUFXQSxDQUFBLEVBQUc7SUFDYixLQUFLLENBQUMsdUJBQXVCLENBQUM7SUFBQSxJQUFBQyxnQkFBQSxDQUFBQyxPQUFBO0lBQzlCLElBQUksQ0FBQ0MsSUFBSSxHQUFHLGdCQUFnQjtJQUM1QixJQUFJLENBQUNDLFdBQVcsR0FBRyxJQUFJO0VBQ3hCO0FBQ0Q7QUFBQ0MsT0FBQSxDQUFBUCxjQUFBLEdBQUFBLGNBQUE7QUFFTSxNQUFNUSxnQkFBZ0IsR0FBSUMsS0FBYyxJQUFLO0VBQ25ELE9BQU8sQ0FBQyxDQUFDQSxLQUFLLElBQUlBLEtBQUssWUFBWVQsY0FBYyxJQUFJUyxLQUFLLENBQUNILFdBQVc7QUFDdkUsQ0FBQztBQUFBQyxPQUFBLENBQUFDLGdCQUFBLEdBQUFBLGdCQUFBO0FBRU0sTUFBTUUsa0JBQWtCLEdBQU9DLE9BQW1CLElBQUs7RUFDN0QsSUFBSUwsV0FBVyxHQUFHLEtBQUs7RUFFdkIsTUFBTU0sY0FBYyxHQUFHLElBQUlDLE9BQU8sQ0FBSSxDQUFDQyxPQUFPLEVBQUVDLE1BQU0sS0FBSztJQUMxREosT0FBTyxDQUFDSyxJQUFJLENBQ1hDLEdBQUcsSUFBS1gsV0FBVyxHQUFHUyxNQUFNLENBQUMsSUFBSWYsY0FBYyxDQUFDLENBQUMsQ0FBQyxHQUFHYyxPQUFPLENBQUNHLEdBQUcsQ0FBRSxFQUNqRVIsS0FBYyxJQUFNSCxXQUFXLEdBQUdTLE1BQU0sQ0FBQyxJQUFJZixjQUFjLENBQUMsQ0FBQyxDQUFDLEdBQUdlLE1BQU0sQ0FBQ04sS0FBYyxDQUN4RixDQUFDO0VBQ0YsQ0FBQyxDQUFDO0VBRUYsTUFBTVMsUUFBK0IsR0FBRztJQUN2Q1AsT0FBTyxFQUFFQyxjQUFjO0lBQ3ZCTyxNQUFNQSxDQUFBLEVBQUc7TUFDUmIsV0FBVyxHQUFHLElBQUk7SUFDbkI7RUFDRCxDQUFDO0VBQ0QsT0FBT1ksUUFBUTtBQUNoQixDQUFDO0FBQUFYLE9BQUEsQ0FBQUcsa0JBQUEsR0FBQUEsa0JBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
17
|
+
exports.cancelablePromise = cancelablePromise;
|