From 6df2e4009c758668d7e3baec0bbab376266aa4dc Mon Sep 17 00:00:00 2001 From: Calin-Teodor Date: Wed, 29 Jun 2022 17:50:06 +0300 Subject: [PATCH] feat(dynamic-branding): get branding data from state --- react/features/dynamic-branding/actions.any.js | 2 +- react/features/dynamic-branding/actions.native.js | 3 ++- react/features/dynamic-branding/functions.any.js | 10 +++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/react/features/dynamic-branding/actions.any.js b/react/features/dynamic-branding/actions.any.js index 1c52e6bb3..e750c2147 100644 --- a/react/features/dynamic-branding/actions.any.js +++ b/react/features/dynamic-branding/actions.any.js @@ -22,7 +22,7 @@ export function fetchCustomBrandingData() { const { customizationReady } = state['features/dynamic-branding']; if (!customizationReady) { - const url = await getDynamicBrandingUrl(); + const url = await getDynamicBrandingUrl(state); if (url) { try { diff --git a/react/features/dynamic-branding/actions.native.js b/react/features/dynamic-branding/actions.native.js index b4733ea31..9ae8a5744 100644 --- a/react/features/dynamic-branding/actions.native.js +++ b/react/features/dynamic-branding/actions.native.js @@ -6,6 +6,7 @@ import { setDynamicBrandingFailed, setDynamicBrandingReady } from './actions.any'; +import { getDynamicBrandingUrl } from './functions.any'; import logger from './logger'; @@ -19,7 +20,7 @@ import logger from './logger'; export function fetchCustomBrandingData() { return async function(dispatch: Function, getState: Function) { const state = getState(); - const { dynamicBrandingUrl } = state['features/base/config']; + const dynamicBrandingUrl = await getDynamicBrandingUrl(state); if (dynamicBrandingUrl) { try { diff --git a/react/features/dynamic-branding/functions.any.js b/react/features/dynamic-branding/functions.any.js index 9f23aa962..da552cbc9 100644 --- a/react/features/dynamic-branding/functions.any.js +++ b/react/features/dynamic-branding/functions.any.js @@ -1,6 +1,7 @@ // @flow -import { loadConfig } from '../base/lib-jitsi-meet/functions'; +import { toState } from '../base/redux'; + /** * Extracts the fqn part from a path, where fqn represents @@ -29,10 +30,13 @@ export function extractFqnFromPath(state?: Object) { /** * Returns the url used for fetching dynamic branding. * + * @param {Object | Function} stateful - The redux store, state, or + * {@code getState} function. * @returns {string} */ -export async function getDynamicBrandingUrl() { - const config = await loadConfig(window.location.href); +export async function getDynamicBrandingUrl(stateful: Object | Function) { + const state = toState(stateful); + const config = state['features/base/config']; const { dynamicBrandingUrl } = config; if (dynamicBrandingUrl) {