From c9bffdfecba74e5cd0922479b4cf4a5e61973253 Mon Sep 17 00:00:00 2001 From: Oli Juhl <59018053+olivermrbl@users.noreply.github.com> Date: Mon, 20 May 2024 11:24:15 +0200 Subject: [PATCH] feat: expose backend url in admin options (#7370) --- packages/admin-next/admin-sdk/src/lib/config.ts | 9 +++------ packages/admin-next/admin-sdk/src/types.ts | 2 +- packages/core/types/src/common/config-module.ts | 4 ++++ 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/admin-next/admin-sdk/src/lib/config.ts b/packages/admin-next/admin-sdk/src/lib/config.ts index a9c67bc276..4a0f817285 100644 --- a/packages/admin-next/admin-sdk/src/lib/config.ts +++ b/packages/admin-next/admin-sdk/src/lib/config.ts @@ -17,6 +17,8 @@ export async function getViteConfig( const root = path.resolve(__dirname, "./") + const backendUrl = options.backendUrl ?? "" + return { root: path.resolve(__dirname, "./"), base: options.path, @@ -29,12 +31,7 @@ export async function getViteConfig( }, define: { __BASE__: JSON.stringify(options.path), - /** - * TODO: Accept backend url from config to support hosting the admin elsewhere. - * The empty string should be the default value, as that ensures that requests - * are made to the server that serves the admin dashboard. - */ - __BACKEND_URL__: JSON.stringify(""), + __BACKEND_URL__: JSON.stringify(backendUrl), }, server: { open: true, diff --git a/packages/admin-next/admin-sdk/src/types.ts b/packages/admin-next/admin-sdk/src/types.ts index ef9b8132bc..43836096ae 100644 --- a/packages/admin-next/admin-sdk/src/types.ts +++ b/packages/admin-next/admin-sdk/src/types.ts @@ -1,4 +1,4 @@ import { AdminOptions } from "@medusajs/types" export type BundlerOptions = Required> & - Pick + Pick diff --git a/packages/core/types/src/common/config-module.ts b/packages/core/types/src/common/config-module.ts index ba3e85b9ff..472511a2f2 100644 --- a/packages/core/types/src/common/config-module.ts +++ b/packages/core/types/src/common/config-module.ts @@ -33,6 +33,10 @@ export type AdminOptions = { * The default value is `./build`. */ outDir?: string + /** + * The URL of your Medusa server. Defaults to an empty string, which means requests will hit the same server that serves the dashboard. + */ + backendUrl?: string /** * Configure the Vite configuration for the admin dashboard. This function receives the default Vite configuration * and returns the modified configuration. The default value is `undefined`.