Support managed hybrid widgets from config

This adds additional support to the managed hybrid widget experiment to also
support pulling the build URL from Element config.
pull/21833/head
J. Ryan Stinnett 2021-01-29 16:26:31 +00:00
parent 3f89da9b8f
commit f8192a8314
1 changed files with 11 additions and 4 deletions

View File

@ -21,6 +21,7 @@ import WidgetUtils from "../utils/WidgetUtils";
import { IStoredLayout, WidgetLayoutStore } from "../stores/widgets/WidgetLayoutStore"; import { IStoredLayout, WidgetLayoutStore } from "../stores/widgets/WidgetLayoutStore";
import WidgetEchoStore from "../stores/WidgetEchoStore"; import WidgetEchoStore from "../stores/WidgetEchoStore";
import WidgetStore from "../stores/WidgetStore"; import WidgetStore from "../stores/WidgetStore";
import SdkConfig from "../SdkConfig";
/* eslint-disable camelcase */ /* eslint-disable camelcase */
interface IManagedHybridWidgetData { interface IManagedHybridWidgetData {
@ -30,10 +31,16 @@ interface IManagedHybridWidgetData {
} }
/* eslint-enable camelcase */ /* eslint-enable camelcase */
export function isManagedHybridWidgetEnabled(): boolean { function getWidgetBuildUrl(): string {
const callBehaviour = getCallBehaviourWellKnown(); if (SdkConfig.get().widget_build_url) {
return SdkConfig.get().widget_build_url;
}
/* eslint-disable-next-line camelcase */ /* eslint-disable-next-line camelcase */
return !!callBehaviour?.widget_build_url; return getCallBehaviourWellKnown()?.widget_build_url
}
export function isManagedHybridWidgetEnabled(): boolean {
return !!getWidgetBuildUrl();
} }
export async function addManagedHybridWidget(roomId: string) { export async function addManagedHybridWidget(roomId: string) {
@ -51,7 +58,7 @@ export async function addManagedHybridWidget(roomId: string) {
// Get widget data // Get widget data
/* eslint-disable-next-line camelcase */ /* eslint-disable-next-line camelcase */
const widgetBuildUrl = getCallBehaviourWellKnown()?.widget_build_url; const widgetBuildUrl = getWidgetBuildUrl();
if (!widgetBuildUrl) { if (!widgetBuildUrl) {
return; return;
} }