diff --git a/packages/platform/atoms/cal-provider/BaseCalProvider.tsx b/packages/platform/atoms/cal-provider/BaseCalProvider.tsx index ae0aeab6e2..7e7df6972d 100644 --- a/packages/platform/atoms/cal-provider/BaseCalProvider.tsx +++ b/packages/platform/atoms/cal-provider/BaseCalProvider.tsx @@ -62,6 +62,35 @@ export function BaseCalProvider({ clientId, }); + const translations = { + t: (key: string, values: Record) => { + let translation = String(enTranslations[key as translationKeys] ?? ""); + if (!translation) { + return ""; + } + if (values) { + const valueKeys = Object.keys(values) as (keyof typeof values)[]; + if (valueKeys.length) { + valueKeys.forEach((valueKey) => { + if (translation) + translation = translation.replace( + `{{${String(valueKey)}}}`, + values[valueKey]?.toString() ?? `{{${String(valueKey)}}}` + ); + }); + } + } + + return replaceOccurrences(translation, enTranslations) ?? ""; + }, + i18n: { + language: "en", + defaultLocale: "en", + locales: ["en"], + exists: (key: translationKeys | string) => Boolean(enTranslations[key as translationKeys]), + }, + }; + return isInit ? ( { - let translation = String(enTranslations[key as translationKeys] ?? ""); - if (!translation) { - return ""; - } - if (values) { - const valueKeys = Object.keys(values) as (keyof typeof values)[]; - if (valueKeys.length) { - valueKeys.forEach((valueKey) => { - if (translation) - translation = translation.replace( - `{{${String(valueKey)}}}`, - values[valueKey]?.toString() ?? `{{${String(valueKey)}}}` - ); - }); - } - } - - return replaceOccurrences(translation, enTranslations) ?? ""; - }, - i18n: { - language: "en", - defaultLocale: "en", - locales: ["en"], - exists: (key: translationKeys | string) => Boolean(enTranslations[key as translationKeys]), - }, + ...translations, }}> {children} ) : ( - <> - {children} - - + http, + isAuth: false, + isValidClient: Boolean(!error && clientId), + isInit: false, + isRefreshing: false, + ...translations, + }}> + <> + {children} + + + ); } diff --git a/packages/platform/atoms/hooks/useAtomsContext.ts b/packages/platform/atoms/hooks/useAtomsContext.ts index d963230a08..47a9c0d2d9 100644 --- a/packages/platform/atoms/hooks/useAtomsContext.ts +++ b/packages/platform/atoms/hooks/useAtomsContext.ts @@ -25,7 +25,7 @@ export interface IAtomsContext { i18n: { language: string; defaultLocale: string; - locales: [string]; + locales: string[]; exists: (key: translationKeys | string) => boolean; }; } diff --git a/packages/platform/atoms/package.json b/packages/platform/atoms/package.json index 4bac3b990c..d13c2c7dda 100644 --- a/packages/platform/atoms/package.json +++ b/packages/platform/atoms/package.json @@ -4,7 +4,7 @@ "type": "module", "description": "Customizable UI components to integrate scheduling into your product.", "authors": "Cal.com, Inc.", - "version": "1.0.30", + "version": "1.0.35", "scripts": { "dev": "yarn vite build --watch & npx tailwindcss -i ./globals.css -o ./globals.min.css --postcss --minify --watch", "build": "yarn vite build && npx tailwindcss -i ./globals.css -o ./globals.min.css --postcss --minify",