DocSpace-client/packages/shared/utils/campaigns.ts

54 lines
1.5 KiB
TypeScript
Raw Normal View History

2024-02-14 11:28:56 +00:00
export const getCampaignsLs = (standalone: boolean) => {
if (standalone) {
return window.DocSpaceConfig?.campaigns || [];
2024-02-12 12:26:56 +00:00
}
return (localStorage.getItem("docspace_campaigns") || "")
.split(",")
.filter((campaign) => campaign.length > 0);
};
export const getImage = async (
campaign: string,
standalone: boolean,
): Promise<string> => {
if (standalone) {
2024-02-19 17:38:47 +00:00
return `/static/campaigns/images/campaign.${campaign.toLowerCase()}.svg`;
2024-02-12 12:26:56 +00:00
}
const imageUrl = await window.firebaseHelper.getCampaignsImages(campaign);
return imageUrl;
};
export const getTranslation = async (
campaign: string,
lng: string,
standalone: boolean,
) => {
let translationUrl;
if (standalone) {
2024-02-19 17:38:47 +00:00
translationUrl = `/static/campaigns/locales/${lng}/Campaign${campaign}.json`;
2024-02-12 12:26:56 +00:00
} else {
translationUrl = await window.firebaseHelper.getCampaignsTranslations(
campaign,
lng,
);
}
const res = await fetch(translationUrl);
return Promise.resolve(res.json());
};
export const getConfig = async (campaign: string, standalone: boolean) => {
let configUrl;
if (standalone) {
2024-02-19 17:38:47 +00:00
configUrl = `/static/campaigns/configs/Campaign${campaign}.json`;
2024-02-12 12:26:56 +00:00
} else {
configUrl = await window.firebaseHelper.getCampaignConfig(campaign);
}
const res = await fetch(configUrl);
return Promise.resolve(res.json());
};
2024-02-12 16:00:22 +00:00
export const isHideBannerForUser = (userType: string, hideFor: string[]) => {
if (hideFor.includes(userType)) return true;
return false;
};