react-native-unit-components
Version:
Unit React Native components
31 lines (27 loc) • 920 B
text/typescript
import { UnitComponentsSDK } from './UnitComponentsSdkManager';
import { getUnitScriptUrl } from './UnitComponentsSdkManager.utils.internal';
import { store } from '../store/store';
import { setUnitScript } from '../slices/ConfigurationSlice';
let isLoadingScript = false;
export const fetchUnitScript = async () => {
const env = UnitComponentsSDK.getEnv();
const webVersioningStrategy = UnitComponentsSDK.getWebVersioningStrategy();
if (isLoadingScript || !env) {
// init function is called and success OR in progress
return null;
}
isLoadingScript = true;
try {
const unitScriptRes = await fetch(getUnitScriptUrl(env, webVersioningStrategy));
const unitScript = await unitScriptRes.text();
if (unitScript) {
store.dispatch(setUnitScript(unitScript));
}
return null;
} catch (e) {
console.log(e);
return null;
} finally {
isLoadingScript = false;
}
};