@datalayer/core 0.0.2 → 0.0.3
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/README.md +12 -1
- package/lib/App.css +47 -0
- package/lib/App.d.ts +1 -1
- package/lib/App.js +17 -5
- package/lib/__tests__/index.test.js +2 -1
- package/lib/api/{RunApi.d.ts → DatalayerApi.d.ts} +4 -4
- package/lib/api/{RunApi.js → DatalayerApi.js} +4 -9
- package/lib/api/index.d.ts +2 -1
- package/lib/api/index.js +2 -6
- package/lib/api/{runtimes → jupyter}/exec/Python.js +0 -5
- package/lib/api/{runtimes → jupyter}/exec/Snippets.js +0 -5
- package/lib/api/{runtimes → jupyter}/exec/index.js +0 -5
- package/lib/api/jupyter/index.d.ts +2 -0
- package/lib/api/jupyter/index.js +6 -0
- package/lib/api/{runtimes → jupyter}/kernelsHandler.d.ts +1 -1
- package/lib/api/{runtimes → jupyter}/kernelsHandler.js +1 -6
- package/lib/api/runtimes/actions.d.ts +102 -0
- package/lib/api/runtimes/{runtimesApi.js → actions.js} +26 -31
- package/lib/api/runtimes/{runtimesApi.d.ts → apis.d.ts} +8 -105
- package/lib/api/runtimes/apis.js +5 -0
- package/lib/api/runtimes/index.d.ts +2 -4
- package/lib/api/runtimes/index.js +2 -9
- package/lib/api/runtimes/settings.js +0 -5
- package/lib/api/runtimes/snapshots.js +0 -5
- package/lib/api/runtimes/utils.js +0 -5
- package/lib/assets/react.svg +1 -0
- package/lib/components/avatars/BoringAvatar.d.ts +1 -2
- package/lib/components/avatars/BoringAvatar.js +14 -9
- package/lib/components/avatars/BoringAvatar.stories.d.ts +27 -0
- package/lib/components/avatars/BoringAvatar.stories.js +23 -0
- package/lib/components/avatars/UserProfileAvatar.js +0 -5
- package/lib/components/avatars/index.js +0 -5
- package/lib/components/banners/NoAutomationBanner.js +0 -5
- package/lib/components/banners/index.js +0 -5
- package/lib/components/buttons/DownloadCSVButton.d.ts +1 -1
- package/lib/components/buttons/DownloadCSVButton.js +0 -5
- package/lib/components/buttons/DownloadJsonButton.d.ts +1 -1
- package/lib/components/buttons/DownloadJsonButton.js +0 -5
- package/lib/components/buttons/LongActionButton.js +0 -5
- package/lib/components/buttons/UploadButton.js +0 -5
- package/lib/components/buttons/index.js +0 -5
- package/lib/components/checkout/StripeCheckout.js +0 -5
- package/lib/components/checkout/index.js +0 -5
- package/lib/components/confetti/ConfettiSuccess.js +0 -5
- package/lib/components/confetti/index.js +0 -5
- package/lib/components/context/OrganizationSelect.js +0 -5
- package/lib/components/context/SpaceSelect.js +0 -5
- package/lib/components/context/index.js +0 -5
- package/lib/components/display/AvatarSkeleton.js +0 -5
- package/lib/components/display/CenteredSpinner.js +0 -5
- package/lib/components/display/CodePreview.js +0 -5
- package/lib/components/display/DatalayerBox.js +0 -5
- package/lib/components/display/JupyterDialog.js +0 -5
- package/lib/components/display/NavLink.js +0 -5
- package/lib/components/display/NotebookSkeleton.js +0 -5
- package/lib/components/display/Placeholder.js +0 -5
- package/lib/components/display/ToTopBranded.js +0 -5
- package/lib/components/display/VisuallyHidden.js +0 -5
- package/lib/components/display/index.js +0 -5
- package/lib/components/echarts/EChartsReact.js +6 -6
- package/lib/components/echarts/index.js +0 -5
- package/lib/components/flashes/FlashClosable.js +0 -5
- package/lib/components/flashes/FlashDisclaimer.js +0 -5
- package/lib/components/flashes/FlashGuest.js +0 -5
- package/lib/components/flashes/FlashSurveys.js +0 -5
- package/lib/components/flashes/FlashUnauthorized.js +0 -5
- package/lib/components/flashes/index.js +0 -5
- package/lib/components/flashes/surveys/Survey2025_1.js +0 -5
- package/lib/components/flashes/surveys/index.js +0 -5
- package/lib/components/iam/ExternalTokenSilentLogin.js +0 -5
- package/lib/components/iam/index.js +0 -5
- package/lib/components/icons/ArtifactIcon.js +0 -5
- package/lib/components/icons/index.js +0 -5
- package/lib/components/index.js +1 -6
- package/lib/components/labels/VisibilityLabel.js +0 -5
- package/lib/components/labels/index.js +0 -5
- package/lib/components/landings/StepBlock.js +0 -5
- package/lib/components/landings/index.js +0 -5
- package/lib/components/navbar/NavigationVisbilityObserver.js +0 -5
- package/lib/components/navbar/SubdomainNavBar.js +2 -7
- package/lib/components/navbar/SubdomainNavBar.module.css +718 -0
- package/lib/components/navbar/index.js +0 -5
- package/lib/components/nbgrader/NbGradesDetails.js +0 -5
- package/lib/components/nbgrader/index.js +0 -5
- package/lib/components/notebooks/JupyterNotebook.js +0 -5
- package/lib/components/notebooks/JupyterNotebookToolbar.js +0 -5
- package/lib/components/notebooks/index.js +0 -5
- package/lib/components/primer/Portals.js +0 -5
- package/lib/components/primer/Styles.js +0 -5
- package/lib/components/primer/index.js +0 -5
- package/lib/components/progress/ConsumptionBar.js +0 -5
- package/lib/components/progress/CreditsIndicator.js +0 -6
- package/lib/components/progress/ProgressBar.js +0 -5
- package/lib/components/progress/Timer.js +0 -5
- package/lib/components/progress/index.js +0 -5
- package/lib/components/runtimes/RuntimeCellVariables.js +0 -5
- package/lib/components/runtimes/RuntimeCellVariablesDialog.js +4 -9
- package/lib/components/runtimes/RuntimeLauncherDialog.d.ts +1 -2
- package/lib/components/runtimes/RuntimeLauncherDialog.js +2 -6
- package/lib/components/runtimes/RuntimePickerBase.d.ts +1 -1
- package/lib/components/runtimes/RuntimePickerBase.js +0 -5
- package/lib/components/runtimes/RuntimePickerCell.js +0 -5
- package/lib/components/runtimes/RuntimePickerNotebook.d.ts +1 -2
- package/lib/components/runtimes/RuntimePickerNotebook.js +1 -6
- package/lib/components/runtimes/RuntimeReservationControl.js +0 -5
- package/lib/components/runtimes/RuntimeSimplePicker.d.ts +1 -1
- package/lib/components/runtimes/RuntimeSimplePicker.js +36 -41
- package/lib/components/runtimes/RuntimeUtils.d.ts +1 -1
- package/lib/components/runtimes/RuntimeUtils.js +0 -5
- package/lib/components/runtimes/RuntimeVariables.js +0 -5
- package/lib/components/runtimes/index.js +0 -5
- package/lib/components/screenshot/ScreenCapture.js +1 -6
- package/lib/components/screenshot/index.js +0 -5
- package/lib/components/snapshots/RuntimeSnapshotMenu.js +0 -5
- package/lib/components/snapshots/index.js +0 -5
- package/lib/components/snippets/SnippetDialog.js +0 -5
- package/lib/components/snippets/index.js +0 -5
- package/lib/components/storage/ContentsBrowser.js +12 -7
- package/lib/components/storage/ContentsItems.js +0 -5
- package/lib/components/storage/index.js +0 -5
- package/lib/components/students/StudentItemStatus.js +6 -8
- package/lib/components/students/index.js +0 -5
- package/lib/components/subnav/SubNav.d.ts +2 -2
- package/lib/components/subnav/SubNav.js +4 -9
- package/lib/components/subnav/SubNav.module.css +683 -0
- package/lib/components/subnav/index.js +0 -5
- package/lib/components/tables/DataTable.js +0 -5
- package/lib/components/tables/index.js +0 -5
- package/lib/components/text-reveal/TextRevealAnimation.js +0 -6
- package/lib/components/text-reveal/TextRevealAnimation.module.css +43 -0
- package/lib/components/text-reveal/index.js +0 -5
- package/lib/components/text-reveal/useTextRevealAnimationLines.js +0 -5
- package/lib/components/tokens/SpaceVariantToken.js +0 -5
- package/lib/components/tokens/index.js +0 -5
- package/lib/components/toolbars/AssignmentEditorToolbar.js +0 -5
- package/lib/components/toolbars/DocumentEditorToolbar.js +0 -5
- package/lib/components/toolbars/NotebookEditorToolbar.d.ts +1 -1
- package/lib/components/toolbars/NotebookEditorToolbar.js +0 -5
- package/lib/components/toolbars/index.js +0 -5
- package/lib/components/users/PeerIndicator.js +0 -5
- package/lib/components/users/index.js +0 -5
- package/lib/config/Configuration.js +0 -5
- package/lib/config/index.js +0 -5
- package/lib/config/integrations/Loom.js +0 -5
- package/lib/config/integrations/index.js +0 -5
- package/lib/examples/CellExample.d.ts +6 -0
- package/lib/examples/CellExample.js +24 -0
- package/lib/examples/NotebookExample.d.ts +8 -0
- package/lib/examples/NotebookExample.js +22 -0
- package/lib/examples/NotebookExample1.ipynb.json +136 -0
- package/lib/hooks/assets/OutputshotPlaceholders.js +0 -5
- package/lib/hooks/assets/index.js +0 -5
- package/lib/hooks/index.d.ts +1 -1
- package/lib/hooks/index.js +1 -6
- package/lib/hooks/layouts/LayoutBackdrop.js +0 -5
- package/lib/hooks/layouts/LayoutScreenshot.css +58 -0
- package/lib/hooks/layouts/LayoutScreenshot.d.ts +1 -0
- package/lib/hooks/layouts/LayoutScreenshot.js +1 -5
- package/lib/hooks/layouts/index.js +0 -5
- package/lib/hooks/useAIAgents.js +7 -12
- package/lib/hooks/useAuthorization.js +0 -6
- package/lib/hooks/useBackdrop.js +0 -5
- package/lib/hooks/useBackdropJupyterLab.js +0 -5
- package/lib/hooks/useCache.d.ts +2 -2
- package/lib/hooks/useCache.js +178 -183
- package/lib/hooks/useCellOutputshot.js +0 -5
- package/lib/hooks/useContainsFocus.js +0 -5
- package/lib/hooks/useDatalayer.d.ts +21 -0
- package/lib/hooks/{useRun.js → useDatalayer.js} +12 -16
- package/lib/hooks/useError.js +0 -5
- package/lib/hooks/useExternalScript.js +0 -5
- package/lib/hooks/useFocusTrap.d.ts +1 -1
- package/lib/hooks/useFocusTrap.js +1 -6
- package/lib/hooks/useIAM.js +2 -7
- package/lib/hooks/useId.js +3 -8
- package/lib/hooks/useIsomorphicLayoutEffect.js +0 -5
- package/lib/hooks/useJupyterLabTheme.js +0 -5
- package/lib/hooks/useKeyboardEscape.js +0 -5
- package/lib/hooks/useLocationHandles.js +0 -5
- package/lib/hooks/useNavigate.js +0 -5
- package/lib/hooks/useNotebookAIAgent.js +0 -5
- package/lib/hooks/useOnClickOutside.js +0 -5
- package/lib/hooks/useRef.js +0 -5
- package/lib/hooks/useRuntimes.js +0 -5
- package/lib/hooks/useScreenshot.js +0 -5
- package/lib/hooks/useToast.js +6 -8
- package/lib/hooks/useUpload.js +0 -5
- package/lib/hooks/useVisibilityObserver.js +0 -5
- package/lib/hooks/useWindowSize.js +0 -6
- package/lib/i18n/Labels.js +0 -5
- package/lib/i18n/index.js +0 -5
- package/lib/index.css +73 -0
- package/lib/main.js +1 -2
- package/lib/mocks/components/FlashMock.js +0 -5
- package/lib/mocks/components/index.js +0 -5
- package/lib/mocks/hooks/index.d.ts +1 -1
- package/lib/mocks/hooks/index.js +1 -6
- package/lib/mocks/hooks/rests/index.js +0 -5
- package/lib/mocks/hooks/rests/rests.js +0 -5
- package/lib/mocks/hooks/useDatalayerMock.d.ts +6 -0
- package/lib/mocks/hooks/{useRunMock.js → useDatalayerMock.js} +2 -7
- package/lib/mocks/index.js +0 -5
- package/lib/mocks/jupyter/index.js +1 -6
- package/lib/mocks/models/CodeBlockMock.js +0 -5
- package/lib/mocks/models/CodelineMock.js +0 -5
- package/lib/mocks/models/CourseMock.js +0 -5
- package/lib/mocks/models/InviteMock.js +0 -5
- package/lib/mocks/models/SpaceMock.js +0 -5
- package/lib/mocks/models/UserMock.js +0 -5
- package/lib/mocks/models/index.js +0 -5
- package/lib/mocks/views/ActionMenuMock.js +0 -5
- package/lib/mocks/views/ChartMock.js +0 -5
- package/lib/mocks/views/ChartMockOptions.js +0 -5
- package/lib/mocks/views/DashboardMock.js +0 -5
- package/lib/mocks/views/FormMock.js +0 -5
- package/lib/mocks/views/TableMock.js +0 -5
- package/lib/mocks/views/WipMock.js +0 -5
- package/lib/mocks/views/index.js +0 -5
- package/lib/models/Contact.js +0 -5
- package/lib/models/ContactEvent.js +0 -5
- package/lib/models/Credits.js +0 -5
- package/lib/models/Dataset.d.ts +1 -1
- package/lib/models/Datasource.js +0 -5
- package/lib/models/Errors.js +0 -5
- package/lib/models/GrowthKPI.js +0 -5
- package/lib/models/IAMProviderUsers.js +0 -5
- package/lib/models/IAMToken.js +0 -5
- package/lib/models/Inbound.js +0 -5
- package/lib/models/LandingRoles.js +0 -5
- package/lib/models/Organization.js +0 -5
- package/lib/models/Outbound.js +7 -12
- package/lib/models/PageTag.d.ts +1 -1
- package/lib/models/RolesOrganization.js +0 -5
- package/lib/models/RolesPlatform.js +0 -5
- package/lib/models/RolesTeam.js +0 -5
- package/lib/models/Runtime.d.ts +59 -1
- package/lib/models/Runtime.js +7 -5
- package/lib/models/Secret.js +0 -5
- package/lib/models/Survey.js +0 -5
- package/lib/models/Team.js +0 -5
- package/lib/models/URN.js +0 -5
- package/lib/models/User.js +2 -7
- package/lib/models/UserEvent.js +0 -5
- package/lib/models/UserOnboarding.js +0 -5
- package/lib/models/UserSettings.js +0 -5
- package/lib/models/index.js +0 -5
- package/lib/routes/Routes.js +0 -5
- package/lib/routes/index.js +0 -5
- package/lib/state/State.js +0 -5
- package/lib/state/index.js +0 -5
- package/lib/state/storage/IAMStorage.js +0 -5
- package/lib/state/storage/index.js +0 -5
- package/lib/state/substates/AIAgentState.js +0 -5
- package/lib/state/substates/CellState.js +0 -5
- package/lib/state/substates/CoreState.js +0 -5
- package/lib/state/substates/DatasourceState.js +0 -5
- package/lib/state/substates/DocumentState.js +0 -5
- package/lib/state/substates/GradeState.js +0 -5
- package/lib/state/substates/IAMState.d.ts +1 -1
- package/lib/state/substates/IAMState.js +15 -18
- package/lib/state/substates/JupyterLabState.js +0 -5
- package/lib/state/substates/NbformatState.js +0 -5
- package/lib/state/substates/OrganizationState.js +0 -5
- package/lib/state/substates/RuntimesState.d.ts +2 -2
- package/lib/state/substates/RuntimesState.js +0 -5
- package/lib/state/substates/SpaceState.js +0 -5
- package/lib/state/substates/SurveysState.js +3 -8
- package/lib/state/substates/TeamState.js +0 -5
- package/lib/state/substates/index.js +0 -5
- package/lib/stories/assets/accessibility.png +0 -0
- package/lib/stories/assets/accessibility.svg +1 -0
- package/lib/stories/assets/addon-library.png +0 -0
- package/lib/stories/assets/assets.png +0 -0
- package/lib/stories/assets/context.png +0 -0
- package/lib/stories/assets/discord.svg +1 -0
- package/lib/stories/assets/docs.png +0 -0
- package/lib/stories/assets/figma-plugin.png +0 -0
- package/lib/stories/assets/github.svg +1 -0
- package/lib/stories/assets/share.png +0 -0
- package/lib/stories/assets/styling.png +0 -0
- package/lib/stories/assets/testing.png +0 -0
- package/lib/stories/assets/theming.png +0 -0
- package/lib/stories/assets/tutorials.svg +1 -0
- package/lib/stories/assets/youtube.svg +1 -0
- package/lib/stories/button.css +35 -0
- package/lib/stories/header.css +37 -0
- package/lib/stories/page.css +73 -0
- package/lib/test-setup.js +51 -1
- package/lib/theme/DatalayerTheme.js +0 -5
- package/lib/theme/DatalayerThemeProvider.js +0 -5
- package/lib/theme/Palette.js +0 -5
- package/lib/theme/index.js +0 -5
- package/lib/utils/Array.js +0 -5
- package/lib/utils/Avatar.js +0 -5
- package/lib/utils/Browser.js +0 -5
- package/lib/utils/Cookie.js +0 -5
- package/lib/utils/Date.js +3 -8
- package/lib/utils/Download.js +0 -5
- package/lib/utils/DownloadFile.js +0 -5
- package/lib/utils/Env.js +0 -5
- package/lib/utils/File.js +0 -5
- package/lib/utils/Ids.js +0 -5
- package/lib/utils/Jupyter.js +0 -5
- package/lib/utils/Lazy.js +0 -6
- package/lib/utils/Name.js +0 -5
- package/lib/utils/Number.js +1 -6
- package/lib/utils/Plots.d.ts +1 -1
- package/lib/utils/Plots.js +1 -1
- package/lib/utils/Random.js +0 -5
- package/lib/utils/Screenshot.js +0 -5
- package/lib/utils/Scroll.js +3 -7
- package/lib/utils/Sleep.js +0 -5
- package/lib/utils/Snapshot.js +0 -5
- package/lib/utils/String.js +0 -5
- package/lib/utils/Uri.js +1 -6
- package/lib/utils/Validator.js +0 -5
- package/lib/utils/WithSuspense.js +0 -5
- package/lib/utils/index.js +0 -5
- package/package.json +58 -28
- package/style/animation/Animation.module.css +174 -0
- package/style/base.css +64 -0
- package/style/index.css +6 -0
- package/lib/api/runtimes/models.d.ts +0 -59
- package/lib/api/runtimes/models.js +0 -11
- package/lib/hooks/useRun.d.ts +0 -21
- package/lib/mocks/hooks/useRunMock.d.ts +0 -6
- /package/lib/api/{runtimes → jupyter}/exec/Python.d.ts +0 -0
- /package/lib/api/{runtimes → jupyter}/exec/Snippets.d.ts +0 -0
- /package/lib/api/{runtimes → jupyter}/exec/index.d.ts +0 -0
package/lib/hooks/useCache.js
CHANGED
|
@@ -2,18 +2,13 @@
|
|
|
2
2
|
* Copyright (c) 2023-2025 Datalayer, Inc.
|
|
3
3
|
* Distributed under the terms of the Modified BSD License.
|
|
4
4
|
*/
|
|
5
|
-
/*
|
|
6
|
-
* Copyright (c) 2021-2024 Datalayer, Inc.
|
|
7
|
-
*
|
|
8
|
-
* Datalayer License
|
|
9
|
-
*/
|
|
10
5
|
import { URLExt } from '@jupyterlab/coreutils';
|
|
11
6
|
import { BOOTSTRAP_USER_ONBOARDING, LinkedInUser, asContact, asDatasource, asInbound, asInvite, asOrganization, asOutbound, asPage, asSecret, asSpace, asSurvey, asTeam, asToken, asUsage, asUser, } from "../models";
|
|
12
7
|
import { useCoreStore, useIAMStore } from '../state';
|
|
13
8
|
import { asDisplayName, namesAsInitials, asArray } from "../utils";
|
|
14
9
|
import { IAMProvidersSpecs } from '../models';
|
|
15
10
|
import { newUserMock } from './../mocks';
|
|
16
|
-
import {
|
|
11
|
+
import { useDatalayer } from "./useDatalayer";
|
|
17
12
|
import { useAuthorization } from "./useAuthorization";
|
|
18
13
|
import { OUTPUTSHOT_PLACEHOLDER_DEFAULT_SVG } from './assets';
|
|
19
14
|
const CONTACTS_BY_HANDLE = new Map();
|
|
@@ -71,7 +66,7 @@ const DEFAULT_SEARCH_OPTS = {
|
|
|
71
66
|
export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
72
67
|
const { configuration } = useCoreStore();
|
|
73
68
|
const { user } = useIAMStore();
|
|
74
|
-
const {
|
|
69
|
+
const { requestDatalayer } = useDatalayer({ loginRoute });
|
|
75
70
|
const { checkIsOrganizationMember } = useAuthorization();
|
|
76
71
|
// Caches -------------------------------------------------------------------
|
|
77
72
|
const clearAllCaches = () => {
|
|
@@ -128,7 +123,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
128
123
|
};
|
|
129
124
|
// Authentication ------------------------------------------------------------------
|
|
130
125
|
const login = (handle, password) => {
|
|
131
|
-
return
|
|
126
|
+
return requestDatalayer({
|
|
132
127
|
url: `${configuration.iamRunUrl}/api/iam/v1/login`,
|
|
133
128
|
method: 'POST',
|
|
134
129
|
body: {
|
|
@@ -139,14 +134,14 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
139
134
|
};
|
|
140
135
|
const logout = () => {
|
|
141
136
|
clearAllCaches();
|
|
142
|
-
return
|
|
137
|
+
return requestDatalayer({
|
|
143
138
|
url: `${configuration.iamRunUrl}/api/iam/v1/logout`,
|
|
144
139
|
method: 'GET',
|
|
145
140
|
});
|
|
146
141
|
};
|
|
147
142
|
// Join ------------------------------------------------------------------
|
|
148
143
|
const requestJoin = (handle, email, firstName, lastName, password, passwordConfirm) => {
|
|
149
|
-
return
|
|
144
|
+
return requestDatalayer({
|
|
150
145
|
url: `${configuration.iamRunUrl}/api/iam/v1/join/request`,
|
|
151
146
|
method: 'POST',
|
|
152
147
|
body: {
|
|
@@ -160,7 +155,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
160
155
|
});
|
|
161
156
|
};
|
|
162
157
|
const requestJoinToken = (handle, email, firstName, lastName, password, passwordConfirm) => {
|
|
163
|
-
return
|
|
158
|
+
return requestDatalayer({
|
|
164
159
|
url: `${configuration.iamRunUrl}/api/iam/v1/join/request/token`,
|
|
165
160
|
method: 'POST',
|
|
166
161
|
body: {
|
|
@@ -174,7 +169,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
174
169
|
});
|
|
175
170
|
};
|
|
176
171
|
const joinWithInvite = (formValues, token) => {
|
|
177
|
-
return
|
|
172
|
+
return requestDatalayer({
|
|
178
173
|
url: `${configuration.iamRunUrl}/api/iam/v1/join/invites/token`,
|
|
179
174
|
method: 'POST',
|
|
180
175
|
body: {
|
|
@@ -184,14 +179,14 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
184
179
|
});
|
|
185
180
|
};
|
|
186
181
|
const confirmJoinWithToken = (userHandle, token) => {
|
|
187
|
-
return
|
|
182
|
+
return requestDatalayer({
|
|
188
183
|
url: `${configuration.iamRunUrl}/api/iam/v1/join/users/${userHandle}/tokens/${token}`,
|
|
189
184
|
method: 'GET',
|
|
190
185
|
});
|
|
191
186
|
};
|
|
192
187
|
// Password ------------------------------------------------------------------
|
|
193
188
|
const changePassword = (handle, password, passwordConfirm) => {
|
|
194
|
-
return
|
|
189
|
+
return requestDatalayer({
|
|
195
190
|
url: `${configuration.iamRunUrl}/api/iam/v1/password`,
|
|
196
191
|
method: 'PUT',
|
|
197
192
|
body: {
|
|
@@ -202,7 +197,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
202
197
|
});
|
|
203
198
|
};
|
|
204
199
|
const createTokenForPasswordChange = (handle, password, passwordConfirm) => {
|
|
205
|
-
return
|
|
200
|
+
return requestDatalayer({
|
|
206
201
|
url: `${configuration.iamRunUrl}/api/iam/v1/password/token`,
|
|
207
202
|
method: 'POST',
|
|
208
203
|
body: {
|
|
@@ -213,20 +208,20 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
213
208
|
});
|
|
214
209
|
};
|
|
215
210
|
const confirmPassworkWithToken = (userHandle, token) => {
|
|
216
|
-
return
|
|
211
|
+
return requestDatalayer({
|
|
217
212
|
url: `${configuration.iamRunUrl}/api/iam/v1/password/confirm/users/${userHandle}/tokens/${token}`,
|
|
218
213
|
method: 'PUT',
|
|
219
214
|
});
|
|
220
215
|
};
|
|
221
216
|
// OAuth2 -------------------------------------------------------------------
|
|
222
217
|
const getOAuth2AuthorizationURL = async (queryArgs) => {
|
|
223
|
-
return
|
|
218
|
+
return requestDatalayer({
|
|
224
219
|
url: URLExt.join(configuration.iamRunUrl, 'api/iam/v1/oauth2/authz/url') + URLExt.objectToQueryString(queryArgs),
|
|
225
220
|
notifyOnError: false,
|
|
226
221
|
});
|
|
227
222
|
};
|
|
228
223
|
const getOAuth2AuthorizationLinkURL = async (queryArgs) => {
|
|
229
|
-
return
|
|
224
|
+
return requestDatalayer({
|
|
230
225
|
url: URLExt.join(configuration.iamRunUrl, 'api/iam/v1/oauth2/authz/url/link') + URLExt.objectToQueryString(queryArgs),
|
|
231
226
|
});
|
|
232
227
|
};
|
|
@@ -340,7 +335,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
340
335
|
};
|
|
341
336
|
// Proxy -------------------------------------------------------------------
|
|
342
337
|
const proxyGET = async (url, token) => {
|
|
343
|
-
return
|
|
338
|
+
return requestDatalayer({
|
|
344
339
|
url: URLExt.join(configuration.iamRunUrl, 'api/iam/v1/proxy/request'),
|
|
345
340
|
method: 'POST',
|
|
346
341
|
body: {
|
|
@@ -351,7 +346,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
351
346
|
});
|
|
352
347
|
};
|
|
353
348
|
const proxyPOST = async (url, body, token) => {
|
|
354
|
-
return
|
|
349
|
+
return requestDatalayer({
|
|
355
350
|
url: URLExt.join(configuration.iamRunUrl, 'api/iam/v1/proxy/request'),
|
|
356
351
|
method: 'POST',
|
|
357
352
|
body: {
|
|
@@ -363,7 +358,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
363
358
|
});
|
|
364
359
|
};
|
|
365
360
|
const proxyPUT = async (url, body, token) => {
|
|
366
|
-
return
|
|
361
|
+
return requestDatalayer({
|
|
367
362
|
url: URLExt.join(configuration.iamRunUrl, 'api/iam/v1/proxy/request'),
|
|
368
363
|
method: 'POST',
|
|
369
364
|
body: {
|
|
@@ -376,7 +371,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
376
371
|
};
|
|
377
372
|
// Waiting List -------------------------------------------------------------
|
|
378
373
|
const registerToWaitingList = (formData) => {
|
|
379
|
-
|
|
374
|
+
requestDatalayer({
|
|
380
375
|
url: `${configuration.growthRunUrl}/api/growth/v1/waitinglist/register`,
|
|
381
376
|
method: 'POST',
|
|
382
377
|
body: {
|
|
@@ -400,7 +395,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
400
395
|
};
|
|
401
396
|
// Profile ------------------------------------------------------------------
|
|
402
397
|
const getMe = async (token) => {
|
|
403
|
-
const resp = await
|
|
398
|
+
const resp = await requestDatalayer({
|
|
404
399
|
url: `${configuration.iamRunUrl}/api/iam/v1/me`,
|
|
405
400
|
method: 'GET',
|
|
406
401
|
token
|
|
@@ -413,7 +408,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
413
408
|
return null;
|
|
414
409
|
};
|
|
415
410
|
const updateMe = (email, firstName, lastName) => {
|
|
416
|
-
return
|
|
411
|
+
return requestDatalayer({
|
|
417
412
|
url: `${configuration.iamRunUrl}/api/iam/v1/me`,
|
|
418
413
|
method: 'PUT',
|
|
419
414
|
body: {
|
|
@@ -424,13 +419,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
424
419
|
});
|
|
425
420
|
};
|
|
426
421
|
const whoami = () => {
|
|
427
|
-
return
|
|
422
|
+
return requestDatalayer({
|
|
428
423
|
url: `${configuration.iamRunUrl}/api/iam/v1/whoami`,
|
|
429
424
|
method: 'GET',
|
|
430
425
|
});
|
|
431
426
|
};
|
|
432
427
|
const requestEmailUpdate = (email) => {
|
|
433
|
-
return
|
|
428
|
+
return requestDatalayer({
|
|
434
429
|
url: `${configuration.iamRunUrl}/api/iam/v1/me/email`,
|
|
435
430
|
method: 'PUT',
|
|
436
431
|
body: {
|
|
@@ -439,7 +434,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
439
434
|
});
|
|
440
435
|
};
|
|
441
436
|
const confirmEmailUpdate = (token) => {
|
|
442
|
-
return
|
|
437
|
+
return requestDatalayer({
|
|
443
438
|
url: `${configuration.iamRunUrl}/api/iam/v1/me/email`,
|
|
444
439
|
method: 'POST',
|
|
445
440
|
body: {
|
|
@@ -449,7 +444,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
449
444
|
};
|
|
450
445
|
// Onboarding ---------------------------------------------------------------
|
|
451
446
|
const updateUserOnboarding = (onboarding) => {
|
|
452
|
-
return
|
|
447
|
+
return requestDatalayer({
|
|
453
448
|
url: `${configuration.iamRunUrl}/api/iam/v1/onboardings`,
|
|
454
449
|
method: 'PUT',
|
|
455
450
|
body: {
|
|
@@ -459,7 +454,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
459
454
|
};
|
|
460
455
|
// Settings -----------------------------------------------------------------
|
|
461
456
|
const updateUserSettings = (userId, settings) => {
|
|
462
|
-
return
|
|
457
|
+
return requestDatalayer({
|
|
463
458
|
url: `${configuration.iamRunUrl}/api/iam/v1/users/${userId}/settings`,
|
|
464
459
|
method: 'PUT',
|
|
465
460
|
body: {
|
|
@@ -477,7 +472,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
477
472
|
}
|
|
478
473
|
};
|
|
479
474
|
const createPage = (page) => {
|
|
480
|
-
return
|
|
475
|
+
return requestDatalayer({
|
|
481
476
|
url: `${configuration.libraryRunUrl}/api/library/v1/pages`,
|
|
482
477
|
method: 'POST',
|
|
483
478
|
body: { ...page }
|
|
@@ -495,7 +490,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
495
490
|
});
|
|
496
491
|
};
|
|
497
492
|
const updatePage = (page) => {
|
|
498
|
-
return
|
|
493
|
+
return requestDatalayer({
|
|
499
494
|
url: `${configuration.libraryRunUrl}/api/library/v1/pages/${page.id}`,
|
|
500
495
|
method: 'PUT',
|
|
501
496
|
body: {
|
|
@@ -513,7 +508,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
513
508
|
});
|
|
514
509
|
};
|
|
515
510
|
const deletePage = (page) => {
|
|
516
|
-
return
|
|
511
|
+
return requestDatalayer({
|
|
517
512
|
url: `${configuration.libraryRunUrl}/api/library/v1/pages/${page.id}`,
|
|
518
513
|
method: 'DELETE',
|
|
519
514
|
});
|
|
@@ -521,7 +516,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
521
516
|
const getPage = (pageId) => PAGES_BY_ID.get(pageId);
|
|
522
517
|
const clearCachedPages = () => PAGES_BY_ID.clear();
|
|
523
518
|
const refreshPage = (pageId) => {
|
|
524
|
-
return
|
|
519
|
+
return requestDatalayer({
|
|
525
520
|
url: `${configuration.libraryRunUrl}/api/library/v1/pages/${pageId}`,
|
|
526
521
|
method: 'GET',
|
|
527
522
|
}).then(resp => {
|
|
@@ -537,7 +532,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
537
532
|
return Array.from(PAGES_BY_ID.values());
|
|
538
533
|
};
|
|
539
534
|
const refreshPages = () => {
|
|
540
|
-
return
|
|
535
|
+
return requestDatalayer({
|
|
541
536
|
url: `${configuration.libraryRunUrl}/api/library/v1/pages`,
|
|
542
537
|
method: 'GET',
|
|
543
538
|
}).then(resp => {
|
|
@@ -562,7 +557,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
562
557
|
}
|
|
563
558
|
};
|
|
564
559
|
const createDatasource = (datasource) => {
|
|
565
|
-
return
|
|
560
|
+
return requestDatalayer({
|
|
566
561
|
url: `${configuration.iamRunUrl}/api/iam/v1/datasources`,
|
|
567
562
|
method: 'POST',
|
|
568
563
|
body: { ...datasource }
|
|
@@ -576,7 +571,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
576
571
|
});
|
|
577
572
|
};
|
|
578
573
|
const updateDatasource = (datasource) => {
|
|
579
|
-
return
|
|
574
|
+
return requestDatalayer({
|
|
580
575
|
url: `${configuration.iamRunUrl}/api/iam/v1/datasources/${datasource.id}`,
|
|
581
576
|
method: 'PUT',
|
|
582
577
|
body: { ...datasource }
|
|
@@ -592,7 +587,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
592
587
|
const getDatasource = (datasourceId) => DATASOURCES_BY_ID.get(datasourceId);
|
|
593
588
|
const clearCachedDatasources = () => DATASOURCES_BY_ID.clear();
|
|
594
589
|
const refreshDatasource = (datasourceId) => {
|
|
595
|
-
return
|
|
590
|
+
return requestDatalayer({
|
|
596
591
|
url: `${configuration.iamRunUrl}/api/iam/v1/datasources/${datasourceId}`,
|
|
597
592
|
method: 'GET',
|
|
598
593
|
}).then(resp => {
|
|
@@ -608,7 +603,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
608
603
|
return Array.from(DATASOURCES_BY_ID.values());
|
|
609
604
|
};
|
|
610
605
|
const refreshDatasources = () => {
|
|
611
|
-
return
|
|
606
|
+
return requestDatalayer({
|
|
612
607
|
url: `${configuration.iamRunUrl}/api/iam/v1/datasources`,
|
|
613
608
|
method: 'GET',
|
|
614
609
|
}).then(resp => {
|
|
@@ -633,7 +628,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
633
628
|
}
|
|
634
629
|
};
|
|
635
630
|
const createSecret = (secret) => {
|
|
636
|
-
return
|
|
631
|
+
return requestDatalayer({
|
|
637
632
|
url: `${configuration.iamRunUrl}/api/iam/v1/secrets`,
|
|
638
633
|
method: 'POST',
|
|
639
634
|
body: { ...secret }
|
|
@@ -647,7 +642,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
647
642
|
});
|
|
648
643
|
};
|
|
649
644
|
const updateSecret = (secret) => {
|
|
650
|
-
return
|
|
645
|
+
return requestDatalayer({
|
|
651
646
|
url: `${configuration.iamRunUrl}/api/iam/v1/secrets/${secret.id}`,
|
|
652
647
|
method: 'PUT',
|
|
653
648
|
body: { ...secret }
|
|
@@ -661,7 +656,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
661
656
|
});
|
|
662
657
|
};
|
|
663
658
|
const deleteSecret = (secret) => {
|
|
664
|
-
return
|
|
659
|
+
return requestDatalayer({
|
|
665
660
|
url: `${configuration.iamRunUrl}/api/iam/v1/secrets/${secret.id}`,
|
|
666
661
|
method: 'DELETE',
|
|
667
662
|
});
|
|
@@ -669,7 +664,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
669
664
|
const getSecret = (secretId) => SECRETS_BY_ID.get(secretId);
|
|
670
665
|
const clearCachedSecrets = () => SECRETS_BY_ID.clear();
|
|
671
666
|
const refreshSecret = (secretId) => {
|
|
672
|
-
return
|
|
667
|
+
return requestDatalayer({
|
|
673
668
|
url: `${configuration.iamRunUrl}/api/iam/v1/secrets/${secretId}`,
|
|
674
669
|
method: 'GET',
|
|
675
670
|
}).then(resp => {
|
|
@@ -685,7 +680,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
685
680
|
return Array.from(SECRETS_BY_ID.values());
|
|
686
681
|
};
|
|
687
682
|
const refreshSecrets = () => {
|
|
688
|
-
return
|
|
683
|
+
return requestDatalayer({
|
|
689
684
|
url: `${configuration.iamRunUrl}/api/iam/v1/secrets`,
|
|
690
685
|
method: 'GET',
|
|
691
686
|
}).then(resp => {
|
|
@@ -710,7 +705,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
710
705
|
}
|
|
711
706
|
};
|
|
712
707
|
const createToken = (token) => {
|
|
713
|
-
return
|
|
708
|
+
return requestDatalayer({
|
|
714
709
|
url: `${configuration.iamRunUrl}/api/iam/v1/tokens`,
|
|
715
710
|
method: 'POST',
|
|
716
711
|
body: {
|
|
@@ -727,7 +722,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
727
722
|
});
|
|
728
723
|
};
|
|
729
724
|
const updateToken = (token) => {
|
|
730
|
-
return
|
|
725
|
+
return requestDatalayer({
|
|
731
726
|
url: `${configuration.iamRunUrl}/api/iam/v1/tokens/${token.id}`,
|
|
732
727
|
method: 'PUT',
|
|
733
728
|
body: { ...token }
|
|
@@ -743,7 +738,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
743
738
|
const getToken = (tokenId) => TOKENS_BY_ID.get(tokenId);
|
|
744
739
|
const clearCachedTokens = () => TOKENS_BY_ID.clear();
|
|
745
740
|
const refreshToken = (tokenId) => {
|
|
746
|
-
return
|
|
741
|
+
return requestDatalayer({
|
|
747
742
|
url: `${configuration.iamRunUrl}/api/iam/v1/tokens/${tokenId}`,
|
|
748
743
|
method: 'GET',
|
|
749
744
|
}).then(resp => {
|
|
@@ -759,7 +754,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
759
754
|
return Array.from(TOKENS_BY_ID.values());
|
|
760
755
|
};
|
|
761
756
|
const refreshTokens = () => {
|
|
762
|
-
return
|
|
757
|
+
return requestDatalayer({
|
|
763
758
|
url: `${configuration.iamRunUrl}/api/iam/v1/tokens`,
|
|
764
759
|
method: 'GET',
|
|
765
760
|
}).then(resp => {
|
|
@@ -777,7 +772,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
777
772
|
};
|
|
778
773
|
// Layout -------------------------------------------------------------------
|
|
779
774
|
const refreshLayout = (accountHandle, spaceHandle, user) => {
|
|
780
|
-
return
|
|
775
|
+
return requestDatalayer({
|
|
781
776
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/layouts/accounts/${accountHandle}${spaceHandle !== undefined ? '/spaces/' + spaceHandle : ''}`,
|
|
782
777
|
method: 'GET',
|
|
783
778
|
}).then(resp => {
|
|
@@ -819,7 +814,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
819
814
|
};
|
|
820
815
|
// Invites -------------------------------------------------------------------
|
|
821
816
|
const requestInvite = (firstName, lastName, email, socialUrl) => {
|
|
822
|
-
return
|
|
817
|
+
return requestDatalayer({
|
|
823
818
|
url: `${configuration.growthRunUrl}/api/growth/v1/invites/request`,
|
|
824
819
|
method: 'POST',
|
|
825
820
|
body: {
|
|
@@ -831,7 +826,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
831
826
|
});
|
|
832
827
|
};
|
|
833
828
|
const sendInvite = (invite) => {
|
|
834
|
-
return
|
|
829
|
+
return requestDatalayer({
|
|
835
830
|
url: `${configuration.growthRunUrl}/api/growth/v1/invites`,
|
|
836
831
|
method: 'POST',
|
|
837
832
|
body: {
|
|
@@ -846,7 +841,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
846
841
|
const getInvite = (token) => INVITES_BY_TOKEN.get(token);
|
|
847
842
|
const clearCachedInvites = () => INVITES_BY_TOKEN.clear();
|
|
848
843
|
const refreshInvite = (token) => {
|
|
849
|
-
return
|
|
844
|
+
return requestDatalayer({
|
|
850
845
|
url: `${configuration.growthRunUrl}/api/growth/v1/invites/tokens/${token}`,
|
|
851
846
|
method: 'GET',
|
|
852
847
|
}).then(resp => {
|
|
@@ -866,7 +861,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
866
861
|
return Array.from(INVITES_BY_TOKEN.values());
|
|
867
862
|
};
|
|
868
863
|
const refreshInvites = (accountId) => {
|
|
869
|
-
return
|
|
864
|
+
return requestDatalayer({
|
|
870
865
|
url: `${configuration.growthRunUrl}/api/growth/v1/invites/users/${accountId}`,
|
|
871
866
|
method: 'GET',
|
|
872
867
|
}).then(resp => {
|
|
@@ -882,14 +877,14 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
882
877
|
});
|
|
883
878
|
};
|
|
884
879
|
const putInvite = (token) => {
|
|
885
|
-
return
|
|
880
|
+
return requestDatalayer({
|
|
886
881
|
url: `${configuration.growthRunUrl}/api/growth/v1/invites/tokens/${token}`,
|
|
887
882
|
method: 'PUT',
|
|
888
883
|
});
|
|
889
884
|
};
|
|
890
885
|
// Accounts -------------------------------------------------------------------
|
|
891
886
|
const refreshAccount = (accountHandle) => {
|
|
892
|
-
return
|
|
887
|
+
return requestDatalayer({
|
|
893
888
|
url: `${configuration.iamRunUrl}/api/iam/v1/accounts/${accountHandle}`,
|
|
894
889
|
method: 'GET',
|
|
895
890
|
}).then(resp => {
|
|
@@ -916,7 +911,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
916
911
|
const getContactById = (contactId) => CONTACTS_BY_ID.get(contactId);
|
|
917
912
|
const getContactByHandle = (contactHandle) => CONTACTS_BY_HANDLE.get(contactHandle);
|
|
918
913
|
const createContact = (contact) => {
|
|
919
|
-
return
|
|
914
|
+
return requestDatalayer({
|
|
920
915
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts`,
|
|
921
916
|
method: 'POST',
|
|
922
917
|
body: {
|
|
@@ -930,7 +925,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
930
925
|
});
|
|
931
926
|
};
|
|
932
927
|
const updateContact = (contactId, contact) => {
|
|
933
|
-
return
|
|
928
|
+
return requestDatalayer({
|
|
934
929
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}`,
|
|
935
930
|
method: 'PUT',
|
|
936
931
|
body: {
|
|
@@ -944,7 +939,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
944
939
|
});
|
|
945
940
|
};
|
|
946
941
|
const refreshContact = (contactId) => {
|
|
947
|
-
return
|
|
942
|
+
return requestDatalayer({
|
|
948
943
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}`,
|
|
949
944
|
method: 'GET',
|
|
950
945
|
}).then(resp => {
|
|
@@ -955,7 +950,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
955
950
|
});
|
|
956
951
|
};
|
|
957
952
|
const searchContacts = (query) => {
|
|
958
|
-
return
|
|
953
|
+
return requestDatalayer({
|
|
959
954
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/search`,
|
|
960
955
|
method: 'POST',
|
|
961
956
|
body: {
|
|
@@ -970,25 +965,25 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
970
965
|
});
|
|
971
966
|
};
|
|
972
967
|
const assignTagToContact = (contactId, tagName) => {
|
|
973
|
-
return
|
|
968
|
+
return requestDatalayer({
|
|
974
969
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}/tags/${tagName}`,
|
|
975
970
|
method: 'POST',
|
|
976
971
|
});
|
|
977
972
|
};
|
|
978
973
|
const unassignTagFromContact = (contactId, tagName) => {
|
|
979
|
-
return
|
|
974
|
+
return requestDatalayer({
|
|
980
975
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}/tags/${tagName}`,
|
|
981
976
|
method: 'DELETE',
|
|
982
977
|
});
|
|
983
978
|
};
|
|
984
979
|
const deleteContact = (contactId) => {
|
|
985
|
-
return
|
|
980
|
+
return requestDatalayer({
|
|
986
981
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}`,
|
|
987
982
|
method: 'DELETE',
|
|
988
983
|
});
|
|
989
984
|
};
|
|
990
985
|
const sendInviteToContact = (contact, message) => {
|
|
991
|
-
return
|
|
986
|
+
return requestDatalayer({
|
|
992
987
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/invites`,
|
|
993
988
|
method: 'POST',
|
|
994
989
|
body: {
|
|
@@ -999,19 +994,19 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
999
994
|
};
|
|
1000
995
|
// Contacts Enrich ----------------------------------------------------------
|
|
1001
996
|
const enrichContactEmail = (contactId, useDomain) => {
|
|
1002
|
-
return
|
|
997
|
+
return requestDatalayer({
|
|
1003
998
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}/enrich/email?useDomain=${useDomain}`,
|
|
1004
999
|
method: 'GET',
|
|
1005
1000
|
});
|
|
1006
1001
|
};
|
|
1007
1002
|
const enrichContactLinkedin = (contactId) => {
|
|
1008
|
-
return
|
|
1003
|
+
return requestDatalayer({
|
|
1009
1004
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contactId}/enrich/linkedin`,
|
|
1010
1005
|
method: 'GET',
|
|
1011
1006
|
});
|
|
1012
1007
|
};
|
|
1013
1008
|
const sendLinkedinConnectionRequest = (contact, message) => {
|
|
1014
|
-
return
|
|
1009
|
+
return requestDatalayer({
|
|
1015
1010
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/${contact.id}/connect/linkedin`,
|
|
1016
1011
|
method: 'POST',
|
|
1017
1012
|
body: {
|
|
@@ -1026,14 +1021,14 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1026
1021
|
};
|
|
1027
1022
|
// Contacts Links -----------------------------------------------------------
|
|
1028
1023
|
const linkUserWithContact = (userId, contactId) => {
|
|
1029
|
-
return
|
|
1030
|
-
url: `${configuration.growthRunUrl}/api/growth/v1/users/${userId}/contacts/${contactId}`,
|
|
1024
|
+
return requestDatalayer({
|
|
1025
|
+
url: `${configuration.growthRunUrl}/api/growth/v1/users/${userId}/contacts/${contactId}/link`,
|
|
1031
1026
|
method: 'POST',
|
|
1032
1027
|
});
|
|
1033
1028
|
};
|
|
1034
1029
|
const unlinkUserFromContact = (userId, contactId) => {
|
|
1035
|
-
return
|
|
1036
|
-
url: `${configuration.growthRunUrl}/api/growth/v1/users/${userId}/contacts/${contactId}`,
|
|
1030
|
+
return requestDatalayer({
|
|
1031
|
+
url: `${configuration.growthRunUrl}/api/growth/v1/users/${userId}/contacts/${contactId}/link`,
|
|
1037
1032
|
method: 'DELETE',
|
|
1038
1033
|
});
|
|
1039
1034
|
};
|
|
@@ -1049,7 +1044,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1049
1044
|
const getUser = (id) => USERS_BY_ID.get(id);
|
|
1050
1045
|
const getUserByHandle = (handle) => USERS_BY_HANDLE.get(handle);
|
|
1051
1046
|
const refreshUser = (userId) => {
|
|
1052
|
-
return
|
|
1047
|
+
return requestDatalayer({
|
|
1053
1048
|
url: `${configuration.iamRunUrl}/api/iam/v1/users/${userId}`,
|
|
1054
1049
|
method: 'GET',
|
|
1055
1050
|
}).then(resp => {
|
|
@@ -1060,7 +1055,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1060
1055
|
});
|
|
1061
1056
|
};
|
|
1062
1057
|
const searchUsers = (namingPattern) => {
|
|
1063
|
-
return
|
|
1058
|
+
return requestDatalayer({
|
|
1064
1059
|
url: `${configuration.iamRunUrl}/api/iam/v1/users/search`,
|
|
1065
1060
|
method: 'POST',
|
|
1066
1061
|
body: {
|
|
@@ -1076,13 +1071,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1076
1071
|
};
|
|
1077
1072
|
// User Roles ---------------------------------------------------------------
|
|
1078
1073
|
const assignRoleToUser = (userId, roleName) => {
|
|
1079
|
-
return
|
|
1074
|
+
return requestDatalayer({
|
|
1080
1075
|
url: `${configuration.iamRunUrl}/api/iam/v1/users/${userId}/roles/${roleName}`,
|
|
1081
1076
|
method: 'POST',
|
|
1082
1077
|
});
|
|
1083
1078
|
};
|
|
1084
1079
|
const unassignRoleFromUser = (userId, roleName) => {
|
|
1085
|
-
return
|
|
1080
|
+
return requestDatalayer({
|
|
1086
1081
|
url: `${configuration.iamRunUrl}/api/iam/v1/users/${userId}/roles/${roleName}`,
|
|
1087
1082
|
method: 'DELETE',
|
|
1088
1083
|
});
|
|
@@ -1095,7 +1090,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1095
1090
|
return organization;
|
|
1096
1091
|
};
|
|
1097
1092
|
const createOrganization = (organization) => {
|
|
1098
|
-
return
|
|
1093
|
+
return requestDatalayer({
|
|
1099
1094
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations`,
|
|
1100
1095
|
method: 'POST',
|
|
1101
1096
|
body: {
|
|
@@ -1117,7 +1112,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1117
1112
|
ORGANISATIONS_FOR_USER_BY_ID.clear();
|
|
1118
1113
|
};
|
|
1119
1114
|
const refreshOrganization = (user, organizationId) => {
|
|
1120
|
-
return
|
|
1115
|
+
return requestDatalayer({
|
|
1121
1116
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}`,
|
|
1122
1117
|
method: 'GET',
|
|
1123
1118
|
}).then(resp => {
|
|
@@ -1134,7 +1129,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1134
1129
|
});
|
|
1135
1130
|
};
|
|
1136
1131
|
const updateOrganization = (organization) => {
|
|
1137
|
-
return
|
|
1132
|
+
return requestDatalayer({
|
|
1138
1133
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organization.id}`,
|
|
1139
1134
|
method: 'PUT',
|
|
1140
1135
|
body: {
|
|
@@ -1155,7 +1150,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1155
1150
|
const getUserOrganizations = () => Array.from(ORGANISATIONS_FOR_USER_BY_ID.values());
|
|
1156
1151
|
const getUserOrganizationById = (organizationId) => ORGANISATIONS_FOR_USER_BY_ID.get(organizationId);
|
|
1157
1152
|
const refreshUserOrganizations = (user) => {
|
|
1158
|
-
return
|
|
1153
|
+
return requestDatalayer({
|
|
1159
1154
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations`,
|
|
1160
1155
|
method: 'GET',
|
|
1161
1156
|
}).then(resp => {
|
|
@@ -1171,25 +1166,25 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1171
1166
|
});
|
|
1172
1167
|
};
|
|
1173
1168
|
const addMemberToOrganization = (organizationId, userId) => {
|
|
1174
|
-
return
|
|
1169
|
+
return requestDatalayer({
|
|
1175
1170
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}/members/${userId}`,
|
|
1176
1171
|
method: 'POST',
|
|
1177
1172
|
});
|
|
1178
1173
|
};
|
|
1179
1174
|
const removeMemberFromOrganization = (organizationId, userId) => {
|
|
1180
|
-
return
|
|
1175
|
+
return requestDatalayer({
|
|
1181
1176
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}/members/${userId}`,
|
|
1182
1177
|
method: 'DELETE',
|
|
1183
1178
|
});
|
|
1184
1179
|
};
|
|
1185
1180
|
const addRoleToOrganizationMember = (organizationId, userId, roleName) => {
|
|
1186
|
-
return
|
|
1181
|
+
return requestDatalayer({
|
|
1187
1182
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}/members/${userId}/roles/${roleName}`,
|
|
1188
1183
|
method: 'POST',
|
|
1189
1184
|
});
|
|
1190
1185
|
};
|
|
1191
1186
|
const removeRoleFromOrganizationMember = (organizationId, userId, roleName) => {
|
|
1192
|
-
return
|
|
1187
|
+
return requestDatalayer({
|
|
1193
1188
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}/members/${userId}/roles/${roleName}`,
|
|
1194
1189
|
method: 'DELETE',
|
|
1195
1190
|
});
|
|
@@ -1202,7 +1197,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1202
1197
|
return team;
|
|
1203
1198
|
};
|
|
1204
1199
|
const createTeam = (team, organization) => {
|
|
1205
|
-
return
|
|
1200
|
+
return requestDatalayer({
|
|
1206
1201
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams`,
|
|
1207
1202
|
method: 'POST',
|
|
1208
1203
|
body: {
|
|
@@ -1225,7 +1220,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1225
1220
|
TEAMS_BY_ID.clear();
|
|
1226
1221
|
};
|
|
1227
1222
|
const refreshTeam = (teamId, organizationId) => {
|
|
1228
|
-
return
|
|
1223
|
+
return requestDatalayer({
|
|
1229
1224
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${teamId}`,
|
|
1230
1225
|
method: 'GET',
|
|
1231
1226
|
}).then(resp => {
|
|
@@ -1241,7 +1236,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1241
1236
|
});
|
|
1242
1237
|
};
|
|
1243
1238
|
const updateTeam = (team) => {
|
|
1244
|
-
return
|
|
1239
|
+
return requestDatalayer({
|
|
1245
1240
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${team.id}`,
|
|
1246
1241
|
method: 'PUT',
|
|
1247
1242
|
body: {
|
|
@@ -1262,7 +1257,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1262
1257
|
};
|
|
1263
1258
|
const getTeamsByOrganizationId = (organizationId) => TEAMS_BY_ORGANIZATION_BY_ID.get(organizationId);
|
|
1264
1259
|
const refreshTeams = (organizationId) => {
|
|
1265
|
-
return
|
|
1260
|
+
return requestDatalayer({
|
|
1266
1261
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/${organizationId}/teams`,
|
|
1267
1262
|
method: 'GET',
|
|
1268
1263
|
}).then(resp => {
|
|
@@ -1279,25 +1274,25 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1279
1274
|
});
|
|
1280
1275
|
};
|
|
1281
1276
|
const addMemberToTeam = (teamId, userId) => {
|
|
1282
|
-
return
|
|
1277
|
+
return requestDatalayer({
|
|
1283
1278
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${teamId}/members/${userId}`,
|
|
1284
1279
|
method: 'POST',
|
|
1285
1280
|
});
|
|
1286
1281
|
};
|
|
1287
1282
|
const removeMemberFromTeam = (teamId, userId) => {
|
|
1288
|
-
return
|
|
1283
|
+
return requestDatalayer({
|
|
1289
1284
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${teamId}/members/${userId}`,
|
|
1290
1285
|
method: 'DELETE',
|
|
1291
1286
|
});
|
|
1292
1287
|
};
|
|
1293
1288
|
const addRoleToTeamMember = (teamId, userId, roleName) => {
|
|
1294
|
-
return
|
|
1289
|
+
return requestDatalayer({
|
|
1295
1290
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${teamId}/members/${userId}/roles/${roleName}`,
|
|
1296
1291
|
method: 'POST',
|
|
1297
1292
|
});
|
|
1298
1293
|
};
|
|
1299
1294
|
const removeRoleFromTeamMember = (teamId, userId, roleName) => {
|
|
1300
|
-
return
|
|
1295
|
+
return requestDatalayer({
|
|
1301
1296
|
url: `${configuration.iamRunUrl}/api/iam/v1/teams/${teamId}/members/${userId}/roles/${roleName}`,
|
|
1302
1297
|
method: 'DELETE',
|
|
1303
1298
|
});
|
|
@@ -1307,13 +1302,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1307
1302
|
return Array.from(SCHOOLS_BY_ID.values());
|
|
1308
1303
|
};
|
|
1309
1304
|
const refreshSchools = () => {
|
|
1310
|
-
return
|
|
1305
|
+
return requestDatalayer({
|
|
1311
1306
|
url: `${configuration.iamRunUrl}/api/iam/v1/organizations/schools`,
|
|
1312
1307
|
method: 'GET',
|
|
1313
1308
|
}).then(resp => {
|
|
1314
1309
|
if (resp.success) {
|
|
1315
1310
|
resp.orgs.forEach(s => {
|
|
1316
|
-
|
|
1311
|
+
const dean = undefined;
|
|
1317
1312
|
const students = new Array();
|
|
1318
1313
|
const members = new Array();
|
|
1319
1314
|
const courses = new Array();
|
|
@@ -1348,7 +1343,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1348
1343
|
const seedSpaceId = (space.variant === 'course')
|
|
1349
1344
|
? space.seedSpace?.id
|
|
1350
1345
|
: undefined;
|
|
1351
|
-
return
|
|
1346
|
+
return requestDatalayer({
|
|
1352
1347
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces`,
|
|
1353
1348
|
method: 'POST',
|
|
1354
1349
|
body: {
|
|
@@ -1389,7 +1384,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1389
1384
|
return organizationSpaces ? organizationSpaces.get(spaceHandle) : undefined;
|
|
1390
1385
|
};
|
|
1391
1386
|
const refreshOrganizationSpace = (organizationId, spaceId) => {
|
|
1392
|
-
return
|
|
1387
|
+
return requestDatalayer({
|
|
1393
1388
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/organizations/${organizationId}`,
|
|
1394
1389
|
method: 'GET',
|
|
1395
1390
|
}).then(resp => {
|
|
@@ -1409,13 +1404,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1409
1404
|
});
|
|
1410
1405
|
};
|
|
1411
1406
|
const exportSpace = (spaceId) => {
|
|
1412
|
-
return
|
|
1407
|
+
return requestDatalayer({
|
|
1413
1408
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/export`,
|
|
1414
1409
|
method: 'GET',
|
|
1415
1410
|
});
|
|
1416
1411
|
};
|
|
1417
1412
|
const updateOrganizationSpace = (organization, space) => {
|
|
1418
|
-
return
|
|
1413
|
+
return requestDatalayer({
|
|
1419
1414
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/organizations/${organization.id}`,
|
|
1420
1415
|
method: 'PUT',
|
|
1421
1416
|
body: {
|
|
@@ -1441,7 +1436,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1441
1436
|
return [];
|
|
1442
1437
|
};
|
|
1443
1438
|
const refreshOrganizationSpaces = (organizationId) => {
|
|
1444
|
-
return
|
|
1439
|
+
return requestDatalayer({
|
|
1445
1440
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/organizations/${organizationId}`,
|
|
1446
1441
|
method: 'GET',
|
|
1447
1442
|
}).then(resp => {
|
|
@@ -1461,7 +1456,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1461
1456
|
};
|
|
1462
1457
|
const getUserSpaces = () => Array.from(SPACES_FOR_USER_BY_ID.values());
|
|
1463
1458
|
const refreshUserSpaces = () => {
|
|
1464
|
-
return
|
|
1459
|
+
return requestDatalayer({
|
|
1465
1460
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/users/me`,
|
|
1466
1461
|
method: 'GET',
|
|
1467
1462
|
}).then(resp => {
|
|
@@ -1478,7 +1473,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1478
1473
|
const getUserSpace = (userId) => SPACES_FOR_USER_BY_ID.get(userId);
|
|
1479
1474
|
const getUserSpaceByHandle = (userHandle) => SPACES_FOR_USER_BY_HANDLE.get(userHandle);
|
|
1480
1475
|
const refreshUserSpace = (userId, spaceId) => {
|
|
1481
|
-
return
|
|
1476
|
+
return requestDatalayer({
|
|
1482
1477
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/users/${userId}`,
|
|
1483
1478
|
method: 'GET',
|
|
1484
1479
|
}).then(resp => {
|
|
@@ -1494,7 +1489,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1494
1489
|
});
|
|
1495
1490
|
};
|
|
1496
1491
|
const updateSpace = (space) => {
|
|
1497
|
-
return
|
|
1492
|
+
return requestDatalayer({
|
|
1498
1493
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/users/${user?.id}`,
|
|
1499
1494
|
method: 'PUT',
|
|
1500
1495
|
body: {
|
|
@@ -1513,13 +1508,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1513
1508
|
});
|
|
1514
1509
|
};
|
|
1515
1510
|
const addMemberToOrganizationSpace = (organizationId, spaceId, accountId) => {
|
|
1516
|
-
return
|
|
1511
|
+
return requestDatalayer({
|
|
1517
1512
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/organizations/${organizationId}/members/${accountId}`,
|
|
1518
1513
|
method: 'POST',
|
|
1519
1514
|
});
|
|
1520
1515
|
};
|
|
1521
1516
|
const removeMemberFromOrganizationSpace = (organizationId, spaceId, accountId) => {
|
|
1522
|
-
return
|
|
1517
|
+
return requestDatalayer({
|
|
1523
1518
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/organizations/${organizationId}/members/${accountId}`,
|
|
1524
1519
|
method: 'DELETE',
|
|
1525
1520
|
}).then(resp => {
|
|
@@ -1530,13 +1525,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1530
1525
|
});
|
|
1531
1526
|
};
|
|
1532
1527
|
const makeSpacePublic = (spaceId) => {
|
|
1533
|
-
return
|
|
1528
|
+
return requestDatalayer({
|
|
1534
1529
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/public`,
|
|
1535
1530
|
method: 'PUT',
|
|
1536
1531
|
});
|
|
1537
1532
|
};
|
|
1538
1533
|
const makeSpacePrivate = (spaceId) => {
|
|
1539
|
-
return
|
|
1534
|
+
return requestDatalayer({
|
|
1540
1535
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/private`,
|
|
1541
1536
|
method: 'PUT',
|
|
1542
1537
|
});
|
|
@@ -1628,7 +1623,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1628
1623
|
raw_item_uids = raw_item_uids.replace('(', '').replace(')', '');
|
|
1629
1624
|
itemIds = raw_item_uids.split(' ');
|
|
1630
1625
|
}
|
|
1631
|
-
|
|
1626
|
+
const items = new Array();
|
|
1632
1627
|
if (raw_course.items) {
|
|
1633
1628
|
raw_course.items.forEach(item => {
|
|
1634
1629
|
const i = toItem(item);
|
|
@@ -1655,7 +1650,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1655
1650
|
};
|
|
1656
1651
|
const getCourse = (courseId) => COURSES_BY_ID.get(courseId);
|
|
1657
1652
|
const updateCourse = (courseId, name, description) => {
|
|
1658
|
-
return
|
|
1653
|
+
return requestDatalayer({
|
|
1659
1654
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}`,
|
|
1660
1655
|
method: 'PUT',
|
|
1661
1656
|
body: {
|
|
@@ -1665,7 +1660,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1665
1660
|
});
|
|
1666
1661
|
};
|
|
1667
1662
|
const refreshCourse = (courseId) => {
|
|
1668
|
-
return
|
|
1663
|
+
return requestDatalayer({
|
|
1669
1664
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}`,
|
|
1670
1665
|
method: 'GET',
|
|
1671
1666
|
}).then(resp => {
|
|
@@ -1679,13 +1674,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1679
1674
|
});
|
|
1680
1675
|
};
|
|
1681
1676
|
const enrollStudentToCourse = (courseId, studentId) => {
|
|
1682
|
-
return
|
|
1677
|
+
return requestDatalayer({
|
|
1683
1678
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}/enrollments/students/${studentId}`,
|
|
1684
1679
|
method: 'POST',
|
|
1685
1680
|
});
|
|
1686
1681
|
};
|
|
1687
1682
|
const removeStudentFromCourse = (courseId, studentId) => {
|
|
1688
|
-
return
|
|
1683
|
+
return requestDatalayer({
|
|
1689
1684
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}/enrollments/students/${studentId}`,
|
|
1690
1685
|
method: 'DELETE',
|
|
1691
1686
|
}).then(resp => {
|
|
@@ -1697,7 +1692,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1697
1692
|
};
|
|
1698
1693
|
const getStudent = (courseId, studentId) => STUDENTS_BY_ID.get(courseId + '-' + studentId);
|
|
1699
1694
|
const refreshStudent = (courseId, studentHandle) => {
|
|
1700
|
-
return
|
|
1695
|
+
return requestDatalayer({
|
|
1701
1696
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}/enrollments/students/${studentHandle}`,
|
|
1702
1697
|
method: 'GET',
|
|
1703
1698
|
}).then(resp => {
|
|
@@ -1709,7 +1704,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1709
1704
|
};
|
|
1710
1705
|
const getPublicCourses = () => Array.from(PUBLIC_COURSES_BY_ID.values());
|
|
1711
1706
|
const refreshPublicCourses = () => {
|
|
1712
|
-
return
|
|
1707
|
+
return requestDatalayer({
|
|
1713
1708
|
url: `${configuration.libraryRunUrl}/api/library/v1/courses/public`,
|
|
1714
1709
|
method: 'GET',
|
|
1715
1710
|
}).then(resp => {
|
|
@@ -1723,7 +1718,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1723
1718
|
};
|
|
1724
1719
|
const getInstructorCourses = () => Array.from(COURSES_INSTRUCTORS_BY_ID.values());
|
|
1725
1720
|
const refreshInstructorCourses = () => {
|
|
1726
|
-
return
|
|
1721
|
+
return requestDatalayer({
|
|
1727
1722
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/instructors/${user?.id}/courses`,
|
|
1728
1723
|
method: 'GET',
|
|
1729
1724
|
}).then(resp => {
|
|
@@ -1737,7 +1732,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1737
1732
|
};
|
|
1738
1733
|
const getCoursesEnrollments = () => Array.from(COURSES_ENROLLMENTS_BY_ID.values());
|
|
1739
1734
|
const refreshCoursesEnrollments = () => {
|
|
1740
|
-
return
|
|
1735
|
+
return requestDatalayer({
|
|
1741
1736
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/enrollments/me`,
|
|
1742
1737
|
method: 'GET',
|
|
1743
1738
|
}).then(resp => {
|
|
@@ -1750,7 +1745,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1750
1745
|
});
|
|
1751
1746
|
};
|
|
1752
1747
|
const confirmCourseItemCompletion = (courseId, itemType, itemId, completed) => {
|
|
1753
|
-
return
|
|
1748
|
+
return requestDatalayer({
|
|
1754
1749
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${courseId}/types/${itemType}/items/${itemId}/complete`,
|
|
1755
1750
|
method: 'PUT',
|
|
1756
1751
|
body: {
|
|
@@ -1759,7 +1754,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1759
1754
|
});
|
|
1760
1755
|
};
|
|
1761
1756
|
const setCourseItems = (courseId, itemIds) => {
|
|
1762
|
-
return
|
|
1757
|
+
return requestDatalayer({
|
|
1763
1758
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/courses/${courseId}/items`,
|
|
1764
1759
|
method: 'PUT',
|
|
1765
1760
|
body: {
|
|
@@ -1769,7 +1764,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1769
1764
|
};
|
|
1770
1765
|
// Surveys ---------------------------------------------------------------------
|
|
1771
1766
|
const getUserSurveys = (userId) => {
|
|
1772
|
-
return
|
|
1767
|
+
return requestDatalayer({
|
|
1773
1768
|
url: `${configuration.growthRunUrl}/api/growth/v1/surveys/users/${userId}`,
|
|
1774
1769
|
method: 'GET',
|
|
1775
1770
|
}).then(resp => {
|
|
@@ -1795,7 +1790,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1795
1790
|
const getInbound = (id) => INBOUNDS_BY_ID.get(id);
|
|
1796
1791
|
const getInboundByHandle = (handle) => INBOUNDS_BY_HANDLE.get(handle);
|
|
1797
1792
|
const refreshInbound = (userId) => {
|
|
1798
|
-
return
|
|
1793
|
+
return requestDatalayer({
|
|
1799
1794
|
url: `${configuration.inboundsRunUrl}/api/inbounds/v1/inbounds/${userId}`,
|
|
1800
1795
|
method: 'GET',
|
|
1801
1796
|
}).then(resp => {
|
|
@@ -1806,7 +1801,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1806
1801
|
});
|
|
1807
1802
|
};
|
|
1808
1803
|
const getInbounds = () => {
|
|
1809
|
-
return
|
|
1804
|
+
return requestDatalayer({
|
|
1810
1805
|
url: `${configuration.inboundsRunUrl}/api/inbounds/v1/inbounds`,
|
|
1811
1806
|
method: 'GET',
|
|
1812
1807
|
}).then(resp => {
|
|
@@ -1827,7 +1822,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1827
1822
|
};
|
|
1828
1823
|
const getOutbound = (id) => OUTBOUNDS_BY_ID.get(id);
|
|
1829
1824
|
const refreshOutbound = (outboundId) => {
|
|
1830
|
-
return
|
|
1825
|
+
return requestDatalayer({
|
|
1831
1826
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/${outboundId}`,
|
|
1832
1827
|
method: 'GET',
|
|
1833
1828
|
}).then(resp => {
|
|
@@ -1839,7 +1834,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1839
1834
|
});
|
|
1840
1835
|
};
|
|
1841
1836
|
const getOutbounds = () => {
|
|
1842
|
-
return
|
|
1837
|
+
return requestDatalayer({
|
|
1843
1838
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds`,
|
|
1844
1839
|
method: 'GET',
|
|
1845
1840
|
}).then(resp => {
|
|
@@ -1851,28 +1846,28 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1851
1846
|
});
|
|
1852
1847
|
};
|
|
1853
1848
|
const draftBulkEmailsOutbounds = (params) => {
|
|
1854
|
-
return
|
|
1849
|
+
return requestDatalayer({
|
|
1855
1850
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/emails/bulk/draft`,
|
|
1856
1851
|
method: 'POST',
|
|
1857
1852
|
body: params,
|
|
1858
1853
|
});
|
|
1859
1854
|
};
|
|
1860
1855
|
const tryBulkEmailsOutbounds = (outboundId) => {
|
|
1861
|
-
return
|
|
1856
|
+
return requestDatalayer({
|
|
1862
1857
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/${outboundId}/try`,
|
|
1863
1858
|
method: 'POST',
|
|
1864
1859
|
body: {},
|
|
1865
1860
|
});
|
|
1866
1861
|
};
|
|
1867
1862
|
const launchBulkEmailsOutbounds = (outboundId) => {
|
|
1868
|
-
return
|
|
1863
|
+
return requestDatalayer({
|
|
1869
1864
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/${outboundId}/launch`,
|
|
1870
1865
|
method: 'POST',
|
|
1871
1866
|
body: {},
|
|
1872
1867
|
});
|
|
1873
1868
|
};
|
|
1874
1869
|
const sendOutboundEmailToUser = (userId, recipient, subject, content) => {
|
|
1875
|
-
return
|
|
1870
|
+
return requestDatalayer({
|
|
1876
1871
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/email`,
|
|
1877
1872
|
method: 'POST',
|
|
1878
1873
|
body: {
|
|
@@ -1884,19 +1879,19 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1884
1879
|
});
|
|
1885
1880
|
};
|
|
1886
1881
|
const enableUserMFA = () => {
|
|
1887
|
-
return
|
|
1882
|
+
return requestDatalayer({
|
|
1888
1883
|
url: `${configuration.iamRunUrl}/api/iam/v1/mfa`,
|
|
1889
1884
|
method: 'PUT',
|
|
1890
1885
|
});
|
|
1891
1886
|
};
|
|
1892
1887
|
const disableUserMFA = () => {
|
|
1893
|
-
return
|
|
1888
|
+
return requestDatalayer({
|
|
1894
1889
|
url: `${configuration.iamRunUrl}/api/iam/v1/mfa`,
|
|
1895
1890
|
method: 'DELETE',
|
|
1896
1891
|
});
|
|
1897
1892
|
};
|
|
1898
1893
|
const validateUserMFACode = (userUid, code) => {
|
|
1899
|
-
return
|
|
1894
|
+
return requestDatalayer({
|
|
1900
1895
|
url: `${configuration.iamRunUrl}/api/iam/v1/mfa`,
|
|
1901
1896
|
method: 'POST',
|
|
1902
1897
|
body: {
|
|
@@ -1906,31 +1901,31 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1906
1901
|
});
|
|
1907
1902
|
};
|
|
1908
1903
|
const subscribeUserToOutbounds = (userId) => {
|
|
1909
|
-
return
|
|
1904
|
+
return requestDatalayer({
|
|
1910
1905
|
url: `${configuration.iamRunUrl}/api/iam/v1/outbounds/users/${userId}`,
|
|
1911
1906
|
method: 'PUT',
|
|
1912
1907
|
});
|
|
1913
1908
|
};
|
|
1914
1909
|
const unsubscribeUserFromOutbounds = (userId) => {
|
|
1915
|
-
return
|
|
1910
|
+
return requestDatalayer({
|
|
1916
1911
|
url: `${configuration.iamRunUrl}/api/iam/v1/outbounds/users/${userId}`,
|
|
1917
1912
|
method: 'DELETE',
|
|
1918
1913
|
});
|
|
1919
1914
|
};
|
|
1920
1915
|
const unsubscribeContactFromOutbounds = (contactId) => {
|
|
1921
|
-
return
|
|
1916
|
+
return requestDatalayer({
|
|
1922
1917
|
url: `${configuration.growthRunUrl}/api/growth/v1/contacts/unsubscribe/${contactId}`,
|
|
1923
1918
|
method: 'GET',
|
|
1924
1919
|
});
|
|
1925
1920
|
};
|
|
1926
1921
|
const unsubscribeInviteeFromOutbounds = (token) => {
|
|
1927
|
-
return
|
|
1922
|
+
return requestDatalayer({
|
|
1928
1923
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/unsubscribe/${token}`,
|
|
1929
1924
|
method: 'GET',
|
|
1930
1925
|
});
|
|
1931
1926
|
};
|
|
1932
1927
|
const deleteOutbound = (outboundId) => {
|
|
1933
|
-
return
|
|
1928
|
+
return requestDatalayer({
|
|
1934
1929
|
url: `${configuration.growthRunUrl}/api/growth/v1/outbounds/${outboundId}`,
|
|
1935
1930
|
method: 'DELETE',
|
|
1936
1931
|
});
|
|
@@ -1965,7 +1960,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1965
1960
|
const clearCachedPublicItems = () => PUBLIC_ITEMS_BY_ID.clear();
|
|
1966
1961
|
const getPublicItems = () => Array.from(PUBLIC_ITEMS_BY_ID.values());
|
|
1967
1962
|
const refreshPublicItems = () => {
|
|
1968
|
-
return
|
|
1963
|
+
return requestDatalayer({
|
|
1969
1964
|
url: `${configuration.libraryRunUrl}/api/library/v1/items/public`,
|
|
1970
1965
|
method: 'GET',
|
|
1971
1966
|
}).then(resp => {
|
|
@@ -1980,7 +1975,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1980
1975
|
};
|
|
1981
1976
|
const getSpaceItems = () => Array.from(SPACE_ITEMS_CACHE.values());
|
|
1982
1977
|
const refreshSpaceItems = (spaceId) => {
|
|
1983
|
-
return
|
|
1978
|
+
return requestDatalayer({
|
|
1984
1979
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${spaceId}/items`,
|
|
1985
1980
|
method: 'GET',
|
|
1986
1981
|
}).then(resp => {
|
|
@@ -1996,19 +1991,19 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
1996
1991
|
});
|
|
1997
1992
|
};
|
|
1998
1993
|
const makeItemPublic = (id) => {
|
|
1999
|
-
return
|
|
1994
|
+
return requestDatalayer({
|
|
2000
1995
|
url: `${configuration.libraryRunUrl}/api/library/v1/items/${id}/public`,
|
|
2001
1996
|
method: 'PUT',
|
|
2002
1997
|
});
|
|
2003
1998
|
};
|
|
2004
1999
|
const makeItemPrivate = (id) => {
|
|
2005
|
-
return
|
|
2000
|
+
return requestDatalayer({
|
|
2006
2001
|
url: `${configuration.libraryRunUrl}/api/library/v1/items/${id}/private`,
|
|
2007
2002
|
method: 'PUT',
|
|
2008
2003
|
});
|
|
2009
2004
|
};
|
|
2010
2005
|
const deleteItem = (itemId) => {
|
|
2011
|
-
return
|
|
2006
|
+
return requestDatalayer({
|
|
2012
2007
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/items/${itemId}`,
|
|
2013
2008
|
method: 'DELETE',
|
|
2014
2009
|
}).then(resp => {
|
|
@@ -2035,7 +2030,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2035
2030
|
max: max.toFixed(0).toString(),
|
|
2036
2031
|
public: 'true',
|
|
2037
2032
|
};
|
|
2038
|
-
return
|
|
2033
|
+
return requestDatalayer({
|
|
2039
2034
|
url: `${configuration.libraryRunUrl}/api/library/v1/search${URLExt.objectToQueryString(queryArgs)}`,
|
|
2040
2035
|
method: 'GET',
|
|
2041
2036
|
}).then(resp => {
|
|
@@ -2082,7 +2077,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2082
2077
|
};
|
|
2083
2078
|
const getDataset = (id) => SPACE_DATASETS_BY_ID.get(id);
|
|
2084
2079
|
const refreshDataset = (id) => {
|
|
2085
|
-
return
|
|
2080
|
+
return requestDatalayer({
|
|
2086
2081
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/items/${id}`,
|
|
2087
2082
|
method: 'GET',
|
|
2088
2083
|
}).then(resp => {
|
|
@@ -2098,7 +2093,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2098
2093
|
const getSpaceDatasets = () => Array.from(SPACE_DATASETS_BY_ID.values());
|
|
2099
2094
|
const refreshSpaceDatasets = (space, organization) => {
|
|
2100
2095
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/dataset`;
|
|
2101
|
-
return
|
|
2096
|
+
return requestDatalayer({
|
|
2102
2097
|
url,
|
|
2103
2098
|
method: 'GET',
|
|
2104
2099
|
}).then(resp => {
|
|
@@ -2111,7 +2106,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2111
2106
|
});
|
|
2112
2107
|
};
|
|
2113
2108
|
const updateDataset = (id, name, description) => {
|
|
2114
|
-
return
|
|
2109
|
+
return requestDatalayer({
|
|
2115
2110
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/datasets/${id}`,
|
|
2116
2111
|
method: 'PUT',
|
|
2117
2112
|
body: {
|
|
@@ -2148,7 +2143,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2148
2143
|
};
|
|
2149
2144
|
const getCell = (id) => SPACE_CELLS_BY_ID.get(id);
|
|
2150
2145
|
const refreshCell = (id) => {
|
|
2151
|
-
return
|
|
2146
|
+
return requestDatalayer({
|
|
2152
2147
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/items/${id}`,
|
|
2153
2148
|
method: 'GET',
|
|
2154
2149
|
}).then(resp => {
|
|
@@ -2164,7 +2159,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2164
2159
|
const getSpaceCells = () => Array.from(SPACE_CELLS_BY_ID.values());
|
|
2165
2160
|
const refreshSpaceCells = (space, organization) => {
|
|
2166
2161
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/cell`;
|
|
2167
|
-
return
|
|
2162
|
+
return requestDatalayer({
|
|
2168
2163
|
url,
|
|
2169
2164
|
method: 'GET',
|
|
2170
2165
|
}).then(resp => {
|
|
@@ -2177,14 +2172,14 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2177
2172
|
});
|
|
2178
2173
|
};
|
|
2179
2174
|
const updateCell = (cell) => {
|
|
2180
|
-
return
|
|
2175
|
+
return requestDatalayer({
|
|
2181
2176
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/cells/${cell.id}`,
|
|
2182
2177
|
method: 'PUT',
|
|
2183
2178
|
body: cell
|
|
2184
2179
|
});
|
|
2185
2180
|
};
|
|
2186
2181
|
const cloneCell = (cellId) => {
|
|
2187
|
-
return
|
|
2182
|
+
return requestDatalayer({
|
|
2188
2183
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/cells/${cellId}/clone`,
|
|
2189
2184
|
method: 'POST',
|
|
2190
2185
|
}).then(resp => {
|
|
@@ -2222,7 +2217,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2222
2217
|
};
|
|
2223
2218
|
const getNotebook = (notebookId) => SPACE_NOTEBOOKS_BY_ID.get(notebookId);
|
|
2224
2219
|
const refreshNotebook = (notebookId) => {
|
|
2225
|
-
return
|
|
2220
|
+
return requestDatalayer({
|
|
2226
2221
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${notebookId}`,
|
|
2227
2222
|
method: 'GET',
|
|
2228
2223
|
}).then(resp => {
|
|
@@ -2239,7 +2234,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2239
2234
|
const getSpaceNotebook = (id) => SPACE_NOTEBOOKS_BY_ID.get(id);
|
|
2240
2235
|
const refreshSpaceNotebooks = (space, organization) => {
|
|
2241
2236
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/notebook`;
|
|
2242
|
-
return
|
|
2237
|
+
return requestDatalayer({
|
|
2243
2238
|
url,
|
|
2244
2239
|
method: 'GET',
|
|
2245
2240
|
}).then(resp => {
|
|
@@ -2252,7 +2247,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2252
2247
|
});
|
|
2253
2248
|
};
|
|
2254
2249
|
const cloneNotebook = (notebookId) => {
|
|
2255
|
-
return
|
|
2250
|
+
return requestDatalayer({
|
|
2256
2251
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${notebookId}/clone`,
|
|
2257
2252
|
method: 'POST',
|
|
2258
2253
|
}).then(resp => {
|
|
@@ -2263,7 +2258,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2263
2258
|
});
|
|
2264
2259
|
};
|
|
2265
2260
|
const updateNotebook = (id, name, description) => {
|
|
2266
|
-
return
|
|
2261
|
+
return requestDatalayer({
|
|
2267
2262
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${id}`,
|
|
2268
2263
|
method: 'PUT',
|
|
2269
2264
|
body: {
|
|
@@ -2273,7 +2268,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2273
2268
|
});
|
|
2274
2269
|
};
|
|
2275
2270
|
const updateNotebookModel = (notebookId, nbformat) => {
|
|
2276
|
-
return
|
|
2271
|
+
return requestDatalayer({
|
|
2277
2272
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${notebookId}/model`,
|
|
2278
2273
|
method: 'PUT',
|
|
2279
2274
|
body: {
|
|
@@ -2308,7 +2303,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2308
2303
|
};
|
|
2309
2304
|
const getDocument = (id) => SPACE_DOCUMENTS_BY_ID.get(id);
|
|
2310
2305
|
const refreshDocument = (id) => {
|
|
2311
|
-
return
|
|
2306
|
+
return requestDatalayer({
|
|
2312
2307
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/lexicals/${id}`,
|
|
2313
2308
|
method: 'GET',
|
|
2314
2309
|
}).then(resp => {
|
|
@@ -2325,7 +2320,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2325
2320
|
const getSpaceDocument = (id) => SPACE_DOCUMENTS_BY_ID.get(id);
|
|
2326
2321
|
const refreshSpaceDocuments = (space, organization) => {
|
|
2327
2322
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/document`;
|
|
2328
|
-
return
|
|
2323
|
+
return requestDatalayer({
|
|
2329
2324
|
url,
|
|
2330
2325
|
method: 'GET',
|
|
2331
2326
|
}).then(resp => {
|
|
@@ -2338,7 +2333,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2338
2333
|
});
|
|
2339
2334
|
};
|
|
2340
2335
|
const cloneDocument = (documentId) => {
|
|
2341
|
-
return
|
|
2336
|
+
return requestDatalayer({
|
|
2342
2337
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/lexicals/${documentId}/clone`,
|
|
2343
2338
|
method: 'POST',
|
|
2344
2339
|
}).then(resp => {
|
|
@@ -2349,7 +2344,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2349
2344
|
});
|
|
2350
2345
|
};
|
|
2351
2346
|
const updateDocument = (id, name, description) => {
|
|
2352
|
-
return
|
|
2347
|
+
return requestDatalayer({
|
|
2353
2348
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/lexicals/${id}`,
|
|
2354
2349
|
method: 'PUT',
|
|
2355
2350
|
body: {
|
|
@@ -2359,7 +2354,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2359
2354
|
});
|
|
2360
2355
|
};
|
|
2361
2356
|
const updateDocumentModel = (id, model) => {
|
|
2362
|
-
return
|
|
2357
|
+
return requestDatalayer({
|
|
2363
2358
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/lexicals/${id}/model`,
|
|
2364
2359
|
method: 'PUT',
|
|
2365
2360
|
body: {
|
|
@@ -2392,7 +2387,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2392
2387
|
};
|
|
2393
2388
|
const getEnvironment = (id) => SPACE_ENVIRONMENTS_BY_ID.get(id);
|
|
2394
2389
|
const refreshEnvironment = (id) => {
|
|
2395
|
-
return
|
|
2390
|
+
return requestDatalayer({
|
|
2396
2391
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/items/${id}`,
|
|
2397
2392
|
method: 'GET',
|
|
2398
2393
|
}).then(resp => {
|
|
@@ -2408,7 +2403,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2408
2403
|
const getSpaceEnvironments = () => Array.from(SPACE_ENVIRONMENTS_BY_ID.values());
|
|
2409
2404
|
const refreshSpaceEnvironments = (space, organization) => {
|
|
2410
2405
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/environment`;
|
|
2411
|
-
return
|
|
2406
|
+
return requestDatalayer({
|
|
2412
2407
|
url,
|
|
2413
2408
|
method: 'GET',
|
|
2414
2409
|
}).then(resp => {
|
|
@@ -2448,7 +2443,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2448
2443
|
};
|
|
2449
2444
|
const getLesson = (id) => SPACE_LESSONS_BY_ID.get(id);
|
|
2450
2445
|
const refreshLesson = (id) => {
|
|
2451
|
-
return
|
|
2446
|
+
return requestDatalayer({
|
|
2452
2447
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/lessons/${id}`,
|
|
2453
2448
|
method: 'GET',
|
|
2454
2449
|
}).then(resp => {
|
|
@@ -2465,7 +2460,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2465
2460
|
const getSpaceLesson = (id) => SPACE_LESSONS_BY_ID.get(id);
|
|
2466
2461
|
const refreshSpaceLessons = (space, organization) => {
|
|
2467
2462
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/lesson`;
|
|
2468
|
-
return
|
|
2463
|
+
return requestDatalayer({
|
|
2469
2464
|
url,
|
|
2470
2465
|
method: 'GET',
|
|
2471
2466
|
}).then(resp => {
|
|
@@ -2478,7 +2473,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2478
2473
|
});
|
|
2479
2474
|
};
|
|
2480
2475
|
const cloneLesson = (lessonId) => {
|
|
2481
|
-
return
|
|
2476
|
+
return requestDatalayer({
|
|
2482
2477
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${lessonId}/clone`,
|
|
2483
2478
|
method: 'POST',
|
|
2484
2479
|
}).then(resp => {
|
|
@@ -2520,7 +2515,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2520
2515
|
};
|
|
2521
2516
|
const getExercise = (id) => SPACE_EXERCISES_BY_ID.get(id);
|
|
2522
2517
|
const refreshExercise = (id) => {
|
|
2523
|
-
return
|
|
2518
|
+
return requestDatalayer({
|
|
2524
2519
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/spaces/items/${id}`,
|
|
2525
2520
|
method: 'GET',
|
|
2526
2521
|
}).then(resp => {
|
|
@@ -2538,7 +2533,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2538
2533
|
};
|
|
2539
2534
|
const refreshSpaceExercises = (space, organization) => {
|
|
2540
2535
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/exercise`;
|
|
2541
|
-
return
|
|
2536
|
+
return requestDatalayer({
|
|
2542
2537
|
url,
|
|
2543
2538
|
method: 'GET',
|
|
2544
2539
|
}).then(resp => {
|
|
@@ -2551,7 +2546,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2551
2546
|
});
|
|
2552
2547
|
};
|
|
2553
2548
|
const cloneExercise = (exerciseId) => {
|
|
2554
|
-
return
|
|
2549
|
+
return requestDatalayer({
|
|
2555
2550
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/exercises/${exerciseId}/clone`,
|
|
2556
2551
|
method: 'POST',
|
|
2557
2552
|
}).then(resp => {
|
|
@@ -2562,7 +2557,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2562
2557
|
});
|
|
2563
2558
|
};
|
|
2564
2559
|
const updateExercise = ({ id, name, description, help, codePre, codeSolution, codeQuestion, codeTest, }) => {
|
|
2565
|
-
return
|
|
2560
|
+
return requestDatalayer({
|
|
2566
2561
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/exercises/${id}`,
|
|
2567
2562
|
method: 'PUT',
|
|
2568
2563
|
body: {
|
|
@@ -2577,7 +2572,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2577
2572
|
});
|
|
2578
2573
|
};
|
|
2579
2574
|
const updateExercisePoints = (id, codeStudent, points) => {
|
|
2580
|
-
return
|
|
2575
|
+
return requestDatalayer({
|
|
2581
2576
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/exercises/${id}/points`,
|
|
2582
2577
|
method: 'PUT',
|
|
2583
2578
|
body: {
|
|
@@ -2631,7 +2626,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2631
2626
|
};
|
|
2632
2627
|
const getAssignment = (assignmentId) => SPACE_ASSIGNMENTS_BY_ID.get(assignmentId);
|
|
2633
2628
|
const refreshAssignment = (assignmentId) => {
|
|
2634
|
-
return
|
|
2629
|
+
return requestDatalayer({
|
|
2635
2630
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${assignmentId}`,
|
|
2636
2631
|
method: 'GET',
|
|
2637
2632
|
}).then(resp => {
|
|
@@ -2646,7 +2641,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2646
2641
|
};
|
|
2647
2642
|
const getAssignmentForStudent = (assignmentId) => STUDENT_ASSIGNMENTS_BY_ID.get(assignmentId);
|
|
2648
2643
|
const refreshAssignmentForStudent = (courseId, user, assignmentId) => {
|
|
2649
|
-
return
|
|
2644
|
+
return requestDatalayer({
|
|
2650
2645
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${assignmentId}/courses/${courseId}/students/${user.id}`,
|
|
2651
2646
|
method: 'GET',
|
|
2652
2647
|
}).then(resp => {
|
|
@@ -2660,7 +2655,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2660
2655
|
});
|
|
2661
2656
|
};
|
|
2662
2657
|
const resetAssignmentForStudent = (courseId, user, assignmentId) => {
|
|
2663
|
-
return
|
|
2658
|
+
return requestDatalayer({
|
|
2664
2659
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${assignmentId}/reset`,
|
|
2665
2660
|
method: 'POST',
|
|
2666
2661
|
}).then(resp => {
|
|
@@ -2674,7 +2669,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2674
2669
|
});
|
|
2675
2670
|
};
|
|
2676
2671
|
const gradeAssignmentForStudent = (courseId, user, assignmentId, model) => {
|
|
2677
|
-
return
|
|
2672
|
+
return requestDatalayer({
|
|
2678
2673
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${assignmentId}/students/${user.id}/grade`,
|
|
2679
2674
|
method: 'PUT',
|
|
2680
2675
|
body: {
|
|
@@ -2694,7 +2689,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2694
2689
|
const getSpaceAssignment = (id) => SPACE_ASSIGNMENTS_BY_ID.get(id);
|
|
2695
2690
|
const refreshSpaceAssignments = (space, organization) => {
|
|
2696
2691
|
const url = `${configuration.spacerRunUrl}/api/spacer/v1/spaces/${space.id}/items/types/assignment`;
|
|
2697
|
-
return
|
|
2692
|
+
return requestDatalayer({
|
|
2698
2693
|
url,
|
|
2699
2694
|
method: 'GET',
|
|
2700
2695
|
}).then(resp => {
|
|
@@ -2707,7 +2702,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2707
2702
|
});
|
|
2708
2703
|
};
|
|
2709
2704
|
const cloneAssignment = (assignmentId) => {
|
|
2710
|
-
return
|
|
2705
|
+
return requestDatalayer({
|
|
2711
2706
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/notebooks/${assignmentId}/clone`,
|
|
2712
2707
|
method: 'POST',
|
|
2713
2708
|
}).then(resp => {
|
|
@@ -2718,21 +2713,21 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2718
2713
|
});
|
|
2719
2714
|
};
|
|
2720
2715
|
const getAssignmentStudentVersion = (assignmentId) => {
|
|
2721
|
-
return
|
|
2716
|
+
return requestDatalayer({
|
|
2722
2717
|
url: `${configuration.spacerRunUrl}/api/spacer/v1/assignments/${assignmentId}/student_version`,
|
|
2723
2718
|
method: 'GET',
|
|
2724
2719
|
});
|
|
2725
2720
|
};
|
|
2726
2721
|
// Prices -------------------------------------------------------------------
|
|
2727
2722
|
const refreshStripePrices = () => {
|
|
2728
|
-
return
|
|
2723
|
+
return requestDatalayer({
|
|
2729
2724
|
url: `${configuration.iamRunUrl}/api/iam/stripe/v1/prices`,
|
|
2730
2725
|
method: 'GET',
|
|
2731
2726
|
});
|
|
2732
2727
|
};
|
|
2733
2728
|
// Checkout -------------------------------------------------------------------
|
|
2734
2729
|
const createCheckoutSession = (product, location) => {
|
|
2735
|
-
return
|
|
2730
|
+
return requestDatalayer({
|
|
2736
2731
|
url: `${configuration.iamRunUrl}/api/iam/stripe/v1/checkout/session`,
|
|
2737
2732
|
method: 'POST',
|
|
2738
2733
|
body: {
|
|
@@ -2747,7 +2742,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2747
2742
|
};
|
|
2748
2743
|
// Credits -------------------------------------------------------------------
|
|
2749
2744
|
const burnCredit = (credits) => {
|
|
2750
|
-
return
|
|
2745
|
+
return requestDatalayer({
|
|
2751
2746
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/credits`,
|
|
2752
2747
|
method: "DELETE",
|
|
2753
2748
|
body: {
|
|
@@ -2756,13 +2751,13 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2756
2751
|
});
|
|
2757
2752
|
};
|
|
2758
2753
|
const getUserCredits = (userId) => {
|
|
2759
|
-
return
|
|
2754
|
+
return requestDatalayer({
|
|
2760
2755
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/credits/users/${userId}`,
|
|
2761
2756
|
method: "GET",
|
|
2762
2757
|
});
|
|
2763
2758
|
};
|
|
2764
2759
|
const updateUserCredits = (userId, credits, brand) => {
|
|
2765
|
-
return
|
|
2760
|
+
return requestDatalayer({
|
|
2766
2761
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/credits/users/${userId}`,
|
|
2767
2762
|
method: "PUT",
|
|
2768
2763
|
body: {
|
|
@@ -2772,7 +2767,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2772
2767
|
});
|
|
2773
2768
|
};
|
|
2774
2769
|
const updateUserCreditsQuota = (userId, quota) => {
|
|
2775
|
-
return
|
|
2770
|
+
return requestDatalayer({
|
|
2776
2771
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/quota`,
|
|
2777
2772
|
method: "PUT",
|
|
2778
2773
|
body: {
|
|
@@ -2787,7 +2782,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2787
2782
|
* Get user usages
|
|
2788
2783
|
*/
|
|
2789
2784
|
const getUsages = async () => {
|
|
2790
|
-
const data = await
|
|
2785
|
+
const data = await requestDatalayer({
|
|
2791
2786
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/user`,
|
|
2792
2787
|
method: "GET",
|
|
2793
2788
|
});
|
|
@@ -2798,7 +2793,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2798
2793
|
* Get user usages
|
|
2799
2794
|
*/
|
|
2800
2795
|
const getUsagesForUser = async (userId) => {
|
|
2801
|
-
const data = await
|
|
2796
|
+
const data = await requestDatalayer({
|
|
2802
2797
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/users/${userId}`,
|
|
2803
2798
|
method: "GET",
|
|
2804
2799
|
});
|
|
@@ -2809,7 +2804,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2809
2804
|
* Get platform usages
|
|
2810
2805
|
*/
|
|
2811
2806
|
const getPlatformUsages = async () => {
|
|
2812
|
-
const data = await
|
|
2807
|
+
const data = await requestDatalayer({
|
|
2813
2808
|
url: `${configuration.iamRunUrl}/api/iam/v1/usage/platform`,
|
|
2814
2809
|
method: "GET",
|
|
2815
2810
|
});
|
|
@@ -2818,7 +2813,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2818
2813
|
};
|
|
2819
2814
|
// Support ------------------------------------------------------------------
|
|
2820
2815
|
const requestPlatformSupport = (subject, message, email, brand) => {
|
|
2821
|
-
return
|
|
2816
|
+
return requestDatalayer({
|
|
2822
2817
|
url: `${configuration.supportRunUrl}/api/support/v1/support/request`,
|
|
2823
2818
|
method: 'POST',
|
|
2824
2819
|
body: {
|
|
@@ -2830,7 +2825,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2830
2825
|
});
|
|
2831
2826
|
};
|
|
2832
2827
|
const requestPlatformSupport2 = (accountHandle, firstName, lastName, email, message) => {
|
|
2833
|
-
return
|
|
2828
|
+
return requestDatalayer({
|
|
2834
2829
|
url: `${configuration.supportRunUrl}/api/support/v1/support/request2`,
|
|
2835
2830
|
method: 'POST',
|
|
2836
2831
|
body: {
|
|
@@ -2844,7 +2839,7 @@ export const useCache = ({ loginRoute = '/login' } = {}) => {
|
|
|
2844
2839
|
};
|
|
2845
2840
|
// Growth ------------------------------------------------------------------
|
|
2846
2841
|
const getGrowthKPI = () => {
|
|
2847
|
-
return
|
|
2842
|
+
return requestDatalayer({
|
|
2848
2843
|
url: `${configuration.growthRunUrl}/api/growth/v1/kpis`,
|
|
2849
2844
|
method: 'GET',
|
|
2850
2845
|
});
|