diff --git a/src/lib/components/LoginOtp.tsx b/src/lib/components/LoginOtp.tsx index f09df5da..2406aef6 100644 --- a/src/lib/components/LoginOtp.tsx +++ b/src/lib/components/LoginOtp.tsx @@ -4,7 +4,7 @@ import type { KcProps } from "./KcProps"; import type { KcContextBase } from "../getKcContext/KcContextBase"; import { useKcMessage } from "../i18n/useKcMessage"; import { headInsert } from "../tools/headInsert"; -import { join as pathJoin } from "path"; +import { pathJoin } from "../tools/pathJoin"; import { useCssAndCx } from "tss-react"; export const LoginOtp = memo(({ kcContext, ...props }: { kcContext: KcContextBase.LoginOtp } & KcProps) => { diff --git a/src/lib/getKcContext/kcContextMocks/kcContextMocks.ts b/src/lib/getKcContext/kcContextMocks/kcContextMocks.ts index 076d2e65..dd399564 100644 --- a/src/lib/getKcContext/kcContextMocks/kcContextMocks.ts +++ b/src/lib/getKcContext/kcContextMocks/kcContextMocks.ts @@ -5,7 +5,7 @@ import { getKcLanguageTagLabel } from "../../i18n/KcLanguageTag"; //NOTE: Aside because we want to be able to import them from node import { resourcesCommonPath, resourcesPath } from "./urlResourcesPath"; import { id } from "tsafe/id"; -import { join as pathJoin } from "path"; +import { pathJoin } from "../../tools/pathJoin"; const PUBLIC_URL = process.env["PUBLIC_URL"] ?? "/"; diff --git a/src/lib/getKcContext/kcContextMocks/urlResourcesPath.ts b/src/lib/getKcContext/kcContextMocks/urlResourcesPath.ts index 47d7a7f2..542126dd 100644 --- a/src/lib/getKcContext/kcContextMocks/urlResourcesPath.ts +++ b/src/lib/getKcContext/kcContextMocks/urlResourcesPath.ts @@ -1,5 +1,5 @@ -import { join as pathJoin } from "path"; +import { pathJoin } from "../../tools/pathJoin"; export const subDirOfPublicDirBasename = "keycloak_static"; -export const resourcesPath = pathJoin(subDirOfPublicDirBasename, "/resources"); -export const resourcesCommonPath = pathJoin(subDirOfPublicDirBasename, "/resources_common"); +export const resourcesPath = pathJoin(subDirOfPublicDirBasename, "resources"); +export const resourcesCommonPath = pathJoin(subDirOfPublicDirBasename, "resources_common"); diff --git a/src/lib/tools/pathJoin.ts b/src/lib/tools/pathJoin.ts new file mode 100644 index 00000000..f3dff1b4 --- /dev/null +++ b/src/lib/tools/pathJoin.ts @@ -0,0 +1,3 @@ +export function pathJoin(...path: string[]): string { + return path.map(part => part.replace(/^\/+/, "").replace(/\/+$/, "")).join("/"); +}