@expofp/floorplan
Version:
Interactive floor plan library for expos and events
2 lines (1 loc) • 1.23 kB
JavaScript
import{isKioskMode as o}from"../components/Kiosk/kiosk-mode";function e(){const t=window.location.hostname.split(".");return t.length>=3&&t[t.length-2]==="expofp"&&t[t.length-1]==="com"}function u(){return e()?window.location.hostname.split(".")[0]:"main"}function a(t){if(t?.free===!0)return"Free";const n=t?.trialExpiresAt;if(n){const i=new Date(n).getTime();if(!Number.isNaN(i))return Date.now()<i?"Trial Active":"Trial Expired"}return"Active"}function c(){if(process.env.NODE_ENV==="production")return!1;const t=new URLSearchParams(window.location.search);return!t.has("__intercom_subdomain")&&!t.has("__intercom_status")}function l(t){if(process.env.NODE_ENV==="production")return t;const n=new URLSearchParams(window.location.search),i=n.get("__intercom_subdomain"),r=n.get("__intercom_status"),s=r&&["Active","Trial Active","Trial Expired","Free"].includes(r)?r:t.subscriptionStatus;return{subDomain:i??t.subDomain,subscriptionStatus:s}}export function shouldLoadIntercom(t){if(c()||process.env.NODE_ENV==="production"&&!e()||o(t)||!window.navigator.onLine)return null;const n=l({subDomain:u(),subscriptionStatus:a(t)});return n.subDomain!=="demo"&&n.subscriptionStatus!=="Free"&&n.subscriptionStatus!=="Trial Expired"?null:n}