diff --git a/src/ui/index.js b/src/ui/index.js index 568ba449e9a39a..0de674878ed18c 100644 --- a/src/ui/index.js +++ b/src/ui/index.js @@ -66,6 +66,7 @@ export default async (kbnServer, server, config) => { async function getKibanaPayload({ app, request, includeUserProvidedConfig }) { const uiSettings = server.uiSettings(); + const translations = await uiI18n.getTranslationsForRequest(request); return { app: app, @@ -76,6 +77,7 @@ export default async (kbnServer, server, config) => { basePath: config.get('server.basePath'), serverName: config.get('server.name'), devMode: config.get('env.dev'), + translations: translations, uiSettings: await props({ defaults: uiSettings.getDefaults(), user: includeUserProvidedConfig && uiSettings.getUserProvided(request) diff --git a/src/ui/public/chrome/api/translations.js b/src/ui/public/chrome/api/translations.js new file mode 100644 index 00000000000000..3d4eec178bfa3f --- /dev/null +++ b/src/ui/public/chrome/api/translations.js @@ -0,0 +1,5 @@ +export default function (chrome, internals) { + chrome.getTranslations = function () { + return internals.translations || []; + }; +} diff --git a/src/ui/public/chrome/chrome.js b/src/ui/public/chrome/chrome.js index 394a187e38f869..cb61585e5ffd2e 100644 --- a/src/ui/public/chrome/chrome.js +++ b/src/ui/public/chrome/chrome.js @@ -43,6 +43,7 @@ angularApi(chrome, internals); controlsApi(chrome, internals); templateApi(chrome, internals); themeApi(chrome, internals); +require('./api/translations')(chrome, internals); chrome.bootstrap = function () { chrome.setupAngular();