@frigade/react 1.33.5 → 1.33.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts CHANGED
@@ -215,7 +215,7 @@ declare enum TriggerType {
215
215
  }
216
216
  declare function useFlows(): {
217
217
  getFlow: (slug: string) => Flow;
218
- getFlowData: (flowId: string) => object;
218
+ getFlowData: (flowId: string) => any;
219
219
  isLoading: boolean;
220
220
  getStepStatus: (flowId: string, stepId: string) => StepActionType | null;
221
221
  getFlowSteps: (flowId: string) => StepData[];
package/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- var Yl=Object.create;var Ao=Object.defineProperty;var Xl=Object.getOwnPropertyDescriptor;var Jl=Object.getOwnPropertyNames;var Ql=Object.getPrototypeOf,Zl=Object.prototype.hasOwnProperty;var Rl=(e,t)=>{for(var o in t)Ao(e,o,{get:t[o],enumerable:!0})},Hr=(e,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Jl(t))!Zl.call(e,r)&&r!==o&&Ao(e,r,{get:()=>t[r],enumerable:!(i=Xl(t,r))||i.enumerable});return e};var m=(e,t,o)=>(o=e!=null?Yl(Ql(e)):{},Hr(t||!e||!e.__esModule?Ao(o,"default",{value:e,enumerable:!0}):o,e)),ea=e=>Hr(Ao({},"__esModule",{value:!0}),e);var ed={};Rl(ed,{Box:()=>Xt,Button:()=>Kl,CheckBox:()=>et,FormLabel:()=>mt,FormTextField:()=>Ho,FrigadeBanner:()=>Ml,FrigadeChecklist:()=>lr,FrigadeDefaultAppearance:()=>Ze,FrigadeEmbeddedTip:()=>Il,FrigadeForm:()=>wr,FrigadeGuide:()=>al,FrigadeHeroChecklist:()=>Ys,FrigadeNPSSurvey:()=>jl,FrigadeProgressBadge:()=>sl,FrigadeProvider:()=>xn,FrigadeSupportWidget:()=>Pl,FrigadeTour:()=>gl,ProgressRing:()=>At,Text:()=>pr,tokens:()=>Ro,useFlowOpens:()=>Ne,useFlowResponses:()=>Wt,useFlows:()=>Z,useOrganization:()=>Jo,useUser:()=>Vt});module.exports=ea(ed);var Y=m(require("react")),mn=require("styled-components");var Ce=m(require("react"));var He=require("react");var vt=m(require("react"));var Vr="1.33.5 ";var _e="NOT_STARTED_STEP",ie="COMPLETED_FLOW",Io="ABORTED_FLOW",Bt="STARTED_FLOW",Ve="NOT_STARTED_FLOW",je="COMPLETED_STEP",No="STARTED_STEP";function Qe(){let{publicApiKey:e,userId:t,apiUrl:o}=vt.default.useContext(K);return{config:(0,vt.useMemo)(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":Vr,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:(0,vt.useMemo)(()=>`${o}/v1/public/`,[o])}}var ta="frigade-last-call-at-",oa="frigade-last-call-data-";function Ut(){let{shouldGracefullyDegrade:e,readonly:t}=vt.default.useContext(K);return async(o,i)=>{if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return Mt();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),Mt();let r=ta+o,n=oa+o;if(window&&window.localStorage&&i&&i.body&&i.method==="POST"){let p=window.localStorage.getItem(r),d=window.localStorage.getItem(n);if(p&&d&&d==i.body){let a=new Date(p);if(new Date().getTime()-a.getTime()<1e3)return Mt()}window.localStorage.setItem(r,new Date().toISOString()),window.localStorage.setItem(n,i.body)}let s;try{s=await fetch(o,i)}catch(p){return Mt(p)}return s?s.ok?s:Mt(s.statusText):Mt()}}function Mt(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function zt(){let{publicApiKey:e,shouldGracefullyDegrade:t}=vt.default.useContext(K);function o(){if(t){console.error("Frigade hooks cannot be used when Frigade SDK has failed to initialize");return}e||console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider")}return{verifySDKInitiated:o}}var po=require("react");var _t=require("react");var Gr=m(require("swr"));var jr=require("react");function Ne(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:r}=(0,jr.useContext)(K);function n(c,x=!1){return e[c]??x}function s(c,x){t(b=>({...b,[c]:x}))}function p(c){t(x=>{let{[c]:b,...F}=x;return{...F}})}function d(c){r.includes(c)||i(x=>[...x,c])}function a(c){return r.includes(c)}function y(c){return Object.entries(e).some(([x,b])=>b&&x!=c)||o}return{getOpenFlowState:n,setOpenFlowState:s,resetOpenFlowState:p,hasOpenModals:y,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:a}}var qr=m(require("swr/immutable")),ra="unknown";function We(){let{config:e,apiUrl:t}=Qe(),{publicApiKey:o,userId:i,organizationId:r,flows:n,setShouldGracefullyDegrade:s,readonly:p}=(0,_t.useContext)(K),{resetOpenFlowState:d}=Ne(),[a,y]=(0,_t.useState)(!1),c={data:n.map(S=>({flowId:S.id,flowState:ie,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},x=S=>fetch(S,e).then(E=>{if(E.ok)return E.json();throw new Error("Failed to fetch user flow states")}).catch(E=>(console.log(`Error fetching ${S}: ${E}. Will gracefully degrade and hide Frigade`),s(!0),c)),b=o&&n&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${r?`&foreignUserGroupId=${encodeURIComponent(r)}`:""}`:null,{data:F,isLoading:P,mutate:f,error:B}=p?(0,qr.default)(b,x):(0,Gr.default)(b,x,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!0,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),h=F==null?void 0:F.data;(0,_t.useEffect)(()=>{!a&&!P&&h&&y(!0)},[h,a,P]);async function k(S){if(h&&!p){let E=h.find(D=>D.flowId===S);E&&E.flowState!==ie&&(E.flowState=ie),await f(Promise.resolve({...F,data:h}),{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function O(S,E,D){if(h){let L=h.find(U=>U.flowId===S);L&&(L.stepStates[E]=D,L.flowState=Bt),await f(Promise.resolve({...F,data:h}),{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function C(S,E,D){if(h){let L=h.find(U=>U.flowId===S);L&&(L.lastStepId=E,L.stepStates[E]=D,L.flowState=Bt),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function u(S){if(h){let E=h.find(D=>D.flowId===S);E&&E.flowState!==Ve&&(E.flowState=Ve,E.lastStepId=ra,Object.keys(E.stepStates).forEach(D=>{E.stepStates[D].actionType=_e,E.stepStates[D].createdAt=new Date().toISOString()}),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1}),d(S))}}async function T(S,E){if(h){let D=h.find(L=>L.flowId===S);D&&D.stepStates[E]!==_e&&(D.stepStates[E]=_e),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}return{userFlowStatesData:h,isLoadingUserFlowStateData:!a,mutateUserFlowState:f,optimisticallyMarkFlowCompleted:k,optimisticallyMarkFlowNotStarted:u,optimisticallyMarkStepCompleted:O,optimisticallyMarkStepNotStarted:T,optimisticallyMarkStepStarted:C,error:B}}function Wt(){let{config:e,apiUrl:t}=Qe(),{userFlowStatesData:o,mutateUserFlowState:i}=We(),{failedFlowResponses:r,setFailedFlowResponses:n,flowResponses:s,setFlowResponses:p}=(0,po.useContext)(K),[d,a]=(0,po.useState)(new Set),[y,c]=(0,po.useState)(new Set),x=Ut();function b(f){let B=JSON.stringify(f);if(d.has(B))return null;d.add(B),a(d),y.add(f),c(y);let h=s==null?void 0:s.find(k=>k.flowSlug===f.flowSlug&&k.stepId===f.stepId&&k.actionType===f.actionType&&k.createdAt===f.createdAt);return x(`${t}flowResponses`,{...e,method:"POST",body:B}).then(k=>{k.status!==200&&k.status!==201?(console.log("Failed to send flow response for step "+f.stepId+". Will retry again later."),n([...r,f])):h||p(O=>[...O??[],f])})}async function F(f){f.foreignUserId&&(f.actionType===Bt||f.actionType===Ve?await b(f):f.actionType===ie?await b(f):f.actionType===No?await b(f):f.actionType===je?await b(f):f.actionType===Io?await b(f):f.actionType===_e&&await b(f))}function P(){let f=[];return o==null||o.forEach(B=>{if(B&&B.stepStates&&Object.keys(B.stepStates).length!==0)for(let h in B.stepStates){let k=B.stepStates[h];f.push({foreignUserId:B.foreignUserId,flowSlug:B.flowId,stepId:k.stepId,actionType:k.actionType,data:{},createdAt:new Date(k.createdAt),blocked:k.blocked,hidden:k.hidden})}}),[...f,...s]}return{addResponse:F,setFlowResponses:p,getFlowResponses:P}}var Yr=m(require("swr"));var ia=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,Kr=e=>{let t=ia.exec(e);if(t===null)return null;let o=null;return t.forEach((i,r)=>{let n=na(i,"'","");n.startsWith("flow_")&&(o=n)}),o},na=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};function Z(){let{config:e,apiUrl:t}=Qe(),{flows:o,setFlows:i,userId:r,publicApiKey:n,customVariables:s,setCustomVariables:p,hasActiveFullPageFlow:d,setHasActiveFullPageFlow:a,setFlowResponses:y,setShouldGracefullyDegrade:c,readonly:x}=(0,He.useContext)(K),b={data:[]},{verifySDKInitiated:F}=zt(),{addResponse:P,getFlowResponses:f}=Wt(),B=g=>fetch(g,e).then(w=>w.ok?w.json():(console.log(`Error fetching ${g} (${w.status}): ${w.statusText}. .Will gracefully degrade and hide Frigade`),c(!0),b)).catch(w=>(console.log(`Error fetching ${g}: ${w}. Will gracefully degrade and hide Frigade`),c(!0),b)),{userFlowStatesData:h,isLoadingUserFlowStateData:k,optimisticallyMarkFlowCompleted:O,optimisticallyMarkFlowNotStarted:C,optimisticallyMarkStepCompleted:u,optimisticallyMarkStepNotStarted:T,optimisticallyMarkStepStarted:S}=We(),{data:E,error:D,isLoading:L}=(0,Yr.default)(n?`${t}flows${x?"?readonly=true":""}`:null,B,{keepPreviousData:!0});(0,He.useEffect)(()=>{if(D){console.error(D);return}E&&E.data&&i(E.data)},[E,D]);function U(g){if(L)return null;let w=o.find(A=>A.slug===g);return!w&&o.length>0&&!k&&!L?(console.log(`Flow with slug ${g} not found`),null):(w==null?void 0:w.active)===!1?null:w}function $(g){var I;if(!U(g))return[];let w=U(g).data;return w?(w=j(w),(((I=JSON.parse(w))==null?void 0:I.data)??[]).map(re=>{let Pt=pt(re);return{handleSecondaryButtonClick:()=>{re.skippable===!0&&fe(g,re.id,{skipped:!0})},...re,complete:he(g,re.id)===je||Pt>=1,blocked:_(g,re.id),hidden:M(g,re.id),handlePrimaryButtonClick:()=>{(!re.completionCriteria&&(re.autoMarkCompleted||re.autoMarkCompleted===void 0)||re.completionCriteria&&re.autoMarkCompleted===!0)&&fe(g,re.id)},progress:Pt}}).filter(re=>re.hidden!==!0)):[]}function j(g){return g.replaceAll(/\${(.*?)}/g,(w,A)=>s[A]===void 0?"":String(s[A]).replace(/[\u00A0-\u9999<>\&]/g,function(I){return"&#"+I.charCodeAt(0)+";"}).replaceAll(/[\\]/g,"\\\\").replaceAll(/[\"]/g,'\\"').replaceAll(/[\/]/g,"\\/").replaceAll(/[\b]/g,"\\b").replaceAll(/[\f]/g,"\\f").replaceAll(/[\n]/g,"\\n").replaceAll(/[\r]/g,"\\r").replaceAll(/[\t]/g,"\\t"))}function H(g){if(!U(g))return[];let w=U(g).data;return w?(w=j(w),JSON.parse(w)??{}):[]}function ae(g,w){p(A=>({...A,[g]:w}))}function ne(g){!k&&!L&&g&&JSON.stringify(s)!=JSON.stringify({...s,...g})&&Object.keys(g).forEach(w=>{ae(w,g[w])})}let Q=(0,He.useCallback)(async(g,w,A)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:No,data:A??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await S(g,w,I),P(I))},[r,h]),se=(0,He.useCallback)(async(g,w,A)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:_e,data:A??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await T(g,w),P(I))},[r,h]),fe=(0,He.useCallback)(async(g,w,A)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:je,data:A??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await u(g,w,I),P(I))},[r,h]),oe=(0,He.useCallback)(async(g,w)=>{if(F(),Xe(g)===Ve)return;let A={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Ve,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};await C(g),J(A)&&P(A)},[r,h]),X=(0,He.useCallback)(async(g,w)=>{F();let A={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Bt,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(A)&&P(A)},[r,h]),ve=(0,He.useCallback)(async(g,w)=>{F();let A={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:ie,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(A)&&(await O(g),P(A))},[r,h]),De=(0,He.useCallback)(async(g,w)=>{F();let A={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Io,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(A)&&(await O(g),P(A))},[r,h]);function J(g){var w;if(!h&&g.actionType===_e)return!1;if(h){let A=h.find(I=>I.flowId===g.flowSlug);if(g.actionType===_e&&(!(A!=null&&A.stepStates[g.stepId])||A.stepStates[g.stepId].actionType===_e)||A&&((w=A.stepStates[g.stepId])==null?void 0:w.actionType)===g.actionType||A&&A.flowState===ie&&g.actionType===ie)return!1}return!0}function he(g,w){let A=pe(g,w);return k?null:A?A.actionType:_e}function _(g,w){let A=pe(g,w);return A?A.blocked:!1}function M(g,w){let A=pe(g,w);return A?A.hidden:!1}function pe(g,w){if(k)return null;let A=h==null?void 0:h.find(I=>I.flowId===g);return!A||!A.stepStates[w]?null:A.stepStates[w]??null}function q(g){var A;if(k||!h)return null;if(Xe(g)===Ve)return $(g)[0]??null;let w=(A=h.find(I=>I.flowId===g))==null?void 0:A.lastStepId;return w?$(g).find(I=>I.id===w):null}function de(g){let w=q(g);if(!w)return 0;let A=$(g).findIndex(I=>I.id===w.id)??0;return he(g,w.id)===je&&A<$(g).length-1?A+1:A}function pt(g){if(!g.completionCriteria)return;let w=Kr(g.completionCriteria);if(w===null)return;let A=kt(w),I=V(w);return I===0?void 0:A/I}function Xe(g){let w=h==null?void 0:h.find(A=>A.flowId===g);return w?w.flowState:null}function kt(g){let w=$(g);return w.length===0?0:w.filter(I=>he(g,I.id)===je).length}function V(g){return $(g).length}function ze(g){return JSON.parse(o.find(w=>w.slug===g).data)}function Je(g){if(x)return!1;if(k)return!0;if(g!=null&&g.targetingLogic&&h){let w=h.find(A=>A.flowId===g.slug);if(w)return w.shouldTrigger===!1}return!!(g!=null&&g.targetingLogic&&r&&r.startsWith("guest_"))}function cr(g){return!Je(U(g))}return{getFlow:U,getFlowData:ze,isLoading:k||L,getStepStatus:he,getFlowSteps:$,getCurrentStepIndex:de,markStepStarted:Q,markStepCompleted:fe,markFlowNotStarted:oe,markFlowStarted:X,markFlowCompleted:ve,markFlowAborted:De,markStepNotStarted:se,getFlowStatus:Xe,getNumberOfStepsCompleted:kt,getNumberOfSteps:V,targetingLogicShouldHideFlow:Je,setCustomVariable:ae,updateCustomVariables:ne,customVariables:s,getStepOptionalProgress:pt,getFlowMetadata:H,isStepBlocked:_,isStepHidden:M,hasActiveFullPageFlow:d,setHasActiveFullPageFlow:a,isFlowAvailableToUser:cr}}var Et=require("react");var Ht="guest_";function Vt(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:r}=(0,Et.useContext)(K),{config:n,apiUrl:s}=Qe(),{mutateUserFlowState:p}=We(),d=Ut(),{verifySDKInitiated:a}=zt();(0,Et.useEffect)(()=>{if(e&&!t){if(e.startsWith(Ht))return;let x=`frigade-user-registered-${e}`;localStorage.getItem(x)||(d(`${s}users`,{...n,method:"POST",body:JSON.stringify({foreignId:e})}),localStorage.setItem(x,"true"))}},[e,r,t]);let y=(0,Et.useCallback)(async x=>{a();let b={foreignId:e,properties:x};await d(`${s}users`,{...n,method:"POST",body:JSON.stringify(b)}),i(F=>({...F,...x})),p()},[e,n,r,p]),c=(0,Et.useCallback)(async(x,b)=>{a();let P={foreignId:e,events:[{event:x,properties:b}]};await d(`${s}users`,{...n,method:"POST",body:JSON.stringify(P)}),p()},[e,n,p]);return{userId:e,setUserId:o,addPropertiesToUser:y,trackEventForUser:c}}var Ri=require("uuid");var Ie=m(require("react"));var Le=m(require("react")),uo=m(require("styled-components"));var Jr=m(require("react")),Qr=m(require("styled-components"));var Xr="fr-",co="cfr-";function l(e,t){let o=`${Xr}${e}`;if(!t)return o;if(t.styleOverrides&&t.styleOverrides[e]){if(typeof t.styleOverrides[e]=="string")return o+" "+t.styleOverrides[e];if(typeof t.styleOverrides[e]=="object")return o+" "+co+e}return o}function v(e){if(!e.className||e.className.indexOf(co)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(Xr)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function mr(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function dt(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${mr(t)}: ${e.styleOverrides[t]};`).join(" "):""}function Ee(...e){return e.filter(Boolean).join(" ")}function mo(e){return e.charAt(0).toUpperCase()+e.slice(1)}var sa=Qr.default.div`
2
+ var Yl=Object.create;var Ao=Object.defineProperty;var Xl=Object.getOwnPropertyDescriptor;var Jl=Object.getOwnPropertyNames;var Ql=Object.getPrototypeOf,Zl=Object.prototype.hasOwnProperty;var Rl=(e,t)=>{for(var o in t)Ao(e,o,{get:t[o],enumerable:!0})},Hr=(e,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Jl(t))!Zl.call(e,r)&&r!==o&&Ao(e,r,{get:()=>t[r],enumerable:!(i=Xl(t,r))||i.enumerable});return e};var m=(e,t,o)=>(o=e!=null?Yl(Ql(e)):{},Hr(t||!e||!e.__esModule?Ao(o,"default",{value:e,enumerable:!0}):o,e)),ea=e=>Hr(Ao({},"__esModule",{value:!0}),e);var ed={};Rl(ed,{Box:()=>Xt,Button:()=>Kl,CheckBox:()=>et,FormLabel:()=>mt,FormTextField:()=>Ho,FrigadeBanner:()=>Ml,FrigadeChecklist:()=>lr,FrigadeDefaultAppearance:()=>Ze,FrigadeEmbeddedTip:()=>Il,FrigadeForm:()=>wr,FrigadeGuide:()=>al,FrigadeHeroChecklist:()=>Ys,FrigadeNPSSurvey:()=>jl,FrigadeProgressBadge:()=>sl,FrigadeProvider:()=>xn,FrigadeSupportWidget:()=>Pl,FrigadeTour:()=>gl,ProgressRing:()=>At,Text:()=>pr,tokens:()=>Ro,useFlowOpens:()=>Ne,useFlowResponses:()=>Wt,useFlows:()=>Z,useOrganization:()=>Jo,useUser:()=>Vt});module.exports=ea(ed);var Y=m(require("react")),mn=require("styled-components");var Ce=m(require("react"));var He=require("react");var vt=m(require("react"));var Vr="1.33.7 ";var _e="NOT_STARTED_STEP",ie="COMPLETED_FLOW",Io="ABORTED_FLOW",Bt="STARTED_FLOW",Ve="NOT_STARTED_FLOW",je="COMPLETED_STEP",No="STARTED_STEP";function Qe(){let{publicApiKey:e,userId:t,apiUrl:o}=vt.default.useContext(K);return{config:(0,vt.useMemo)(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":Vr,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:(0,vt.useMemo)(()=>`${o}/v1/public/`,[o])}}var ta="frigade-last-call-at-",oa="frigade-last-call-data-";function Ut(){let{shouldGracefullyDegrade:e,readonly:t}=vt.default.useContext(K);return async(o,i)=>{if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return Mt();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),Mt();let r=ta+o,n=oa+o;if(window&&window.localStorage&&i&&i.body&&i.method==="POST"){let p=window.localStorage.getItem(r),d=window.localStorage.getItem(n);if(p&&d&&d==i.body){let a=new Date(p);if(new Date().getTime()-a.getTime()<1e3)return Mt()}window.localStorage.setItem(r,new Date().toISOString()),window.localStorage.setItem(n,i.body)}let s;try{s=await fetch(o,i)}catch(p){return Mt(p)}return s?s.ok?s:Mt(s.statusText):Mt()}}function Mt(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function zt(){let{publicApiKey:e,shouldGracefullyDegrade:t}=vt.default.useContext(K);function o(){if(t){console.error("Frigade hooks cannot be used when Frigade SDK has failed to initialize");return}e||console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider")}return{verifySDKInitiated:o}}var po=require("react");var _t=require("react");var Gr=m(require("swr"));var jr=require("react");function Ne(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:r}=(0,jr.useContext)(K);function n(c,x=!1){return e[c]??x}function s(c,x){t(b=>({...b,[c]:x}))}function p(c){t(x=>{let{[c]:b,...F}=x;return{...F}})}function d(c){r.includes(c)||i(x=>[...x,c])}function a(c){return r.includes(c)}function y(c){return Object.entries(e).some(([x,b])=>b&&x!=c)||o}return{getOpenFlowState:n,setOpenFlowState:s,resetOpenFlowState:p,hasOpenModals:y,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:a}}var qr=m(require("swr/immutable")),ra="unknown";function We(){let{config:e,apiUrl:t}=Qe(),{publicApiKey:o,userId:i,organizationId:r,flows:n,setShouldGracefullyDegrade:s,readonly:p}=(0,_t.useContext)(K),{resetOpenFlowState:d}=Ne(),[a,y]=(0,_t.useState)(!1),c={data:n.map(S=>({flowId:S.id,flowState:ie,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},x=S=>fetch(S,e).then(A=>{if(A.ok)return A.json();throw new Error("Failed to fetch user flow states")}).catch(A=>(console.log(`Error fetching ${S}: ${A}. Will gracefully degrade and hide Frigade`),s(!0),c)),b=o&&n&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${r?`&foreignUserGroupId=${encodeURIComponent(r)}`:""}`:null,{data:F,isLoading:P,mutate:f,error:B}=p?(0,qr.default)(b,x):(0,Gr.default)(b,x,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!0,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),h=F==null?void 0:F.data;(0,_t.useEffect)(()=>{!a&&!P&&h&&y(!0)},[h,a,P]);async function k(S){if(h&&!p){let A=h.find(D=>D.flowId===S);A&&A.flowState!==ie&&(A.flowState=ie),await f(Promise.resolve({...F,data:h}),{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function O(S,A,D){if(h){let L=h.find(U=>U.flowId===S);L&&(L.stepStates[A]=D,L.flowState=Bt),await f(Promise.resolve({...F,data:h}),{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function C(S,A,D){if(h){let L=h.find(U=>U.flowId===S);L&&(L.lastStepId=A,L.stepStates[A]=D,L.flowState=Bt),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}async function u(S){if(h){let A=h.find(D=>D.flowId===S);A&&A.flowState!==Ve&&(A.flowState=Ve,A.lastStepId=ra,Object.keys(A.stepStates).forEach(D=>{A.stepStates[D].actionType=_e,A.stepStates[D].createdAt=new Date().toISOString()}),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1}),d(S))}}async function T(S,A){if(h){let D=h.find(L=>L.flowId===S);D&&D.stepStates[A]!==_e&&(D.stepStates[A]=_e),await f({...F,data:h},{optimisticData:{...F,data:h},revalidate:!1,rollbackOnError:!1})}}return{userFlowStatesData:h,isLoadingUserFlowStateData:!a,mutateUserFlowState:f,optimisticallyMarkFlowCompleted:k,optimisticallyMarkFlowNotStarted:u,optimisticallyMarkStepCompleted:O,optimisticallyMarkStepNotStarted:T,optimisticallyMarkStepStarted:C,error:B}}function Wt(){let{config:e,apiUrl:t}=Qe(),{userFlowStatesData:o,mutateUserFlowState:i}=We(),{failedFlowResponses:r,setFailedFlowResponses:n,flowResponses:s,setFlowResponses:p}=(0,po.useContext)(K),[d,a]=(0,po.useState)(new Set),[y,c]=(0,po.useState)(new Set),x=Ut();function b(f){let B=JSON.stringify(f);if(d.has(B))return null;d.add(B),a(d),y.add(f),c(y);let h=s==null?void 0:s.find(k=>k.flowSlug===f.flowSlug&&k.stepId===f.stepId&&k.actionType===f.actionType&&k.createdAt===f.createdAt);return x(`${t}flowResponses`,{...e,method:"POST",body:B}).then(k=>{k.status!==200&&k.status!==201?(console.log("Failed to send flow response for step "+f.stepId+". Will retry again later."),n([...r,f])):h||p(O=>[...O??[],f])})}async function F(f){f.foreignUserId&&(f.actionType===Bt||f.actionType===Ve?await b(f):f.actionType===ie?await b(f):f.actionType===No?await b(f):f.actionType===je?await b(f):f.actionType===Io?await b(f):f.actionType===_e&&await b(f))}function P(){let f=[];return o==null||o.forEach(B=>{if(B&&B.stepStates&&Object.keys(B.stepStates).length!==0)for(let h in B.stepStates){let k=B.stepStates[h];f.push({foreignUserId:B.foreignUserId,flowSlug:B.flowId,stepId:k.stepId,actionType:k.actionType,data:{},createdAt:new Date(k.createdAt),blocked:k.blocked,hidden:k.hidden})}}),[...f,...s]}return{addResponse:F,setFlowResponses:p,getFlowResponses:P}}var Yr=m(require("swr"));var ia=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,Kr=e=>{let t=ia.exec(e);if(t===null)return null;let o=null;return t.forEach((i,r)=>{let n=na(i,"'","");n.startsWith("flow_")&&(o=n)}),o},na=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};function Z(){let{config:e,apiUrl:t}=Qe(),{flows:o,setFlows:i,userId:r,publicApiKey:n,customVariables:s,setCustomVariables:p,hasActiveFullPageFlow:d,setHasActiveFullPageFlow:a,setFlowResponses:y,setShouldGracefullyDegrade:c,readonly:x}=(0,He.useContext)(K),b={data:[]},{verifySDKInitiated:F}=zt(),{addResponse:P,getFlowResponses:f}=Wt(),B=g=>fetch(g,e).then(w=>w.ok?w.json():(console.log(`Error fetching ${g} (${w.status}): ${w.statusText}. .Will gracefully degrade and hide Frigade`),c(!0),b)).catch(w=>(console.log(`Error fetching ${g}: ${w}. Will gracefully degrade and hide Frigade`),c(!0),b)),{userFlowStatesData:h,isLoadingUserFlowStateData:k,optimisticallyMarkFlowCompleted:O,optimisticallyMarkFlowNotStarted:C,optimisticallyMarkStepCompleted:u,optimisticallyMarkStepNotStarted:T,optimisticallyMarkStepStarted:S}=We(),{data:A,error:D,isLoading:L}=(0,Yr.default)(n?`${t}flows${x?"?readonly=true":""}`:null,B,{keepPreviousData:!0});(0,He.useEffect)(()=>{if(D){console.error(D);return}A&&A.data&&i(A.data)},[A,D]);function U(g){if(L)return null;let w=o.find(E=>E.slug===g);return!w&&o.length>0&&!k&&!L?(console.log(`Flow with slug ${g} not found`),null):(w==null?void 0:w.active)===!1?null:w}function $(g){var I;if(!U(g))return[];let w=U(g).data;return w?(w=j(w),(((I=JSON.parse(w))==null?void 0:I.data)??[]).map(re=>{let Pt=pt(re);return{handleSecondaryButtonClick:()=>{re.skippable===!0&&fe(g,re.id,{skipped:!0})},...re,complete:he(g,re.id)===je||Pt>=1,blocked:_(g,re.id),hidden:M(g,re.id),handlePrimaryButtonClick:()=>{(!re.completionCriteria&&(re.autoMarkCompleted||re.autoMarkCompleted===void 0)||re.completionCriteria&&re.autoMarkCompleted===!0)&&fe(g,re.id)},progress:Pt}}).filter(re=>re.hidden!==!0)):[]}function j(g){return g.replaceAll(/\${(.*?)}/g,(w,E)=>s[E]===void 0?"":String(s[E]).replace(/[\u00A0-\u9999<>\&]/g,function(I){return"&#"+I.charCodeAt(0)+";"}).replaceAll(/[\\]/g,"\\\\").replaceAll(/[\"]/g,'\\"').replaceAll(/[\/]/g,"\\/").replaceAll(/[\b]/g,"\\b").replaceAll(/[\f]/g,"\\f").replaceAll(/[\n]/g,"\\n").replaceAll(/[\r]/g,"\\r").replaceAll(/[\t]/g,"\\t"))}function H(g){if(!U(g))return[];let w=U(g).data;return w?(w=j(w),JSON.parse(w)??{}):[]}function ae(g,w){p(E=>({...E,[g]:w}))}function ne(g){!k&&!L&&g&&JSON.stringify(s)!=JSON.stringify({...s,...g})&&Object.keys(g).forEach(w=>{ae(w,g[w])})}let Q=(0,He.useCallback)(async(g,w,E)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:No,data:E??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await S(g,w,I),P(I))},[r,h]),se=(0,He.useCallback)(async(g,w,E)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:_e,data:E??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await T(g,w),P(I))},[r,h]),fe=(0,He.useCallback)(async(g,w,E)=>{F();let I={foreignUserId:r,flowSlug:g,stepId:w,actionType:je,data:E??{},createdAt:new Date,blocked:!1,hidden:!1};J(I)&&(await u(g,w,I),P(I))},[r,h]),oe=(0,He.useCallback)(async(g,w)=>{if(F(),Xe(g)===Ve)return;let E={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Ve,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};await C(g),J(E)&&P(E)},[r,h]),X=(0,He.useCallback)(async(g,w)=>{F();let E={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Bt,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(E)&&P(E)},[r,h]),ve=(0,He.useCallback)(async(g,w)=>{F();let E={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:ie,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(E)&&(await O(g),P(E))},[r,h]),De=(0,He.useCallback)(async(g,w)=>{F();let E={foreignUserId:r,flowSlug:g,stepId:"unknown",actionType:Io,data:w??{},createdAt:new Date,blocked:!1,hidden:!1};J(E)&&(await O(g),P(E))},[r,h]);function J(g){var w;if(!h&&g.actionType===_e)return!1;if(h){let E=h.find(I=>I.flowId===g.flowSlug);if(g.actionType===_e&&(!(E!=null&&E.stepStates[g.stepId])||E.stepStates[g.stepId].actionType===_e)||E&&((w=E.stepStates[g.stepId])==null?void 0:w.actionType)===g.actionType||E&&E.flowState===ie&&g.actionType===ie)return!1}return!0}function he(g,w){let E=pe(g,w);return k?null:E?E.actionType:_e}function _(g,w){let E=pe(g,w);return E?E.blocked:!1}function M(g,w){let E=pe(g,w);return E?E.hidden:!1}function pe(g,w){if(k)return null;let E=h==null?void 0:h.find(I=>I.flowId===g);return!E||!E.stepStates[w]?null:E.stepStates[w]??null}function q(g){var E;if(k||!h)return null;if(Xe(g)===Ve)return $(g)[0]??null;let w=(E=h.find(I=>I.flowId===g))==null?void 0:E.lastStepId;return w?$(g).find(I=>I.id===w):null}function de(g){let w=q(g);if(!w)return 0;let E=$(g).findIndex(I=>I.id===w.id)??0;return he(g,w.id)===je&&E<$(g).length-1?E+1:E}function pt(g){if(!g.completionCriteria)return;let w=Kr(g.completionCriteria);if(w===null)return;let E=kt(w),I=V(w);return I===0?void 0:E/I}function Xe(g){let w=h==null?void 0:h.find(E=>E.flowId===g);return w?w.flowState:null}function kt(g){let w=$(g);return w.length===0?0:w.filter(I=>he(g,I.id)===je).length}function V(g){return $(g).length}function ze(g){let w=o.find(E=>E.slug===g);return w?JSON.parse(w.data):null}function Je(g){if(x)return!1;if(k)return!0;if(g!=null&&g.targetingLogic&&h){let w=h.find(E=>E.flowId===g.slug);if(w)return w.shouldTrigger===!1}return!!(g!=null&&g.targetingLogic&&r&&r.startsWith("guest_"))}function cr(g){return!Je(U(g))}return{getFlow:U,getFlowData:ze,isLoading:k||L,getStepStatus:he,getFlowSteps:$,getCurrentStepIndex:de,markStepStarted:Q,markStepCompleted:fe,markFlowNotStarted:oe,markFlowStarted:X,markFlowCompleted:ve,markFlowAborted:De,markStepNotStarted:se,getFlowStatus:Xe,getNumberOfStepsCompleted:kt,getNumberOfSteps:V,targetingLogicShouldHideFlow:Je,setCustomVariable:ae,updateCustomVariables:ne,customVariables:s,getStepOptionalProgress:pt,getFlowMetadata:H,isStepBlocked:_,isStepHidden:M,hasActiveFullPageFlow:d,setHasActiveFullPageFlow:a,isFlowAvailableToUser:cr}}var Et=require("react");var Ht="guest_";function Vt(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:r}=(0,Et.useContext)(K),{config:n,apiUrl:s}=Qe(),{mutateUserFlowState:p}=We(),d=Ut(),{verifySDKInitiated:a}=zt();(0,Et.useEffect)(()=>{if(e&&!t){if(e.startsWith(Ht))return;let x=`frigade-user-registered-${e}`;localStorage.getItem(x)||(d(`${s}users`,{...n,method:"POST",body:JSON.stringify({foreignId:e})}),localStorage.setItem(x,"true"))}},[e,r,t]);let y=(0,Et.useCallback)(async x=>{a();let b={foreignId:e,properties:x};await d(`${s}users`,{...n,method:"POST",body:JSON.stringify(b)}),i(F=>({...F,...x})),p()},[e,n,r,p]),c=(0,Et.useCallback)(async(x,b)=>{a();let P={foreignId:e,events:[{event:x,properties:b}]};await d(`${s}users`,{...n,method:"POST",body:JSON.stringify(P)}),p()},[e,n,p]);return{userId:e,setUserId:o,addPropertiesToUser:y,trackEventForUser:c}}var Ri=require("uuid");var Ie=m(require("react"));var Le=m(require("react")),uo=m(require("styled-components"));var Jr=m(require("react")),Qr=m(require("styled-components"));var Xr="fr-",co="cfr-";function l(e,t){let o=`${Xr}${e}`;if(!t)return o;if(t.styleOverrides&&t.styleOverrides[e]){if(typeof t.styleOverrides[e]=="string")return o+" "+t.styleOverrides[e];if(typeof t.styleOverrides[e]=="object")return o+" "+co+e}return o}function v(e){if(!e.className||e.className.indexOf(co)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(Xr)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function mr(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function dt(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${mr(t)}: ${e.styleOverrides[t]};`).join(" "):""}function Ee(...e){return e.filter(Boolean).join(" ")}function mo(e){return e.charAt(0).toUpperCase()+e.slice(1)}var sa=Qr.default.div`
3
3
  display: flex;
4
4
  justify-content: center;
5
5
  position: fixed;
@@ -385,7 +385,7 @@ var Yl=Object.create;var Ao=Object.defineProperty;var Xl=Object.getOwnPropertyDe
385
385
  `,za=ho.default.div`
386
386
  padding-left: 1px;
387
387
  padding-right: 1px;
388
- `,_a={text:Ho,multipleChoice:yi,multipleChoiceList:Ti};function Pi({flowId:e,stepData:t,canContinue:o,setCanContinue:i,onSaveData:r,appearance:n,customFormElements:s}){var O;let p=t.props,[d,a]=(0,Pe.useState)([]),[y,c]=(0,Pe.useState)([]),{userId:x}=Vt(),[b,F]=(0,Pe.useState)(h()||{}),{readonly:P}=(0,Pe.useContext)(K),f={..._a,...s};(0,Pe.useEffect)(()=>{i(d.length===0)},[d,i]);function B(C,u){let T={...b,[C.id]:u};F(T),r(T),window&&window.localStorage&&!P&&window.localStorage.setItem(k(),JSON.stringify(T))}function h(){if(window&&window.localStorage){let C=window.localStorage.getItem(k());if(C)return JSON.parse(C)}return{}}function k(){return`frigade-multiInputStepTypeData-${e}-${t.id}-${x}`}return Pe.default.createElement(za,{className:l("multiInput",n)},Pe.default.createElement(Ae,{appearance:n,title:t.title,subtitle:t.subtitle}),Pe.default.createElement($a,{className:l("multiInputContainer",n)},(O=p.data)==null?void 0:O.map(C=>{var T;let u=(T=d.reverse().find(S=>S.id===C.id))==null?void 0:T.message;return f[C.type]?Pe.default.createElement("span",{key:C.id,"data-field-id":C.id,className:l("multiInputField",n)},f[C.type]({formInput:C,customFormTypeProps:{flowId:e,stepData:t,canContinue:o,setCanContinue:i,onSaveData:r,appearance:n},onSaveInputData:S=>{!y.includes(C.id)&&S&&(S==null?void 0:S.text)!==""&&c(E=>[...E,C.id]),B(C,S)},inputData:b[C.id],setFormValidationErrors:S=>{a(E=>S.length===0?E.filter(D=>D.id!==C.id):[...E,...S])}}),Pe.default.createElement(Vo.AnimatePresence,null,u&&y.includes(C.id)&&Pe.default.createElement(Ma,{initial:{opacity:0,height:0,marginBottom:0},animate:{opacity:1,height:"auto",marginBottom:12},exit:{opacity:0,height:0,marginBottom:0},key:C.id,style:{overflow:"hidden"},transition:{duration:.1,ease:"easeInOut",delay:.5},appearance:n,className:l("multiInputValidationError",n)},Pe.default.createElement(Ua,{appearance:n,className:l("multiInputValidationErrorIcon",n)},Pe.default.createElement(ki,null)),u))):null})))}var Ct=m(require("styled-components")),vi=Ct.default.div`
388
+ `,_a={text:Ho,multipleChoice:yi,multipleChoiceList:Ti};function Pi({flowId:e,stepData:t,canContinue:o,setCanContinue:i,onSaveData:r,appearance:n,customFormElements:s}){var O;let p=t.props,[d,a]=(0,Pe.useState)([]),[y,c]=(0,Pe.useState)([]),{userId:x}=Vt(),[b,F]=(0,Pe.useState)(h()||{}),{readonly:P}=(0,Pe.useContext)(K),f={..._a,...s};(0,Pe.useEffect)(()=>{i(d.length===0)},[d,i]);function B(C,u){let T={...b,[C.id]:u};F(T),r(T),window&&window.localStorage&&!P&&window.localStorage.setItem(k(),JSON.stringify(T))}function h(){if(window&&window.localStorage){let C=window.localStorage.getItem(k());if(C)return JSON.parse(C)}return{}}function k(){return`frigade-multiInputStepTypeData-${e}-${t.id}-${x}`}return Pe.default.createElement(za,{className:l("multiInput",n)},Pe.default.createElement(Ae,{appearance:n,title:t.title,subtitle:t.subtitle}),Pe.default.createElement($a,{className:l("multiInputContainer",n)},(O=p.data)==null?void 0:O.map(C=>{var T;let u=(T=d.reverse().find(S=>S.id===C.id))==null?void 0:T.message;return f[C.type]?Pe.default.createElement("span",{key:C.id,"data-field-id":C.id,className:l("multiInputField",n)},f[C.type]({formInput:C,customFormTypeProps:{flowId:e,stepData:t,canContinue:o,setCanContinue:i,onSaveData:r,appearance:n},onSaveInputData:S=>{!y.includes(C.id)&&S&&(S==null?void 0:S.text)!==""&&c(A=>[...A,C.id]),B(C,S)},inputData:b[C.id],setFormValidationErrors:S=>{a(A=>S.length===0?A.filter(D=>D.id!==C.id):[...A,...S])}}),Pe.default.createElement(Vo.AnimatePresence,null,u&&y.includes(C.id)&&Pe.default.createElement(Ma,{initial:{opacity:0,height:0,marginBottom:0},animate:{opacity:1,height:"auto",marginBottom:12},exit:{opacity:0,height:0,marginBottom:0},key:C.id,style:{overflow:"hidden"},transition:{duration:.1,ease:"easeInOut",delay:.5},appearance:n,className:l("multiInputValidationError",n)},Pe.default.createElement(Ua,{appearance:n,className:l("multiInputValidationErrorIcon",n)},Pe.default.createElement(ki,null)),u))):null})))}var Ct=m(require("styled-components")),vi=Ct.default.div`
389
389
  align-items: center;
390
390
  display: flex;
391
391
  justify-content: ${e=>e.showBackButton?"space-between":"flex-end"};
@@ -466,7 +466,7 @@ var Yl=Object.create;var Ao=Object.defineProperty;var Xl=Object.getOwnPropertyDe
466
466
  margin-right: 8px;
467
467
  }
468
468
  }
469
- `,ce=({onClick:e,title:t,style:o,disabled:i,type:r="inline",size:n="medium",secondary:s=!1,appearance:p,withMargin:d=!0,classPrefix:a=""})=>{function y(){let c=s?"buttonSecondary":"button";return a===""?c:`${a}${mo(c)}`}return Oi.default.createElement(Wa,{secondary:s,appearance:p,disabled:i,onClick:e,styleOverrides:o,type:r,withMargin:d,size:n,className:l(y(),p)},t)};var Di=({step:e,canContinue:t,appearance:o,onPrimaryClick:i,onSecondaryClick:r,formType:n,selectedStep:s,steps:p,onBack:d,allowBackNavigation:a,errorMessage:y})=>{let c=n==="inline"?"inline":"full-width",x=p.length>1&&s!=0&&a;return ut.default.createElement(ut.default.Fragment,null,y&&ut.default.createElement(Bi,{appearance:o,className:l("formCTAError",o)},y),ut.default.createElement(vi,{showBackButton:x,className:l("formCTAContainer",o)},x&&ut.default.createElement(ce,{title:e.backButtonTitle??"\u2190",onClick:d,secondary:!0,withMargin:!1,type:c,appearance:o,style:{width:"90px",maxWidth:"90px"},classPrefix:"back"}),ut.default.createElement(Ei,{className:l("ctaWrapper",o)},e.secondaryButtonTitle?ut.default.createElement(ce,{title:e.secondaryButtonTitle,onClick:r,secondary:!0,withMargin:!1,type:c,appearance:o}):null," ",e.primaryButtonTitle?ut.default.createElement(ce,{disabled:!t,withMargin:!1,title:e.primaryButtonTitle,onClick:i,type:c,appearance:o}):null)))};var Go=m(require("react")),$i=m(require("styled-components"));var Ha=$i.default.div`
469
+ `,ce=({onClick:e,title:t,style:o,disabled:i,type:r="inline",size:n="medium",secondary:s=!1,appearance:p,withMargin:d=!0,classPrefix:a=""})=>{function y(){let c=s?"buttonSecondary":"button";return a===""?c:`${a}${mo(c)}`}return Oi.default.createElement(Wa,{secondary:s,appearance:p,disabled:i,onClick:e,styleOverrides:o,type:r,withMargin:d,size:n,className:l(y(),p)},t??"Continue")};var Di=({step:e,canContinue:t,appearance:o,onPrimaryClick:i,onSecondaryClick:r,formType:n,selectedStep:s,steps:p,onBack:d,allowBackNavigation:a,errorMessage:y})=>{let c=n==="inline"?"inline":"full-width",x=p.length>1&&s!=0&&a;return ut.default.createElement(ut.default.Fragment,null,y&&ut.default.createElement(Bi,{appearance:o,className:l("formCTAError",o)},y),ut.default.createElement(vi,{showBackButton:x,className:l("formCTAContainer",o)},x&&ut.default.createElement(ce,{title:e.backButtonTitle??"\u2190",onClick:d,secondary:!0,withMargin:!1,type:c,appearance:o,style:{width:"90px",maxWidth:"90px"},classPrefix:"back"}),ut.default.createElement(Ei,{className:l("ctaWrapper",o)},e.secondaryButtonTitle?ut.default.createElement(ce,{title:e.secondaryButtonTitle,onClick:r,secondary:!0,withMargin:!1,type:c,appearance:o}):null," ",e.primaryButtonTitle?ut.default.createElement(ce,{disabled:!t,withMargin:!1,title:e.primaryButtonTitle,onClick:i,type:c,appearance:o}):null)))};var Go=m(require("react")),$i=m(require("styled-components"));var Ha=$i.default.div`
470
470
  text-align: center;
471
471
  `,Mi=({stepCount:e=0,currentStep:t=0,className:o,appearance:i})=>{let{theme:r}=le().mergeAppearanceWithDefault(i);return Go.default.createElement(Ha,{className:o},Go.default.createElement("svg",{width:16*e-8,height:8,viewBox:`0 0 ${16*e-8} 8`,fill:"none"},Array(e).fill(null).map((n,s)=>Go.default.createElement("rect",{key:s,x:16*s,y:0,width:8,height:8,rx:4,fill:t===s?r.colorPrimary:"#E6E6E6"}))))};var yt=m(require("react")),It=m(require("styled-components"));var Ui=require("react");function ge(){let e=(0,Ui.useContext)(K);function t(r){i(r.primaryButtonUri,r.primaryButtonUriTarget)}function o(r){i(r.secondaryButtonUri,r.secondaryButtonUriTarget)}function i(r,n){if(!r)return;let s=r.startsWith("http")?"_blank":"_self";n&&n!=="_blank"&&(s="_self"),e.navigate(r,s)}return{primaryCTAClickSideEffects:t,secondaryCTAClickSideEffects:o,handleUrl:i}}var Va=It.default.div`
472
472
  display: flex;
@@ -628,8 +628,8 @@ var Yl=Object.create;var Ao=Object.defineProperty;var Xl=Object.getOwnPropertyDe
628
628
  color: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.colorText}};
629
629
  display: flex;
630
630
  align-self: center;
631
- `;var Xi=({stepData:e,setCanContinue:t,onSaveData:o,appearance:i})=>{let r=e.props,[n,s]=(0,Te.useState)([]),[p,d]=(0,Te.useState)(!1),[a,y]=(0,Te.useState)(e.id);return(0,Te.useEffect)(()=>{n.length==0&&!p&&(d(!0),o({choice:[]}))},[p]),(0,Te.useEffect)(()=>{a!==e.id&&(y(e.id),s([]))},[e]),(0,Te.useEffect)(()=>{o({choice:n}),n.length>=r.minChoices?t(!0):t(!1)},[n]),Te.default.createElement(Wi,{className:l("selectListContainer",i)},Te.default.createElement(Hi,null,Te.default.createElement(Vi,{className:l("selectListTitle",i)},e.title),Te.default.createElement(ji,{appearance:i,className:l("selectListSubtitle",i)},e.subtitle)),r.options.map((c,x)=>{let b=n.includes(c.id);return Te.default.createElement(Gi,{key:`select-item-${x}`,onClick:()=>{if(n.includes(c.id)){s(n.filter(F=>F!==c.id));return}n.length<r.maxChoices?s([...n,c.id]):n.length==1&&r.maxChoices==1&&s([c.id])},hideBottomBorder:x===r.options.length-1,className:l("selectListSelectItem",i)},Te.default.createElement(qi,{className:l("selectListItemImage",i)},c.imageUri&&Te.default.createElement(Ki,{src:c.imageUri,alt:`select-icon-${x}`}),Te.default.createElement(Yi,{appearance:i,className:l("selectListSelectItemText",i)},c.title)),Te.default.createElement(et,{appearance:i,value:b,primaryColor:i.theme.colorPrimary}))}))};var R=m(require("react"));var Yo=require("framer-motion"),rp=({children:e,id:t,shouldWrap:o=!1})=>R.default.createElement(R.default.Fragment,null,o?R.default.createElement(Yo.AnimatePresence,{initial:!1},R.default.createElement(Yo.motion.div,{key:t,initial:{opacity:1,y:"100%"},animate:{opacity:1,y:0},exit:{opacity:0,y:"-100%"},transition:{duration:.5,ease:"easeInOut"},style:{width:"100%",height:"100%",position:"absolute",top:0,left:0,zIndex:1,overflowY:"auto"}},e)):e),Xo=({appearance:e,steps:t,selectedStep:o,customStepTypes:i,customVariables:r,onButtonClick:n,onStepCompletion:s,flowId:p,type:d,hideOnFlowCompletion:a,onComplete:y,setVisible:c,setShowModal:x,onDismiss:b,showPagination:F=!1,customFormElements:P,allowBackNavigation:f,validationHandler:B})=>{var _;let k={...{linkCollection:zi,multiInput:Pi,callToAction:_i,selectList:Xi},...i},{primaryCTAClickSideEffects:O,secondaryCTAClickSideEffects:C}=ge(),[u,T]=(0,R.useState)(!1),[S,E]=(0,R.useState)({}),[D,L]=(0,R.useState)(!1),[U,$]=(0,R.useState)(!1),[j,H]=(0,R.useState)(null),ae=t[o]??null,{markStepCompleted:ne,markStepStarted:Q,isLoading:se,updateCustomVariables:fe,markFlowCompleted:oe}=Z();(0,R.useEffect)(()=>{fe(r)},[r,se]),(0,R.useEffect)(()=>{window&&f&&!U&&(window.location.hash=t[o].id,$(!0))},[f,U,$]),(0,R.useEffect)(()=>{var M;if(window&&((M=window==null?void 0:window.location)!=null&&M.hash)&&window.location.hash.replace("#","")!==t[o].id){let pe=window.location.hash.replace("#",""),q=t.findIndex(de=>de.id===pe);q!==-1&&Q(p,t[q].id)}},[(_=window==null?void 0:window.location)==null?void 0:_.hash,Q,o,t]);function X(){return{data:S[t[o].id]??{},stepId:t[o].id,customVariables:r}}function ve(M,pe,q){let de=o+1<t.length?t[o+1]:null;return s&&s(M,q,de,S,X()),n?n(M,o,pe,de):!0}function De(M,pe){E(q=>{let de={};return de[M.id]=pe,{...q,...de}})}function J(M){return M.selectedStep.imageUri?R.default.createElement(Li,{image:M.selectedStep.imageUri,appearance:e,className:l("formContainerSidebarImage",e)}):null}let he=R.default.createElement(Di,{step:t[o],canContinue:u&&!D,formType:d,selectedStep:o,appearance:e,onPrimaryClick:async()=>{if(L(!0),B){let q=await B(t[o],o,t[o+1],S,X());if(q){H(q),L(!1);return}else H(null)}let M={...X()};await ne(p,t[o].id,M),o+1<t.length&&await Q(p,t[o+1].id);let pe=ve(t[o],"primary",o);o+1>=t.length&&(y&&y(),b&&b(),a&&pe&&(c&&c(!1),x(!1)),await oe(p)),O(t[o]),L(!1),window&&f&&o+1<t.length&&(window.location.hash=t[o+1].id)},onSecondaryClick:()=>{ve(t[o],"secondary",o),C(t[o])},onBack:async()=>{o-1>=0&&(L(!0),await Q(p,t[o-1].id),L(!1))},steps:t,allowBackNavigation:f,errorMessage:j});return R.default.createElement(R.default.Fragment,null,R.default.createElement(Ai,{className:l("formContainer",e)},R.default.createElement(Ii,null,R.default.createElement(rp,{id:o,shouldWrap:d==="large-modal"},R.default.createElement(Ni,{key:ae.id,type:d,className:l("formContent",e)},t.map(M=>{let pe=k[M.type];return ae.id!==M.id?null:R.default.createElement(pe,{key:M.id,stepData:M,canContinue:u,setCanContinue:T,onSaveData:q=>{De(M,q)},appearance:e,customFormElements:P,flowId:p})}),F&&R.default.createElement(Mi,{className:l("formPagination",e),appearance:e,stepCount:t.length,currentStep:o}),he))),d=="large-modal"&&R.default.createElement(J,{selectedStep:t[o]})))};var Kt=m(require("react")),Ji=require("styled-components");function me({appearance:e}){if(!e||!e.styleOverrides)return Kt.default.createElement(Kt.default.Fragment,null);let t=Object.entries(e.styleOverrides).filter(([i,r])=>typeof r=="object");if(t.length===0)return Kt.default.createElement(Kt.default.Fragment,null);let o=Ji.createGlobalStyle`
632
- ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map(([s,p])=>`${mr(s)}: ${p};`).join(" ")} }`).join(" ")}`;return Kt.default.createElement(o,{inlineStyles:t})}var wr=({flowId:e,customStepTypes:t={},type:o="inline",visible:i,setVisible:r,customVariables:n,customFormElements:s,onComplete:p,appearance:d,hideOnFlowCompletion:a=!0,onStepCompletion:y,onButtonClick:c,dismissible:x=!0,endFlowOnDismiss:b=!1,modalPosition:F="center",repeatable:P=!1,onDismiss:f,showPagination:B=!1,allowBackNavigation:h=!1,validationHandler:k,showFrigadeBranding:O=!1})=>{let{getFlow:C,getFlowSteps:u,isLoading:T,targetingLogicShouldHideFlow:S,getFlowStatus:E,getCurrentStepIndex:D,markFlowCompleted:L,markFlowNotStarted:U}=Z(),$=D(e),{mergeAppearanceWithDefault:j}=le(),[H,ae]=(0,Ie.useState)(!1),{setOpenFlowState:ne,getOpenFlowState:Q,hasOpenModals:se}=Ne();d=j(d);let[fe,oe]=i!==void 0&&r!==void 0?[i,r]:[Q(e,!0),J=>ne(e,J)];if((0,Ie.useEffect)(()=>{!H&&!T&&(ae(!0),E(e)===ie&&P&&U(e),ae(!0))},[H,ae,T]),T)return null;let X=C(e);if(!X||S(X))return null;let ve=u(e);if(!ve||i!==void 0&&i===!1||E(e)===ie&&a||(o=="modal"||o=="corner-modal")&&se(e))return null;let De=()=>{oe(!1),f&&f(),b===!0&&L(e)};if(F=="center"&&o==="modal"||o==="large-modal"){let J={padding:"24px"};return o==="large-modal"?(J.width="85%",J.height="90%",J.maxHeight="800px",J.minHeight="500px",J.padding="0"):J.width="400px",Ie.default.createElement(ht,{appearance:d,onClose:De,visible:fe,style:J,dismissible:x,showFrigadeBranding:O},Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k}))}return o==="modal"&&F!=="center"?Ie.default.createElement(ui,{appearance:d,onClose:De,visible:fe},Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k})):Ie.default.createElement(Ie.default.Fragment,null,Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k}))},Qi=wr;var Nt=require("react");function Jo(){let{organizationId:e,userId:t,setOrganizationId:o}=(0,Nt.useContext)(K),{mutateUserFlowState:i}=We(),{config:r,apiUrl:n}=Qe(),s=Ut(),{verifySDKInitiated:p}=zt();(0,Nt.useEffect)(()=>{if(t&&e){if(t.startsWith(Ht))return;let y=`frigade-user-group-registered-${t}-${e}`;localStorage.getItem(y)||(s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify({foreignUserId:t,foreignUserGroupId:e})}),localStorage.setItem(y,"true"))}},[t,e]);let d=(0,Nt.useCallback)(async y=>{if(p(),!e||!t){console.error("Cannot add properties to organization: Organization ID and User ID must both be set.",{organizationId:e,userId:t});return}let c={foreignUserId:t,foreignUserGroupId:e,properties:y};await s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify(c)}),i()},[e,t,r,i]),a=(0,Nt.useCallback)(async(y,c)=>{if(p(),!e||!t){console.error("Cannot track event for organization: Organization ID and User ID must both be set.",{organizationId:e,userId:t});return}let b={foreignUserId:t,foreignUserGroupId:e,events:[{event:y,properties:c}]};await s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify(b)}),i()},[e,t,r,i]);return{organizationId:e,setOrganizationId:o,addPropertiesToOrganization:d,trackEventForOrganization:a}}var Zi="frigade-xFrigade_guestUserId",So="frigade-xFrigade_userId",en=({})=>{let{setFlowResponses:e}=Wt(),{userFlowStatesData:t,isLoadingUserFlowStateData:o,mutateUserFlowState:i}=We(),{userId:r,setUserId:n}=Vt(),[s,p]=(0,Ce.useState)(null),{getFlowStatus:d}=Z(),{flows:a,userProperties:y,setIsNewGuestUser:c,flowResponses:x}=(0,Ce.useContext)(K),[b,F]=(0,Ce.useState)([]),[P,f]=(0,Ce.useState)([]),{organizationId:B}=Jo();(0,Ce.useEffect)(()=>{if(!o&&t)for(let C=0;C<t.length;C++){let u=t[C],T=a.find(S=>S.slug===(u==null?void 0:u.flowId));if(T&&u&&u.shouldTrigger===!0&&T.type=="FORM"&&T.triggerType==="AUTOMATIC"&&!P.includes(T.slug)){setTimeout(()=>{h(u.flowId)},500);break}}},[o,t]),(0,Ce.useEffect)(()=>{x.length>0&&i()},[x]);function h(C){let u=a.find(T=>T.slug===C);u&&u.triggerType==="AUTOMATIC"&&!P.includes(u.slug)&&(f([...P,u.slug]),F([u]))}function k(){if(!r){let C=localStorage.getItem(So);if(C){n(C);return}let u=localStorage.getItem(Zi);if(u){n(u);return}c(!0);let T=Ht+(0,Ri.v4)();try{localStorage.setItem(Zi,T)}catch(S){console.log("Failed to save guest user id locally: Local storage unavailable",S)}n(S=>S||T)}}(0,Ce.useEffect)(()=>{try{if(a){let C=[];a.forEach(u=>{if(u.data){let T=u.data.match(/"imageUri":"(.*?)"/g);T&&T.forEach(S=>{let E=S.replace('"imageUri":"',"").replace('"',"");if(C.includes(E))return;let D=new Image;D.src=E,C.push(E)})}})}}catch{}},[a]),(0,Ce.useEffect)(()=>{if(r!==s&&e([]),p(r),r&&!r.startsWith(Ht))try{localStorage.setItem(So,r)}catch(C){console.log("Failed to save user id locally: Local storage available",C)}r===null&&setTimeout(()=>{r===null&&k()},50)},[r,a,y]);function O(){return Ce.default.createElement(Ce.default.Fragment,null,b.map(C=>d(C.slug)!==Ve?null:Ce.default.createElement("span",{key:C.slug},Ce.default.createElement(Qi,{flowId:C.slug,type:"modal",modalPosition:"center",endFlowOnDismiss:!0}))))}return Ce.default.createElement(Ce.default.Fragment,null,Ce.default.createElement(O,null))};var un=require("react-error-boundary"),fn=require("deepmerge-ts");var on=require("deepmerge-ts"),tn={colorPrimary:"colors.primary.background",colorText:"colors.neutral.foreground",colorBackground:"colors.neutral.background",colorBackgroundSecondary:"colors.secondary.background",colorTextOnPrimaryBackground:"colors.primary.foreground",colorTextSecondary:"colors.secondary.foreground",colorTextDisabled:"colors.gray700",colorBorder:"colors.gray800",colorTextError:"colors.negative.foreground",borderRadius:"radii.lg"};function ip(e){if(!e)return;let t={};return Object.entries(e).forEach(([o,i])=>{if(tn[o]){let r=tn[o].split("."),n=t;r.forEach((s,p)=>{n[s]||(n[s]=p===r.length-1?i:{}),n=n[s]})}}),t}function np(e){if(!e)return;let t=(0,on.deepmerge)({},e),o={};return Object.keys(t).forEach(i=>{let r=`.fr-${i}`;o[r]=t[i]}),o}function rn(e){let{theme:t,styleOverrides:o}=e,i=ip(t),r=np(o);return{overrides:i,css:r}}var sn=m(require("styled-components")),bo=require("styled-system");var Tr=m(require("react")),Yt=m(require("styled-components")),Be=require("styled-system"),nn=require("deepmerge-ts"),sp={width:{property:"width",scale:"sizes",transform:(e,t)=>(0,Be.get)(t,e,!(typeof e=="number"&&!isNaN(e))||e>1?e:e*100+"%")},height:{property:"height",scale:"sizes"},minWidth:{property:"minWidth",scale:"sizes"},minHeight:{property:"minHeight",scale:"sizes"},maxWidth:{property:"maxWidth",scale:"sizes"},maxHeight:{property:"maxHeight",scale:"sizes"},overflow:!0,overflowX:!0,overflowY:!0,display:!0,verticalAlign:!0},lp=(0,Yt.default)("div")(({css:e})=>e,(0,Be.compose)(Be.border,Be.color,Be.shadow,Be.space,Be.typography,(0,Be.system)(sp))),Xt=({as:e,children:t,overrides:o,...i})=>{let r=(0,Yt.useTheme)(),n={border:"none",boxSizing:"border-box",m:0,p:0},s=()=>Tr.default.createElement(lp,{as:e,...n,...i},t);if(o!==void 0){let p=(0,nn.deepmerge)(r,o);return Tr.default.createElement(Yt.ThemeProvider,{theme:p},s())}return s()};var wo={Primary:{backgroundColor:"primary.background",color:"primary.foreground","&:hover":{backgroundColor:"blue400"}},Secondary:{backgroundColor:"white",border:"1px solid",borderColor:"gray800",color:"neutral.foreground","&:hover":{backgroundColor:"blue900"}},Link:{backgroundColor:"transparent",color:"primary.inverted"},Plain:{backgroundColor:"transparent",color:"neutral.foreground"}},ap={sm:{paddingX:4,paddingY:1},md:{paddingX:6,paddingY:2}},ln=(0,sn.default)(Xt)(()=>({whiteSpace:"nowrap"}),(0,bo.compose)((0,bo.variant)({scale:"components.Button",variants:"components.Button"}),(0,bo.variant)({prop:"size",variants:ap})));var an=m(require("styled-components")),Qo=require("styled-system");var Zo={Display1:{fontSize:"5xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"4xl"},Display2:{fontSize:"4xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"3xl"},H1:{fontSize:"3xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"2xl"},H2:{fontSize:"2xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"xl"},H3:{fontSize:"xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"lg"},H4:{fontSize:"lg",fontWeight:"bold",letterSpacing:"md",lineHeight:"md"},Body1:{fontSize:"md",fontWeight:"regular",letterSpacing:"md",lineHeight:"md"},Body2:{fontSize:"sm",fontWeight:"regular",letterSpacing:"md",lineHeight:"md"},Caption:{fontSize:"xs",fontWeight:"regular",letterSpacing:"md",lineHeight:"sm"}};var pn=(0,an.default)(Xt)((0,Qo.variant)({scale:"components.Text",variants:"components.Text"}),(0,Qo.system)({fontWeight:{property:"fontWeight",scale:"fontWeights"}}));var dn=4,cn="px",pp=20,dp=Object.fromEntries(Array.from(Array(pp+1),(e,t)=>t===0?[.5,`${.5*dn}${cn}`]:[t,`${t*dn}${cn}`])),Jt={black:"#000000",gray100:"#14161A",gray200:"#181B20",gray300:"#1F2329",gray400:"#2E343D",gray500:"#4C5766",gray600:"#5A6472",gray700:"#C5CBD3",gray800:"#E2E5E9",gray900:"#F1F2F4",white:"#ffffff",blue400:"#015AC6",blue500:"#0171F8",blue800:"#DBECFF",blue900:"#F5F9FF",green400:"#009E37",green500:"#00D149",green800:"#DBFFE8",transparent:"#FFFFFF00",red500:"#c00000"},Ro={colors:{...Jt,neutral:{foreground:Jt.gray300},primary:{background:Jt.blue500,foreground:Jt.white,inverted:Jt.blue500},negative:{foreground:Jt.red500}},fonts:{default:"TT Interphases Pro, sans-serif"},fontSizes:{xs:"12px",sm:"14px",md:"16px",lg:"18px",xl:"20px","2xl":"24px","3xl":"30px","4xl":"36px","5xl":"48px"},fontWeights:{regular:400,semibold:500,bold:700},letterSpacings:{md:"0.02em"},lineHeights:{xs:"18px",sm:"22px",md:"24px",lg:"26px",xl:"30px","2xl":"38px","3xl":"46px","4xl":"60px"},radii:{md:"8px",lg:"20px",round:"50%"},shadows:{md:"0px 4px 20px rgba(0, 0, 0, 0.06)"},space:dp,components:{Button:wo,Text:Zo}};var gn="https://api.frigade.com",K=(0,Y.createContext)({publicApiKey:"",setUserId:()=>{},flows:[],setFlows:()=>{},failedFlowResponses:[],setFailedFlowResponses:()=>{},flowResponses:[],setFlowResponses:()=>{},userProperties:{},setUserProperties:()=>{},openFlowStates:{},setOpenFlowStates:()=>{},completedFlowsToKeepOpenDuringSession:[],setCompletedFlowsToKeepOpenDuringSession:()=>{},customVariables:{},setCustomVariables:()=>{},isNewGuestUser:!1,setIsNewGuestUser:()=>{},hasActiveFullPageFlow:!1,setHasActiveFullPageFlow:()=>{},organizationId:"",setOrganizationId:()=>{},navigate:()=>{},defaultAppearance:Ze,shouldGracefullyDegrade:!1,setShouldGracefullyDegrade:()=>{},apiUrl:gn,readonly:!1});function cp(){Object.keys(localStorage).forEach(e=>{e.startsWith("frigade-")&&localStorage.removeItem(e)})}var xn=({publicApiKey:e,userId:t,organizationId:o,config:i,children:r})=>{var Q,se;let[n,s]=(0,Y.useState)(t||null),[p,d]=(0,Y.useState)(o||null),[a,y]=(0,Y.useState)([]),[c,x]=(0,Y.useState)([]),[b,F]=(0,Y.useState)([]),[P,f]=(0,Y.useState)({}),[B,h]=(0,Y.useState)({}),[k,O]=(0,Y.useState)([]),[C,u]=(0,Y.useState)({}),[T,S]=(0,Y.useState)(!1),[E,D]=(0,Y.useState)(!1),[L,U]=(0,Y.useState)(!H(e)),$=(fe,oe)=>{if(oe==="_blank"){window.open(fe,"_blank");return}setTimeout(()=>{window.location.href=fe},50)},j={theme:{...Ze.theme,...((Q=i==null?void 0:i.defaultAppearance)==null?void 0:Q.theme)??{}},styleOverrides:{...Ze.styleOverrides,...((se=i==null?void 0:i.defaultAppearance)==null?void 0:se.styleOverrides)??{}}};function H(fe){return!!(fe&&fe.length>10&&fe.substring(0,10)==="api_public")}(0,Y.useEffect)(()=>{t&&s(t)},[t]),(0,Y.useEffect)(()=>{n&&window&&window.localStorage&&window.localStorage.getItem(So)&&window.localStorage.getItem(So)!==n&&cp()},[n]),(0,Y.useEffect)(()=>{o&&d(o)},[o]),(0,Y.useEffect)(()=>{if(H(e))U(!1);else{console.error("Frigade SDK failed to initialize. API key provided is either missing or valid."),U(!0);return}},[e,U]);let ae={publicApiKey:e,userId:n,setUserId:s,setFlows:y,flows:a,failedFlowResponses:c,setFailedFlowResponses:x,flowResponses:b,setFlowResponses:F,userProperties:P,setUserProperties:f,openFlowStates:B,setOpenFlowStates:h,completedFlowsToKeepOpenDuringSession:k,setCompletedFlowsToKeepOpenDuringSession:O,customVariables:C,setCustomVariables:u,isNewGuestUser:T,setIsNewGuestUser:S,hasActiveFullPageFlow:E,setHasActiveFullPageFlow:D,organizationId:p,setOrganizationId:d,navigate:i&&i.navigate?i.navigate:$,defaultAppearance:j,shouldGracefullyDegrade:L,setShouldGracefullyDegrade:U,apiUrl:i&&i.apiUrl?i.apiUrl:gn,readonly:i&&i.readonly?i.readonly:!1};if(L)return Y.default.createElement(K.Provider,{value:ae},r);let{overrides:ne}=rn(j);return Y.default.createElement(un.ErrorBoundary,{fallback:Y.default.createElement(Y.default.Fragment,null,r)},Y.default.createElement(K.Provider,{value:ae},Y.default.createElement(mn.ThemeProvider,{theme:(0,fn.deepmerge)(j.theme,Ro,ne??{},(i==null?void 0:i.theme)??{})},r,Y.default.createElement(en,null))))};var Ks=m(require("react"));var te=m(require("react"));var Oe=m(require("react")),Tt=m(require("styled-components"));var To=m(require("react"));var bt=m(require("react")),Fr=m(require("styled-components"));var hn=Fr.default.span`
631
+ `;var Xi=({stepData:e,setCanContinue:t,onSaveData:o,appearance:i})=>{let r=e.props,[n,s]=(0,Te.useState)([]),[p,d]=(0,Te.useState)(!1),[a,y]=(0,Te.useState)(e.id);return(0,Te.useEffect)(()=>{n.length==0&&!p&&(d(!0),o({choice:[]}))},[p]),(0,Te.useEffect)(()=>{a!==e.id&&(y(e.id),s([]))},[e]),(0,Te.useEffect)(()=>{o({choice:n}),n.length>=r.minChoices?t(!0):t(!1)},[n]),Te.default.createElement(Wi,{className:l("selectListContainer",i)},Te.default.createElement(Hi,null,Te.default.createElement(Vi,{className:l("selectListTitle",i)},e.title),Te.default.createElement(ji,{appearance:i,className:l("selectListSubtitle",i)},e.subtitle)),r.options.map((c,x)=>{let b=n.includes(c.id);return Te.default.createElement(Gi,{key:`select-item-${x}`,onClick:()=>{if(n.includes(c.id)){s(n.filter(F=>F!==c.id));return}n.length<r.maxChoices?s([...n,c.id]):n.length==1&&r.maxChoices==1&&s([c.id])},hideBottomBorder:x===r.options.length-1,className:l("selectListSelectItem",i)},Te.default.createElement(qi,{className:l("selectListItemImage",i)},c.imageUri&&Te.default.createElement(Ki,{src:c.imageUri,alt:`select-icon-${x}`}),Te.default.createElement(Yi,{appearance:i,className:l("selectListSelectItemText",i)},c.title)),Te.default.createElement(et,{appearance:i,value:b,primaryColor:i.theme.colorPrimary}))}))};var R=m(require("react"));var Yo=require("framer-motion"),rp=({children:e,id:t,shouldWrap:o=!1})=>R.default.createElement(R.default.Fragment,null,o?R.default.createElement(Yo.AnimatePresence,{initial:!1},R.default.createElement(Yo.motion.div,{key:t,initial:{opacity:1,y:"100%"},animate:{opacity:1,y:0},exit:{opacity:0,y:"-100%"},transition:{duration:.5,ease:"easeInOut"},style:{width:"100%",height:"100%",position:"absolute",top:0,left:0,zIndex:1,overflowY:"auto"}},e)):e),Xo=({appearance:e,steps:t,selectedStep:o,customStepTypes:i,customVariables:r,onButtonClick:n,onStepCompletion:s,flowId:p,type:d,hideOnFlowCompletion:a,onComplete:y,setVisible:c,setShowModal:x,onDismiss:b,showPagination:F=!1,customFormElements:P,allowBackNavigation:f,validationHandler:B})=>{var _;let k={...{linkCollection:zi,multiInput:Pi,callToAction:_i,selectList:Xi},...i},{primaryCTAClickSideEffects:O,secondaryCTAClickSideEffects:C}=ge(),[u,T]=(0,R.useState)(!1),[S,A]=(0,R.useState)({}),[D,L]=(0,R.useState)(!1),[U,$]=(0,R.useState)(!1),[j,H]=(0,R.useState)(null),ae=t[o]??null,{markStepCompleted:ne,markStepStarted:Q,isLoading:se,updateCustomVariables:fe,markFlowCompleted:oe}=Z();(0,R.useEffect)(()=>{fe(r)},[r,se]),(0,R.useEffect)(()=>{window&&f&&!U&&(window.location.hash=t[o].id,$(!0))},[f,U,$]),(0,R.useEffect)(()=>{var M;if(window&&((M=window==null?void 0:window.location)!=null&&M.hash)&&window.location.hash.replace("#","")!==t[o].id){let pe=window.location.hash.replace("#",""),q=t.findIndex(de=>de.id===pe);q!==-1&&Q(p,t[q].id)}},[(_=window==null?void 0:window.location)==null?void 0:_.hash,Q,o,t]);function X(){return{data:S[t[o].id]??{},stepId:t[o].id,customVariables:r}}function ve(M,pe,q){let de=o+1<t.length?t[o+1]:null;return s&&s(M,q,de,S,X()),n?n(M,o,pe,de):!0}function De(M,pe){A(q=>{let de={};return de[M.id]=pe,{...q,...de}})}function J(M){return M.selectedStep.imageUri?R.default.createElement(Li,{image:M.selectedStep.imageUri,appearance:e,className:l("formContainerSidebarImage",e)}):null}let he=R.default.createElement(Di,{step:t[o],canContinue:u&&!D,formType:d,selectedStep:o,appearance:e,onPrimaryClick:async()=>{if(L(!0),B){let q=await B(t[o],o,t[o+1],S,X());if(q){H(q),L(!1);return}else H(null)}let M={...X()};await ne(p,t[o].id,M),o+1<t.length&&await Q(p,t[o+1].id);let pe=ve(t[o],"primary",o);o+1>=t.length&&(y&&y(),b&&b(),a&&pe&&(c&&c(!1),x(!1)),await oe(p)),O(t[o]),L(!1),window&&f&&o+1<t.length&&(window.location.hash=t[o+1].id)},onSecondaryClick:()=>{ve(t[o],"secondary",o),C(t[o])},onBack:async()=>{o-1>=0&&(L(!0),await Q(p,t[o-1].id),L(!1))},steps:t,allowBackNavigation:f,errorMessage:j});return R.default.createElement(R.default.Fragment,null,R.default.createElement(Ai,{className:l("formContainer",e)},R.default.createElement(Ii,null,R.default.createElement(rp,{id:o,shouldWrap:d==="large-modal"},R.default.createElement(Ni,{key:ae.id,type:d,className:l("formContent",e)},t.map(M=>{let pe=k[M.type];return ae.id!==M.id?null:R.default.createElement(pe,{key:M.id,stepData:M,canContinue:u,setCanContinue:T,onSaveData:q=>{De(M,q)},appearance:e,customFormElements:P,flowId:p})}),F&&R.default.createElement(Mi,{className:l("formPagination",e),appearance:e,stepCount:t.length,currentStep:o}),he))),d=="large-modal"&&R.default.createElement(J,{selectedStep:t[o]})))};var Kt=m(require("react")),Ji=require("styled-components");function me({appearance:e}){if(!e||!e.styleOverrides)return Kt.default.createElement(Kt.default.Fragment,null);let t=Object.entries(e.styleOverrides).filter(([i,r])=>typeof r=="object");if(t.length===0)return Kt.default.createElement(Kt.default.Fragment,null);let o=Ji.createGlobalStyle`
632
+ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map(([s,p])=>`${mr(s)}: ${p};`).join(" ")} }`).join(" ")}`;return Kt.default.createElement(o,{inlineStyles:t})}var wr=({flowId:e,customStepTypes:t={},type:o="inline",visible:i,setVisible:r,customVariables:n,customFormElements:s,onComplete:p,appearance:d,hideOnFlowCompletion:a=!0,onStepCompletion:y,onButtonClick:c,dismissible:x=!0,endFlowOnDismiss:b=!1,modalPosition:F="center",repeatable:P=!1,onDismiss:f,showPagination:B=!1,allowBackNavigation:h=!1,validationHandler:k,showFrigadeBranding:O=!1})=>{let{getFlow:C,getFlowSteps:u,isLoading:T,targetingLogicShouldHideFlow:S,getFlowStatus:A,getCurrentStepIndex:D,markFlowCompleted:L,markFlowNotStarted:U}=Z(),$=D(e),{mergeAppearanceWithDefault:j}=le(),[H,ae]=(0,Ie.useState)(!1),{setOpenFlowState:ne,getOpenFlowState:Q,hasOpenModals:se}=Ne();d=j(d);let[fe,oe]=i!==void 0&&r!==void 0?[i,r]:[Q(e,!0),J=>ne(e,J)];if((0,Ie.useEffect)(()=>{!H&&!T&&(ae(!0),A(e)===ie&&P&&U(e),ae(!0))},[H,ae,T]),T)return null;let X=C(e);if(!X||S(X))return null;let ve=u(e);if(!ve||i!==void 0&&i===!1||A(e)===ie&&a||(o=="modal"||o=="corner-modal")&&se(e))return null;let De=()=>{oe(!1),f&&f(),b===!0&&L(e)};if(F=="center"&&o==="modal"||o==="large-modal"){let J={padding:"24px"};return o==="large-modal"?(J.width="85%",J.height="90%",J.maxHeight="800px",J.minHeight="500px",J.padding="0"):J.width="400px",Ie.default.createElement(ht,{appearance:d,onClose:De,visible:fe,style:J,dismissible:x,showFrigadeBranding:O},Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k}))}return o==="modal"&&F!=="center"?Ie.default.createElement(ui,{appearance:d,onClose:De,visible:fe},Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k})):Ie.default.createElement(Ie.default.Fragment,null,Ie.default.createElement(me,{appearance:d}),Ie.default.createElement(Xo,{appearance:d,steps:ve,selectedStep:$,customStepTypes:t,customVariables:n,onButtonClick:c,onStepCompletion:y,flowId:e,type:o,hideOnFlowCompletion:a,onComplete:p,setVisible:r,setShowModal:oe,onDismiss:f,showPagination:B,customFormElements:s,allowBackNavigation:h,validationHandler:k}))},Qi=wr;var Nt=require("react");function Jo(){let{organizationId:e,userId:t,setOrganizationId:o}=(0,Nt.useContext)(K),{mutateUserFlowState:i}=We(),{config:r,apiUrl:n}=Qe(),s=Ut(),{verifySDKInitiated:p}=zt();(0,Nt.useEffect)(()=>{if(t&&e){if(t.startsWith(Ht))return;let y=`frigade-user-group-registered-${t}-${e}`;localStorage.getItem(y)||(s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify({foreignUserId:t,foreignUserGroupId:e})}),localStorage.setItem(y,"true"))}},[t,e]);let d=(0,Nt.useCallback)(async y=>{if(p(),!e||!t){console.error("Cannot add properties to organization: Organization ID and User ID must both be set.",{organizationId:e,userId:t});return}let c={foreignUserId:t,foreignUserGroupId:e,properties:y};await s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify(c)}),i()},[e,t,r,i]),a=(0,Nt.useCallback)(async(y,c)=>{if(p(),!e||!t){console.error("Cannot track event for organization: Organization ID and User ID must both be set.",{organizationId:e,userId:t});return}let b={foreignUserId:t,foreignUserGroupId:e,events:[{event:y,properties:c}]};await s(`${n}userGroups`,{...r,method:"POST",body:JSON.stringify(b)}),i()},[e,t,r,i]);return{organizationId:e,setOrganizationId:o,addPropertiesToOrganization:d,trackEventForOrganization:a}}var Zi="frigade-xFrigade_guestUserId",So="frigade-xFrigade_userId",en=({})=>{let{setFlowResponses:e}=Wt(),{userFlowStatesData:t,isLoadingUserFlowStateData:o,mutateUserFlowState:i}=We(),{userId:r,setUserId:n}=Vt(),[s,p]=(0,Ce.useState)(null),{getFlowStatus:d}=Z(),{flows:a,userProperties:y,setIsNewGuestUser:c,flowResponses:x}=(0,Ce.useContext)(K),[b,F]=(0,Ce.useState)([]),[P,f]=(0,Ce.useState)([]),{organizationId:B}=Jo();(0,Ce.useEffect)(()=>{if(!o&&t)for(let C=0;C<t.length;C++){let u=t[C],T=a.find(S=>S.slug===(u==null?void 0:u.flowId));if(T&&u&&u.shouldTrigger===!0&&T.type=="FORM"&&T.triggerType==="AUTOMATIC"&&!P.includes(T.slug)){setTimeout(()=>{h(u.flowId)},500);break}}},[o,t]),(0,Ce.useEffect)(()=>{x.length>0&&i()},[x]);function h(C){let u=a.find(T=>T.slug===C);u&&u.triggerType==="AUTOMATIC"&&!P.includes(u.slug)&&(f([...P,u.slug]),F([u]))}function k(){if(!r){let C=localStorage.getItem(So);if(C){n(C);return}let u=localStorage.getItem(Zi);if(u){n(u);return}c(!0);let T=Ht+(0,Ri.v4)();try{localStorage.setItem(Zi,T)}catch(S){console.log("Failed to save guest user id locally: Local storage unavailable",S)}n(S=>S||T)}}(0,Ce.useEffect)(()=>{try{if(a){let C=[];a.forEach(u=>{if(u.data){let T=u.data.match(/"imageUri":"(.*?)"/g);T&&T.forEach(S=>{let A=S.replace('"imageUri":"',"").replace('"',"");if(C.includes(A))return;let D=new Image;D.src=A,C.push(A)})}})}}catch{}},[a]),(0,Ce.useEffect)(()=>{if(r!==s&&e([]),p(r),r&&!r.startsWith(Ht))try{localStorage.setItem(So,r)}catch(C){console.log("Failed to save user id locally: Local storage available",C)}r===null&&setTimeout(()=>{r===null&&k()},50)},[r,a,y]);function O(){return Ce.default.createElement(Ce.default.Fragment,null,b.map(C=>d(C.slug)!==Ve?null:Ce.default.createElement("span",{key:C.slug},Ce.default.createElement(Qi,{flowId:C.slug,type:"modal",modalPosition:"center",endFlowOnDismiss:!0}))))}return Ce.default.createElement(Ce.default.Fragment,null,Ce.default.createElement(O,null))};var un=require("react-error-boundary"),fn=require("deepmerge-ts");var on=require("deepmerge-ts"),tn={colorPrimary:"colors.primary.background",colorText:"colors.neutral.foreground",colorBackground:"colors.neutral.background",colorBackgroundSecondary:"colors.secondary.background",colorTextOnPrimaryBackground:"colors.primary.foreground",colorTextSecondary:"colors.secondary.foreground",colorTextDisabled:"colors.gray700",colorBorder:"colors.gray800",colorTextError:"colors.negative.foreground",borderRadius:"radii.lg"};function ip(e){if(!e)return;let t={};return Object.entries(e).forEach(([o,i])=>{if(tn[o]){let r=tn[o].split("."),n=t;r.forEach((s,p)=>{n[s]||(n[s]=p===r.length-1?i:{}),n=n[s]})}}),t}function np(e){if(!e)return;let t=(0,on.deepmerge)({},e),o={};return Object.keys(t).forEach(i=>{let r=`.fr-${i}`;o[r]=t[i]}),o}function rn(e){let{theme:t,styleOverrides:o}=e,i=ip(t),r=np(o);return{overrides:i,css:r}}var sn=m(require("styled-components")),bo=require("styled-system");var Tr=m(require("react")),Yt=m(require("styled-components")),Be=require("styled-system"),nn=require("deepmerge-ts"),sp={width:{property:"width",scale:"sizes",transform:(e,t)=>(0,Be.get)(t,e,!(typeof e=="number"&&!isNaN(e))||e>1?e:e*100+"%")},height:{property:"height",scale:"sizes"},minWidth:{property:"minWidth",scale:"sizes"},minHeight:{property:"minHeight",scale:"sizes"},maxWidth:{property:"maxWidth",scale:"sizes"},maxHeight:{property:"maxHeight",scale:"sizes"},overflow:!0,overflowX:!0,overflowY:!0,display:!0,verticalAlign:!0},lp=(0,Yt.default)("div")(({css:e})=>e,(0,Be.compose)(Be.border,Be.color,Be.shadow,Be.space,Be.typography,(0,Be.system)(sp))),Xt=({as:e,children:t,overrides:o,...i})=>{let r=(0,Yt.useTheme)(),n={border:"none",boxSizing:"border-box",m:0,p:0},s=()=>Tr.default.createElement(lp,{as:e,...n,...i},t);if(o!==void 0){let p=(0,nn.deepmerge)(r,o);return Tr.default.createElement(Yt.ThemeProvider,{theme:p},s())}return s()};var wo={Primary:{backgroundColor:"primary.background",color:"primary.foreground","&:hover":{backgroundColor:"blue400"}},Secondary:{backgroundColor:"white",border:"1px solid",borderColor:"gray800",color:"neutral.foreground","&:hover":{backgroundColor:"blue900"}},Link:{backgroundColor:"transparent",color:"primary.inverted"},Plain:{backgroundColor:"transparent",color:"neutral.foreground"}},ap={sm:{paddingX:4,paddingY:1},md:{paddingX:6,paddingY:2}},ln=(0,sn.default)(Xt)(()=>({whiteSpace:"nowrap"}),(0,bo.compose)((0,bo.variant)({scale:"components.Button",variants:"components.Button"}),(0,bo.variant)({prop:"size",variants:ap})));var an=m(require("styled-components")),Qo=require("styled-system");var Zo={Display1:{fontSize:"5xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"4xl"},Display2:{fontSize:"4xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"3xl"},H1:{fontSize:"3xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"2xl"},H2:{fontSize:"2xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"xl"},H3:{fontSize:"xl",fontWeight:"bold",letterSpacing:"md",lineHeight:"lg"},H4:{fontSize:"lg",fontWeight:"bold",letterSpacing:"md",lineHeight:"md"},Body1:{fontSize:"md",fontWeight:"regular",letterSpacing:"md",lineHeight:"md"},Body2:{fontSize:"sm",fontWeight:"regular",letterSpacing:"md",lineHeight:"md"},Caption:{fontSize:"xs",fontWeight:"regular",letterSpacing:"md",lineHeight:"sm"}};var pn=(0,an.default)(Xt)((0,Qo.variant)({scale:"components.Text",variants:"components.Text"}),(0,Qo.system)({fontWeight:{property:"fontWeight",scale:"fontWeights"}}));var dn=4,cn="px",pp=20,dp=Object.fromEntries(Array.from(Array(pp+1),(e,t)=>t===0?[.5,`${.5*dn}${cn}`]:[t,`${t*dn}${cn}`])),Jt={black:"#000000",gray100:"#14161A",gray200:"#181B20",gray300:"#1F2329",gray400:"#2E343D",gray500:"#4C5766",gray600:"#5A6472",gray700:"#C5CBD3",gray800:"#E2E5E9",gray900:"#F1F2F4",white:"#ffffff",blue400:"#015AC6",blue500:"#0171F8",blue800:"#DBECFF",blue900:"#F5F9FF",green400:"#009E37",green500:"#00D149",green800:"#DBFFE8",transparent:"#FFFFFF00",red500:"#c00000"},Ro={colors:{...Jt,neutral:{foreground:Jt.gray300},primary:{background:Jt.blue500,foreground:Jt.white,inverted:Jt.blue500},negative:{foreground:Jt.red500}},fonts:{default:"TT Interphases Pro, sans-serif"},fontSizes:{xs:"12px",sm:"14px",md:"16px",lg:"18px",xl:"20px","2xl":"24px","3xl":"30px","4xl":"36px","5xl":"48px"},fontWeights:{regular:400,semibold:500,bold:700},letterSpacings:{md:"0.02em"},lineHeights:{xs:"18px",sm:"22px",md:"24px",lg:"26px",xl:"30px","2xl":"38px","3xl":"46px","4xl":"60px"},radii:{md:"8px",lg:"20px",round:"50%"},shadows:{md:"0px 4px 20px rgba(0, 0, 0, 0.06)"},space:dp,components:{Button:wo,Text:Zo}};var gn="https://api.frigade.com",K=(0,Y.createContext)({publicApiKey:"",setUserId:()=>{},flows:[],setFlows:()=>{},failedFlowResponses:[],setFailedFlowResponses:()=>{},flowResponses:[],setFlowResponses:()=>{},userProperties:{},setUserProperties:()=>{},openFlowStates:{},setOpenFlowStates:()=>{},completedFlowsToKeepOpenDuringSession:[],setCompletedFlowsToKeepOpenDuringSession:()=>{},customVariables:{},setCustomVariables:()=>{},isNewGuestUser:!1,setIsNewGuestUser:()=>{},hasActiveFullPageFlow:!1,setHasActiveFullPageFlow:()=>{},organizationId:"",setOrganizationId:()=>{},navigate:()=>{},defaultAppearance:Ze,shouldGracefullyDegrade:!1,setShouldGracefullyDegrade:()=>{},apiUrl:gn,readonly:!1});function cp(){Object.keys(localStorage).forEach(e=>{e.startsWith("frigade-")&&localStorage.removeItem(e)})}var xn=({publicApiKey:e,userId:t,organizationId:o,config:i,children:r})=>{var Q,se;let[n,s]=(0,Y.useState)(t||null),[p,d]=(0,Y.useState)(o||null),[a,y]=(0,Y.useState)([]),[c,x]=(0,Y.useState)([]),[b,F]=(0,Y.useState)([]),[P,f]=(0,Y.useState)({}),[B,h]=(0,Y.useState)({}),[k,O]=(0,Y.useState)([]),[C,u]=(0,Y.useState)({}),[T,S]=(0,Y.useState)(!1),[A,D]=(0,Y.useState)(!1),[L,U]=(0,Y.useState)(!H(e)),$=(fe,oe)=>{if(oe==="_blank"){window.open(fe,"_blank");return}setTimeout(()=>{window.location.href=fe},50)},j={theme:{...Ze.theme,...((Q=i==null?void 0:i.defaultAppearance)==null?void 0:Q.theme)??{}},styleOverrides:{...Ze.styleOverrides,...((se=i==null?void 0:i.defaultAppearance)==null?void 0:se.styleOverrides)??{}}};function H(fe){return!!(fe&&fe.length>10&&fe.substring(0,10)==="api_public")}(0,Y.useEffect)(()=>{t&&s(t)},[t]),(0,Y.useEffect)(()=>{n&&window&&window.localStorage&&window.localStorage.getItem(So)&&window.localStorage.getItem(So)!==n&&cp()},[n]),(0,Y.useEffect)(()=>{o&&d(o)},[o]),(0,Y.useEffect)(()=>{if(H(e))U(!1);else{console.error("Frigade SDK failed to initialize. API key provided is either missing or valid."),U(!0);return}},[e,U]);let ae={publicApiKey:e,userId:n,setUserId:s,setFlows:y,flows:a,failedFlowResponses:c,setFailedFlowResponses:x,flowResponses:b,setFlowResponses:F,userProperties:P,setUserProperties:f,openFlowStates:B,setOpenFlowStates:h,completedFlowsToKeepOpenDuringSession:k,setCompletedFlowsToKeepOpenDuringSession:O,customVariables:C,setCustomVariables:u,isNewGuestUser:T,setIsNewGuestUser:S,hasActiveFullPageFlow:A,setHasActiveFullPageFlow:D,organizationId:p,setOrganizationId:d,navigate:i&&i.navigate?i.navigate:$,defaultAppearance:j,shouldGracefullyDegrade:L,setShouldGracefullyDegrade:U,apiUrl:i&&i.apiUrl?i.apiUrl:gn,readonly:i&&i.readonly?i.readonly:!1};if(L)return Y.default.createElement(K.Provider,{value:ae},r);let{overrides:ne}=rn(j);return Y.default.createElement(un.ErrorBoundary,{fallback:Y.default.createElement(Y.default.Fragment,null,r)},Y.default.createElement(K.Provider,{value:ae},Y.default.createElement(mn.ThemeProvider,{theme:(0,fn.deepmerge)(j.theme,Ro,ne??{},(i==null?void 0:i.theme)??{})},r,Y.default.createElement(en,null))))};var Ks=m(require("react"));var te=m(require("react"));var Oe=m(require("react")),Tt=m(require("styled-components"));var To=m(require("react"));var bt=m(require("react")),Fr=m(require("styled-components"));var hn=Fr.default.span`
633
633
  font-weight: 400;
634
634
  font-size: 15px;
635
635
  line-height: 20px;
@@ -674,7 +674,7 @@ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map
674
674
  `,bn=Qt.default.div`
675
675
  flex-direction: row;
676
676
  justify-content: flex-start;
677
- `;var Tn=({data:e,index:t,isSelected:o,primaryColor:i,style:r,onClick:n,appearance:s})=>{var p,d;return To.default.createElement("div",{style:{position:"relative",paddingLeft:"20px"},onClick:()=>{n()}},o&&To.default.createElement(tr,{className:l("checklistStepItemSelectedIndicator",s),as:wn.motion.div,layoutId:"checklis-step-selected",style:{backgroundColor:((p=s==null?void 0:s.theme)==null?void 0:p.colorPrimary)??i}}),To.default.createElement(bn,{className:l("checklistStepItem",s),key:`hero-checklist-step-${t}`,role:"listitem"},To.default.createElement(er,{value:e.complete,labelPosition:"left",label:e.stepName,style:r,primaryColor:((d=s==null?void 0:s.theme)==null?void 0:d.colorPrimary)??i,appearance:s})))};var wt=m(require("react")),Fn=require("framer-motion"),or=m(require("styled-components"));var up={backgroundColor:"#E6E6E6"},fp=or.default.div`
677
+ `;var Tn=({data:e,index:t,isSelected:o,primaryColor:i,style:r,onClick:n,appearance:s})=>{var p,d;return To.default.createElement("div",{style:{position:"relative",paddingLeft:"20px"},onClick:()=>{n()}},o&&To.default.createElement(tr,{className:l("checklistStepItemSelectedIndicator",s),as:wn.motion.div,layoutId:"checklis-step-selected",style:{backgroundColor:((p=s==null?void 0:s.theme)==null?void 0:p.colorPrimary)??i}}),To.default.createElement(bn,{className:l("checklistStepItem",s),key:`hero-checklist-step-${t}`,role:"listitem"},To.default.createElement(er,{value:e.complete,labelPosition:"left",label:e.stepName??e.title,style:r,primaryColor:((d=s==null?void 0:s.theme)==null?void 0:d.colorPrimary)??i,appearance:s})))};var wt=m(require("react")),Fn=require("framer-motion"),or=m(require("styled-components"));var up={backgroundColor:"#E6E6E6"},fp=or.default.div`
678
678
  display: flex;
679
679
  flex-direction: ${e=>e.textLocation=="top"?"column":"row"};
680
680
  justify-content: flex-start;
@@ -1236,7 +1236,7 @@ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map
1236
1236
  color: ${({theme:e})=>e.colorTextSecondary};
1237
1237
  ${e=>e.blocked||e.complete?"opacity: 0.4;":`
1238
1238
  `}
1239
- `;var Vs=({stepData:e,style:t={},appearance:o})=>{let{mergeAppearanceWithDefault:i}=le(),{primaryCTAClickSideEffects:r}=ge();o=i(o);let{imageUri:n=null,subtitle:s=null,title:p=null,complete:d=!1,blocked:a=!1}=e,y=e.primaryButtonTitle||e.secondaryButtonTitle,c=()=>{r(e)};return Dt.default.createElement(Os,{className:l("carouselCard",o),onClick:a?null:c,style:t,blocked:a,complete:d},n&&Dt.default.createElement(Ds,{className:l("carouselCardImage",o),src:n,alt:p,style:{opacity:d||a?.4:1}}),d&&Dt.default.createElement(zs,{className:l("carouselCompletedPill",o)},Dt.default.createElement(Hs,{style:{color:"#108E0B"}},"Complete")),p&&Dt.default.createElement(Ws,{blocked:a,complete:d,className:l("carouselCardTitle",o)},p),s&&Dt.default.createElement(lt.Quiet,{blocked:a,complete:d,className:l("carouselCardSubtitle",o)},s))};var ro=m(require("react"));var js=({numberOfStepsCompleted:e,numberOfSteps:t,appearance:o})=>{let i=t>0?e/t:0,r=200;return ro.default.createElement(Ms,{className:l("carouselProgressBar",o)},ro.default.createElement(Us,{as:lt.Loud,style:{marginRight:8}},e," of ",t),ro.default.createElement("svg",{height:10,width:"100%",style:{minWidth:r}},ro.default.createElement("rect",{x:0,y:0,rx:5,width:"100%",height:10,fill:"#E6E6E6"}),ro.default.createElement("rect",{x:0,y:0,rx:5,width:`clamp(10px, 100% * ${i}, 100%)`,height:10,fill:"currentColor"})))};var jp=()=>W.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},W.default.createElement("path",{d:"M14 6L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),W.default.createElement("path",{d:"M14 18L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),W.default.createElement("path",{d:"M4 12H20",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"})),Gs=({side:e="left",show:t=!1,onClick:o=()=>{}})=>{let[i,r]=(0,W.useState)(!1),[n,s]=(0,W.useState)(!1);(0,W.useEffect)(()=>{t===!0&&i===!1?r(!0):t===!1&&i===!0&&s(!0)},[t]);let p=()=>{r(!1),s(!1)},d=e=="left"?{top:0,bottom:0,left:-20,transform:"rotate(180deg)"}:{top:0,bottom:0,right:-20};return i?W.default.createElement(Is,{style:d,reversed:n,onAnimationEnd:n?p:null},W.default.createElement(Ns,{onClick:()=>o(),style:{right:16,top:"calc(50% - 24px)"}},W.default.createElement(jp,null))):null},qs=({flowId:e,appearance:t,customVariables:o,className:i})=>{let r=(0,W.useRef)(null),[n,s]=(0,W.useState)(!1),[p,d]=(0,W.useState)(!1),[a,y]=(0,W.useState)(null),[c,x]=(0,W.useState)([]),[b,F]=(0,W.useState)(0),{isSmall:P}=nr(),f=P?1:3,{getFlowMetadata:B,getFlowSteps:h,getNumberOfStepsCompleted:k,updateCustomVariables:O,isLoading:C}=Z();(0,W.useEffect)(()=>{O(o)},[o,C]),(0,W.useEffect)(()=>{if(C)return;let L=B(e),U=k(e),$=h(e);y(L),L.data!==null&&(x($.sort((j,H)=>Number(j.complete)-Number(H.complete))),d($.length>f),F(U))},[C]);let u=[];for(let L=0;L<c.length;L+=f)u.push(c.slice(L,L+f));let T=L=>{let U=L.target,$=U.scrollWidth-U.clientWidth,j=Math.ceil(U.scrollLeft);j>0&&n===!1&&s(!0),j===0&&n===!0&&s(!1),j<$&&p===!1&&d(!0),j===$&&p===!0&&d(!1)},S=(L=!0)=>{let U=L?1:-1;r.current!==null&&r.current.scrollBy({left:r.current.clientWidth*U,behavior:"smooth"})},E=null,D=L=>{E!==null?clearTimeout(E):T(L),E=setTimeout(()=>{T(L)},16)};return C?null:W.default.createElement($s,{className:Ee(l("carouselContainer",t),i)},W.default.createElement("div",{style:{display:"flex",justifyContent:P?"center":"space-between",marginBottom:20,flexWrap:P?"wrap":"nowrap",gap:P?16:20}},W.default.createElement("div",null,W.default.createElement(_s,{className:l("carouselTitle",t)},a==null?void 0:a.title),W.default.createElement(lt.Quiet,{className:l("carouselSubtitle",t)},a==null?void 0:a.subtitle)),W.default.createElement(js,{numberOfStepsCompleted:b,numberOfSteps:c.length})),W.default.createElement("div",{style:{position:"relative"}},W.default.createElement(Gs,{show:n,onClick:()=>S(!1)}),W.default.createElement(Gs,{side:"right",show:p,onClick:S}),W.default.createElement(Es,{ref:r,onScroll:D},u.map((L,U)=>W.default.createElement(As,{key:U,style:{flex:`0 0 calc(100% - ${c.length>f?36:0}px)`}},L.map(($,j)=>W.default.createElement(Vs,{key:j,stepData:$,style:{flex:c.length>f?`0 1 calc(100% / ${f} - 16px * 2 / ${f})`:1},appearance:t})))))),W.default.createElement(me,{appearance:t}))};var lr=({flowId:e,title:t,subtitle:o,style:i,initialSelectedStep:r,className:n,type:s="inline",onDismiss:p,visible:d,customVariables:a,onStepCompletion:y,onButtonClick:c,appearance:x,hideOnFlowCompletion:b,setVisible:F,customStepTypes:P,checklistStyle:f="default",autoExpandFirstIncompleteStep:B,autoExpandNextStep:h,...k})=>{let{getFlow:O,getFlowSteps:C,markStepCompleted:u,getStepStatus:T,getNumberOfStepsCompleted:S,isLoading:E,targetingLogicShouldHideFlow:D,updateCustomVariables:L,getFlowMetadata:U,isStepBlocked:$,getFlowStatus:j,hasActiveFullPageFlow:H,setHasActiveFullPageFlow:ae}=Z(),{primaryCTAClickSideEffects:ne,secondaryCTAClickSideEffects:Q}=ge(),{getOpenFlowState:se,setOpenFlowState:fe}=Ne(),[oe,X]=(0,te.useState)(r||0),[ve,De]=(0,te.useState)(!1),J=d===void 0?se(e):d,he=s==="modal",{mergeAppearanceWithDefault:_}=le(),{isLarge:M}=nr();if(x=_(x),(0,te.useEffect)(()=>{L(a)},[a,E]),(0,te.useEffect)(()=>{d!==void 0&&(he&&d===!0?ae(!0):he&&d===!1&&ae(!1))},[d,F,H]),E)return null;let pe=O(e);if(!pe||D(pe))return null;let q=C(e);if(!q||b===!0&&j(e)===ie)return null;let de=U(e);if(de!=null&&de.title&&(t=de.title),de!=null&&de.subtitle&&(o=de.subtitle),!ve&&r===void 0&&S(e)>0){let I=q.findIndex(re=>re.complete===!1);X(I>-1?I:q.length-1),De(!0)}function pt(){if(oe+1>=q.length){he&&fe(e,!1);return}$(e,q[oe+1].id)||X(oe+1)}function Xe(I,re,Pt){let Wr=oe+1<q.length?q[oe+1]:null;c&&c(I,oe,re,Wr)===!0&&he&&Je(),y&&y(I,Pt,Wr),!y&&!c&&(I.primaryButtonUri||I.secondaryButtonUri)&&he&&Je()}function kt(){return q.map((I,re)=>({...I,handleSecondaryButtonClick:()=>{pt(),Q(I),I.skippable===!0&&u(e,I.id,{skipped:!0}),Xe(I,"secondary",re)},handlePrimaryButtonClick:()=>{(!I.completionCriteria&&(I.autoMarkCompleted||I.autoMarkCompleted===void 0)||I.completionCriteria&&I.autoMarkCompleted===!0)&&(u(e,I.id),pt()),Xe(I,"primary",re),ne(I),T(e,I.id)===je&&pt()}}))}function V(){return te.default.createElement(me,{appearance:x})}let ze={steps:kt(),title:t,subtitle:o,primaryColor:x.theme.colorPrimary,appearance:x,customStepTypes:P,type:s,className:n,autoExpandFirstIncompleteStep:B,autoExpandNextStep:h};function Je(){fe(e,!1),p&&p(),F&&F(!1)}function cr(){return te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(qs,{flowId:e,appearance:x,customVariables:a,className:n}))}function g(){return te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(Ar,{visible:J,onClose:()=>{Je()},selectedStep:oe,setSelectedStep:X,autoExpandNextStep:!0,appearance:x,...ze}))}function w(){if(!M)return g();let I=k.guideFlowId,re;return I&&O(I)&&(re=C(I)),te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(Er,{visible:J,stepsTitle:de.stepsTitle?de.stepsTitle:"Your quick start guide",onClose:()=>{Je()},selectedStep:oe,setSelectedStep:X,guideData:re,guideTitle:k.guideTitle??"Guide",appearance:x,title:t,subtitle:o,onGuideButtonClick:Pt=>{Xe(Pt,"link",0)},customStepTypes:P,...ze}))}function A(){if(!M)return g();let I=te.default.createElement(Pr,{flowId:e,style:i,selectedStep:oe,setSelectedStep:X,appearance:x,type:s,...ze});return he?te.default.createElement(ht,{onClose:()=>{Je()},visible:J,appearance:x,style:{paddingTop:"0px",padding:"12px",paddingLeft:0}},te.default.createElement(V,null),I):te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),I)}switch(f){case"condensed":return g();case"with-guide":return w();case"default":return A();case"carousel":return cr();default:return A()}};var Ys=e=>Ks.default.createElement(lr,{type:"inline",...e});var Ke=m(require("react"));var qe=m(require("react"));var Bo=m(require("styled-components")),Xs=Bo.default.div`
1239
+ `;var Vs=({stepData:e,style:t={},appearance:o})=>{let{mergeAppearanceWithDefault:i}=le(),{primaryCTAClickSideEffects:r}=ge();o=i(o);let{imageUri:n=null,subtitle:s=null,title:p=null,complete:d=!1,blocked:a=!1}=e,y=e.primaryButtonTitle||e.secondaryButtonTitle,c=()=>{r(e)};return Dt.default.createElement(Os,{className:l("carouselCard",o),onClick:a?null:c,style:t,blocked:a,complete:d},n&&Dt.default.createElement(Ds,{className:l("carouselCardImage",o),src:n,alt:p,style:{opacity:d||a?.4:1}}),d&&Dt.default.createElement(zs,{className:l("carouselCompletedPill",o)},Dt.default.createElement(Hs,{style:{color:"#108E0B"}},"Complete")),p&&Dt.default.createElement(Ws,{blocked:a,complete:d,className:l("carouselCardTitle",o)},p),s&&Dt.default.createElement(lt.Quiet,{blocked:a,complete:d,className:l("carouselCardSubtitle",o)},s))};var ro=m(require("react"));var js=({numberOfStepsCompleted:e,numberOfSteps:t,appearance:o})=>{let i=t>0?e/t:0,r=200;return ro.default.createElement(Ms,{className:l("carouselProgressBar",o)},ro.default.createElement(Us,{as:lt.Loud,style:{marginRight:8}},e," of ",t),ro.default.createElement("svg",{height:10,width:"100%",style:{minWidth:r}},ro.default.createElement("rect",{x:0,y:0,rx:5,width:"100%",height:10,fill:"#E6E6E6"}),ro.default.createElement("rect",{x:0,y:0,rx:5,width:`clamp(10px, 100% * ${i}, 100%)`,height:10,fill:"currentColor"})))};var jp=()=>W.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},W.default.createElement("path",{d:"M14 6L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),W.default.createElement("path",{d:"M14 18L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),W.default.createElement("path",{d:"M4 12H20",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"})),Gs=({side:e="left",show:t=!1,onClick:o=()=>{}})=>{let[i,r]=(0,W.useState)(!1),[n,s]=(0,W.useState)(!1);(0,W.useEffect)(()=>{t===!0&&i===!1?r(!0):t===!1&&i===!0&&s(!0)},[t]);let p=()=>{r(!1),s(!1)},d=e=="left"?{top:0,bottom:0,left:-20,transform:"rotate(180deg)"}:{top:0,bottom:0,right:-20};return i?W.default.createElement(Is,{style:d,reversed:n,onAnimationEnd:n?p:null},W.default.createElement(Ns,{onClick:()=>o(),style:{right:16,top:"calc(50% - 24px)"}},W.default.createElement(jp,null))):null},qs=({flowId:e,appearance:t,customVariables:o,className:i})=>{let r=(0,W.useRef)(null),[n,s]=(0,W.useState)(!1),[p,d]=(0,W.useState)(!1),[a,y]=(0,W.useState)(null),[c,x]=(0,W.useState)([]),[b,F]=(0,W.useState)(0),{isSmall:P}=nr(),f=P?1:3,{getFlowMetadata:B,getFlowSteps:h,getNumberOfStepsCompleted:k,updateCustomVariables:O,isLoading:C}=Z();(0,W.useEffect)(()=>{O(o)},[o,C]),(0,W.useEffect)(()=>{if(C)return;let L=B(e),U=k(e),$=h(e);y(L),L.data!==null&&(x($.sort((j,H)=>Number(j.complete)-Number(H.complete))),d($.length>f),F(U))},[C]);let u=[];for(let L=0;L<c.length;L+=f)u.push(c.slice(L,L+f));let T=L=>{let U=L.target,$=U.scrollWidth-U.clientWidth,j=Math.ceil(U.scrollLeft);j>0&&n===!1&&s(!0),j===0&&n===!0&&s(!1),j<$&&p===!1&&d(!0),j===$&&p===!0&&d(!1)},S=(L=!0)=>{let U=L?1:-1;r.current!==null&&r.current.scrollBy({left:r.current.clientWidth*U,behavior:"smooth"})},A=null,D=L=>{A!==null?clearTimeout(A):T(L),A=setTimeout(()=>{T(L)},16)};return C?null:W.default.createElement($s,{className:Ee(l("carouselContainer",t),i)},W.default.createElement("div",{style:{display:"flex",justifyContent:P?"center":"space-between",marginBottom:20,flexWrap:P?"wrap":"nowrap",gap:P?16:20}},W.default.createElement("div",null,W.default.createElement(_s,{className:l("carouselTitle",t)},a==null?void 0:a.title),W.default.createElement(lt.Quiet,{className:l("carouselSubtitle",t)},a==null?void 0:a.subtitle)),W.default.createElement(js,{numberOfStepsCompleted:b,numberOfSteps:c.length})),W.default.createElement("div",{style:{position:"relative"}},W.default.createElement(Gs,{show:n,onClick:()=>S(!1)}),W.default.createElement(Gs,{side:"right",show:p,onClick:S}),W.default.createElement(Es,{ref:r,onScroll:D},u.map((L,U)=>W.default.createElement(As,{key:U,style:{flex:`0 0 calc(100% - ${c.length>f?36:0}px)`}},L.map(($,j)=>W.default.createElement(Vs,{key:j,stepData:$,style:{flex:c.length>f?`0 1 calc(100% / ${f} - 16px * 2 / ${f})`:1},appearance:t})))))),W.default.createElement(me,{appearance:t}))};var lr=({flowId:e,title:t,subtitle:o,style:i,initialSelectedStep:r,className:n,type:s="inline",onDismiss:p,visible:d,customVariables:a,onStepCompletion:y,onButtonClick:c,appearance:x,hideOnFlowCompletion:b,setVisible:F,customStepTypes:P,checklistStyle:f="default",autoExpandFirstIncompleteStep:B,autoExpandNextStep:h,...k})=>{let{getFlow:O,getFlowSteps:C,markStepCompleted:u,getStepStatus:T,getNumberOfStepsCompleted:S,isLoading:A,targetingLogicShouldHideFlow:D,updateCustomVariables:L,getFlowMetadata:U,isStepBlocked:$,getFlowStatus:j,hasActiveFullPageFlow:H,setHasActiveFullPageFlow:ae}=Z(),{primaryCTAClickSideEffects:ne,secondaryCTAClickSideEffects:Q}=ge(),{getOpenFlowState:se,setOpenFlowState:fe}=Ne(),[oe,X]=(0,te.useState)(r||0),[ve,De]=(0,te.useState)(!1),J=d===void 0?se(e):d,he=s==="modal",{mergeAppearanceWithDefault:_}=le(),{isLarge:M}=nr();if(x=_(x),(0,te.useEffect)(()=>{L(a)},[a,A]),(0,te.useEffect)(()=>{d!==void 0&&(he&&d===!0?ae(!0):he&&d===!1&&ae(!1))},[d,F,H]),A)return null;let pe=O(e);if(!pe||D(pe))return null;let q=C(e);if(!q||b===!0&&j(e)===ie)return null;let de=U(e);if(de!=null&&de.title&&(t=de.title),de!=null&&de.subtitle&&(o=de.subtitle),!ve&&r===void 0&&S(e)>0){let I=q.findIndex(re=>re.complete===!1);X(I>-1?I:q.length-1),De(!0)}function pt(){if(oe+1>=q.length){he&&fe(e,!1);return}$(e,q[oe+1].id)||X(oe+1)}function Xe(I,re,Pt){let Wr=oe+1<q.length?q[oe+1]:null;c&&c(I,oe,re,Wr)===!0&&he&&Je(),y&&y(I,Pt,Wr),!y&&!c&&(I.primaryButtonUri||I.secondaryButtonUri)&&he&&Je()}function kt(){return q.map((I,re)=>({...I,handleSecondaryButtonClick:()=>{pt(),Q(I),I.skippable===!0&&u(e,I.id,{skipped:!0}),Xe(I,"secondary",re)},handlePrimaryButtonClick:()=>{(!I.completionCriteria&&(I.autoMarkCompleted||I.autoMarkCompleted===void 0)||I.completionCriteria&&I.autoMarkCompleted===!0)&&(u(e,I.id),pt()),Xe(I,"primary",re),ne(I),T(e,I.id)===je&&pt()}}))}function V(){return te.default.createElement(me,{appearance:x})}let ze={steps:kt(),title:t,subtitle:o,primaryColor:x.theme.colorPrimary,appearance:x,customStepTypes:P,type:s,className:n,autoExpandFirstIncompleteStep:B,autoExpandNextStep:h};function Je(){fe(e,!1),p&&p(),F&&F(!1)}function cr(){return te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(qs,{flowId:e,appearance:x,customVariables:a,className:n}))}function g(){return te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(Ar,{visible:J,onClose:()=>{Je()},selectedStep:oe,setSelectedStep:X,autoExpandNextStep:!0,appearance:x,...ze}))}function w(){if(!M)return g();let I=k.guideFlowId,re;return I&&O(I)&&(re=C(I)),te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),te.default.createElement(Er,{visible:J,stepsTitle:de.stepsTitle?de.stepsTitle:"Your quick start guide",onClose:()=>{Je()},selectedStep:oe,setSelectedStep:X,guideData:re,guideTitle:k.guideTitle??"Guide",appearance:x,title:t,subtitle:o,onGuideButtonClick:Pt=>{Xe(Pt,"link",0)},customStepTypes:P,...ze}))}function E(){if(!M)return g();let I=te.default.createElement(Pr,{flowId:e,style:i,selectedStep:oe,setSelectedStep:X,appearance:x,type:s,...ze});return he?te.default.createElement(ht,{onClose:()=>{Je()},visible:J,appearance:x,style:{paddingTop:"0px",padding:"12px",paddingLeft:0}},te.default.createElement(V,null),I):te.default.createElement(te.default.Fragment,null,te.default.createElement(V,null),I)}switch(f){case"condensed":return g();case"with-guide":return w();case"default":return E();case"carousel":return cr();default:return E()}};var Ys=e=>Ks.default.createElement(lr,{type:"inline",...e});var Ke=m(require("react"));var qe=m(require("react"));var Bo=m(require("styled-components")),Xs=Bo.default.div`
1240
1240
  border: 1px solid ${e=>e.appearance.theme.colorBorder};
1241
1241
  border-radius: 8px;
1242
1242
  padding: 6px 10px 6px 10px;
@@ -1342,7 +1342,7 @@ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map
1342
1342
  `,Jp=(0,lo.default)(ul)`
1343
1343
  width: ${so+12}px;
1344
1344
  height: ${so+12}px;
1345
- `,Qp=({steps:e=[],onDismiss:t,onComplete:o=()=>{},tooltipPosition:i="auto",showHighlight:r=!0,primaryColor:n="#000000",offset:s={x:0,y:0},visible:p=!0,containerStyle:d={},selectedStep:a=0,customStepTypes:y,appearance:c,dismissible:x=!1,showHighlightOnly:b,showStepCount:F=!0,completedStepsCount:P=0,showFrigadeBranding:f=!1})=>{var de,pt,Xe,kt;let[B,h]=(0,N.useState)(),[k,O]=(0,N.useState)(new Date),C=(0,N.useRef)(null),[u,T]=(0,N.useState)(document.querySelector(e[a].selector)),S=dl(u,k),[E,D]=(0,N.useState)(),[L,U]=(0,N.useState)(!b),$=(pt=(de=e[a])==null?void 0:de.props)!=null&&pt.position?e[a].props.position:"absolute",j=((kt=(Xe=e[a])==null?void 0:Xe.props)==null?void 0:kt.zIndex)??90,H=(B==null?void 0:B.width)??cl,ae=(B==null?void 0:B.height)??ml;(0,N.useLayoutEffect)(()=>{C.current&&h({width:C.current.clientWidth,height:C.current.clientHeight})},[a,k,$]),(0,N.useEffect)(()=>{b||U(!0)},[a]);let ne=i==="auto"?"right":i,Q=Ir(S,ne,H,s,$),se=S.right+H>(window.innerWidth||document.documentElement.clientWidth),fe=S.bottom+ml>(window.innerHeight||document.documentElement.clientHeight);se&&i==="auto"&&(Q=Ir(S,"left",H,s,$),ne="left");let oe=window.location.pathname.split("/").pop(),X=()=>{let V=document.querySelector(e[a].selector);if(!V){D(void 0),T(null);return}E&&E===JSON.stringify(V==null?void 0:V.getBoundingClientRect())||(T(V),O(new Date),V&&D(JSON.stringify(V.getBoundingClientRect())))};if((0,N.useEffect)(()=>{let V=new MutationObserver(X);return V.observe(document.body,{subtree:!0,childList:!0}),()=>V.disconnect()},[X]),(0,N.useEffect)(()=>{let V=new MutationObserver(X);return V.observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["style","class"]}),()=>V.disconnect()},[X]),(0,N.useEffect)(()=>{let V=setInterval(()=>{X()},10);return()=>clearInterval(V)},[X]),(0,N.useLayoutEffect)(()=>{setTimeout(()=>{X()},qp),X()},[a,oe]),u===null)return N.default.createElement(N.default.Fragment,null);if(Q.x==0&&Q.y==0)return N.default.createElement(N.default.Fragment,null);if(!p)return N.default.createElement(N.default.Fragment,null);let ve=()=>{let V=()=>{if(e[a].handlePrimaryButtonClick&&(e[a].handlePrimaryButtonClick(),U(!1),setTimeout(()=>{X()},30)),P===e.length-1)return o()},ze=()=>{e[a].handleSecondaryButtonClick&&(e[a].handleSecondaryButtonClick(),b&&!e[a].secondaryButtonUri&&U(!1))};return N.default.createElement(N.default.Fragment,null,F&&e.length>1&&N.default.createElement(ni,null,N.default.createElement(li,{className:l("tooltipStepCounter",c)},a+1," of ",e.length)),N.default.createElement(si,{showStepCount:F,className:l("tooltipCTAContainer",c)},e[a].secondaryButtonTitle&&N.default.createElement(ce,{title:e[a].secondaryButtonTitle,appearance:c,onClick:ze,size:"small",withMargin:!1,secondary:!0}),e[a].primaryButtonTitle&&N.default.createElement(ce,{title:e[a].primaryButtonTitle,appearance:c,onClick:V,withMargin:!1,size:"small"})))},De=()=>N.default.createElement(N.default.Fragment,null,x&&N.default.createElement(ti,{"data-testid":"tooltip-dismiss",onClick:()=>{t&&t()},className:l("tooltipClose",c)},N.default.createElement($e,null)),e[a].imageUri&&N.default.createElement(oi,{dismissible:x,appearance:c,src:e[a].imageUri,className:l("tooltipImageContainer",c)}),e[a].videoUri&&!e[a].imageUri&&N.default.createElement(ri,{dismissible:x,appearance:c,className:l("tooltipVideoContainer",c)},N.default.createElement(St,{appearance:c,videoUri:e[a].videoUri})),N.default.createElement(Ae,{appearance:c,title:e[a].title,subtitle:e[a].subtitle,size:"small"}),N.default.createElement(ii,{className:l("tooltipFooter",c)},N.default.createElement(ve,null))),he={...{default:V=>{var ze;if((ze=e[a])!=null&&ze.StepContent){let Je=e[a].StepContent;return N.default.createElement("div",null,Je)}return N.default.createElement(De,null)}},...y},_=()=>{var V;return e?!((V=e[a])!=null&&V.type)||!he[e[a].type]?he.default(e[a]):he[e[a].type]({stepData:e[a],primaryColor:n}):N.default.createElement(N.default.Fragment,null)};if(b&&e[a].complete===!0)return null;let M={top:(Q==null?void 0:Q.y)-so,left:(ne=="left"?S.x+s.x:(Q==null?void 0:Q.x)-so)??0,cursor:b?"pointer":"default",position:$},pe=()=>{let ze=M.left+(ne=="left"?-H:24);return Math.min(Math.max(ze,20),window.innerWidth-H-20)},q=()=>{b&&(O(new Date),U(!L))};return N.default.createElement(Xp,null,N.default.createElement(Jp,{style:M,zIndex:j,className:l("tourHighlightContainer",c)},r&&e[a].showHighlight!==!1&&N.default.createElement(N.default.Fragment,null,N.default.createElement(Yp,{style:{position:$},onClick:q,primaryColor:c.theme.colorPrimary,className:l("tourHighlightInnerCircle",c)}),N.default.createElement(Kp,{style:{position:"absolute"},onClick:q,primaryColor:c.theme.colorPrimary,className:l("tourHighlightOuterCircle",c)}))),N.default.createElement(ul,{style:{...M,left:pe()},zIndex:j+1,className:l("tooltipContainerWrapper",c)},L&&N.default.createElement(N.default.Fragment,null,N.default.createElement(Do,{ref:C,layoutId:"tooltip-container",style:{position:"relative",width:"max-content",right:0,top:12,...d},appearance:c,className:l("tooltipContainer",c),maxWidth:cl,zIndex:j+10},N.default.createElement(_,null)),f&&N.default.createElement(pi,{className:l("poweredByFrigadeTooltipRibbon",c),appearance:c,zIndex:j+10},N.default.createElement(Mo,{appearance:c})))))},ar=Qp;var fl=require("react-portal");var gl=({flowId:e,customVariables:t,appearance:o,onStepCompletion:i,onButtonClick:r,showTooltipsSimultaneously:n=!1,onDismiss:s,dismissible:p,tooltipPosition:d="auto",showHighlightOnly:a=!1,dismissBehavior:y="complete-flow",onComplete:c,skipIfNotFound:x=!1,...b})=>{let{getFlow:F,getFlowSteps:P,isLoading:f,targetingLogicShouldHideFlow:B,markStepCompleted:h,markStepStarted:k,markFlowCompleted:O,updateCustomVariables:C,getCurrentStepIndex:u,getStepStatus:T,isStepBlocked:S,getFlowStatus:E,getNumberOfStepsCompleted:D}=Z(),{isLoadingUserFlowStateData:L}=We(),{primaryCTAClickSideEffects:U,secondaryCTAClickSideEffects:$}=ge(),{hasOpenModals:j}=Ne(),H=u(e),{openFlowStates:ae}=(0,Ye.useContext)(K),{mergeAppearanceWithDefault:ne}=le();if(o=ne(o),(0,Ye.useEffect)(()=>{C(t)},[t,f]),L)return null;let Q=F(e);if(!Q||B(Q)||E(e)==ie||j())return null;let se=P(e);if(Object.keys(ae).length>0){let _=Object.keys(ae).find(M=>ae[M]===!0);if(_!==void 0&&_!==e)return Ye.default.createElement(Ye.default.Fragment,null)}async function fe(_){if(await h(e,_.id),se.map(M=>T(e,M.id)).every(M=>M===je)){await O(e);return}if(!a&&H+1<se.length){if(S(e,se[H+1].id))return;await k(e,se[H+1].id)}}function oe(_,M,pe){let q=H+1<se.length?se[H+1]:null;r&&r(_,H,M,q),i&&i(_,pe,q)}function X(){return se.map(_=>({..._,handleSecondaryButtonClick:async()=>{$(_),_.skippable===!0&&await h(e,_.id,{skipped:!0}),oe(_,"secondary",H)},handlePrimaryButtonClick:async()=>{(!_.completionCriteria&&(_.autoMarkCompleted||_.autoMarkCompleted===void 0)||_.completionCriteria&&_.autoMarkCompleted===!0)&&await fe(_),oe(_,"primary",H),U(_)}}))}async function ve(_){s&&s(),y==="complete-flow"?await O(e):await h(e,_.id)}function De(){c&&c()}let J=!document.querySelector(se[H].selector);function he(){let _=se.findIndex(M=>!!document.querySelector(M.selector));return se.map((M,pe)=>J&&!n&&pe!==_&&x?null:Ye.default.createElement(ar,{key:M.id,appearance:o,steps:X(),selectedStep:pe,showTooltipsSimultaneously:n,dismissible:p,onDismiss:()=>ve(M),tooltipPosition:d,showHighlightOnly:a,completedStepsCount:D(e),onComplete:De,...b}))}return Ye.default.createElement(fl.Portal,null,Ye.default.createElement(me,{appearance:o}),n||J&&x?he():Ye.default.createElement(ar,{appearance:o,steps:X(),selectedStep:H,showTooltipsSimultaneously:n,dismissible:p,onDismiss:()=>ve(se[H]),tooltipPosition:d,completedStepsCount:D(e),showHighlightOnly:a,onComplete:De,...b}))};var ue=m(require("react"));var kl=require("react-portal");var Ft=m(require("styled-components"));var xl=Ft.default.button`
1345
+ `,Qp=({steps:e=[],onDismiss:t,onComplete:o=()=>{},tooltipPosition:i="auto",showHighlight:r=!0,primaryColor:n="#000000",offset:s={x:0,y:0},visible:p=!0,containerStyle:d={},selectedStep:a=0,customStepTypes:y,appearance:c,dismissible:x=!1,showHighlightOnly:b,showStepCount:F=!0,completedStepsCount:P=0,showFrigadeBranding:f=!1})=>{var de,pt,Xe,kt;let[B,h]=(0,N.useState)(),[k,O]=(0,N.useState)(new Date),C=(0,N.useRef)(null),[u,T]=(0,N.useState)(document.querySelector(e[a].selector)),S=dl(u,k),[A,D]=(0,N.useState)(),[L,U]=(0,N.useState)(!b),$=(pt=(de=e[a])==null?void 0:de.props)!=null&&pt.position?e[a].props.position:"absolute",j=((kt=(Xe=e[a])==null?void 0:Xe.props)==null?void 0:kt.zIndex)??90,H=(B==null?void 0:B.width)??cl,ae=(B==null?void 0:B.height)??ml;(0,N.useLayoutEffect)(()=>{C.current&&h({width:C.current.clientWidth,height:C.current.clientHeight})},[a,k,$]),(0,N.useEffect)(()=>{b||U(!0)},[a]);let ne=i==="auto"?"right":i,Q=Ir(S,ne,H,s,$),se=S.right+H>(window.innerWidth||document.documentElement.clientWidth),fe=S.bottom+ml>(window.innerHeight||document.documentElement.clientHeight);se&&i==="auto"&&(Q=Ir(S,"left",H,s,$),ne="left");let oe=window.location.pathname.split("/").pop(),X=()=>{let V=document.querySelector(e[a].selector);if(!V){D(void 0),T(null);return}A&&A===JSON.stringify(V==null?void 0:V.getBoundingClientRect())||(T(V),O(new Date),V&&D(JSON.stringify(V.getBoundingClientRect())))};if((0,N.useEffect)(()=>{let V=new MutationObserver(X);return V.observe(document.body,{subtree:!0,childList:!0}),()=>V.disconnect()},[X]),(0,N.useEffect)(()=>{let V=new MutationObserver(X);return V.observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["style","class"]}),()=>V.disconnect()},[X]),(0,N.useEffect)(()=>{let V=setInterval(()=>{X()},10);return()=>clearInterval(V)},[X]),(0,N.useLayoutEffect)(()=>{setTimeout(()=>{X()},qp),X()},[a,oe]),u===null)return N.default.createElement(N.default.Fragment,null);if(Q.x==0&&Q.y==0)return N.default.createElement(N.default.Fragment,null);if(!p)return N.default.createElement(N.default.Fragment,null);let ve=()=>{let V=()=>{if(e[a].handlePrimaryButtonClick&&(e[a].handlePrimaryButtonClick(),U(!1),setTimeout(()=>{X()},30)),P===e.length-1)return o()},ze=()=>{e[a].handleSecondaryButtonClick&&(e[a].handleSecondaryButtonClick(),b&&!e[a].secondaryButtonUri&&U(!1))};return N.default.createElement(N.default.Fragment,null,F&&e.length>1&&N.default.createElement(ni,null,N.default.createElement(li,{className:l("tooltipStepCounter",c)},a+1," of ",e.length)),N.default.createElement(si,{showStepCount:F,className:l("tooltipCTAContainer",c)},e[a].secondaryButtonTitle&&N.default.createElement(ce,{title:e[a].secondaryButtonTitle,appearance:c,onClick:ze,size:"small",withMargin:!1,secondary:!0}),e[a].primaryButtonTitle&&N.default.createElement(ce,{title:e[a].primaryButtonTitle,appearance:c,onClick:V,withMargin:!1,size:"small"})))},De=()=>N.default.createElement(N.default.Fragment,null,x&&N.default.createElement(ti,{"data-testid":"tooltip-dismiss",onClick:()=>{t&&t()},className:l("tooltipClose",c)},N.default.createElement($e,null)),e[a].imageUri&&N.default.createElement(oi,{dismissible:x,appearance:c,src:e[a].imageUri,className:l("tooltipImageContainer",c)}),e[a].videoUri&&!e[a].imageUri&&N.default.createElement(ri,{dismissible:x,appearance:c,className:l("tooltipVideoContainer",c)},N.default.createElement(St,{appearance:c,videoUri:e[a].videoUri})),N.default.createElement(Ae,{appearance:c,title:e[a].title,subtitle:e[a].subtitle,size:"small"}),N.default.createElement(ii,{className:l("tooltipFooter",c)},N.default.createElement(ve,null))),he={...{default:V=>{var ze;if((ze=e[a])!=null&&ze.StepContent){let Je=e[a].StepContent;return N.default.createElement("div",null,Je)}return N.default.createElement(De,null)}},...y},_=()=>{var V;return e?!((V=e[a])!=null&&V.type)||!he[e[a].type]?he.default(e[a]):he[e[a].type]({stepData:e[a],primaryColor:n}):N.default.createElement(N.default.Fragment,null)};if(b&&e[a].complete===!0)return null;let M={top:(Q==null?void 0:Q.y)-so,left:(ne=="left"?S.x+s.x:(Q==null?void 0:Q.x)-so)??0,cursor:b?"pointer":"default",position:$},pe=()=>{let ze=M.left+(ne=="left"?-H:24);return Math.min(Math.max(ze,20),window.innerWidth-H-20)},q=()=>{b&&(O(new Date),U(!L))};return N.default.createElement(Xp,null,N.default.createElement(Jp,{style:M,zIndex:j,className:l("tourHighlightContainer",c)},r&&e[a].showHighlight!==!1&&N.default.createElement(N.default.Fragment,null,N.default.createElement(Yp,{style:{position:$},onClick:q,primaryColor:c.theme.colorPrimary,className:l("tourHighlightInnerCircle",c)}),N.default.createElement(Kp,{style:{position:"absolute"},onClick:q,primaryColor:c.theme.colorPrimary,className:l("tourHighlightOuterCircle",c)}))),N.default.createElement(ul,{style:{...M,left:pe()},zIndex:j+1,className:l("tooltipContainerWrapper",c)},L&&N.default.createElement(N.default.Fragment,null,N.default.createElement(Do,{ref:C,layoutId:"tooltip-container",style:{position:"relative",width:"max-content",right:0,top:12,...d},appearance:c,className:l("tooltipContainer",c),maxWidth:cl,zIndex:j+10},N.default.createElement(_,null)),f&&N.default.createElement(pi,{className:l("poweredByFrigadeTooltipRibbon",c),appearance:c,zIndex:j+10},N.default.createElement(Mo,{appearance:c})))))},ar=Qp;var fl=require("react-portal");var gl=({flowId:e,customVariables:t,appearance:o,onStepCompletion:i,onButtonClick:r,showTooltipsSimultaneously:n=!1,onDismiss:s,dismissible:p,tooltipPosition:d="auto",showHighlightOnly:a=!1,dismissBehavior:y="complete-flow",onComplete:c,skipIfNotFound:x=!1,...b})=>{let{getFlow:F,getFlowSteps:P,isLoading:f,targetingLogicShouldHideFlow:B,markStepCompleted:h,markStepStarted:k,markFlowCompleted:O,updateCustomVariables:C,getCurrentStepIndex:u,getStepStatus:T,isStepBlocked:S,getFlowStatus:A,getNumberOfStepsCompleted:D}=Z(),{isLoadingUserFlowStateData:L}=We(),{primaryCTAClickSideEffects:U,secondaryCTAClickSideEffects:$}=ge(),{hasOpenModals:j}=Ne(),H=u(e),{openFlowStates:ae}=(0,Ye.useContext)(K),{mergeAppearanceWithDefault:ne}=le();if(o=ne(o),(0,Ye.useEffect)(()=>{C(t)},[t,f]),L)return null;let Q=F(e);if(!Q||B(Q)||A(e)==ie||j())return null;let se=P(e);if(Object.keys(ae).length>0){let _=Object.keys(ae).find(M=>ae[M]===!0);if(_!==void 0&&_!==e)return Ye.default.createElement(Ye.default.Fragment,null)}async function fe(_){if(await h(e,_.id),se.map(M=>T(e,M.id)).every(M=>M===je)){await O(e);return}if(!a&&H+1<se.length){if(S(e,se[H+1].id))return;await k(e,se[H+1].id)}}function oe(_,M,pe){let q=H+1<se.length?se[H+1]:null;r&&r(_,H,M,q),i&&i(_,pe,q)}function X(){return se.map(_=>({..._,handleSecondaryButtonClick:async()=>{$(_),_.skippable===!0&&await h(e,_.id,{skipped:!0}),oe(_,"secondary",H)},handlePrimaryButtonClick:async()=>{(!_.completionCriteria&&(_.autoMarkCompleted||_.autoMarkCompleted===void 0)||_.completionCriteria&&_.autoMarkCompleted===!0)&&await fe(_),oe(_,"primary",H),U(_)}}))}async function ve(_){s&&s(),y==="complete-flow"?await O(e):await h(e,_.id)}function De(){c&&c()}let J=!document.querySelector(se[H].selector);function he(){let _=se.findIndex(M=>!!document.querySelector(M.selector));return se.map((M,pe)=>J&&!n&&pe!==_&&x?null:Ye.default.createElement(ar,{key:M.id,appearance:o,steps:X(),selectedStep:pe,showTooltipsSimultaneously:n,dismissible:p,onDismiss:()=>ve(M),tooltipPosition:d,showHighlightOnly:a,completedStepsCount:D(e),onComplete:De,...b}))}return Ye.default.createElement(fl.Portal,null,Ye.default.createElement(me,{appearance:o}),n||J&&x?he():Ye.default.createElement(ar,{appearance:o,steps:X(),selectedStep:H,showTooltipsSimultaneously:n,dismissible:p,onDismiss:()=>ve(se[H]),tooltipPosition:d,completedStepsCount:D(e),showHighlightOnly:a,onComplete:De,...b}))};var ue=m(require("react"));var kl=require("react-portal");var Ft=m(require("styled-components"));var xl=Ft.default.button`
1346
1346
  ${e=>v(e)} {
1347
1347
  // Anything inside this block will be ignored if the user provides a custom class
1348
1348
 
@@ -1430,7 +1430,7 @@ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map
1430
1430
  font-size: 14px;
1431
1431
 
1432
1432
  padding: 8px 12px;
1433
- `;var ao=require("framer-motion");var Nr=m(require("react")),Tl=({style:e,className:t})=>Nr.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",fill:"none",viewBox:"0 0 18 18",style:e,className:t},Nr.default.createElement("path",{fill:"currentColor",d:"M13.43 4.938a4.494 4.494 0 00-1.043-1.435A4.955 4.955 0 009 2.197c-1.276 0-2.48.464-3.387 1.305A4.502 4.502 0 004.57 4.938a4.242 4.242 0 00-.386 1.773v.475c0 .109.087.197.196.197h.95a.197.197 0 00.197-.197V6.71c0-1.749 1.557-3.17 3.473-3.17s3.473 1.421 3.473 3.17c0 .718-.254 1.393-.738 1.955a3.537 3.537 0 01-1.9 1.125 1.928 1.928 0 00-1.085.682c-.271.343-.42.768-.42 1.206v.552c0 .109.088.197.197.197h.95a.197.197 0 00.196-.197v-.552c0-.276.192-.519.457-.578a4.904 4.904 0 002.625-1.56c.335-.392.597-.828.778-1.3a4.256 4.256 0 00-.103-3.303zM9 13.834a.985.985 0 10.001 1.97.985.985 0 00-.001-1.97z"}));var Lr=m(require("react")),Fl=({style:e,className:t})=>Lr.default.createElement("svg",{style:e,className:t,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:"1.5",stroke:"currentColor"},Lr.default.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"}));var Pl=({flowId:e,style:t,onStepCompletion:o,visible:i=!0,type:r="inline",title:n="Help",appearance:s})=>{let{getFlow:p,getFlowSteps:d,markStepCompleted:a,getStepStatus:y,getNumberOfStepsCompleted:c,isLoading:x,targetingLogicShouldHideFlow:b}=Z(),{primaryCTAClickSideEffects:F}=ge(),P=(0,ue.useRef)(null),[f,B]=(0,ue.useState)(!1),{mergeAppearanceWithDefault:h}=le();s=h(s),(0,ue.useEffect)(()=>(document.addEventListener("click",k,!1),()=>{document.removeEventListener("click",k,!1)}),[]);let k=S=>{P.current&&!P.current.contains(S.target)&&B(!1)};if(x)return null;let O=p(e);if(!O||b(O))return null;let C=d(e);if(!C||!i)return null;function u(S,E){!S.completionCriteria&&(S.autoMarkCompleted||S.autoMarkCompleted===void 0)&&a(e,S.id),F(S),o&&o(S,E),B(!1)}function T(){return f&&ue.default.createElement(bl,{className:l("floatingWidgetMenu",s),as:ao.motion.div,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.1},type:r},C.map((S,E)=>ue.default.createElement(wl,{className:l("floatingWidgetMenuItem",s),key:E,onClick:()=>u(S,E)},S.title)))}return r=="inline"?ue.default.createElement("span",{ref:P},ue.default.createElement(xl,{style:t,onClick:()=>{B(!f)},className:l("supportButton",s)},ue.default.createElement(Cl,{className:l("supportIconContainer",s)},ue.default.createElement(Fl,{className:l("supportIcon",s),style:{width:"18px",height:"18px"}})),ue.default.createElement(hl,{className:l("supportButtonTitle",s)},n)),ue.default.createElement(ao.AnimatePresence,null,ue.default.createElement(T,null))):ue.default.createElement(kl.Portal,null,ue.default.createElement(yl,{style:t,ref:P},ue.default.createElement(ao.AnimatePresence,null,ue.default.createElement(T,null)),ue.default.createElement(Sl,{onClick:()=>{B(!f)},as:ao.motion.button,whileHover:{scale:1.1},className:l("floatingWidgetButton",s)},ue.default.createElement(Tl,{className:l("floatingWidgetButtonIcon",s),style:{display:"flex",width:"20px",height:"20px"}}))))};var Ue=m(require("react"));var Eo=m(require("styled-components"));var vl=Eo.default.div`
1433
+ `;var ao=require("framer-motion");var Nr=m(require("react")),Tl=({style:e,className:t})=>Nr.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",fill:"none",viewBox:"0 0 18 18",style:e,className:t},Nr.default.createElement("path",{fill:"currentColor",d:"M13.43 4.938a4.494 4.494 0 00-1.043-1.435A4.955 4.955 0 009 2.197c-1.276 0-2.48.464-3.387 1.305A4.502 4.502 0 004.57 4.938a4.242 4.242 0 00-.386 1.773v.475c0 .109.087.197.196.197h.95a.197.197 0 00.197-.197V6.71c0-1.749 1.557-3.17 3.473-3.17s3.473 1.421 3.473 3.17c0 .718-.254 1.393-.738 1.955a3.537 3.537 0 01-1.9 1.125 1.928 1.928 0 00-1.085.682c-.271.343-.42.768-.42 1.206v.552c0 .109.088.197.197.197h.95a.197.197 0 00.196-.197v-.552c0-.276.192-.519.457-.578a4.904 4.904 0 002.625-1.56c.335-.392.597-.828.778-1.3a4.256 4.256 0 00-.103-3.303zM9 13.834a.985.985 0 10.001 1.97.985.985 0 00-.001-1.97z"}));var Lr=m(require("react")),Fl=({style:e,className:t})=>Lr.default.createElement("svg",{style:e,className:t,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:"1.5",stroke:"currentColor"},Lr.default.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"}));var Pl=({flowId:e,style:t,onStepCompletion:o,visible:i=!0,type:r="inline",title:n="Help",appearance:s})=>{let{getFlow:p,getFlowSteps:d,markStepCompleted:a,getStepStatus:y,getNumberOfStepsCompleted:c,isLoading:x,targetingLogicShouldHideFlow:b}=Z(),{primaryCTAClickSideEffects:F}=ge(),P=(0,ue.useRef)(null),[f,B]=(0,ue.useState)(!1),{mergeAppearanceWithDefault:h}=le();s=h(s),(0,ue.useEffect)(()=>(document.addEventListener("click",k,!1),()=>{document.removeEventListener("click",k,!1)}),[]);let k=S=>{P.current&&!P.current.contains(S.target)&&B(!1)};if(x)return null;let O=p(e);if(!O||b(O))return null;let C=d(e);if(!C||!i)return null;function u(S,A){!S.completionCriteria&&(S.autoMarkCompleted||S.autoMarkCompleted===void 0)&&a(e,S.id),F(S),o&&o(S,A),B(!1)}function T(){return f&&ue.default.createElement(bl,{className:l("floatingWidgetMenu",s),as:ao.motion.div,initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.1},type:r},C.map((S,A)=>ue.default.createElement(wl,{className:l("floatingWidgetMenuItem",s),key:A,onClick:()=>u(S,A)},S.title)))}return r=="inline"?ue.default.createElement("span",{ref:P},ue.default.createElement(xl,{style:t,onClick:()=>{B(!f)},className:l("supportButton",s)},ue.default.createElement(Cl,{className:l("supportIconContainer",s)},ue.default.createElement(Fl,{className:l("supportIcon",s),style:{width:"18px",height:"18px"}})),ue.default.createElement(hl,{className:l("supportButtonTitle",s)},n)),ue.default.createElement(ao.AnimatePresence,null,ue.default.createElement(T,null))):ue.default.createElement(kl.Portal,null,ue.default.createElement(yl,{style:t,ref:P},ue.default.createElement(ao.AnimatePresence,null,ue.default.createElement(T,null)),ue.default.createElement(Sl,{onClick:()=>{B(!f)},as:ao.motion.button,whileHover:{scale:1.1},className:l("floatingWidgetButton",s)},ue.default.createElement(Tl,{className:l("floatingWidgetButtonIcon",s),style:{display:"flex",width:"20px",height:"20px"}}))))};var Ue=m(require("react"));var Eo=m(require("styled-components"));var vl=Eo.default.div`
1434
1434
  ${e=>v(e)} {
1435
1435
  display: flex;
1436
1436
  flex-direction: column;
@@ -1598,5 +1598,5 @@ ${i=>i.inlineStyles.map(([r,n])=>`.${co}${r}.${co}${r} { ${Object.entries(n).map
1598
1598
  opacity: 0.8;
1599
1599
  }
1600
1600
  }
1601
- `;var jl=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:r,className:n,style:s,type:p="modal"})=>{let{getFlow:d,markFlowCompleted:a,markStepCompleted:y,getNumberOfStepsCompleted:c,isLoading:x,targetingLogicShouldHideFlow:b,updateCustomVariables:F,getFlowSteps:P,getFlowStatus:f,getCurrentStepIndex:B}=Z(),{primaryCTAClickSideEffects:h}=ge(),{mergeAppearanceWithDefault:k}=le(),[O,C]=G.default.useState(null),[u,T]=G.default.useState(""),{hasOpenModals:S,setKeepCompletedFlowOpenDuringSession:E,shouldKeepCompletedFlowOpenDuringSession:D}=Ne();if(r=k(r),(0,G.useEffect)(()=>{F(o)},[o,x]),x)return null;let L=d(e);if(!L||b(L)||f(e)===ie||c(e)===1&&!D(e)||S())return null;let $=P(e)[B(e)];function j(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(zr,null,G.default.createElement(Ae,{size:"large",appearance:r,title:$.title,subtitle:$.subtitle})),G.default.createElement(Mr,{className:l("npsNumberButtonContainer",r),appearance:r},Array.from(Array(10).keys()).map(ne=>G.default.createElement(zl,{className:l("npsNumberButton",r),selected:O===ne+1,key:ne,onClick:async()=>{E(e),C(ne+1),await y(e,$.id,{score:ne+1})},appearance:r},ne+1))),G.default.createElement(_l,{appearance:r},G.default.createElement(Ur,{appearance:r},"Not likely at all"),G.default.createElement(Ur,{appearance:r},"Extremely likely")))}function H(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(zr,null,G.default.createElement(Ae,{appearance:r,title:"Why did you choose this score?",size:"large"})),G.default.createElement(Wl,{appearance:r,value:u,onChange:ne=>{T(ne.target.value)},placeHolder:"Add your optional fedback here..."}),G.default.createElement(Mr,{appearance:r,className:l("npsNumberButtonContainer",r)},G.default.createElement(ce,{size:"large",withMargin:!1,onClick:async()=>{await a(e),i&&i($,1,"primary")},appearance:r,title:$.secondaryButtonTitle||"Skip",secondary:!0}),G.default.createElement(ce,{size:"large",withMargin:!1,onClick:async()=>{await y(e,$.id,{feedbackText:u}),await a(e),i&&i($,1,"primary")},appearance:r,title:$.primaryButtonTitle||"Submit"})))}function ae(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(me,{appearance:r}),G.default.createElement(Ul,{appearance:r,className:Ee(l("npsSurveyContainer",r),n),style:s,type:p},G.default.createElement(Hl,{onClick:async()=>{await a(e),t&&t()},className:l("npsSurveyDismissButton",r)},G.default.createElement($e,null)),c(e)==0&&j(),c(e)==1&&H()))}return p==="inline"?ae():G.default.createElement(Vl.Portal,null,ae())};var dr=m(require("react"));var _r=m(require("react"));var Gl=({as:e="span",children:t,variant:o="Body1",...i})=>_r.default.createElement(pn,{color:"neutral.foreground",fontFamily:"default",forwardedAs:e,variant:o,...i},t),Zp=Object.fromEntries(Object.keys(Zo).map(e=>{let t=["H1","H2","H3","H4"].includes(e)?e.toLowerCase():void 0,o=i=>_r.default.createElement(Gl,{as:t,...i,variant:e},i.children);return o.displayName=`Text.${e}`,[e,o]})),pr=Object.assign(Gl,Zp);var ql=({as:e="button",className:t,size:o="md",title:i,variant:r="Primary",...n})=>{var s;return dr.createElement(ln,{className:`fr-button-${r.toLowerCase()}${t?` ${t}`:""}`,forwardedAs:e,variant:r,size:o,borderRadius:"md",...n},dr.createElement(pr,{color:(s=wo[r])==null?void 0:s.color,fontWeight:"semibold"},i))},Rp=Object.fromEntries(Object.keys(wo).map(e=>{let t=o=>dr.createElement(ql,{...o,variant:e});return t.displayName=`Button.${e}`,[e,t]})),Kl=Object.assign(ql,Rp);0&&(module.exports={Box,Button,CheckBox,FormLabel,FormTextField,FrigadeBanner,FrigadeChecklist,FrigadeDefaultAppearance,FrigadeEmbeddedTip,FrigadeForm,FrigadeGuide,FrigadeHeroChecklist,FrigadeNPSSurvey,FrigadeProgressBadge,FrigadeProvider,FrigadeSupportWidget,FrigadeTour,ProgressRing,Text,tokens,useFlowOpens,useFlowResponses,useFlows,useOrganization,useUser});
1601
+ `;var jl=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:r,className:n,style:s,type:p="modal"})=>{let{getFlow:d,markFlowCompleted:a,markStepCompleted:y,getNumberOfStepsCompleted:c,isLoading:x,targetingLogicShouldHideFlow:b,updateCustomVariables:F,getFlowSteps:P,getFlowStatus:f,getCurrentStepIndex:B}=Z(),{primaryCTAClickSideEffects:h}=ge(),{mergeAppearanceWithDefault:k}=le(),[O,C]=G.default.useState(null),[u,T]=G.default.useState(""),{hasOpenModals:S,setKeepCompletedFlowOpenDuringSession:A,shouldKeepCompletedFlowOpenDuringSession:D}=Ne();if(r=k(r),(0,G.useEffect)(()=>{F(o)},[o,x]),x)return null;let L=d(e);if(!L||b(L)||f(e)===ie||c(e)===1&&!D(e)||S())return null;let $=P(e)[B(e)];function j(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(zr,null,G.default.createElement(Ae,{size:"large",appearance:r,title:$.title,subtitle:$.subtitle})),G.default.createElement(Mr,{className:l("npsNumberButtonContainer",r),appearance:r},Array.from(Array(10).keys()).map(ne=>G.default.createElement(zl,{className:l("npsNumberButton",r),selected:O===ne+1,key:ne,onClick:async()=>{A(e),C(ne+1),await y(e,$.id,{score:ne+1})},appearance:r},ne+1))),G.default.createElement(_l,{appearance:r},G.default.createElement(Ur,{appearance:r},"Not likely at all"),G.default.createElement(Ur,{appearance:r},"Extremely likely")))}function H(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(zr,null,G.default.createElement(Ae,{appearance:r,title:"Why did you choose this score?",size:"large"})),G.default.createElement(Wl,{appearance:r,value:u,onChange:ne=>{T(ne.target.value)},placeHolder:"Add your optional fedback here..."}),G.default.createElement(Mr,{appearance:r,className:l("npsNumberButtonContainer",r)},G.default.createElement(ce,{size:"large",withMargin:!1,onClick:async()=>{await a(e),i&&i($,1,"primary")},appearance:r,title:$.secondaryButtonTitle||"Skip",secondary:!0}),G.default.createElement(ce,{size:"large",withMargin:!1,onClick:async()=>{await y(e,$.id,{feedbackText:u}),await a(e),i&&i($,1,"primary")},appearance:r,title:$.primaryButtonTitle||"Submit"})))}function ae(){return G.default.createElement(G.default.Fragment,null,G.default.createElement(me,{appearance:r}),G.default.createElement(Ul,{appearance:r,className:Ee(l("npsSurveyContainer",r),n),style:s,type:p},G.default.createElement(Hl,{onClick:async()=>{await a(e),t&&t()},className:l("npsSurveyDismissButton",r)},G.default.createElement($e,null)),c(e)==0&&j(),c(e)==1&&H()))}return p==="inline"?ae():G.default.createElement(Vl.Portal,null,ae())};var dr=m(require("react"));var _r=m(require("react"));var Gl=({as:e="span",children:t,variant:o="Body1",...i})=>_r.default.createElement(pn,{color:"neutral.foreground",fontFamily:"default",forwardedAs:e,variant:o,...i},t),Zp=Object.fromEntries(Object.keys(Zo).map(e=>{let t=["H1","H2","H3","H4"].includes(e)?e.toLowerCase():void 0,o=i=>_r.default.createElement(Gl,{as:t,...i,variant:e},i.children);return o.displayName=`Text.${e}`,[e,o]})),pr=Object.assign(Gl,Zp);var ql=({as:e="button",className:t,size:o="md",title:i,variant:r="Primary",...n})=>{var s;return dr.createElement(ln,{className:`fr-button-${r.toLowerCase()}${t?` ${t}`:""}`,forwardedAs:e,variant:r,size:o,borderRadius:"md",...n},dr.createElement(pr,{color:(s=wo[r])==null?void 0:s.color,fontWeight:"semibold"},i))},Rp=Object.fromEntries(Object.keys(wo).map(e=>{let t=o=>dr.createElement(ql,{...o,variant:e});return t.displayName=`Button.${e}`,[e,t]})),Kl=Object.assign(ql,Rp);0&&(module.exports={Box,Button,CheckBox,FormLabel,FormTextField,FrigadeBanner,FrigadeChecklist,FrigadeDefaultAppearance,FrigadeEmbeddedTip,FrigadeForm,FrigadeGuide,FrigadeHeroChecklist,FrigadeNPSSurvey,FrigadeProgressBadge,FrigadeProvider,FrigadeSupportWidget,FrigadeTour,ProgressRing,Text,tokens,useFlowOpens,useFlowResponses,useFlows,useOrganization,useUser});
1602
1602
  //# sourceMappingURL=index.js.map