UNPKG

@shopgate/engage

Version:
11 lines 1.02 kB
import{themeName,shopNumber}from'@shopgate/pwa-common/helpers/config';import{isDev}from'@shopgate/engage/core/helpers';var STORE_KEY_PREFIX="sgFeatureFlag_".concat(shopNumber,"_").concat(themeName,"__");/** * @param {string} key key * @returns {string} */export function getFeatureFlag(key){return window.localStorage.getItem("".concat(STORE_KEY_PREFIX).concat(key));}/** * @param {string} key key */export function setABFeatureFlag(key){var hasFlag=getFeatureFlag(key);// flag is already set for user if(hasFlag!==null){return;}var random=Math.round(Math.random()*100+1);window.localStorage.setItem("".concat(STORE_KEY_PREFIX).concat(key),random);}/** * @param {string} key Key * @param {number} percentage percentage for how many users the flag should be set * @returns {boolean} */export function isFeatureEnabled(key){var percentage=arguments.length>1&&arguments[1]!==undefined?arguments[1]:10;if(isDev){return true;}var featureFlagRandomNumber=getFeatureFlag(key);return featureFlagRandomNumber<=percentage;}