Merge branch 'master' into develop
# Conflicts: # packages/client/src/routes/client.js # packages/client/src/routes/confirm.js # packages/client/src/routes/general.js # packages/client/src/routes/portalSettings.js # packages/common/package.json # packages/components/scrollbar/styled-scrollbar.js # packages/editor/package.json # packages/shared/package.json # packages/shared/utils/component-loader.ts
This commit is contained in:
commit
77b5986876
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "docspace",
|
"name": "docspace",
|
||||||
"version": "2.0.3",
|
"version": "2.0.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"workspaces": {
|
"workspaces": {
|
||||||
"packages": [
|
"packages": [
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@docspace/client",
|
"name": "@docspace/client",
|
||||||
"version": "2.0.3",
|
"version": "2.0.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"homepage": "",
|
"homepage": "",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -5,7 +5,7 @@ import loadable from "@loadable/component";
|
|||||||
import PrivateRoute from "../components/PrivateRouteWrapper";
|
import PrivateRoute from "../components/PrivateRouteWrapper";
|
||||||
import PublicRoute from "../components/PublicRouteWrapper";
|
import PublicRoute from "../components/PublicRouteWrapper";
|
||||||
import Error404 from "@docspace/shared/components/errors/Error404";
|
import Error404 from "@docspace/shared/components/errors/Error404";
|
||||||
|
import componentLoader from "@docspace/shared/utils/component-loader";
|
||||||
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
||||||
|
|
||||||
import FilesView from "SRC_DIR/pages/Home/View/Files";
|
import FilesView from "SRC_DIR/pages/Home/View/Files";
|
||||||
@ -14,41 +14,52 @@ import SettingsView from "SRC_DIR/pages/Home/View/Settings";
|
|||||||
|
|
||||||
import { generalRoutes } from "./general";
|
import { generalRoutes } from "./general";
|
||||||
|
|
||||||
const Client = loadable(() => import("../Client"));
|
const Client = loadable(() => componentLoader(() => import("../Client")));
|
||||||
|
|
||||||
const Home = loadable(() => import("../pages/Home"));
|
const Home = loadable(() => componentLoader(() => import("../pages/Home")));
|
||||||
|
|
||||||
const Sdk = loadable(() => import("../pages/Sdk"));
|
const Sdk = loadable(() => componentLoader(() => import("../pages/Sdk")));
|
||||||
|
|
||||||
const FormGallery = loadable(() => import("../pages/FormGallery"));
|
const FormGallery = loadable(() =>
|
||||||
const PublicRoom = loadable(() => import("../pages/PublicRoom"));
|
componentLoader(() => import("../pages/FormGallery")),
|
||||||
const About = loadable(() => import("../pages/About"));
|
|
||||||
const Wizard = loadable(() => import("../pages/Wizard"));
|
|
||||||
const PreparationPortal = loadable(() => import("../pages/PreparationPortal"));
|
|
||||||
const PortalUnavailable = loadable(() => import("../pages/PortalUnavailable"));
|
|
||||||
const ErrorUnavailable = loadable(
|
|
||||||
() => import("../components/ErrorUnavailableWrapper"),
|
|
||||||
);
|
);
|
||||||
const AccessRestricted = loadable(
|
const PublicRoom = loadable(() =>
|
||||||
() => import("@docspace/shared/components/errors/AccessRestricted"),
|
componentLoader(() => import("../pages/PublicRoom")),
|
||||||
|
);
|
||||||
|
const About = loadable(() => componentLoader(() => import("../pages/About")));
|
||||||
|
const Wizard = loadable(() => componentLoader(() => import("../pages/Wizard")));
|
||||||
|
const PreparationPortal = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/PreparationPortal")),
|
||||||
|
);
|
||||||
|
const PortalUnavailable = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/PortalUnavailable")),
|
||||||
|
);
|
||||||
|
const ErrorUnavailable = loadable(() =>
|
||||||
|
componentLoader(() => import("../components/ErrorUnavailableWrapper")),
|
||||||
);
|
);
|
||||||
|
|
||||||
const Error401 = loadable(
|
const Error401 = loadable(() =>
|
||||||
() => import("@docspace/shared/components/errors/Error401"),
|
componentLoader(() => import("@docspace/shared/components/errors/Error401")),
|
||||||
);
|
);
|
||||||
|
|
||||||
const Error403 = loadable(
|
const Error403 = loadable(() =>
|
||||||
() => import("@docspace/shared/components/errors/Error403"),
|
componentLoader(() => import("@docspace/shared/components/errors/Error403")),
|
||||||
);
|
);
|
||||||
|
|
||||||
const Error520 = loadable(() => import("../components/Error520Wrapper"));
|
const Error520 = loadable(() =>
|
||||||
|
componentLoader(() => import("../components/Error520Wrapper")),
|
||||||
const ErrorAccessRestricted = loadable(
|
|
||||||
() => import("@docspace/shared/components/errors/AccessRestricted"),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
const ErrorOffline = loadable(
|
const ErrorAccessRestricted = loadable(() =>
|
||||||
() => import("@docspace/shared/components/errors/ErrorOffline"),
|
componentLoader(
|
||||||
|
() => import("@docspace/shared/components/errors/AccessRestricted"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
const ErrorOffline = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() => import("@docspace/shared/components/errors/ErrorOffline"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
const ClientRoutes = [
|
const ClientRoutes = [
|
||||||
@ -413,7 +424,7 @@ const ClientRoutes = [
|
|||||||
element: (
|
element: (
|
||||||
<PublicRoute>
|
<PublicRoute>
|
||||||
<ErrorBoundary>
|
<ErrorBoundary>
|
||||||
<AccessRestricted />
|
<ErrorAccessRestricted />
|
||||||
</ErrorBoundary>
|
</ErrorBoundary>
|
||||||
</PublicRoute>
|
</PublicRoute>
|
||||||
),
|
),
|
||||||
|
@ -3,52 +3,69 @@ import loadable from "@loadable/component";
|
|||||||
|
|
||||||
import ConfirmRoute from "../helpers/confirmRoute";
|
import ConfirmRoute from "../helpers/confirmRoute";
|
||||||
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
||||||
|
import componentLoader from "@docspace/shared/utils/component-loader";
|
||||||
|
|
||||||
import Error404 from "@docspace/shared/components/errors/Error404";
|
import Error404 from "@docspace/shared/components/errors/Error404";
|
||||||
import { AuthenticatedAction } from "../helpers/enums";
|
import { AuthenticatedAction } from "../helpers/enums";
|
||||||
|
|
||||||
const Confirm = loadable(() => import("../pages/Confirm"));
|
const Confirm = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/Confirm")),
|
||||||
|
);
|
||||||
|
|
||||||
const ActivateUserForm = loadable(
|
const ActivateUserForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/activateUser")
|
componentLoader(() => import("../pages/Confirm/sub-components/activateUser")),
|
||||||
);
|
);
|
||||||
const CreateUserForm = loadable(
|
const CreateUserForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/createUser")
|
componentLoader(() => import("../pages/Confirm/sub-components/createUser")),
|
||||||
);
|
);
|
||||||
const ChangePasswordForm = loadable(
|
const ChangePasswordForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/changePassword")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/changePassword"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const ActivateEmailForm = loadable(
|
const ActivateEmailForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/activateEmail")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/activateEmail"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const ChangeEmailForm = loadable(
|
const ChangeEmailForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/changeEmail")
|
componentLoader(() => import("../pages/Confirm/sub-components/changeEmail")),
|
||||||
);
|
);
|
||||||
const ChangePhoneForm = loadable(
|
const ChangePhoneForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/changePhone")
|
componentLoader(() => import("../pages/Confirm/sub-components/changePhone")),
|
||||||
);
|
);
|
||||||
const ProfileRemoveForm = loadable(
|
const ProfileRemoveForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/profileRemove")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/profileRemove"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const ChangeOwnerForm = loadable(
|
const ChangeOwnerForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/changeOwner")
|
componentLoader(() => import("../pages/Confirm/sub-components/changeOwner")),
|
||||||
);
|
);
|
||||||
const TfaAuthForm = loadable(
|
const TfaAuthForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/tfaAuth")
|
componentLoader(() => import("../pages/Confirm/sub-components/tfaAuth")),
|
||||||
);
|
);
|
||||||
const TfaActivationForm = loadable(
|
const TfaActivationForm = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/tfaActivation")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/tfaActivation"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const RemovePortal = loadable(
|
const RemovePortal = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/removePortal")
|
componentLoader(() => import("../pages/Confirm/sub-components/removePortal")),
|
||||||
);
|
);
|
||||||
const DeactivatePortal = loadable(
|
const DeactivatePortal = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/deactivatePortal")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/deactivatePortal"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const ContinuePortal = loadable(
|
const ContinuePortal = loadable(() =>
|
||||||
() => import("../pages/Confirm/sub-components/continuePortal")
|
componentLoader(
|
||||||
|
() => import("../pages/Confirm/sub-components/continuePortal"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const Auth = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/Confirm/sub-components/auth")),
|
||||||
);
|
);
|
||||||
const Auth = loadable(() => import("../pages/Confirm/sub-components/auth"));
|
|
||||||
|
|
||||||
const confirmRoutes = [
|
const confirmRoutes = [
|
||||||
{
|
{
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { Navigate } from "react-router-dom";
|
import { Navigate } from "react-router-dom";
|
||||||
|
|
||||||
import loadable from "@loadable/component";
|
import loadable from "@loadable/component";
|
||||||
|
|
||||||
import PrivateRoute from "../components/PrivateRouteWrapper";
|
import PrivateRoute from "../components/PrivateRouteWrapper";
|
||||||
|
import componentLoader from "@docspace/shared/utils/component-loader";
|
||||||
|
|
||||||
const Profile = loadable(() => import("../pages/Profile"));
|
const Profile = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/Profile")),
|
||||||
|
);
|
||||||
|
|
||||||
const generalRoutes = [
|
const generalRoutes = [
|
||||||
{
|
{
|
||||||
|
@ -4,174 +4,242 @@ import loadable from "@loadable/component";
|
|||||||
|
|
||||||
import PrivateRoute from "../components/PrivateRouteWrapper";
|
import PrivateRoute from "../components/PrivateRouteWrapper";
|
||||||
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
import ErrorBoundary from "../components/ErrorBoundaryWrapper";
|
||||||
|
import componentLoader from "@docspace/shared/utils/component-loader";
|
||||||
|
|
||||||
import Error404 from "@docspace/shared/components/errors/Error404";
|
import Error404 from "@docspace/shared/components/errors/Error404";
|
||||||
|
|
||||||
import { generalRoutes } from "./general";
|
import { generalRoutes } from "./general";
|
||||||
|
|
||||||
const PortalSettings = loadable(() => import("../pages/PortalSettings"));
|
const PortalSettings = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/PortalSettings")),
|
||||||
const CustomizationSettings = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/common/index.js"),
|
|
||||||
);
|
|
||||||
const LanguageAndTimeZoneSettings = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Customization/language-and-time-zone"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const WelcomePageSettings = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Customization/welcome-page-settings"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const DNSSettings = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Customization/dns-settings"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const PortalRenaming = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Customization/portal-renaming"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const WhiteLabel = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/common/Branding/whitelabel"),
|
|
||||||
);
|
|
||||||
const CompanyInfoSettings = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Branding/companyInfoSettings"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const AdditionalResources = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/common/Branding/additionalResources"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const SecuritySettings = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/security/index.js"),
|
|
||||||
);
|
|
||||||
const TfaPage = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/security/access-portal/tfa"),
|
|
||||||
);
|
|
||||||
const PasswordStrengthPage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/passwordStrength"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const TrustedMailPage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/trustedMail"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const IpSecurityPage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/ipSecurity"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const BruteForceProtectionPage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/bruteForceProtection"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const AdminMessagePage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/adminMessage"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const SessionLifetimePage = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/security/access-portal/sessionLifetime"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const Integration = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/integration"),
|
|
||||||
);
|
|
||||||
const Payments = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/payments"),
|
|
||||||
);
|
|
||||||
const Statistics = loadable(
|
|
||||||
() => import("../pages/PortalSettings/categories/storage-management"),
|
|
||||||
);
|
|
||||||
const QuotaPerRoom = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/storage-management/sub-components/QuotaPerRoom.js"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const QuotaPerUser = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/storage-management/sub-components/QuotaPerUser.js"
|
|
||||||
),
|
|
||||||
);
|
|
||||||
const ThirdParty = loadable(
|
|
||||||
() =>
|
|
||||||
import(
|
|
||||||
"../pages/PortalSettings/categories/integration/ThirdPartyServicesSettings"
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
const DocumentService = loadable(
|
const Statistics = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import("../pages/PortalSettings/categories/integration/DocumentService"),
|
() => import("../pages/PortalSettings/categories/storage-management"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const QuotaPerRoom = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/storage-management/sub-components/QuotaPerRoom.js"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const QuotaPerUser = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/storage-management/sub-components/QuotaPerUser.js"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
const SingleSignOn = loadable(
|
const CustomizationSettings = loadable(() =>
|
||||||
() => import("../pages/PortalSettings/categories/integration/SingleSignOn"),
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/common/index.js"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const SPSettings = loadable(
|
const LanguageAndTimeZoneSettings = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import(
|
() =>
|
||||||
"../pages/PortalSettings/categories/integration/SingleSignOn/SPSettings"
|
import(
|
||||||
),
|
"../pages/PortalSettings/categories/common/Customization/language-and-time-zone"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const SPMetadata = loadable(
|
const WelcomePageSettings = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import(
|
() =>
|
||||||
"../pages/PortalSettings/categories/integration/SingleSignOn/ProviderMetadata"
|
import(
|
||||||
),
|
"../pages/PortalSettings/categories/common/Customization/welcome-page-settings"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const DNSSettings = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/common/Customization/dns-settings"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const PortalRenaming = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/common/Customization/portal-renaming"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const WhiteLabel = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import("../pages/PortalSettings/categories/common/Branding/whitelabel"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const CompanyInfoSettings = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/common/Branding/companyInfoSettings"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const AdditionalResources = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/common/Branding/additionalResources"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const SecuritySettings = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/security/index.js"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const TfaPage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import("../pages/PortalSettings/categories/security/access-portal/tfa"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const PasswordStrengthPage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/passwordStrength"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const TrustedMailPage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/trustedMail"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const IpSecurityPage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/ipSecurity"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const BruteForceProtectionPage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/bruteForceProtection"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const AdminMessagePage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/adminMessage"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const SessionLifetimePage = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/security/access-portal/sessionLifetime"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const Integration = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/integration"),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const Payments = loadable(() =>
|
||||||
|
componentLoader(() => import("../pages/PortalSettings/categories/payments")),
|
||||||
|
);
|
||||||
|
// const ThirdParty = loadable(() =>
|
||||||
|
// componentLoader(
|
||||||
|
// () =>
|
||||||
|
// import(
|
||||||
|
// "../pages/PortalSettings/categories/integration/ThirdPartyServicesSettings"
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// );
|
||||||
|
|
||||||
|
// const DocumentService = loadable(() =>
|
||||||
|
// componentLoader(
|
||||||
|
// () =>
|
||||||
|
// import("../pages/PortalSettings/categories/integration/DocumentService"),
|
||||||
|
// ),
|
||||||
|
// );
|
||||||
|
|
||||||
|
// const SingleSignOn = loadable(() =>
|
||||||
|
// componentLoader(
|
||||||
|
// () => import("../pages/PortalSettings/categories/integration/SingleSignOn"),
|
||||||
|
// ),
|
||||||
|
// );
|
||||||
|
const SPSettings = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/integration/SingleSignOn/SPSettings"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
const SPMetadata = loadable(() =>
|
||||||
|
componentLoader(
|
||||||
|
() =>
|
||||||
|
import(
|
||||||
|
"../pages/PortalSettings/categories/integration/SingleSignOn/ProviderMetadata"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
const DeveloperTools = loadable(
|
const DeveloperTools = loadable(() =>
|
||||||
() => import("../pages/PortalSettings/categories/developer-tools/index.js"),
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/developer-tools/index.js"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const WebhookHistory = loadable(
|
const WebhookHistory = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import(
|
() =>
|
||||||
"../pages/PortalSettings/categories/developer-tools/Webhooks/WebhookHistory"
|
import(
|
||||||
),
|
"../pages/PortalSettings/categories/developer-tools/Webhooks/WebhookHistory"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const WebhookDetails = loadable(
|
const WebhookDetails = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import(
|
() =>
|
||||||
"../pages/PortalSettings/categories/developer-tools/Webhooks/WebhookEventDetails"
|
import(
|
||||||
),
|
"../pages/PortalSettings/categories/developer-tools/Webhooks/WebhookEventDetails"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const Backup = loadable(
|
const Backup = loadable(() =>
|
||||||
() => import("../pages/PortalSettings/categories/data-management/index"),
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/data-management/index"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const DeleteDataPage = loadable(
|
const DeleteDataPage = loadable(() =>
|
||||||
() => import("../pages/PortalSettings/categories/delete-data"),
|
componentLoader(
|
||||||
|
() => import("../pages/PortalSettings/categories/delete-data"),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const RestoreBackup = loadable(
|
const RestoreBackup = loadable(() =>
|
||||||
() =>
|
componentLoader(
|
||||||
import(
|
() =>
|
||||||
"../pages/PortalSettings/categories/data-management/backup/restore-backup/index"
|
import(
|
||||||
),
|
"../pages/PortalSettings/categories/data-management/backup/restore-backup/index"
|
||||||
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
const Bonus = loadable(() => import("../pages/Bonus"));
|
const Bonus = loadable(() => componentLoader(() => import("../pages/Bonus")));
|
||||||
|
|
||||||
const SimpleRoom = loadable(
|
const SimpleRoom = loadable(
|
||||||
() =>
|
() =>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@docspace/login",
|
"name": "@docspace/login",
|
||||||
"version": "2.0.3",
|
"version": "2.0.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"homepage": "/login",
|
"homepage": "/login",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@docspace/shared",
|
"name": "@docspace/shared",
|
||||||
"version": "2.0.3",
|
"version": "2.0.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "echo 'skip it'",
|
"build": "echo 'skip it'",
|
||||||
@ -175,3 +175,4 @@
|
|||||||
"react-dom": "^18.2.0"
|
"react-dom": "^18.2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
22
packages/shared/utils/component-loader.ts
Normal file
22
packages/shared/utils/component-loader.ts
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
export default function componentLoader(
|
||||||
|
lazyComponent: Function,
|
||||||
|
attemptsLeft: number = 3
|
||||||
|
) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
lazyComponent()
|
||||||
|
.then(resolve)
|
||||||
|
.catch((error: unknown) => {
|
||||||
|
// let us retry after 1500 ms
|
||||||
|
setTimeout(() => {
|
||||||
|
if (attemptsLeft === 1) {
|
||||||
|
reject(error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
componentLoader(lazyComponent, attemptsLeft - 1).then(
|
||||||
|
resolve,
|
||||||
|
reject
|
||||||
|
);
|
||||||
|
}, 1500);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user