var bixgrowReferralUrl = 'https://api.bixgrow.com';
var bixgrowTrackingUrl = 'https://track.bixgrow.com';
var myDataSetting = null;
window.bgIsEmbedWidgetLoaded = true;
if (!window.bgIsScripttagWidgetLoaded) {
bgGetDataReferral();
}
let bgAdParameter = bgGetParameterByName("ad_id");
if (bgAdParameter) {
let xhttp = new XMLHttpRequest();
xhttp.open("POST", bixgrowTrackingUrl + "/api/referral/friends/reward", true);
xhttp.setRequestHeader("Content-Type", "application/json");
let data = {
shop: Shopify.shop,
advocate_id: bgAdParameter,
url: window.location.href,
visitor_id: bgGetCookie("bgrf_visitor_id"),
is_same_browser: bgGetCookie("bg_is_same_browser") ? true : false,
};
xhttp.send(JSON.stringify(data));
xhttp.onload = function () {
if (this.status === 200) {
let obj = JSON.parse(this.responseText);
if (Object.keys(obj).length > 0) {
bgSetCookie("bgrf_visitor_id", obj.visitor_id, 30);
myDataSetting = obj;
if (obj.discount?.code) {
createFriendRewardPopup(obj);
autoAppliedCoupon(obj.discount.code);
} else {
createBeforeRedemFriendRewardPopup(obj);
}
// createFriendRewardPopup(obj);
// autoAppliedCoupon(obj.discount.code);
}
} else if (this.status == 400) {
let errorObj = JSON.parse(this.responseText);
if (errorObj.status == "INVALID_REFERRAL_LINK") {
createInvalidReferralLinkPopup(errorObj.data);
} else {
}
}
};
}
function createFriendRewardPopup(obj) {
let bgHead = document.head || document.getElementsByTagName("head")[0];
let myBgModal = document.getElementById("myBgModal");
if (myBgModal) {
myBgModal.remove();
}
let referralDiv = document.createElement("div");
referralDiv.id = "myBgModal";
referralDiv.classList.add("bg-modal");
document.body.appendChild(referralDiv);
let bgStyle = document.createElement("style");
let bgCss = `.bg-modal{
display:none;
position:fixed;
z-index:9999;
padding-top:100px;
left:0;
top:0;
width:100%;
height:100%;
overflow:scroll;
background-color: rgb(0,0,0,0.25);
-webkit-animation-name: bganimatefade;
-webkit-animation-duration: 0.4s;
animation-name: bganimatefade;
animation-duration: 0.4s
}
.bg-modal-content{
width: 500px;
background: ${obj.page_settings.appearance.background || "#fefefe"};
margin:auto;
padding:30px 24px 20px 25px;
border-radius:16px;
text-align:center;
color:#1B283F;
position: relative;
width: 600px;
border-radius: 0px;
padding: 30px 40px;
}
.bg-heading{
font-size:20px;
font-weight:700;
margin-bottom: 15px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 38px;
font-weight: 650;
line-height: normal;
}
.bg-content{
font-size:14px;
margin-bottom:24px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 21px;
font-weight: 450;
line-height: normal;
}
.bg-input-wrapper{
margin-bottom: 24px;
position:relative;
cursor:pointer;
}
.bg-input-wrapper .bg-input{
padding:16px 18px;
height:50px;
width: 100%;
background:#F7F7F7;
border: 2px dashed #81868B;
box-shadow:none;
box-sizing: border-box;
-webkit-box-sizing: border-box;
cursor: pointer;
font-size:18px;
line-height: normal;
}
.bg-input:focus{
outline: 0;
}
.bg-btn{
border: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
border-radius: 4px;
width: 100%;
padding: 13px 16px;
color: rgba(255, 255, 255, 1);
background: #1B283F;
line-height:normal;
font-size:21px;
cursor:pointer;
}
.bg-btn-dark{
background: ${obj.page_settings.appearance.button.background || "#1B283F"};
color: ${obj.page_settings.appearance.button.text};
}
.bg-input-wrapper::after{
content: attr(data-copy);
position: absolute;
display: flex;
align-items: center;
right: 18px;
top: 0;
height: 100%;
font-size: 14px;
color:#036ADA;
}
.bg-close{
position:absolute;
top:18px;
right:21px;
cursor:pointer;
}
.bg-powered-by-container{
text-align: center;
margin-bottom: 7px;
}
.bg-powered-by-text{
color: #ffff;
padding: 4px 19px;
font-size: 14px;
background: rgba(0,0,0,.15);
font-weight: 600;
border-radius: 15px;
text-decoration: none;
}
@-webkit-keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
@keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
.bg-discount-expired{
color: #81868b;
text-align: center;
margin-top:5px;
font-size:13px;
}
@media (max-width: 600px) {
.bg-modal-content{
width: 100%;
border-radius: 0;
padding:20px;
}
.bg-heading{
font-size: 30px;
}
.bg-content{
font-size: 18px;
}
.bg-btn{
font-size: 18px;
}
}
`;
bgStyle.type = "text/css";
if (bgStyle.styleSheet) {
bgStyle.styleSheet.cssText = css;
} else {
bgStyle.appendChild(document.createTextNode(bgCss));
}
bgHead.appendChild(bgStyle);
let bgModalContent = `
${
!obj.page_settings.appearance.is_hide_brand_bixgrow
? `
${
obj.page_settings.content.coupon_display_page.headline
}
${
obj.page_settings.content.coupon_display_page.description
}
${
obj.discount.price_rule.ends_at_time
? `
${obj.discount.price_rule.ends_at_time.replace(
"{end_date}",
detectDateFormat(obj.discount.price_rule.ends_at)
)}
`
: ""
}
`;
referralDiv.insertAdjacentHTML("beforeend", bgModalContent);
let bgClose = document.getElementById("bg-close");
bgClose.addEventListener("click", function ($event) {
referralDiv.style.display = "none";
});
let myBtn = document.getElementById("bg-btn-shop-now");
myBtn.addEventListener("click", function () {
referralDiv.style.display = "none";
});
let bgInputWrapper = document.getElementById("bg-input-wrapper");
bgInputWrapper.addEventListener("click", function ($event) {
let bgInput = document.getElementById("bg-input");
bgInput.select();
document.execCommand("copy");
bgInputWrapper.setAttribute("data-copy", obj.page_settings.content.coupon_display_page.copied);
setTimeout(() => {
bgInputWrapper.setAttribute("data-copy", obj.page_settings.content.coupon_display_page.copy);
}, 1500);
});
referralDiv.style.display = "block";
}
function createInvalidReferralLinkPopup(obj) {
let bgHead = document.head || document.getElementsByTagName("head")[0];
let myBgModal = document.getElementById("myBgModal");
if (myBgModal) {
myBgModal.remove();
}
let referralDiv = document.createElement("div");
referralDiv.id = "myBgModal";
referralDiv.classList.add("bg-modal");
document.body.appendChild(referralDiv);
let bgStyle = document.createElement("style");
let bgCss = `.bg-modal{
display:none;
position:fixed;
z-index:9999;
padding-top:100px;
left:0;
top:0;
width:100%;
height:100%;
overflow:scroll;
background-color: rgb(0,0,0,0.25);
-webkit-animation-name: bganimatefade;
-webkit-animation-duration: 0.4s;
animation-name: bganimatefade;
animation-duration: 0.4s
}
.bg-modal-content{
width: 500px;
background: ${obj.page_settings.appearance.background || "#fefefe"};
margin:auto;
padding:30px 24px 20px 25px;
border-radius:16px;
text-align:center;
color:#1B283F;
position: relative;
width: 600px;
border-radius: 0px;
padding: 30px 40px;
}
.bg-heading{
font-size:20px;
font-weight:700;
margin-bottom: 15px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 38px;
font-weight: 650;
line-height: normal;
}
.bg-content{
font-size:14px;
margin-bottom:24px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 21px;
font-weight: 450;
line-height: normal;
}
.bg-btn{
border: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
border-radius: 4px;
width: 100%;
padding: 13px 16px;
color: rgba(255, 255, 255, 1);
background: #1B283F;
line-height:normal;
font-size:21px;
cursor:pointer;
}
.bg-btn-dark{
background: ${obj.page_settings.appearance.button.background || "#1B283F"};
color: ${obj.page_settings.appearance.button.text};
}
.bg-close{
position:absolute;
top:18px;
right:21px;
cursor:pointer;
}
.bg-powered-by-container{
text-align: center;
margin-bottom: 7px;
}
@-webkit-keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
@keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
@media (max-width: 600px) {
.bg-modal-content{
width: 100%;
border-radius: 0;
padding:20px;
}
.bg-heading{
font-size: 30px;
}
.bg-content{
font-size: 18px;
}
.bg-btn{
font-size: 18px;
}
}
`;
bgStyle.type = "text/css";
if (bgStyle.styleSheet) {
bgStyle.styleSheet.cssText = css;
} else {
bgStyle.appendChild(document.createTextNode(bgCss));
}
bgHead.appendChild(bgStyle);
let bgModalContent = `
${obj.page_settings.content.headline}
${obj.page_settings.content.description}
`;
referralDiv.insertAdjacentHTML("beforeend", bgModalContent);
let bgClose = document.getElementById("bg-close");
bgClose.addEventListener("click", function ($event) {
referralDiv.style.display = "none";
});
let myBtn = document.getElementById("bg-btn-shop-now");
myBtn.addEventListener("click", function () {
referralDiv.style.display = "none";
});
referralDiv.style.display = "block";
}
function createBeforeRedemFriendRewardPopup(obj) {
let bgHead = document.head || document.getElementsByTagName("head")[0];
let myBgModal = document.getElementById("myBgModal");
if (myBgModal) {
myBgModal.remove();
}
let referralDiv = document.createElement("div");
referralDiv.id = "myBgModal";
referralDiv.classList.add("bg-modal");
document.body.appendChild(referralDiv);
let bgStyle = document.createElement("style");
let bgCss = `.bg-modal{
display:none;
position:fixed;
z-index:9999;
padding-top:100px;
left:0;
top:0;
width:100%;
height:100%;
overflow:scroll;
background-color: rgb(0,0,0,0.25);
-webkit-animation-name: bganimatefade;
-webkit-animation-duration: 0.4s;
animation-name: bganimatefade;
animation-duration: 0.4s
}
.bg-modal-content{
width: 500px;
background: ${obj.page_settings.appearance.background || "#fefefe"};
margin:auto;
padding:30px 24px 20px 25px;
border-radius:16px;
text-align:center;
color:#1B283F;
position: relative;
width: 600px;
border-radius: 0px;
padding: 30px 40px;
}
.bg-heading{
font-size:20px;
font-weight:700;
margin-bottom: 15px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 38px;
font-weight: 650;
line-height: normal;
}
.bg-content{
font-size:14px;
margin-bottom:24px;
color: ${obj.page_settings.appearance.text || "rgb(0, 0, 0)"};
font-size: 21px;
font-weight: 450;
line-height: normal;
}
.bg-input-wrapper{
margin-bottom: 18px;
position:relative;
cursor:pointer;
}
.bg-input-wrapper .bg-input{
padding:16px 18px;
height:50px;
width: 100%;
background:#F7F7F7;
border: 1px solid #81868B;
box-shadow:none;
box-sizing: border-box;
-webkit-box-sizing: border-box;
font-size:18px;
line-height: normal;
}
.bg-input-wrapper::after{
content: attr(data-copy);
position: absolute;
display: flex;
align-items: center;
right: 18px;
top: 0;
height: 100%;
font-size: 14px;
color:#036ADA;
}
.bg-input:focus{
outline: 0;
}
.bg-btn{
border: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
border-radius: 4px;
width: 100%;
padding: 13px 16px;
color: rgba(255, 255, 255, 1);
background: #1B283F;
line-height:normal;
font-size:21px;
cursor:pointer;
}
.bg-btn-dark{
background: ${obj.page_settings.appearance.button.background || "#1B283F"};
color: ${obj.page_settings.appearance.button.text};
}
.bg-close{
position:absolute;
top:18px;
right:21px;
cursor:pointer;
}
.bg-powered-by-container{
text-align: center;
margin-bottom: 7px;
}
.bg-powered-by-text{
color: #ffff;
padding: 4px 19px;
font-size: 14px;
background: rgba(0,0,0,.15);
font-weight: 600;
border-radius: 15px;
text-decoration: none;
}
@-webkit-keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
@keyframes bganimatefade {
from {opacity:0}
to {opacity:1}
}
.bg-discount-expired{
color: #81868b;
text-align: center;
margin-top:5px;
font-size:13px;
}
@media (max-width: 600px) {
.bg-modal-content{
width: 100%;
border-radius: 0;
padding:20px;
}
.bg-heading{
font-size: 30px;
}
.bg-content{
font-size: 18px;
}
.bg-btn{
font-size: 18px;
}
}
`;
bgStyle.type = "text/css";
if (bgStyle.styleSheet) {
bgStyle.styleSheet.cssText = css;
} else {
bgStyle.appendChild(document.createTextNode(bgCss));
}
bgHead.appendChild(bgStyle);
let bgModalContent = `
${
!obj.page_settings.appearance.is_hide_brand_bixgrow
? `
${
obj.page_settings.content.coupon_display_page.before_redeem_headline
}
${
obj.page_settings.content.coupon_display_page.before_redeem_description
}
${obj.enable_marketing_consent_request == 1 ? `
` : ''}
${
obj.page_settings.content.coupon_display_page.headline
}
${
obj.page_settings.content.coupon_display_page.description
}
`;
referralDiv.insertAdjacentHTML("beforeend", bgModalContent);
let bgClose = document.getElementById("bg-close");
bgClose.addEventListener("click", function ($event) {
referralDiv.style.display = "none";
});
let myBtn = document.getElementById("bg-btn-shop-now");
myBtn.addEventListener("click", function () {
referralDiv.style.display = "none";
});
let bgInputWrapper = document.getElementById("bg-input-wrapper");
bgInputWrapper.addEventListener("click", function ($event) {
let bgInput = document.getElementById("bg-after-redeem-input");
bgInput.select();
document.execCommand("copy");
bgInputWrapper.setAttribute("data-copy", obj.page_settings.content.coupon_display_page.copied);
setTimeout(() => {
bgInputWrapper.setAttribute("data-copy", obj.page_settings.content.coupon_display_page.copy);
}, 1500);
});
referralDiv.style.display = "block";
}
async function handleClaimDiscount() {
const advocateId = myDataSetting.advocate_id;
const emailErrorMessage =
myDataSetting.page_settings.content.coupon_display_page.email_error_message;
const referralInvalidMessage =
myDataSetting.page_settings.content.coupon_display_page.referral_invalid;
const redeemBtn = document.getElementById("bg-clainm-discount-btn");
const emailInputElement = document.getElementById("bg-input");
const emailInput = emailInputElement.value.trim();
const checkBox = document.getElementById("bgMyCheckbox");
const checkBoxValue = checkBox ? (checkBox.checked ? 1 : 0) : 0;
const errorNote = document.getElementById(
"bg-before-redeem-friend-reward-error-text"
);
if (!validateEmail(emailInput)) {
errorNote.textContent = emailErrorMessage;
errorNote.classList.remove("bg-d-none");
emailInputElement.classList.add("bg-border-error");
return;
} else {
errorNote.classList.add("bg-d-none");
emailInputElement.classList.remove("bg-border-error");
}
redeemBtn.classList.add("bg-disabled", "bixgrow-loading");
const payload = {
shop: Shopify.shop,
email: emailInput,
visitor_id: bgGetCookie("bgrf_visitor_id"),
advocate_id: advocateId,
enable_marketing_consent_request: checkBoxValue
};
try {
const responseData = await bgUseFetch(
`${bixgrowTrackingUrl}/api/referral/friends/discount`,
"POST",
payload,
{ "Content-Type": "application/json", Accept: "application/json" }
);
if (responseData) {
myDataSetting.discount = responseData.discount;
myDataSetting.share_coupon = responseData.share_coupon;
// createFriendRewardPopup(myDataSetting);
document.getElementById("bg-after-redeem-input").value =
responseData.discount.code;
document.getElementById("before-redeem").classList.add("bg-d-none");
document.getElementById("after-redeem").classList.remove("bg-d-none");
errorNote.classList.add("bg-d-none");
emailInputElement.classList.remove("bg-border-error");
redeemBtn.classList.remove("bg-disabled", "bixgrow-loading");
autoAppliedCoupon(responseData.discount.code);
// redeemBtn.classList.add("bgDisplayNone");
// redeemBtn.classList.remove('bgDisabled','bixgrow-loading');
// shopNowBtn.classList.remove("bgDisplayNone");
// bgInput.innerHTML = responseData?.discount_code;
// autoAppliedCoupon(responseData?.discount_code);
// bgInputWrapper.classList.remove("bgDisplayNone");
// document.getElementById('bgShopNowContent').classList.remove("bgDisplayNone");
// document.getElementById('bgRedeemContent').classList.add("bgDisplayNone");
// if(isDynamicCoupon){
// bgSetCookie('bixgrow_affiliate_referral', bgRefHashCode, 30);
// }
}
} catch (error) {
if (error?.status == 422 && error.message == "referral_link_invalid") {
errorNote.textContent = referralInvalidMessage;
errorNote.classList.remove("bg-d-none");
emailInputElement.classList.add("bg-border-error");
redeemBtn.classList.remove("bg-disabled", "bixgrow-loading");
}
}
}
function autoAppliedCoupon(discountCode) {
// let couponCodePath = encodeURI("/discount/" + discountCode);
// couponCodePath = couponCodePath.replace("#", "%2523");
// let iframeBixgrow = document.createElement("iframe");
// iframeBixgrow.style.cssText = "height: 0; width: 0; display: none;";
// iframeBixgrow.src = couponCodePath;
// iframeBixgrow.innerHTML = "Your browser does not support iframes";
// let app = document.querySelector("body");
// app.prepend(iframeBixgrow);
discountCode = encodeURIComponent(discountCode);
try{
const url = `https://${shopDomainWidget}/discount/${discountCode}`;
bgUseFetch(url,'GET');
}catch(error){
console.log(error);
}
}
function bgGetParameterByName(name, url = window.location.href) {
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return "";
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
function bgGetDataReferral() {
let xhttp = new XMLHttpRequest();
xhttp.open("POST", bixgrowReferralUrl + "/api/referral/info", true);
xhttp.setRequestHeader("Content-Type", "application/json");
let data = {
shop: Shopify.shop,
type: "widget",
customer_id: __st.cid,
url: window.location.href,
};
xhttp.send(JSON.stringify(data));
xhttp.onload = function () {
let obj = JSON.parse(this.responseText);
if (Object.keys(obj).length > 0) {
if (
bgIsShowWidget(
obj.page_settings.appearance_v2.launcher.target,
obj.page_settings.appearance_v2.launcher.target_urls
)
) {
createWidget(
obj.page_settings,
obj.campain_id,
obj.customer_email,
obj.customer_name,
obj.locale,
obj
);
}
}
};
}
function createWidget(obj, campainId, customerEmail, customerName, locale, responseData) {
let head = document.head || document.getElementsByTagName("head")[0];
let bixgrow_referral_widget_container = document.getElementById(
"bixgrow_referral_widget_container"
);
if (bixgrow_referral_widget_container) {
bixgrow_referral_widget_container.remove();
}
referralDiv = document.createElement("div");
referralDiv.id = "bixgrow_referral_widget_container";
document.body.appendChild(referralDiv);
let style = document.createElement("style");
let css = "";
if (obj.appearance_v2.launcher.desktop.type == "float") {
css += `
#bixgrow_referral_widget_container{
position: fixed;
bottom: ${obj.appearance_v2.launcher.desktop.bottom || 20}px;
${
obj.appearance_v2.launcher.desktop.position == "right" ||
!obj.appearance_v2.launcher.desktop.position
? `right: ${obj.appearance_v2.launcher.desktop.side || 20}px;`
: `left: ${obj.appearance_v2.launcher.desktop.side || 20}px;`
}
z-index:1101199308121998;
}
#bixgrow-refer{
webkit-animation: .3s linear fadeIn forwards;
animation: .3s linear fadeIn forwards;
}
.bixgrow-refer-banner-image {
display: inline-block;
width: 100%;
height: auto;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
}
.bixgrow-form-group-widget {
text-align: left !important;
margin-bottom: 16px;
}
.bixgrow-input-icon .bixgrow-form-control-widget {
padding-left: 38px;
}
.bixgrow-form-control-widget {
display: block;
width: 100%;
height: 41px;
padding: 10px 16px;
font-weight: 400;
line-height: 1.5;
color: #616161;
background-color: #ffffff;
background-clip: padding-box;
border: 1px solid #E3E3E3;
border-radius: 0.42rem;
-webkit-box-shadow: none;
box-shadow: none;
-webkit-transition: border-color 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
box-sizing: border-box;
-webkit-box-sizing: border-box;
font-size:14px;
}
@media (prefers-reduced-motion: reduce) {
.bixgrow-form-control-widget {
transition: none;
}
}
.bixgrow-form-control-widget::-ms-expand {
background-color: transparent;
border: 0;
}
.bixgrow-form-control-widget:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #495057;
}
.bixgrow-refer-widget-icon__container{
display:flex;
align-items:center;
width:32px;
height:32px;
margin-right: ${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? "0px"
: "5px"
};
}
.bixgrow-form-control-widget:focus {
color: #495057;
background-color: #fff;
border-color: #80bdff;
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.bixgrow-form-control-widget::-webkit-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::-moz-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget:-ms-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::-ms-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-input-icon span {
left: 0;
top: 0;
bottom: 0;
position: absolute;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
width: calc(1.5em + 1.3rem + 2px);
}
.bixgrow-btn-widget {
border: 1px solid ${obj.appearance.button_launcher.stroke};
user-select: none;
white-space: nowrap;
border-radius: ${obj.appearance_v2.button_radius}px;
width: 100%;
padding: 10px 20px;
color: ${obj.appearance.button_launcher.text};
background: ${obj.appearance.button_launcher.background};
cursor: pointer;
font-weight:500;
font-size:14px;
height: 41px;
line-height: normal !important;
display: flex;
align-items: center;
justify-content: center;
}
.bixgrow-btn-widget:hover {
opacity:0.8;
}
.bixgrow-loading .bixgrow-spinner {
display: inline-block;
}
.bixgrow-loading .bixgrow-button-text {
display:none;
}
.bixgrow-refer-widget {
min-width:50px;
cursor: pointer;
height: 56px;
border-radius: 30px;
box-shadow: 0 0 2px rgb(0 0 0 / 10%), 0 4px 20px rgb(0 0 0 / 14%);
transition: all 0.3s;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
overflow: hidden;
background-color: ${obj.appearance_v2.launcher.background};
-webkit-animation: bixgrowFadeUp .3s;
animation: bixgrowFadeUp .3s;
position: absolute;
${
obj.appearance_v2.launcher.desktop.position == "right"
? `right: 0px;`
: `left: 0px;`
}
bottom: 0px;
}
.bixgrow-refer-widget-content {
display: flex;
justify-content: center;
align-items: center;
padding: 16px 19px;
color: #ffff;
white-space: nowrap;
height:100%;
}
.bixgrow-refer-widget-content span {
font-size:16px;
font-weight: 400;
color:${obj.appearance_v2.launcher.text};
}
.bixgrow-refer-widget-close{
position: absolute;
top: 0;
bottom: 0;
opacity: 0;
display: flex;
align-items: center;
justify-content: center;
height:100%;
left: 19px;
}
.bixgrow-container{
width: 100%;
margin-right: auto;
margin-left: auto;
}
.bixgrow-d-flex{
display:flex;
}
.bixgrow-align-items-center{
align-items: center;
}
.bixgrow-justify-content-center{
justify-content: center;
}
.bixgrow-margin-top-10{
margin-top:10px;
}
#bixgrow-close-popup{
position: absolute;
right: 15px;
top: 15px;
cursor: pointer;
}
#bixgrow-popup-referral{
width: 360px;
position: absolute;
bottom: 63px;
${
obj.appearance_v2.launcher.desktop.position == "right" ||
!obj.appearance_v2.launcher.desktop.position
? `right: 0px;left:unset;`
: `left: 0px;right:unset;`
}
box-shadow: 0 4px 10px 1px rgb(0 0 0 / 10%);
background-color: white;
border-radius:${obj.appearance_v2.card_radius}px;
overflow:hidden;
}
.bixgrow-label-name-widget{
font-size:13px;
text-align:left;
}
.bixgrow-refer-content-description-widget{
font-size: ${obj.appearance_v2.description_text_size}px;
word-break: break-word;
margin-bottom: 18px;
margin-top:0px;
}
#bixgrow-copy-overlay-widget{
position: absolute;
background-color: #000000;
top: 0px;
left: 0;
height: 45px;
justify-content: center;
align-items: center;
width: 100%;
color: white;
font-size: 16px;
display: flex;
}
.bixgrow-refer-content-title-widget{
display: block;
font-weight: 600;
font-size: ${obj.appearance_v2.heading_text_size}px;
color: #000;
text-align: center;
margin-bottom: 10px;
margin-top: 13px;
}
.bixgrow-refer-widget{
border-radius: ${obj.appearance_v2.launcher.button_radius}px;
}
.bixgrow-widget-icon {
width: 100%;
height: 100%;
}
${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? ".bixgrow-refer-widget-content{padding:10px 12px !important;}"
: ""
}
.bixgrow-refer-widget-side{
z-index: 9999;
min-width:unset;
width: 40px;
height: auto!important;
border-radius: 8px!important;
writing-mode: vertical-rl;
position: fixed;
${
obj.appearance_v2.launcher.desktop.vertical_position == "low"
? "bottom:20px;"
: `${
obj.appearance_v2.launcher.desktop.vertical_position == "middle"
? "bottom:50%;"
: "bottom:unset;top:50px;"
}`
}
${
obj.appearance_v2.launcher.desktop.position == "right"
? " border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important;right:0px;left:unset;"
: "border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important;left:0px;right:unset;"
}
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-content {
padding: 12px 6px;
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-icon__container{
margin-right: 0px;
margin-bottom: ${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? "0px"
: "5px"
};
}
${
obj.appearance_v2.launcher.desktop.type == "side"
? `${
obj.appearance_v2.launcher.desktop.position == "right"
? "#bixgrow_referral_widget_container{right: 50%;bottom:60px;}#bixgrow-popup-referral{transform: translateX(50%);bottom:0px;}"
: "#bixgrow_referral_widget_container{left: 50%;bottom:60px;}#bixgrow-popup-referral{transform: translateX(-50%);bottom:0px;}"
}`
: ""
}
#bixgrow_referral_widget_container
#bixgrow-popup-referral{
-webkit-animation: fadeIn .3s ease;
animation: fadeIn .3s ease;
border-radius:6px;
}
.bixgrow-inactive{
display:none;
}
.bixgrow-active {
width:56px !important;
border-radius: 30px !important;
}
.bixgrow-active .bixgrow-refer-widget-content {
-webkit-animation: fadeOut .3s ease;
animation: fadeOut .3s ease;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.bixgrow-active .bixgrow-refer-widget-close {
-webkit-animation: fadeIn .3s ease;
animation: fadeIn .3s ease;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.bixgrow-border-red{
border: 1px solid #d72c0d !important;
}
.bixgrow-refer-widget-content svg [fill],.bixgrow-refer-widget-close svg [fill]{ fill:${
obj.appearance_v2.launcher.text
} !important;}
@-webkit-keyframes fadeIn {
from {opacity: 0}
to {opacity: 1}
}
@keyframes fadeIn {
from {opacity: 0}
to {opacity: 1}
}
@ - webkit - keyframes fadeOut {
from {
opacity: 1
}
to {
opacity: 0
}
}
@keyframes fadeOut {
from {
opacity: 1
}
to {
opacity: 0
}
}
@ - webkit - keyframes bixgrowFadeOutNoDisplay {
from {
opacity: 1
}
to {
opacity: 0
}
}
@keyframes bixgrowFadeOutNoDisplay {
from {
opacity: 1
}
to {
opacity: 0
}
}
@ - webkit - keyframes bixgrowFadeUp {
from {
transform: scale(.8)
}
to {
transform: scale(1)
}
}
@keyframes bixgrowFadeUp {
from {
transform: scale(.8)
}
to {
transform: scale(1)
}
}
@ - webkit - keyframes bixgrowfadeSlideIn {
from{
bottom:15px
}
to {
bottom:20px
}
}
@keyframes bixgrowfadeSlideIn {
from{
bottom:15px
}
to {
bottom:20px
}
}
@media (min-width: 576px) {
.bixgrow-container {
max-width: 540px;
}
}
@media only screen and (max-height: 450px), only screen and (max-width: 450px){
#bixgrow-popup-referral{
height: 100%!important;
left: 0!important;
max-height: 100vh!important;
max-width: 100vw!important;
right: 0!important;
top: 0!important;
width: 100%!important;
position:fixed !important;
z-index:99999;
transform: unset!important;
border-radius: 0px !important;
}
.bixgrow-refer-banner-image {
border-top-left-radius: 0px;
border-top-right-radius: 0px;
}
#bixgrow-close-popup-widget-mobile{
display:block !important;
}
}
#bixgrow-popup-referral::-webkit-scrollbar {
display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
#bixgrow-popup-referral {
-ms-overflow-style: none; /* IE and Edge */
scrollbar-width: none; /* Firefox */
}
.bixgrow-refer-content-main-widget{
background: ${obj.appearance.background || "#fff"};
}
.bixgrow-refer-content-title-widget,.bixgrow-refer-content-description-widget{
color: ${obj.appearance.text || "rgb(0, 0, 0)"};
}
@media (min-width: 768px) {
.bixgrow-container {
max-width: 720px;
}
}
@media (min-width: 992px) {
.bixgrow-container {
max-width: 960px;
}
}
@media (min-width: 1200px) {
.bixgrow-container {
max-width: 1140px;
}
}
.b-powered-by-container-widget{
text-align: center;
margin-top: 10px;
margin-bottom: 10px;
position: absolute;
top: -48px;
left: 85px;
}
.b-powered-by-text-widget{
color: #ffff;
padding: 4px 19px;
font-size: 14px;
background: rgba(0,0,0,.15);
font-weight: 600;
border-radius: 15px;
text-decoration: none;
}
.how-it-works-widget-heading{
font-size:16px;
font-weight:600;
}
.how-it-works-step-widget{
padding:5px;
flex: 1 1 0;
}
.how-it-works-step-image-widget{
display: flex;
align-items: center;
justify-content: center;
}
.how-it-works-steps-widget{
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;font-size:13px;
}
.how-it-works-step-image-widget,.how-it-works-widget-heading,.bixgrow-refer-content-title-widget,.bixgrow-refer-content-description-widget{
color: ${obj.appearance.text || "rgb(0, 0, 0)"};
}
@media (max-width: 450px){
#bixgrow-refer-widget-desktop-id{
display:none;
}
#bixgrow-refer-widget-mobile-id{
display: ${
obj.appearance_v2.hide_on_mobile ? "none" : "block"
} !important;
}
.bixgrow-refer-widget-icon__container {
margin-right: ${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? "0px"
: "5px"
};
}
${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? ".bixgrow-refer-widget-content{padding:10px 12px !important;}"
: ""
}
#bixgrow_referral_widget_container{
position: fixed;
bottom: ${obj.appearance_v2.launcher.mobile.bottom || 20}px;
${
obj.appearance_v2.launcher.mobile.position == "right" ||
!obj.appearance_v2.launcher.mobile.position
? `right: ${
obj.appearance_v2.launcher.mobile.side || 20
}px;left:unset;`
: `left: ${
obj.appearance_v2.launcher.mobile.side || 20
}px;right:unset;`
}
z-index:1101199308121998;
}
.bixgrow-refer-widget {
${
obj.appearance_v2.launcher.mobile.position == "right"
? `right: 0px;left:unset;`
: `left: 0px;right:unset`
}
}
#bixgrow-popup-referral{
${
obj.appearance_v2.launcher.mobile.position == "right" ||
!obj.appearance_v2.launcher.mobile.position
? `right: 0px;left: unset;`
: `left: 0px;right:unset;`
}
}
.bixgrow-refer-widget-side{
z-index: 9999;
min-width:unset;
width: 40px;
height: auto!important;
border-radius: 8px!important;
writing-mode: vertical-rl;
position: fixed;
${
obj.appearance_v2.launcher.mobile.vertical_position == "low"
? "bottom:20px;"
: `${
obj.appearance_v2.launcher.mobile.vertical_position ==
"middle"
? "bottom:50%;"
: "bottom:unset;top:50px;"
}`
}
${
obj.appearance_v2.launcher.mobile.position == "right"
? " border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important;right:0px"
: "border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important;left:0px;"
}
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-content {
padding: 12px 6px;
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-icon__container{
margin-right: 0px;
margin-bottom: ${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? "0px"
: "5px"
};
}
${
obj.appearance_v2.launcher.desktop.type == "side"
? `${
obj.appearance_v2.launcher.desktop.position == "right"
? "#bixgrow_referral_widget_container{right: 50%;bottom:60px;}#bixgrow-popup-referral{transform: translateX(50%);bottom:0px;}"
: "#bixgrow_referral_widget_container{left: 50%;bottom:60px;}#bixgrow-popup-referral{transform: translateX(-50%);bottom:0px;}"
}`
: ""
}
}
.how-it-works-step-image-widget svg [fill]{fill:${
obj.appearance.text || "rgb(0, 0, 0)"
} !important;}
${obj.appearance.custom_css ? obj.appearance.custom_css : ""}`;
} else {
css += `
#bixgrow_referral_widget_container{
left: 0;
top: 0;
overflow:auto;
z-index:1101199308121998;
width:100%;
height:100%;
}
#bixgrow-refer{
webkit-animation: .3s linear fadeIn forwards;
animation: .3s linear fadeIn forwards;
}
.bixgrow-refer-banner-image {
display: inline-block;
width: 100%;
height: auto;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
}
.bixgrow-wrapper-active{
position: fixed;
padding-top:100px;
background-color:rgb(0,0,0,0.25);
}
.bixgrow-form-group-widget {
text-align: left !important;
margin-bottom: 16px;
}
.bixgrow-input-icon .bixgrow-form-control-widget {
padding-left: 38px;
}
.bixgrow-form-control-widget {
display: block;
width: 100%;
height: 41px;
padding: 10px 16px;
font-weight: 400;
line-height: 1.5;
color: #616161;
background-color: #ffffff;
background-clip: padding-box;
border: 1px solid #E3E3E3;
border-radius: 0.42rem;
-webkit-box-shadow: none;
box-shadow: none;
-webkit-transition: border-color 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
box-sizing: border-box;
-webkit-box-sizing: border-box;
font-size:14px;
}
@media (prefers-reduced-motion: reduce) {
.bixgrow-form-control-widget {
transition: none;
}
}
.bixgrow-form-control-widget::-ms-expand {
background-color: transparent;
border: 0;
}
.bixgrow-form-control-widget:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #495057;
}
.bixgrow-refer-widget-icon__container{
display:flex;
align-items:center;
width:32px;
height:32px;
margin-right: ${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? "0px"
: "5px"
};
}
.bixgrow-form-control-widget:focus {
color: #495057;
background-color: #fff;
border-color: #80bdff;
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.bixgrow-form-control-widget::-webkit-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::-moz-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget:-ms-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::-ms-input-placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-form-control-widget::placeholder {
color: #6c757d;
opacity: 1;
}
.bixgrow-input-icon span {
left: 0;
top: 0;
bottom: 0;
position: absolute;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
width: calc(1.5em + 1.3rem + 2px);
}
.bixgrow-btn-widget {
border: 1px solid ${obj.appearance.button_launcher.stroke};
user-select: none;
white-space: nowrap;
border-radius: ${obj.appearance_v2.button_radius}px;
width: 100%;
padding: 10px 20px;
color: ${obj.appearance.button_launcher.text};
background: ${obj.appearance.button_launcher.background};
cursor: pointer;
font-weight:500;
font-size:14px;
height: 41px;
line-height: normal !important;
}
.bixgrow-btn-widget:hover {
opacity:0.8;
}
.bixgrow-refer-widget {
min-width:50px;
cursor: pointer;
height: 56px;
border-radius: 30px;
box-shadow: 0 0 2px rgb(0 0 0 / 10%), 0 4px 20px rgb(0 0 0 / 14%);
transition: all 0.3s;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
overflow: hidden;
background-color: ${obj.appearance_v2.launcher.background};
-webkit-animation: ${
obj.appearance_v2.launcher.desktop.position == "right"
? "rightIn"
: "leftIn"
} .3s;
animation: ${
obj.appearance_v2.launcher.desktop.position == "right"
? "rightIn"
: "leftIn"
} .3s;
position: absolute;
${
obj.appearance_v2.launcher.desktop.position == "right"
? `right: 0px;`
: `left: 0px;`
}
bottom: 0px;
}
.bixgrow-refer-widget-content {
display: flex;
justify-content: center;
align-items: center;
height: 100%;
padding: 16px 19px;
color: #ffff;
white-space: nowrap;
}
.bixgrow-refer-widget-content span {
font-size:16px;
font-weight: 400;
color:${obj.appearance_v2.launcher.text};
}
.bixgrow-refer-widget-close{
position: absolute;
top: 0;
bottom: 0;
opacity: 0;
display: flex;
align-items: center;
justify-content: center;
height:100%;
left: 19px;
}
.bixgrow-container{
width: 100%;
margin-right: auto;
margin-left: auto;
}
.bixgrow-d-flex{
display:flex;
}
.bixgrow-align-items-center{
align-items: center;
}
.bixgrow-justify-content-center{
justify-content: center;
}
.bixgrow-margin-top-10{
margin-top:10px;
}
#bixgrow-close-popup{
position: absolute;
right: 15px;
top: 15px;
cursor: pointer;
}
#bixgrow-popup-referral{
width: 360px;
margin: auto;
box-shadow: 0 4px 10px 1px rgb(0 0 0 / 10%);
background-color: white;
border-radius:${obj.appearance_v2.card_radius}px;
overflow:hidden;
}
.bixgrow-label-name-widget{
font-size:13px;
text-align:left;
}
.bixgrow-refer-content-description-widget{
font-size: ${obj.appearance_v2.description_text_size}px;
word-break: break-word;
margin-bottom: 18px;
margin-top:0px;
}
#bixgrow-copy-overlay-widget{
position: absolute;
background-color: #000000;
top: 0px;
left: 0;
height: calc(1.5em + 1.3rem);
justify-content: center;
align-items: center;
width: 100%;
color: white;
font-size: 16px;
}
.bixgrow-refer-content-title-widget{
display: block;
font-weight: 600;
font-size: ${obj.appearance_v2.heading_text_size}px;
color: #000;
text-align: center;
margin-bottom: 10px;
margin-top: 13px;
}
.bixgrow-refer-widget{
border-radius: ${obj.appearance_v2.launcher.button_radius}px;
}
.bixgrow-widget-icon {
width: 100%;
height: 100%;
}
${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? ".bixgrow-refer-widget-content{padding:10px 12px !important;}"
: ""
}
.bixgrow-refer-widget-side{
z-index: 9999;
min-width:unset;
width: 40px;
height: auto!important;
border-radius: 8px!important;
writing-mode: vertical-rl;
position: fixed;
${
obj.appearance_v2.launcher.desktop.vertical_position == "low"
? "bottom:20px;"
: `${
obj.appearance_v2.launcher.desktop.vertical_position == "middle"
? "bottom:50%;"
: "bottom:unset;top:50px;"
}`
}
${
obj.appearance_v2.launcher.desktop.position == "right"
? " border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important;right:0px;left:unset;"
: "border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important;left:0px;right:unset;"
}
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-content {
padding: 12px 6px;
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-icon__container{
width:24px;
height: 24px;
margin-right: 0px;
margin-bottom: ${
obj.appearance_v2.launcher.desktop.display_method == "icon_only"
? "0px"
: "5px"
};
}
#bixgrow_referral_widget_container
#bixgrow-popup-referral{
-webkit-animation: fadeIn .3s ease;
animation: fadeIn .3s ease;
border-radius:6px;
}
.bixgrow-side-active{
-webkit-animation: ${
obj.appearance_v2.launcher.desktop.position == "right"
? "rightOut"
: "leftOut"
} .3s;
animation: ${
obj.appearance_v2.launcher.desktop.position == "right"
? "rightOut"
: "leftOut"
} .3s;
${
obj.appearance_v2.launcher.desktop.position == "right"
? "right:-56px;"
: "left:-56px;"
};
}
.bixgrow-inactive{
display:none;
}
.bixgrow-active {
width:56px !important;
border-radius: 30px !important;
}
.bixgrow-active .bixgrow-refer-widget-content {
-webkit-animation: fadeOut .3s ease;
animation: fadeOut .3s ease;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.bixgrow-active .bixgrow-refer-widget-close {
-webkit-animation: fadeIn .3s ease;
animation: fadeIn .3s ease;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.bixgrow-border-red{
border: 1px solid #d72c0d !important;
}
.bixgrow-refer-widget-content svg [fill],.bixgrow-refer-widget-close svg [fill]{ fill:${
obj.appearance_v2.launcher.text
} !important;}
@-webkit-keyframes rightOut {
0% {right: 0;}
100% {right: -56px}
}
@keyframes rightOut {
0% {right: 0;}
100% {right: -56px}
}
@-webkit-keyframes rightIn {
0% {right: -56px}
100% {right: 0}
}
@keyframes rightIn {
0% {right: -56px}
100% {right: 0 }
}
@-webkit-keyframes leftOut {
0% {left: 0;}
100% {left: -56px}
}
@keyframes leftOut {
0% {left: 0;}
100% {left: -56px}
}
@-webkit-keyframes leftIn {
0% {left: -56px}
100% {left: 0}
}
@keyframes leftIn {
0% {left: -56px}
100% {left: 0 }
}
@-webkit-keyframes fadeIn {
from {opacity: 0}
to {opacity: 1}
}
@keyframes fadeIn {
from {opacity: 0}
to {opacity: 1}
}
@ - webkit - keyframes fadeOut {
from {
opacity: 1
}
to {
opacity: 0
}
}
@keyframes fadeOut {
from {
opacity: 1
}
to {
opacity: 0
}
}
@ - webkit - keyframes bixgrowFadeOutNoDisplay {
from {
opacity: 1
}
to {
opacity: 0
}
}
@keyframes bixgrowFadeOutNoDisplay {
from {
opacity: 1
}
to {
opacity: 0
}
}
@ - webkit - keyframes bixgrowFadeUp {
from {
transform: scale(.8)
}
to {
transform: scale(1)
}
}
@keyframes bixgrowFadeUp {
from {
transform: scale(.8)
}
to {
transform: scale(1)
}
}
@ - webkit - keyframes bixgrowfadeSlideIn {
from{
bottom:15px
}
to {
bottom:20px
}
}
@keyframes bixgrowfadeSlideIn {
from{
bottom:15px
}
to {
bottom:20px
}
}
@media (min-width: 576px) {
.bixgrow-container {
max-width: 540px;
}
}
@media only screen and (max-height: 450px), only screen and (max-width: 450px){
#bixgrow-popup-referral{
height: 100%!important;
left: 0!important;
max-height: 100vh!important;
max-width: 100vw!important;
right: 0!important;
top: 0!important;
width: 100%!important;
position:fixed !important;
z-index:99999;
transform: unset!important;
border-radius: 0px !important;
}
.bixgrow-refer-banner-image {
border-top-left-radius: 0px;
border-top-right-radius: 0px;
}
#bixgrow-close-popup-widget-mobile{
display:block !important;
}
}
#bixgrow-popup-referral::-webkit-scrollbar {
display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
#bixgrow-popup-referral {
-ms-overflow-style: none; /* IE and Edge */
scrollbar-width: none; /* Firefox */
}
.bixgrow-refer-content-main-widget{
background: ${obj.appearance.background || "#fff"};
}
.bixgrow-refer-content-title-widget,.bixgrow-refer-content-description-widget{
color: ${obj.appearance.text || "rgb(0, 0, 0)"};
}
@media (min-width: 768px) {
.bixgrow-container {
max-width: 720px;
}
}
@media (min-width: 992px) {
.bixgrow-container {
max-width: 960px;
}
}
@media (min-width: 1200px) {
.bixgrow-container {
max-width: 1140px;
}
}
.b-powered-by-container-widget{
text-align: center;
margin-top: 10px;
margin-bottom: 10px;
position: absolute;
top: -48px;
left: 85px;
}
.b-powered-by-text-widget{
color: #ffff;
padding: 4px 19px;
font-size: 14px;
background: rgba(0,0,0,.15);
font-weight: 600;
border-radius: 15px;
text-decoration: none;
}
.how-it-works-widget-heading{
font-size:16px;
font-weight:600;
}
.how-it-works-step-widget{
padding:5px;
flex: 1 1 0;
}
.how-it-works-step-image-widget{
display: flex;
align-items: center;
justify-content: center;
}
.how-it-works-steps-widget{
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;font-size:13px;
}
.how-it-works-step-image-widget,.how-it-works-widget-heading,.bixgrow-refer-content-title-widget,.bixgrow-refer-content-description-widget{
color: ${obj.appearance.text || "rgb(0, 0, 0)"};
}
#bixgrow-popup-referral{
position:relative;
}
#bixgrow-close-popup-widget-desktop{
display:block !important;
}
@media (max-width: 450px){
#bixgrow-refer-widget-desktop-id{
display:none;
}
#bixgrow-close-popup-widget-desktop{
display: none !important;
}
.bixgrow-wrapper-active{
padding-top:unset !important;
background-color:unset !important;
}
#bixgrow-refer-widget-mobile-id{
display: ${
obj.appearance_v2.hide_on_mobile ? "none" : "block"
} !important;
}
.bixgrow-refer-widget-icon__container {
margin-right: ${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? "0px"
: "5px"
};
}
${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? ".bixgrow-refer-widget-content{padding:10px 12px !important;}"
: ""
}
#bixgrow_referral_widget_container{
position: fixed;
bottom: ${obj.appearance_v2.launcher.mobile.bottom || 20}px;
${
obj.appearance_v2.launcher.mobile.position == "right" ||
!obj.appearance_v2.launcher.mobile.position
? `right: ${
obj.appearance_v2.launcher.mobile.side || 20
}px;left:unset;`
: `left: ${
obj.appearance_v2.launcher.mobile.side || 20
}px;right:unset;`
}
z-index:1101199308121998;
top: unset;
padding-top: 0;
background-color: unset;
overflow: unset;
width: 0;
height: 0;
}
.bixgrow-refer-widget {
${
obj.appearance_v2.launcher.mobile.position == "right"
? `right: 0px;left:unset;`
: `left: 0px;right:unset`
}
}
#bixgrow-popup-referral{
${
obj.appearance_v2.launcher.mobile.position == "right" ||
!obj.appearance_v2.launcher.mobile.position
? `right: 0px;left: unset;`
: `left: 0px;right:unset;`
}
}
.bixgrow-refer-widget-side{
z-index: 9999;
min-width:unset;
width: 40px;
height: auto!important;
border-radius: 8px!important;
writing-mode: vertical-rl;
position: fixed;
${
obj.appearance_v2.launcher.mobile.vertical_position == "low"
? "bottom:20px;"
: `${
obj.appearance_v2.launcher.mobile.vertical_position ==
"middle"
? "bottom:50%;"
: "bottom:unset;top:50px;"
}`
}
${
obj.appearance_v2.launcher.mobile.position == "right"
? " border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important;right:0px"
: "border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important;left:0px;"
}
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-content {
padding: 12px 6px;
}
.bixgrow-refer-widget-side .bixgrow-refer-widget-icon__container{
margin-right: 0px;
margin-bottom: ${
obj.appearance_v2.launcher.mobile.display_method == "icon_only"
? "0px"
: "5px"
};
}
}
.how-it-works-step-image-widget svg [fill]{fill:${
obj.appearance.text || "rgb(0, 0, 0)"
} !important;}
${obj.appearance.custom_css ? obj.appearance.custom_css : ""}`;
}
style.type = "text/css";
if (style.styleSheet) {
// This is required for IE8 and below.
style.styleSheet.cssText = css;
} else {
style.appendChild(document.createTextNode(css));
}
head.appendChild(style);
let divContent = `
${
obj.appearance_v2.launcher.mobile.display_method.includes("icon")
? `
${
obj.appearance_v2.launcher.icon_type == "existing"
? `
`
: `${
obj.appearance_v2.launcher.icon_type == "upload" &&
obj.appearance_v2.launcher.icon_upload
? `
`
: ""
}`
}
`
: ""
}
${
obj.appearance_v2.launcher.mobile.display_method.includes("text")
? `
${
obj.content_v2.mobile_launcher || ""
}`
: ""
}
`;
referralDiv.insertAdjacentHTML("beforeend", divContent);
let linkReferralExist = bgGetCookie("bg_referral_advocate_link");
if (!linkReferralExist) {
if (customerEmail) {
document.getElementById("bixgrow-email-advocate-widget").value =
customerEmail;
document.getElementById("bixgrow-name-advocate-widget").value =
customerName;
}
let bixgrow_btn_invite_widget = document.getElementById(
"bixgrow_btn_invite_widget"
);
bixgrow_btn_invite_widget.addEventListener("click", function ($event) {
let noteEmail = document.getElementById(
"note-bixgrow-email-advocate-widget"
);
let emailAdvocate = document.getElementById(
"bixgrow-email-advocate-widget"
);
emailAdvocate.classList.remove("bixgrow-border-red");
noteEmail.style.display = "none";
let emailValue = emailAdvocate.value;
let nameValue = document.getElementById(
"bixgrow-name-advocate-widget"
).value;
const checkBox = document.getElementById("bgWidgetMyCheckbox");
const checkBoxValue = checkBox ? (checkBox.checked ? 1 : 0) : 0;
if (!validateEmail(emailValue)) {
noteEmail.innerHTML =
obj.content.join_page.email_error_message ||
"Please enter your correct email address";
noteEmail.style.display = "block";
emailAdvocate.classList.add("bixgrow-border-red");
} else {
bixgrow_btn_invite_widget.classList.add("bixgrow-loading");
let xhttp = new XMLHttpRequest();
xhttp.open(
"POST",
bixgrowReferralUrl + "/api/referral/advocates/register",
true
);
xhttp.setRequestHeader("Content-Type", "application/json");
let dataRegister = {
email: emailValue,
name: nameValue,
shop: Shopify.shop,
campain_id: campainId,
locale: locale,
enable_marketing_consent_request: checkBoxValue
};
xhttp.send(JSON.stringify(dataRegister));
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
let objRegister = JSON.parse(this.responseText);
if (Object.keys(objRegister).length > 0) {
bgSetCookie(
"bg_referral_advocate_link",
objRegister.advocate.link,
30
);
bgSetCookie("bg_is_same_browser", true, 30);
document.getElementById(
"bixgrow-referral-link-text-copy-widget"
).value = objRegister.advocate.link;
let bixgrow_refer_content_input_invite = document.getElementById(
"bixgrow_refer_content_input_invite_widget"
);
bixgrow_refer_content_input_invite.style.display = "none";
if (obj.how_it_works.share_page.is_enable) {
let bixgrow_how_it_works_widget = document.getElementById(
"bixgrow_how_it_works_widget"
);
bixgrow_how_it_works_widget.style.display = "block";
}
let bixgrow_refer_content_input_share = document.getElementById(
"bixgrow_refer_content_input_share_widget"
);
bixgrow_refer_content_input_share.style.display = "block";
} else {
noteEmail.innerHTML = "An error occurred. Please try again later";
noteEmail.style.display = "block";
emailAdvocate.classList.add("bixgrow-border-red");
}
}
if (this.readyState == 4 && this.status == 422) {
let noteEmail = document.getElementById(
"note-bixgrow-email-advocate-widget"
);
noteEmail.innerHTML = JSON.parse(this.responseText).message;
noteEmail.style.display = "block";
document
.getElementById("bixgrow-email-advocate-widget")
.classList.add("bixgrow-border-red");
document
.getElementById("bixgrow_btn_invite_widget")
.classList.remove("bixgrow-loading");
}
};
xhttp.onload = function () {};
}
});
} else {
document.getElementById("bixgrow-referral-link-text-copy-widget").value =
bgGetCookie("bg_referral_advocate_link");
let bixgrow_refer_content_input_invite = document.getElementById(
"bixgrow_refer_content_input_invite_widget"
);
bixgrow_refer_content_input_invite.style.display = "none";
if (obj.how_it_works.share_page.is_enable) {
let bixgrow_how_it_works_widget = document.getElementById(
"bixgrow_how_it_works_widget"
);
bixgrow_how_it_works_widget.style.display = "block";
}
let bixgrow_refer_content_input_share = document.getElementById(
"bixgrow_refer_content_input_share_widget"
);
bixgrow_refer_content_input_share.style.display = "block";
}
let bixgrowReferWidgetId = document.getElementById(
"bixgrow-refer-widget-desktop-id"
);
let bixgrowReferWidgetMobileId = document.getElementById(
"bixgrow-refer-widget-mobile-id"
);
let bixgrowPopupReferral = document.getElementById("bixgrow-popup-referral");
bixgrowReferWidgetId.addEventListener("click", function ($event) {
if (obj.appearance_v2.launcher.desktop.type == "float") {
bixgrowReferWidgetId.classList.toggle("bixgrow-active");
}
if (obj.appearance_v2.launcher.desktop.type == "side") {
bixgrowReferWidgetId.classList.toggle("bixgrow-side-active");
}
referralDiv.classList.toggle("bixgrow-wrapper-active");
bixgrowPopupReferral.classList.toggle("bixgrow-inactive");
let bPoweredBy = document.getElementById("b-powered-by-widget-id");
if (bPoweredBy) {
bPoweredBy.classList.toggle("bixgrow-inactive");
}
});
bixgrowReferWidgetMobileId.addEventListener("click", function ($event) {
if (obj.appearance_v2.launcher.mobile.type == "float") {
bixgrowReferWidgetMobileId.classList.toggle("bixgrow-active");
}
if (obj.appearance_v2.launcher.mobile.type == "side") {
bixgrowReferWidgetId.classList.toggle("bixgrow-side-active");
}
bixgrowPopupReferral.classList.toggle("bixgrow-inactive");
let bPoweredBy = document.getElementById("b-powered-by-widget-id");
if (bPoweredBy) {
bPoweredBy.classList.toggle("bixgrow-inactive");
}
});
let bixgrow_close_popup_widget_mobile = document.getElementById(
"bixgrow-close-popup-widget-mobile"
);
bixgrow_close_popup_widget_mobile.addEventListener("click", function () {
bixgrowPopupReferral.classList.add("bixgrow-inactive");
bixgrowReferWidgetId.classList.remove("bixgrow-active");
bixgrowReferWidgetMobileId.classList.remove("bixgrow-active");
referralDiv.classList.remove("bixgrow-wrapper-active");
let bPoweredBy = document.getElementById("b-powered-by-widget-id");
if (bPoweredBy) {
bPoweredBy.classList.toggle("bixgrow-inactive");
}
});
let bixgrow_close_popup_widget_desktop = document.getElementById(
"bixgrow-close-popup-widget-desktop"
);
if (bixgrow_close_popup_widget_desktop) {
bixgrow_close_popup_widget_desktop.addEventListener("click", function () {
if (obj.appearance_v2.launcher.desktop.type == "side") {
bixgrowReferWidgetId.classList.remove("bixgrow-side-active");
}
bixgrowPopupReferral.classList.add("bixgrow-inactive");
referralDiv.classList.remove("bixgrow-wrapper-active");
let bPoweredBy = document.getElementById("b-powered-by-widget-id");
if (bPoweredBy) {
bPoweredBy.classList.toggle("bixgrow-inactive");
}
});
}
let bixgrow_btn_copy_widget = document.getElementById(
"bixgrow_btn_copy_widget"
);
bixgrow_btn_copy_widget.addEventListener("click", function ($event) {
let bixgrowCopyOverlay = document.getElementById(
"bixgrow-copy-overlay-widget"
);
let textBoxCopy = document.getElementById(
"bixgrow-referral-link-text-copy-widget"
);
textBoxCopy.select();
document.execCommand("copy");
bixgrowCopyOverlay.style.display = "flex";
setTimeout(() => {
bixgrowCopyOverlay.style.display = "none";
}, 1500);
});
referralDiv.style.display = "block";
}
function validateEmail(emailValue) {
let bixgrow_reg =
/^([A-Za-z0-9_\-\.\+])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
if (bixgrow_reg.test(emailValue) == false) {
return false;
}
return true;
}
function bgGetCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(";");
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == " ") {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function bgSetCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + exdays * 24 * 60 * 60 * 1000);
var expires = "expires=" + d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}
function bgIsShowWidget(target, targetUrls = []) {
let pathname = window.location.pathname;
if (target == "all_page") {
return true;
}
if (target == "specific_page") {
let isShow = false;
let languages = [
"/vn",
"/af",
"/ak",
"/sq",
"/am",
"/ar",
"/hy",
"/as",
"/az",
"/bm",
"/bn",
"/eu",
"/be",
"/bs",
"/br",
"/bg",
"/my",
"/ca",
"/ckb",
"/ce",
"/zh-hant",
"/zh-hans",
"/kw",
"/hr",
"/cs",
"/da",
"/nl",
"/dz",
"/en",
"/eo",
"/et",
"/ee",
"/fo",
"/fil",
"/fi",
"/fr",
"/ff",
"/gl",
"/lg",
"/ka",
"/de",
"/el",
"/gu",
"/ha",
"/he",
"/hi",
"/hu",
"/is",
"/ig",
"/id",
"/ia",
"/ga",
"/it",
"/ja",
"/jv",
"/kl",
"/kn",
"/ks",
"/kk",
"/km",
"/ki",
"/rw",
"/ko",
"/ku",
"/ky",
"/lo",
"/lv",
"/ln",
"/lt",
"/lu",
"/lb",
"/mk",
"/mg",
"/ms",
"/ml",
"/mt",
"/gv",
"/mr",
"/mn",
"/mi",
"/ne",
"/nd",
"/se",
"/no",
"/nb",
"/nn",
"/or",
"/om",
"/os",
"/ps",
"/fa",
"/pl",
"/pt",
"/pa",
"/qu",
"/ro",
"/rm",
"/rn",
"/ru",
"/sg",
"/sa",
"/sc",
"/gd",
"/sr",
"/sn",
"/ii",
"/sd",
"/si",
"/sk",
"/sl",
"/so",
"/es",
"/su",
"/sw",
"/sv",
"/tg",
"/ta",
"/tt",
"/te",
"/th",
"/bo",
"/ti",
"/to",
"/tr",
"/tk",
"/uk",
"/ur",
"/ug",
"/uz",
"/cy",
"/fy",
"/wo",
"/xh",
"/yi",
"/yo",
"/zu",
"/zh",
];
for (let i = 0; i < targetUrls.length; i++) {
if (
targetUrls[i] == "home_page" &&
(pathname == "/" || languages.includes(pathname))
) {
isShow = true;
break;
}
if (
targetUrls[i] == "product_pages" &&
pathname &&
pathname.includes("/products")
) {
isShow = true;
break;
}
if (
targetUrls[i] == "collection_pages" &&
pathname &&
pathname.includes("/collections")
) {
isShow = true;
break;
}
if (
targetUrls[i] == "cart_pages" &&
pathname &&
pathname.includes("/cart")
) {
isShow = true;
break;
}
if (
targetUrls[i] == "blog_pages" &&
pathname &&
pathname.includes("/blogs")
) {
isShow = true;
break;
}
}
return isShow;
}
}
function detectDateFormat(dateString) {
let d = new Date(dateString);
return d.toLocaleDateString();
}
async function bgUseFetch(
url,
method = "GET",
params = null,
headers = { "Content-Type": "application/json" }
) {
try {
const options = {
method: method,
headers: {
...headers,
},
};
if (params) {
if (method == "GET") {
const queryString = new URLSearchParams(params).toString();
url += "?" + queryString;
} else {
options.body = JSON.stringify(params);
}
}
const response = await fetch(url, options);
if (!response.ok) {
const errorData = await response.json();
const error = new Error(
errorData.message || response.statusText || "Request failed"
);
error.status = response.status;
throw error;
}
const responseData = await response.json();
return responseData;
} catch (error) {
throw error;
}
}