diff --git a/client/packages/lowcoder/src/comps/comps/remoteComp/loaders.tsx b/client/packages/lowcoder/src/comps/comps/remoteComp/loaders.tsx index 1f15cff05e..cd785a5131 100644 --- a/client/packages/lowcoder/src/comps/comps/remoteComp/loaders.tsx +++ b/client/packages/lowcoder/src/comps/comps/remoteComp/loaders.tsx @@ -1,3 +1,4 @@ +import { BASE_URL } from "constants/routesURL"; import { NPM_PLUGIN_ASSETS_BASE_URL } from "constants/npmPlugins"; import { trans } from "i18n"; import { CompConstructor } from "lowcoder-core"; @@ -38,7 +39,7 @@ async function bundleLoader( remoteInfo: RemoteCompInfo ): Promise { const { packageName, packageVersion = "latest", compName } = remoteInfo; - const entry = `/${packageName}/${packageVersion}/index.js?v=${REACT_APP_COMMIT_ID}`; + const entry = `${BASE_URL !== "/" ? BASE_URL : ""}/${packageName}/${packageVersion}/index.js?v=${REACT_APP_COMMIT_ID}`; const module = await import( /* @vite-ignore */ /* webpackIgnore: true */ diff --git a/client/packages/lowcoder/src/constants/routesURL.ts b/client/packages/lowcoder/src/constants/routesURL.ts index b57f27ac2b..e90d3f6607 100644 --- a/client/packages/lowcoder/src/constants/routesURL.ts +++ b/client/packages/lowcoder/src/constants/routesURL.ts @@ -4,38 +4,39 @@ import { UserGuideLocationState } from "pages/tutorials/tutorialsConstant"; import { DatasourceType } from "@lowcoder-ee/constants/queryConstants"; export const BASE_URL = "/"; -export const USER_AUTH_URL = "/user/auth"; -export const USER_PROFILE_URL = "/user/profile"; -export const NEWS_URL = "/news"; -export const ORG_HOME_URL = "/org/home"; -export const COMPONENT_DOC_URL = "/components"; -export const SETTING = "/setting"; -export const PERMISSION_SETTING = "/setting/permission"; -export const ORGANIZATION_SETTING = "/setting/organization"; -export const THEME_SETTING = "/setting/theme"; -export const PLUGINS_SETTING = "/setting/plugins"; -export const THEME_DETAIL = "/setting/theme/detail"; +export const APP_ROOT = (BASE_URL === "/") ? "" : BASE_URL; +export const USER_AUTH_URL = `${APP_ROOT}/user/auth`; +export const USER_PROFILE_URL = `${APP_ROOT}/user/profile`; +export const NEWS_URL = `${APP_ROOT}/news`; +export const ORG_HOME_URL = `${APP_ROOT}/org/home`; +export const COMPONENT_DOC_URL = `${APP_ROOT}/components`; +export const SETTING = `${APP_ROOT}/setting`; +export const PERMISSION_SETTING = `${APP_ROOT}/setting/permission`; +export const ORGANIZATION_SETTING = `${APP_ROOT}/setting/organization`; +export const THEME_SETTING = `${APP_ROOT}/setting/theme`; +export const PLUGINS_SETTING = `${APP_ROOT}/setting/plugins`; +export const THEME_DETAIL = `${APP_ROOT}/setting/theme/detail`; -export const OAUTH_PROVIDER_SETTING = "/setting/oauth-provider"; -export const OAUTH_PROVIDER_DETAIL = "/setting/oauth-provider/detail"; +export const OAUTH_PROVIDER_SETTING = `${APP_ROOT}/setting/oauth-provider`; +export const OAUTH_PROVIDER_DETAIL = `${APP_ROOT}/setting/oauth-provider/detail`; export const PERMISSION_SETTING_DETAIL = `${PERMISSION_SETTING}/:groupId`; export const ORGANIZATION_SETTING_DETAIL = `${ORGANIZATION_SETTING}/:orgId`; -export const ALL_APPLICATIONS_URL = "/apps"; -export const ADMIN_APP_URL = "/ee/:applicationId/:viewMode"; +export const ALL_APPLICATIONS_URL = `${APP_ROOT}/apps`; +export const ADMIN_APP_URL = `${APP_ROOT}/ee/:applicationId/:viewMode`; export const APPLICATION_MARKETPLACE_URL = `https://app.lowcoder.cloud/apps`; -export const MODULE_APPLICATIONS_URL = "/apps/module"; -export const MARKETPLACE_URL = `/marketplace`; -export const DATASOURCE_URL = `/datasource`; +export const MODULE_APPLICATIONS_URL = `${APP_ROOT}/apps/module`; +export const MARKETPLACE_URL = `${APP_ROOT}/marketplace`; +export const DATASOURCE_URL = `${APP_ROOT}/datasource`; export const DATASOURCE_CREATE_URL = `${DATASOURCE_URL}/new/:datasourceType`; export const DATASOURCE_EDIT_URL = `${DATASOURCE_URL}/:datasourceId`; -export const QUERY_LIBRARY_URL = `/query-library`; -export const API_DOCS_URL = `/lowcoder-api`; -export const FOLDER_URL_PREFIX = `/folder`; +export const QUERY_LIBRARY_URL = `${APP_ROOT}/query-library`; +export const API_DOCS_URL = `${APP_ROOT}/lowcoder-api`; +export const FOLDER_URL_PREFIX = `${APP_ROOT}/folder`; export const FOLDER_URL = `${FOLDER_URL_PREFIX}/:folderId`; -export const FOLDERS_URL = `/folders`; -export const TRASH_URL = `/trash`; +export const FOLDERS_URL = `${APP_ROOT}/folders`; +export const TRASH_URL = `${APP_ROOT}/trash`; export const IMPORT_APP_FROM_TEMPLATE_URL = `${ALL_APPLICATIONS_URL}/template-import/:templateId`; export const APP_EDITOR_URL = `${ALL_APPLICATIONS_URL}/:applicationId/:viewMode/:appPageId?`; @@ -48,18 +49,18 @@ export const QR_CODE_OAUTH_URL = `${USER_AUTH_URL}/oauth/qrcode`; export const OAUTH_REDIRECT = `${USER_AUTH_URL}/oauth/redirect`; export const CAS_AUTH_REDIRECT = `${USER_AUTH_URL}/cas/redirect`; export const LDAP_AUTH_LOGIN_URL = `${USER_AUTH_URL}/ldap/login`; -export const INVITE_LANDING_URL = "/invite/:invitationId"; -export const ORG_AUTH_LOGIN_URL = `/org/:orgId/auth/login`; -export const ORG_AUTH_REGISTER_URL = `/org/:orgId/auth/register`; -export const ORG_AUTH_FORGOT_PASSWORD_URL = `/org/:orgId/auth/forgot-password`; -export const ORG_AUTH_RESET_PASSWORD_URL = `/org/:orgId/auth/lost-password`; +export const INVITE_LANDING_URL = `${APP_ROOT}/invite/:invitationId`; +export const ORG_AUTH_LOGIN_URL = `${APP_ROOT}/org/:orgId/auth/login`; +export const ORG_AUTH_REGISTER_URL = `${APP_ROOT}/org/:orgId/auth/register`; +export const ORG_AUTH_FORGOT_PASSWORD_URL = `${APP_ROOT}/org/:orgId/auth/forgot-password`; +export const ORG_AUTH_RESET_PASSWORD_URL = `${APP_ROOT}/org/:orgId/auth/lost-password`; export const MARKETPLACE_TYPE_URL = `${MARKETPLACE_URL}/:marketplaceType`; export const APPLICATION_VIEW_URL = (appId: string, viewMode: AppViewMode) => `${ALL_APPLICATIONS_URL}/${appId}/${viewMode}`; export const APPLICATION_MARKETPLACE_VIEW_URL = (appId: string, viewMode: AppViewMode) => -`${APPLICATION_MARKETPLACE_URL}/${appId}/${viewMode}`; + `${APPLICATION_MARKETPLACE_URL}/${appId}/${viewMode}`; export const MARKETPLACE_URL_BY_TYPE = (type: MarketplaceType) => `${MARKETPLACE_URL}/${type}`;