@frigade/react 1.38.10 → 1.38.11
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/dist/index.js +16 -16
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +19 -19
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnPropertyDescriptors;var Wo=Object.getOwnPropertySymbols;var di=Object.prototype.hasOwnProperty,ci=Object.prototype.propertyIsEnumerable;var pi=(e,t,o)=>t in e?na(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,w=(e,t)=>{for(var o in t||(t={}))di.call(t,o)&&pi(e,o,t[o]);if(Wo)for(var o of Wo(t))ci.call(t,o)&&pi(e,o,t[o]);return e},V=(e,t)=>sa(e,la(t));var mi=e=>typeof e=="symbol"?e:e+"",$e=(e,t)=>{var o={};for(var i in e)di.call(e,i)&&t.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&Wo)for(var i of Wo(e))t.indexOf(i)<0&&ci.call(e,i)&&(o[i]=e[i]);return o};var L=(e,t,o)=>new Promise((i,n)=>{var r=d=>{try{p(o.next(d))}catch(s){n(s)}},l=d=>{try{p(o.throw(d))}catch(s){n(s)}},p=d=>d.done?i(d.value):Promise.resolve(d.value).then(r,l);p((o=o.apply(e,t)).next())});import Oo,{createContext as Td,useEffect as lr,useState as Ke}from"react";import{ThemeProvider as In}from"styled-components";import _t,{useContext as Zp,useEffect as ro,useState as Eo}from"react";import{useCallback as Lt,useContext as Sa,useEffect as ba}from"react";import Sr,{useMemo as fi}from"react";var ui="1.38.10";var st="NOT_STARTED_STEP",de="COMPLETED_FLOW",Nt="SKIPPED_FLOW",Ot="STARTED_FLOW",De="NOT_STARTED_FLOW",Ue="COMPLETED_STEP",yo="STARTED_STEP";function Ze(){let{publicApiKey:e,userId:t,apiUrl:o}=Sr.useContext(re);return{config:fi(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":ui,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:fi(()=>`${o}/v1/public/`,[o])}}var aa="frigade-last-call-at-",pa="frigade-last-call-data-";function qt(){let{shouldGracefullyDegrade:e,readonly:t}=Sr.useContext(re);return(o,i)=>L(this,null,function*(){if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return Kt();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),Kt();let n=aa+o,r=pa+o;if(typeof window!="undefined"&&window.localStorage&&i&&i.body&&i.method==="POST"){let p=window.localStorage.getItem(n),d=window.localStorage.getItem(r);if(p&&d&&d==i.body){let s=new Date(p);if(new Date().getTime()-s.getTime()<1e3)return Kt()}typeof window!="undefined"&&(window.localStorage.setItem(n,new Date().toISOString()),window.localStorage.setItem(r,i.body))}let l;try{l=yield fetch(o,i)}catch(p){return Kt(p)}return l?l.ok?l:Kt(l.statusText):Kt()})}function Kt(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function Yt(){let{publicApiKey:e,shouldGracefullyDegrade:t}=Sr.useContext(re);function o(){return t?!1:e?!0:(console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider"),!1)}return{verifySDKInitiated:o}}import{useContext as xa,useState as gi}from"react";import{useContext as ca,useEffect as ma,useState as ua}from"react";import fa from"swr";import{useContext as da}from"react";function Ie(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:n}=da(re);function r(c,g=!1){var S;return(S=e[c])!=null?S:g}function l(c,g){t(S=>V(w({},S),{[c]:g}))}function p(c){t(g=>{let h=g,{[c]:S}=h,F=$e(h,[mi(c)]);return w({},F)})}function d(c){n.includes(c)||i(g=>[...g,c])}function s(c){return n.includes(c)}function u(c){return Object.entries(e).some(([g,S])=>S&&g!=c)||o}return{getOpenFlowState:r,setOpenFlowState:l,resetOpenFlowState:p,hasOpenModals:u,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:s}}import ga from"swr/immutable";import So from"core-js-pure/actual/structured-clone";function br(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ue(...e){let t=e.shift(),o=e.length===1?e[0]:ue(...e);if(!br(t)||!br(o))throw new Error("deepmerge can only merge Objects");let i=So(t);return Object.entries(o).forEach(([n,r])=>{br(r)?i[n]!==void 0?Object.assign(i,{[n]:ue(i[n],So(r))}):Object.assign(i,{[n]:So(r)}):Array.isArray(r)?i[n]!==void 0?Object.assign(i,{[n]:[...i[n],...So(r)]}):Object.assign(i,{[n]:So(r)}):Object.assign(i,{[n]:r})}),i}function Jt(e){try{return JSON.parse(e)}catch(t){return console.error("Failed to parse Frigade config.yml to JSON",t),null}}var ha="unknown";function _e(){let{config:e,apiUrl:t}=Ze(),{publicApiKey:o,userId:i,organizationId:n,flows:r,setShouldGracefullyDegrade:l,readonly:p}=ca(re),{resetOpenFlowState:d}=Ie(),[s,u]=ua(!1),c={data:r.map(T=>({flowId:T.id,flowState:de,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},g=T=>fetch(T,e).then(I=>{if(I.ok)return I.json();throw new Error("Failed to fetch user flow states")}).catch(I=>(console.log(`Error fetching ${T}: ${I}. Will gracefully degrade and hide Frigade`),l(!0),c)),S=o&&r&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${n?`&foreignUserGroupId=${encodeURIComponent(n)}`:""}`:null,{data:F,isLoading:h,mutate:x,error:k}=p?ga(S,g):fa(S,g,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!1,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),b=F==null?void 0:F.data;ma(()=>{!s&&!h&&b&&u(!0)},[b,s,h]);function v(T){return L(this,null,function*(){if(b&&!p){let I=b.find(N=>N.flowId===T);I&&I.flowState!==de&&(I.flowState=de),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}function $(T){return L(this,null,function*(){if(b&&!p){let I=b.find(N=>N.flowId===T);I&&I.flowState!==Nt&&(I.flowState=Nt),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}function E(T,I,N){return L(this,null,function*(){var D,z;if(b){let j=b.find(_=>_.flowId===T);if(j){let _=r.find(q=>q.slug===T),G=Jt(_==null?void 0:_.data),K=(z=(D=G==null?void 0:G.steps)!=null?D:G==null?void 0:G.data)!=null?z:[],O=K.findIndex(q=>q.id===I),ee=K&&K.length>O+1?K[O+1]:null;ee&&(j.lastStepId=ee.id),j.stepStates[I]=N,j.flowState=Ot}p||(yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}))}})}function f(T,I,N){return L(this,null,function*(){if(b){let D=b.find(z=>z.flowId===T);D&&(D.lastStepId=I,D.stepStates[I]=N,D.flowState=Ot),p||(yield x(ue(F,{data:b}),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}))}})}function A(T){return L(this,null,function*(){if(b){let I=b.find(N=>N.flowId===T);I&&I.flowState!==De&&(I.flowState=De,I.lastStepId=ha,Object.keys(I.stepStates).forEach(N=>{I.stepStates[N].actionType=st,I.stepStates[N].createdAt=new Date().toISOString()}),yield x(ue(F,{data:b}),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}),d(T))}})}function y(T,I,N){return L(this,null,function*(){if(b){let D=b.find(z=>z.flowId===T);D&&(D.stepStates[I]=N),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}return{userFlowStatesData:b,isLoadingUserFlowStateData:!s,mutateUserFlowState:x,optimisticallyMarkFlowCompleted:v,optimisticallyMarkFlowSkipped:$,optimisticallyMarkFlowNotStarted:A,optimisticallyMarkStepCompleted:E,optimisticallyMarkStepNotStarted:y,optimisticallyMarkStepStarted:f,error:k}}function bo(){let{config:e,apiUrl:t}=Ze(),{userFlowStatesData:o,mutateUserFlowState:i}=_e(),{failedFlowResponses:n,setFailedFlowResponses:r,flowResponses:l,setFlowResponses:p}=xa(re),[d,s]=gi(new Set),[u,c]=gi(new Set),g=qt();function S(x){let k=JSON.stringify(x);if(d.has(k))return null;d.add(k),s(d),u.add(x),c(u);let b=l==null?void 0:l.find(v=>v.flowSlug===x.flowSlug&&v.stepId===x.stepId&&v.actionType===x.actionType&&v.createdAt===x.createdAt);return g(`${t}flowResponses`,V(w({},e),{method:"POST",body:k})).then(v=>{v.status!==200&&v.status!==201?(console.log("Failed to send flow response for step "+x.stepId+". Will retry again later."),r([...n,x])):b||p($=>[...$!=null?$:[],x])})}function F(x){return L(this,null,function*(){x.foreignUserId&&(x.actionType===Ot||x.actionType===De?yield S(x):x.actionType===de?yield S(x):x.actionType===yo?yield S(x):x.actionType===Ue?yield S(x):x.actionType===Nt?yield S(x):x.actionType===st&&(yield S(x)))})}function h(){let x=[];return o==null||o.forEach(k=>{if(k&&k.stepStates&&Object.keys(k.stepStates).length!==0)for(let b in k.stepStates){let v=k.stepStates[b];x.push({foreignUserId:k.foreignUserId,flowSlug:k.flowId,stepId:v.stepId,actionType:v.actionType,data:{},createdAt:new Date(v.createdAt),blocked:v.blocked,hidden:v.hidden})}}),[...x,...l]}return{addResponse:F,setFlowResponses:p,getFlowResponses:h}}import wa from"swr";var Ca=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,hi=e=>{let t=Ca.exec(e);if(t===null)return null;let o=null;return t.forEach((i,n)=>{let r=ya(i,"'","");r.startsWith("flow_")&&(o=r)}),o},ya=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};var wr=(s=>(s.CHECKLIST="CHECKLIST",s.FORM="FORM",s.TOUR="TOUR",s.SUPPORT="SUPPORT",s.CUSTOM="CUSTOM",s.BANNER="BANNER",s.EMBEDDED_TIP="EMBEDDED_TIP",s.NPS_SURVEY="NPS_SURVEY",s.ANNOUNCEMENT="ANNOUNCEMENT",s))(wr||{});function ne(){let{config:e,apiUrl:t}=Ze(),{flows:o,setFlows:i,userId:n,organizationId:r,publicApiKey:l,customVariables:p,setCustomVariables:d,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:u,setFlowResponses:c,setShouldGracefullyDegrade:g,shouldGracefullyDegrade:S,readonly:F,flowDataOverrides:h}=Sa(re),x={data:[]},{verifySDKInitiated:k}=Yt(),{addResponse:b,getFlowResponses:v}=bo(),$=m=>fetch(m,e).then(C=>C.ok?C.json():(console.log(`Error fetching ${m} (${C.status}): ${C.statusText}. Will gracefully degrade and hide Frigade`),g(!0),x)).catch(C=>(console.log(`Error fetching ${m}: ${C}. Will gracefully degrade and hide Frigade`),g(!0),x)),{mutateUserFlowState:E,userFlowStatesData:f,isLoadingUserFlowStateData:A,optimisticallyMarkFlowCompleted:y,optimisticallyMarkFlowSkipped:T,optimisticallyMarkFlowNotStarted:I,optimisticallyMarkStepCompleted:N,optimisticallyMarkStepNotStarted:D,optimisticallyMarkStepStarted:z}=_e(),{data:j,error:_,isLoading:G}=wa(l?`${t}flows${F?"?readonly=true":""}`:null,$,{keepPreviousData:!0});ba(()=>{if(_){console.error(_);return}j&&j.data&&i(j.data)},[j,_]);function K(m){if(G)return null;let C=o.find(P=>P.slug===m);return!C&&o.length>0&&!A&&!G?(console.log(`Flow with id ${m} not found`),null):(C&&h&&h[m]&&(C.data=h[m]),(C==null?void 0:C.active)===!1&&!F?null:C)}function O(m){var W,Be,Et,At,It;if(!K(m))return[];let C=(W=K(m))==null?void 0:W.data;return C?(C=ee(C),((It=(At=(Be=Jt(C))==null?void 0:Be.data)!=null?At:(Et=Jt(C))==null?void 0:Et.steps)!=null?It:[]).map(ge=>{let xo=Ge(ge);return V(w({handleSecondaryButtonClick:()=>{ge.skippable===!0&&U(m,ge.id,{skipped:!0})}},ge),{complete:H(m,ge.id)===Ue||xo>=1,started:H(m,ge.id)===yo||H(m,ge.id)===Ue,currentlyActive:f==null?void 0:f.some(Co=>Co.flowId==m&&Co.lastStepId===ge.id),blocked:J(m,ge.id),hidden:te(m,ge.id),handlePrimaryButtonClick:()=>{(!ge.completionCriteria&&(ge.autoMarkCompleted||ge.autoMarkCompleted===void 0)||ge.completionCriteria&&ge.autoMarkCompleted===!0)&&U(m,ge.id)},progress:xo})}).filter(ge=>ge.hidden!==!0)):[]}function ee(m){return m.replaceAll(/\${(.*?)}/g,(C,P)=>p[P]===void 0?"":String(p[P]).replace(/[\u00A0-\u9999<>\&]/g,function(W){return"&#"+W.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 q(m){var P;if(!K(m))return[];let C=K(m).data;return C?(C=ee(C),(P=JSON.parse(C))!=null?P:{}):[]}function se(m,C){d(P=>V(w({},P),{[m]:C}))}function Se(m){!A&&!G&&m&&JSON.stringify(p)!=JSON.stringify(w(w({},p),m))&&Object.keys(m).forEach(C=>{se(C,m[C])})}let ke=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:yo,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield z(m,C,W),b(W))}),[n,r,f]),Z=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:st,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield D(m,C,W),b(W))}),[n,r,f]),U=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:Ue,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield N(m,C,W),b(W))}),[n,r,f]),ie=Lt((m,C)=>L(this,null,function*(){if(!k()||xt(m)===De)return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:De,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};yield I(m),pe(P)&&b(P)}),[n,r,f]),Pe=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:Ot,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&b(P)}),[n,r,f]),je=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:de,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&(yield y(m),b(P))}),[n,r,f]),ve=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:Nt,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&(yield T(m),b(P))}),[n,r,f]);function pe(m){var C;if(f===void 0)return!1;if(f){let P=f.find(W=>W.flowId===m.flowSlug);if(m.actionType===st&&(!(P!=null&&P.stepStates[m.stepId])||P.stepStates[m.stepId].actionType===st))return!1;if(P&&((C=P.stepStates[m.stepId])==null?void 0:C.actionType)===m.actionType){if(m.actionType===Ue&&(!m.data||JSON.stringify(m.data)===JSON.stringify({})))return!1;let W=Object.keys(P.stepStates).sort((Be,Et)=>{let At=new Date(P.stepStates[Be].createdAt),It=new Date(P.stepStates[Et].createdAt);return At.getTime()-It.getTime()});if(P.stepStates[W[W.length-1]].actionType===m.actionType&&m.stepId===W[W.length-1])return!1}if(P&&P.flowState===de&&m.actionType===de)return!1}return!0}function H(m,C){let P=M(m,C);return A?null:P?P.actionType:st}function J(m,C){let P=M(m,C);return P?P.blocked:!1}function te(m,C){let P=M(m,C);return P?P.hidden:!1}function M(m,C){var W;if(A)return null;let P=f==null?void 0:f.find(Be=>Be.flowId===m);return!P||!P.stepStates[C]?null:(W=P.stepStates[C])!=null?W:null}function Q(m){var P,W;if(A||!f)return null;if(xt(m)===De)return(P=O(m)[0])!=null?P:null;let C=(W=f.find(Be=>Be.flowId===m))==null?void 0:W.lastStepId;return C?O(m).find(Be=>Be.id===C):null}function we(m){var W;let C=Q(m);if(!C)return 0;let P=(W=O(m).findIndex(Be=>Be.id===C.id))!=null?W:0;return H(m,C.id)===Ue&&P<O(m).length-1?P+1:P}function Ge(m){if(!m.completionCriteria)return;let C=hi(m.completionCriteria);if(C===null)return;let P=qe(C),W=nt(C);return W===0?void 0:P/W}function xt(m){let C=f==null?void 0:f.find(P=>P.flowId===m);return C?C.flowState:null}function qe(m){let C=O(m);return C.length===0?0:C.filter(W=>H(m,W.id)===Ue).length}function nt(m){return O(m).length}function Xe(m){let C=o.find(P=>P.slug===m);return C?(h&&h[m]&&(C.data=h[m]),Jt(C.data)):null}function vt(m){if(F)return!1;if(A||S)return!0;if(m!=null&&m.targetingLogic&&f){let C=f.find(P=>P.flowId===m.slug);if(C)return C.shouldTrigger===!1}return!!(m!=null&&m.targetingLogic&&n&&n.startsWith("guest_"))}function jt(m){let C=K(m);return(C==null?void 0:C.active)===!1?!1:!vt(K(m))}function Gt(){n&&E()}function Bt(){return o}return{getAllFlows:Bt,getFlow:K,getFlowData:Xe,isLoading:A||G,getStepStatus:H,getFlowSteps:O,getCurrentStepIndex:we,markStepStarted:ke,markStepCompleted:U,markFlowNotStarted:ie,markFlowStarted:Pe,markFlowCompleted:je,markFlowSkipped:ve,markStepNotStarted:Z,getFlowStatus:xt,getNumberOfStepsCompleted:qe,getNumberOfSteps:nt,targetingLogicShouldHideFlow:vt,setCustomVariable:se,updateCustomVariables:Se,customVariables:p,getStepOptionalProgress:Ge,getFlowMetadata:q,isStepBlocked:J,isStepHidden:te,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:u,isFlowAvailableToUser:jt,refresh:Gt}}import{useCallback as zo,useContext as Ta,useEffect as Fa}from"react";var Xt="guest_";function wo(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:n}=Ta(re),{config:r,apiUrl:l}=Ze(),{mutateUserFlowState:p}=_e(),d=qt(),{verifySDKInitiated:s}=Yt();function u(h){return`frigade-user-registered-${h}`}Fa(()=>{if(e&&!t){if(e.startsWith(Xt))return;let h=u(e);localStorage.getItem(h)||(d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify({foreignId:e})})),localStorage.setItem(h,"true"))}},[e,n,t]);let c=zo(h=>L(this,null,function*(){if(!s())return;let x={foreignId:e,properties:h};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(x)})),i(k=>w(w({},k),h)),p()}),[e,r,n,p]),g=zo((h,x)=>L(this,null,function*(){if(!s())return;let b={foreignId:e,events:[{event:h,properties:x}]};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(b)})),p()}),[e,r,p]),S=zo((h,x)=>L(this,null,function*(){if(s())if(x&&Object.keys(x).length>0){let k=u(h);localStorage.setItem(k,"true"),o(h);let b={foreignId:h,properties:x};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(b)})),i(v=>w(w({},v),x)),p()}else o(h)}),[r,n,p]),F=zo(h=>L(this,null,function*(){if(!s())return;let x=typeof window!="undefined"?localStorage.getItem($t):null;if(console.log("id",localStorage.getItem($t)),!x)return;let k={foreignId:h,linkGuestId:x};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(k)})),p()}),[r,n,p]);return{userId:e,setUserId:o,setUserIdWithProperties:S,addPropertiesToUser:c,trackEventForUser:g,linkExistingGuestSessionToUser:F}}import{v4 as Rp}from"uuid";import rt,{useEffect as yn,useState as Jp}from"react";import Ye,{useEffect as Pr,useState as Oa}from"react";import Go from"styled-components";import ka from"react";import Pa from"styled-components";var xi="fr-",To="cfr-";function a(e,t){let o=`${xi}${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+" "+To+e}return o}function B(e){if(!e.className||e.className.indexOf(To)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(xi)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function Ho(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function Ee(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${Ho(t)}: ${e.styleOverrides[t]};`).join(" "):""}function Te(...e){return e.filter(Boolean).join(" ")}function Fo(e){return e.charAt(0).toUpperCase()+e.slice(1)}var va=Pa.div`
|
|
2
|
+
var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnPropertyDescriptors;var Wo=Object.getOwnPropertySymbols;var di=Object.prototype.hasOwnProperty,ci=Object.prototype.propertyIsEnumerable;var pi=(e,t,o)=>t in e?na(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,w=(e,t)=>{for(var o in t||(t={}))di.call(t,o)&&pi(e,o,t[o]);if(Wo)for(var o of Wo(t))ci.call(t,o)&&pi(e,o,t[o]);return e},V=(e,t)=>sa(e,la(t));var mi=e=>typeof e=="symbol"?e:e+"",$e=(e,t)=>{var o={};for(var i in e)di.call(e,i)&&t.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&Wo)for(var i of Wo(e))t.indexOf(i)<0&&ci.call(e,i)&&(o[i]=e[i]);return o};var L=(e,t,o)=>new Promise((i,n)=>{var r=d=>{try{p(o.next(d))}catch(s){n(s)}},l=d=>{try{p(o.throw(d))}catch(s){n(s)}},p=d=>d.done?i(d.value):Promise.resolve(d.value).then(r,l);p((o=o.apply(e,t)).next())});import Oo,{createContext as Td,useEffect as lr,useState as qe}from"react";import{ThemeProvider as In}from"styled-components";import _t,{useContext as Zp,useEffect as ro,useState as Eo}from"react";import{useCallback as Lt,useContext as Sa,useEffect as ba}from"react";import Sr,{useMemo as fi}from"react";var ui="1.38.11";var st="NOT_STARTED_STEP",de="COMPLETED_FLOW",Nt="SKIPPED_FLOW",Ot="STARTED_FLOW",De="NOT_STARTED_FLOW",Ue="COMPLETED_STEP",yo="STARTED_STEP";function Re(){let{publicApiKey:e,userId:t,apiUrl:o}=Sr.useContext(re);return{config:fi(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":ui,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:fi(()=>`${o}/v1/public/`,[o])}}var aa="frigade-last-call-at-",pa="frigade-last-call-data-";function qt(){let{shouldGracefullyDegrade:e,readonly:t}=Sr.useContext(re);return(o,i)=>L(this,null,function*(){if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return Kt();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),Kt();let n=aa+o,r=pa+o;if(typeof window!="undefined"&&window.localStorage&&i&&i.body&&i.method==="POST"){let p=window.localStorage.getItem(n),d=window.localStorage.getItem(r);if(p&&d&&d==i.body){let s=new Date(p);if(new Date().getTime()-s.getTime()<1e3)return Kt()}typeof window!="undefined"&&(window.localStorage.setItem(n,new Date().toISOString()),window.localStorage.setItem(r,i.body))}let l;try{l=yield fetch(o,i)}catch(p){return Kt(p)}return l?l.ok?l:Kt(l.statusText):Kt()})}function Kt(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function Yt(){let{publicApiKey:e,shouldGracefullyDegrade:t}=Sr.useContext(re);function o(){return t?!1:e?!0:(console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider"),!1)}return{verifySDKInitiated:o}}import{useContext as xa,useState as gi}from"react";import{useContext as ca,useEffect as ma,useState as ua}from"react";import fa from"swr";import{useContext as da}from"react";function Ie(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:n}=da(re);function r(c,g=!1){var S;return(S=e[c])!=null?S:g}function l(c,g){t(S=>V(w({},S),{[c]:g}))}function p(c){t(g=>{let h=g,{[c]:S}=h,F=$e(h,[mi(c)]);return w({},F)})}function d(c){n.includes(c)||i(g=>[...g,c])}function s(c){return n.includes(c)}function u(c){return Object.entries(e).some(([g,S])=>S&&g!=c)||o}return{getOpenFlowState:r,setOpenFlowState:l,resetOpenFlowState:p,hasOpenModals:u,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:s}}import ga from"swr/immutable";import So from"core-js-pure/actual/structured-clone";function br(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ue(...e){let t=e.shift(),o=e.length===1?e[0]:ue(...e);if(!br(t)||!br(o))throw new Error("deepmerge can only merge Objects");let i=So(t);return Object.entries(o).forEach(([n,r])=>{br(r)?i[n]!==void 0?Object.assign(i,{[n]:ue(i[n],So(r))}):Object.assign(i,{[n]:So(r)}):Array.isArray(r)?i[n]!==void 0?Object.assign(i,{[n]:[...i[n],...So(r)]}):Object.assign(i,{[n]:So(r)}):Object.assign(i,{[n]:r})}),i}function Jt(e){try{return JSON.parse(e)}catch(t){return console.error("Failed to parse Frigade config.yml to JSON",t),null}}var ha="unknown";function _e(){let{config:e,apiUrl:t}=Re(),{publicApiKey:o,userId:i,organizationId:n,flows:r,setShouldGracefullyDegrade:l,readonly:p}=ca(re),{resetOpenFlowState:d}=Ie(),[s,u]=ua(!1),c={data:r.map(T=>({flowId:T.id,flowState:de,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},g=T=>fetch(T,e).then(I=>{if(I.ok)return I.json();throw new Error("Failed to fetch user flow states")}).catch(I=>(console.log(`Error fetching ${T}: ${I}. Will gracefully degrade and hide Frigade`),l(!0),c)),S=o&&r&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${n?`&foreignUserGroupId=${encodeURIComponent(n)}`:""}`:null,{data:F,isLoading:h,mutate:x,error:k}=p?ga(S,g):fa(S,g,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!1,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),b=F==null?void 0:F.data;ma(()=>{!s&&!h&&b&&u(!0)},[b,s,h]);function v(T){return L(this,null,function*(){if(b&&!p){let I=b.find(N=>N.flowId===T);I&&I.flowState!==de&&(I.flowState=de),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}function $(T){return L(this,null,function*(){if(b&&!p){let I=b.find(N=>N.flowId===T);I&&I.flowState!==Nt&&(I.flowState=Nt),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}function E(T,I,N){return L(this,null,function*(){var D,z;if(b){let j=b.find(_=>_.flowId===T);if(j){let _=r.find(q=>q.slug===T),G=Jt(_==null?void 0:_.data),K=(z=(D=G==null?void 0:G.steps)!=null?D:G==null?void 0:G.data)!=null?z:[],O=K.findIndex(q=>q.id===I),ee=K&&K.length>O+1?K[O+1]:null;ee&&(j.lastStepId=ee.id),j.stepStates[I]=N,j.flowState=Ot}p||(yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}))}})}function f(T,I,N){return L(this,null,function*(){if(b){let D=b.find(z=>z.flowId===T);D&&(D.lastStepId=I,D.stepStates[I]=N,D.flowState=Ot),p||(yield x(ue(F,{data:b}),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}))}})}function A(T){return L(this,null,function*(){if(b){let I=b.find(N=>N.flowId===T);I&&I.flowState!==De&&(I.flowState=De,I.lastStepId=ha,Object.keys(I.stepStates).forEach(N=>{I.stepStates[N].actionType=st,I.stepStates[N].createdAt=new Date().toISOString()}),yield x(ue(F,{data:b}),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1}),d(T))}})}function y(T,I,N){return L(this,null,function*(){if(b){let D=b.find(z=>z.flowId===T);D&&(D.stepStates[I]=N),yield x(Promise.resolve(ue(F,{data:b})),{optimisticData:ue(F,{data:b}),revalidate:!1,rollbackOnError:!1})}})}return{userFlowStatesData:b,isLoadingUserFlowStateData:!s,mutateUserFlowState:x,optimisticallyMarkFlowCompleted:v,optimisticallyMarkFlowSkipped:$,optimisticallyMarkFlowNotStarted:A,optimisticallyMarkStepCompleted:E,optimisticallyMarkStepNotStarted:y,optimisticallyMarkStepStarted:f,error:k}}function bo(){let{config:e,apiUrl:t}=Re(),{userFlowStatesData:o,mutateUserFlowState:i}=_e(),{failedFlowResponses:n,setFailedFlowResponses:r,flowResponses:l,setFlowResponses:p}=xa(re),[d,s]=gi(new Set),[u,c]=gi(new Set),g=qt();function S(x){let k=JSON.stringify(x);if(d.has(k))return null;d.add(k),s(d),u.add(x),c(u);let b=l==null?void 0:l.find(v=>v.flowSlug===x.flowSlug&&v.stepId===x.stepId&&v.actionType===x.actionType&&v.createdAt===x.createdAt);return g(`${t}flowResponses`,V(w({},e),{method:"POST",body:k})).then(v=>{v.status!==200&&v.status!==201?(console.log("Failed to send flow response for step "+x.stepId+". Will retry again later."),r([...n,x])):b||p($=>[...$!=null?$:[],x])})}function F(x){return L(this,null,function*(){x.foreignUserId&&(x.actionType===Ot||x.actionType===De?yield S(x):x.actionType===de?yield S(x):x.actionType===yo?yield S(x):x.actionType===Ue?yield S(x):x.actionType===Nt?yield S(x):x.actionType===st&&(yield S(x)))})}function h(){let x=[];return o==null||o.forEach(k=>{if(k&&k.stepStates&&Object.keys(k.stepStates).length!==0)for(let b in k.stepStates){let v=k.stepStates[b];x.push({foreignUserId:k.foreignUserId,flowSlug:k.flowId,stepId:v.stepId,actionType:v.actionType,data:{},createdAt:new Date(v.createdAt),blocked:v.blocked,hidden:v.hidden})}}),[...x,...l]}return{addResponse:F,setFlowResponses:p,getFlowResponses:h}}import wa from"swr";var Ca=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,hi=e=>{let t=Ca.exec(e);if(t===null)return null;let o=null;return t.forEach((i,n)=>{let r=ya(i,"'","");r.startsWith("flow_")&&(o=r)}),o},ya=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};var wr=(s=>(s.CHECKLIST="CHECKLIST",s.FORM="FORM",s.TOUR="TOUR",s.SUPPORT="SUPPORT",s.CUSTOM="CUSTOM",s.BANNER="BANNER",s.EMBEDDED_TIP="EMBEDDED_TIP",s.NPS_SURVEY="NPS_SURVEY",s.ANNOUNCEMENT="ANNOUNCEMENT",s))(wr||{});function ne(){let{config:e,apiUrl:t}=Re(),{flows:o,setFlows:i,userId:n,organizationId:r,publicApiKey:l,customVariables:p,setCustomVariables:d,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:u,setFlowResponses:c,setShouldGracefullyDegrade:g,shouldGracefullyDegrade:S,readonly:F,flowDataOverrides:h}=Sa(re),x={data:[]},{verifySDKInitiated:k}=Yt(),{addResponse:b,getFlowResponses:v}=bo(),$=m=>fetch(m,e).then(C=>C.ok?C.json():(console.log(`Error fetching ${m} (${C.status}): ${C.statusText}. Will gracefully degrade and hide Frigade`),g(!0),x)).catch(C=>(console.log(`Error fetching ${m}: ${C}. Will gracefully degrade and hide Frigade`),g(!0),x)),{mutateUserFlowState:E,userFlowStatesData:f,isLoadingUserFlowStateData:A,optimisticallyMarkFlowCompleted:y,optimisticallyMarkFlowSkipped:T,optimisticallyMarkFlowNotStarted:I,optimisticallyMarkStepCompleted:N,optimisticallyMarkStepNotStarted:D,optimisticallyMarkStepStarted:z}=_e(),{data:j,error:_,isLoading:G}=wa(l?`${t}flows${F?"?readonly=true":""}`:null,$,{keepPreviousData:!0});ba(()=>{if(_){console.error(_);return}j&&j.data&&i(j.data)},[j,_]);function K(m){if(G)return null;let C=o.find(P=>P.slug===m);return!C&&o.length>0&&!A&&!G?(console.log(`Flow with id ${m} not found`),null):(C&&h&&h[m]&&(C.data=h[m]),(C==null?void 0:C.active)===!1&&!F?null:C)}function O(m){var W,Be,Et,At,It;if(!K(m))return[];let C=(W=K(m))==null?void 0:W.data;return C?(C=ee(C),((It=(At=(Be=Jt(C))==null?void 0:Be.data)!=null?At:(Et=Jt(C))==null?void 0:Et.steps)!=null?It:[]).map(ge=>{let xo=Ge(ge);return V(w({handleSecondaryButtonClick:()=>{ge.skippable===!0&&U(m,ge.id,{skipped:!0})}},ge),{complete:H(m,ge.id)===Ue||xo>=1,started:H(m,ge.id)===yo||H(m,ge.id)===Ue,currentlyActive:f==null?void 0:f.some(Co=>Co.flowId==m&&Co.lastStepId===ge.id),blocked:J(m,ge.id),hidden:te(m,ge.id),handlePrimaryButtonClick:()=>{(!ge.completionCriteria&&(ge.autoMarkCompleted||ge.autoMarkCompleted===void 0)||ge.completionCriteria&&ge.autoMarkCompleted===!0)&&U(m,ge.id)},progress:xo})}).filter(ge=>ge.hidden!==!0)):[]}function ee(m){return m.replaceAll(/\${(.*?)}/g,(C,P)=>p[P]===void 0?"":String(p[P]).replace(/[\u00A0-\u9999<>\&]/g,function(W){return"&#"+W.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 q(m){var P;if(!K(m))return[];let C=K(m).data;return C?(C=ee(C),(P=JSON.parse(C))!=null?P:{}):[]}function se(m,C){d(P=>V(w({},P),{[m]:C}))}function Se(m){!A&&!G&&m&&JSON.stringify(p)!=JSON.stringify(w(w({},p),m))&&Object.keys(m).forEach(C=>{se(C,m[C])})}let ke=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:yo,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield z(m,C,W),b(W))}),[n,r,f]),Z=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:st,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield D(m,C,W),b(W))}),[n,r,f]),U=Lt((m,C,P)=>L(this,null,function*(){if(!k())return;let W={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:C,actionType:Ue,data:P!=null?P:{},createdAt:new Date,blocked:!1,hidden:!1};pe(W)&&(yield N(m,C,W),b(W))}),[n,r,f]),ie=Lt((m,C)=>L(this,null,function*(){if(!k()||xt(m)===De)return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:De,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};yield I(m),pe(P)&&b(P)}),[n,r,f]),Pe=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:Ot,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&b(P)}),[n,r,f]),je=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:de,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&(yield y(m),b(P))}),[n,r,f]),ve=Lt((m,C)=>L(this,null,function*(){if(!k())return;let P={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:m,stepId:"unknown",actionType:Nt,data:C!=null?C:{},createdAt:new Date,blocked:!1,hidden:!1};pe(P)&&(yield T(m),b(P))}),[n,r,f]);function pe(m){var C;if(f===void 0)return!1;if(f){let P=f.find(W=>W.flowId===m.flowSlug);if(m.actionType===st&&(!(P!=null&&P.stepStates[m.stepId])||P.stepStates[m.stepId].actionType===st))return!1;if(P&&((C=P.stepStates[m.stepId])==null?void 0:C.actionType)===m.actionType){if(m.actionType===Ue&&(!m.data||JSON.stringify(m.data)===JSON.stringify({})))return!1;let W=Object.keys(P.stepStates).sort((Be,Et)=>{let At=new Date(P.stepStates[Be].createdAt),It=new Date(P.stepStates[Et].createdAt);return At.getTime()-It.getTime()});if(P.stepStates[W[W.length-1]].actionType===m.actionType&&m.stepId===W[W.length-1])return!1}if(P&&P.flowState===de&&m.actionType===de)return!1}return!0}function H(m,C){let P=M(m,C);return A?null:P?P.actionType:st}function J(m,C){let P=M(m,C);return P?P.blocked:!1}function te(m,C){let P=M(m,C);return P?P.hidden:!1}function M(m,C){var W;if(A)return null;let P=f==null?void 0:f.find(Be=>Be.flowId===m);return!P||!P.stepStates[C]?null:(W=P.stepStates[C])!=null?W:null}function Q(m){var P,W;if(A||!f)return null;if(xt(m)===De)return(P=O(m)[0])!=null?P:null;let C=(W=f.find(Be=>Be.flowId===m))==null?void 0:W.lastStepId;return C?O(m).find(Be=>Be.id===C):null}function we(m){var W;let C=Q(m);if(!C)return 0;let P=(W=O(m).findIndex(Be=>Be.id===C.id))!=null?W:0;return H(m,C.id)===Ue&&P<O(m).length-1?P+1:P}function Ge(m){if(!m.completionCriteria)return;let C=hi(m.completionCriteria);if(C===null)return;let P=Ye(C),W=nt(C);return W===0?void 0:P/W}function xt(m){let C=f==null?void 0:f.find(P=>P.flowId===m);return C?C.flowState:null}function Ye(m){let C=O(m);return C.length===0?0:C.filter(W=>H(m,W.id)===Ue).length}function nt(m){return O(m).length}function Qe(m){let C=o.find(P=>P.slug===m);return C?(h&&h[m]&&(C.data=h[m]),Jt(C.data)):null}function vt(m){if(F)return!1;if(A||S)return!0;if(m!=null&&m.targetingLogic&&f){let C=f.find(P=>P.flowId===m.slug);if(C)return C.shouldTrigger===!1}return!!(m!=null&&m.targetingLogic&&n&&n.startsWith("guest_"))}function jt(m){let C=K(m);return(C==null?void 0:C.active)===!1?!1:!vt(K(m))}function Gt(){n&&E()}function Bt(){return o}return{getAllFlows:Bt,getFlow:K,getFlowData:Qe,isLoading:A||G,getStepStatus:H,getFlowSteps:O,getCurrentStepIndex:we,markStepStarted:ke,markStepCompleted:U,markFlowNotStarted:ie,markFlowStarted:Pe,markFlowCompleted:je,markFlowSkipped:ve,markStepNotStarted:Z,getFlowStatus:xt,getNumberOfStepsCompleted:Ye,getNumberOfSteps:nt,targetingLogicShouldHideFlow:vt,setCustomVariable:se,updateCustomVariables:Se,customVariables:p,getStepOptionalProgress:Ge,getFlowMetadata:q,isStepBlocked:J,isStepHidden:te,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:u,isFlowAvailableToUser:jt,refresh:Gt}}import{useCallback as zo,useContext as Ta,useEffect as Fa}from"react";var Xt="guest_";function wo(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:n}=Ta(re),{config:r,apiUrl:l}=Re(),{mutateUserFlowState:p}=_e(),d=qt(),{verifySDKInitiated:s}=Yt();function u(h){return`frigade-user-registered-${h}`}Fa(()=>{if(e&&!t){if(e.startsWith(Xt))return;let h=u(e);localStorage.getItem(h)||(d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify({foreignId:e})})),localStorage.setItem(h,"true"))}},[e,n,t]);let c=zo(h=>L(this,null,function*(){if(!s())return;let x={foreignId:e,properties:h};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(x)})),i(k=>w(w({},k),h)),p()}),[e,r,n,p]),g=zo((h,x)=>L(this,null,function*(){if(!s())return;let b={foreignId:e,events:[{event:h,properties:x}]};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(b)})),p()}),[e,r,p]),S=zo((h,x)=>L(this,null,function*(){if(s())if(x&&Object.keys(x).length>0){let k=u(h);localStorage.setItem(k,"true"),o(h);let b={foreignId:h,properties:x};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(b)})),i(v=>w(w({},v),x)),p()}else o(h)}),[r,n,p]),F=zo(h=>L(this,null,function*(){if(!s())return;let x=typeof window!="undefined"?localStorage.getItem($t):null;if(console.log("id",localStorage.getItem($t)),!x)return;let k={foreignId:h,linkGuestId:x};yield d(`${l}users`,V(w({},r),{method:"POST",body:JSON.stringify(k)})),p()}),[r,n,p]);return{userId:e,setUserId:o,setUserIdWithProperties:S,addPropertiesToUser:c,trackEventForUser:g,linkExistingGuestSessionToUser:F}}import{v4 as Rp}from"uuid";import rt,{useEffect as yn,useState as Jp}from"react";import Je,{useEffect as Pr,useState as Oa}from"react";import Go from"styled-components";import ka from"react";import Pa from"styled-components";var xi="fr-",To="cfr-";function a(e,t){let o=`${xi}${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+" "+To+e}return o}function B(e){if(!e.className||e.className.indexOf(To)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(xi)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function Ho(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function Ee(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${Ho(t)}: ${e.styleOverrides[t]};`).join(" "):""}function Te(...e){return e.filter(Boolean).join(" ")}function Fo(e){return e.charAt(0).toUpperCase()+e.slice(1)}var va=Pa.div`
|
|
3
3
|
display: flex;
|
|
4
4
|
justify-content: center;
|
|
5
5
|
position: fixed;
|
|
@@ -208,7 +208,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
208
208
|
::-webkit-scrollbar {
|
|
209
209
|
display: none;
|
|
210
210
|
}
|
|
211
|
-
`,
|
|
211
|
+
`,et=({onClose:e,visible:t,headerContent:o=null,style:i=null,children:n,appearance:r,dismissible:l=!0,showFrigadeBranding:p=!1})=>{let[d,s]=Oa("");return Pr(()=>{let u=getComputedStyle(document.body).getPropertyValue("overflow");s(u)},[]),Pr(()=>{let u=c=>{c.key==="Escape"&&e()};return document.addEventListener("keydown",u),()=>{document.removeEventListener("keydown",u)}},[e]),Pr(()=>{let u=document.body.style;return t?u.setProperty("overflow","hidden"):u.setProperty("overflow",d),()=>{u.setProperty("overflow",d)}},[t]),t?Je.createElement(La,null,Je.createElement(Ci,{appearance:r,onClose:()=>{l&&e()}}),Je.createElement($a,{appearance:r,className:a("modalContainer",r),styleOverrides:i},l&&Je.createElement(Da,{className:a("modalClose",r),onClick:()=>e(),appearance:r},Je.createElement(Ne,null)),o&&Je.createElement(Ma,null,o),Je.createElement(Ua,null,n),p&&Je.createElement(Bi,{appearance:r,className:a("poweredByFrigadeRibbon",r)},Je.createElement(jo,{appearance:r})))):Je.createElement(Je.Fragment,null)};import Ct,{useEffect as vr,useState as _a}from"react";import Ko from"styled-components";import{Portal as Wa}from"react-portal";function za(e){switch(e){case"top-left":return`
|
|
212
212
|
top: 0;
|
|
213
213
|
left: 0;
|
|
214
214
|
`;case"top-right":return`
|
|
@@ -320,7 +320,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
320
320
|
box-sizing: border-box;
|
|
321
321
|
margin-bottom: 10px;
|
|
322
322
|
resize: none;
|
|
323
|
-
`;function Or({formInput:e,customFormTypeProps:t,onSaveInputData:o,setFormValidationErrors:i,inputData:n}){let r=e,[l,p]=Ar((n==null?void 0:n.text)||""),[d,s]=Ar(!1),[u,c]=Ar(!1),g=Nr;Di(()=>{l===""&&!d&&(s(!0),S(""))},[]),Di(()=>{if(u){S(l);return}},[u]);function S(h){var k;if(p(h),o({text:h}),r.required===!0&&h.trim()===""){i([{id:r.id,message:`${(k=r.title)!=null?k:"Field"} is required`,hidden:!u}]);return}let x=Mi(h,r.validation);if(x&&(h.trim()!==""||r.required===!0)){i([{id:r.id,message:x,hidden:!u}]);return}i([])}r.multiline&&(g=Ya);function F(){var h;switch((h=r==null?void 0:r.validation)==null?void 0:h.type){case"email":return"email";case"number":return"number";case"password":return"password"}return null}return Xo.createElement(qa,null,Xo.createElement(yt,{title:r.title,required:r.required,appearance:t.appearance}),Xo.createElement(g,{className:a("inputComponent",t.appearance),value:l,onChange:h=>{S(h.target.value)},appearance:t.appearance,placeholder:r.placeholder,type:F(),onBlur:()=>{c(!0)}}),Xo.createElement(Qt,{title:r.subtitle,appearance:t.appearance}))}import
|
|
323
|
+
`;function Or({formInput:e,customFormTypeProps:t,onSaveInputData:o,setFormValidationErrors:i,inputData:n}){let r=e,[l,p]=Ar((n==null?void 0:n.text)||""),[d,s]=Ar(!1),[u,c]=Ar(!1),g=Nr;Di(()=>{l===""&&!d&&(s(!0),S(""))},[]),Di(()=>{if(u){S(l);return}},[u]);function S(h){var k;if(p(h),o({text:h}),r.required===!0&&h.trim()===""){i([{id:r.id,message:`${(k=r.title)!=null?k:"Field"} is required`,hidden:!u}]);return}let x=Mi(h,r.validation);if(x&&(h.trim()!==""||r.required===!0)){i([{id:r.id,message:x,hidden:!u}]);return}i([])}r.multiline&&(g=Ya);function F(){var h;switch((h=r==null?void 0:r.validation)==null?void 0:h.type){case"email":return"email";case"number":return"number";case"password":return"password"}return null}return Xo.createElement(qa,null,Xo.createElement(yt,{title:r.title,required:r.required,appearance:t.appearance}),Xo.createElement(g,{className:a("inputComponent",t.appearance),value:l,onChange:h=>{S(h.target.value)},appearance:t.appearance,placeholder:r.placeholder,type:F(),onBlur:()=>{c(!0)}}),Xo.createElement(Qt,{title:r.subtitle,appearance:t.appearance}))}import tt,{useEffect as Ui,useState as _i}from"react";import Wi from"styled-components";var Lr="",Ja=Wi.div`
|
|
324
324
|
display: flex;
|
|
325
325
|
flex-direction: column;
|
|
326
326
|
width: 100%;
|
|
@@ -347,7 +347,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
347
347
|
background-repeat: no-repeat;
|
|
348
348
|
background-size: 1.5em 1.5em;
|
|
349
349
|
-webkit-print-color-adjust: exact;
|
|
350
|
-
`;function zi({formInput:e,customFormTypeProps:t,onSaveInputData:o,inputData:i,setFormValidationErrors:n}){var u,c,g,S,F,h,x,k,b;let r=e,[l,p]=_i(!1),[d,s]=_i(!1);return Ui(()=>{var v,$,E,f;if(!((v=i==null?void 0:i.choice)!=null&&v[0])&&!l){if(p(!0),r.requireSelection){o({choice:[Lr]});return}if(r.defaultValue&&(($=r.props.options)!=null&&$.find(A=>A.id===r.defaultValue))){let A=(E=r.props.options)==null?void 0:E.find(y=>y.id===r.defaultValue);o({choice:[A.id]})}else o({choice:[((f=r.props.options)==null?void 0:f[0].id)||""]})}},[]),Ui(()=>{var v;d&&(r.requireSelection&&((v=i==null?void 0:i.choice)==null?void 0:v[0])===Lr?n([{message:"Please select an option",id:r.id}]):n([]))},[(u=i==null?void 0:i.choice)==null?void 0:u[0],d]),
|
|
350
|
+
`;function zi({formInput:e,customFormTypeProps:t,onSaveInputData:o,inputData:i,setFormValidationErrors:n}){var u,c,g,S,F,h,x,k,b;let r=e,[l,p]=_i(!1),[d,s]=_i(!1);return Ui(()=>{var v,$,E,f;if(!((v=i==null?void 0:i.choice)!=null&&v[0])&&!l){if(p(!0),r.requireSelection){o({choice:[Lr]});return}if(r.defaultValue&&(($=r.props.options)!=null&&$.find(A=>A.id===r.defaultValue))){let A=(E=r.props.options)==null?void 0:E.find(y=>y.id===r.defaultValue);o({choice:[A.id]})}else o({choice:[((f=r.props.options)==null?void 0:f[0].id)||""]})}},[]),Ui(()=>{var v;d&&(r.requireSelection&&((v=i==null?void 0:i.choice)==null?void 0:v[0])===Lr?n([{message:"Please select an option",id:r.id}]):n([]))},[(u=i==null?void 0:i.choice)==null?void 0:u[0],d]),tt.createElement(Ja,null,tt.createElement(yt,{title:r.title,required:!1,appearance:t.appearance}),tt.createElement(Xa,{value:(c=i==null?void 0:i.choice)==null?void 0:c[0],onChange:v=>{s(!0),o({choice:[v.target.value]})},placeholder:r.placeholder,appearance:t.appearance,className:a("multipleChoiceSelect",t.appearance)},r.requireSelection&&tt.createElement("option",{key:"null-value",value:Lr,disabled:!0},(g=r.placeholder)!=null?g:"Select an option"),(S=r.props.options)==null?void 0:S.map(v=>tt.createElement("option",{key:v.id,value:v.id},v.title))),((h=(F=r.props.options)==null?void 0:F.find(v=>{var $;return v.id===(($=i==null?void 0:i.choice)==null?void 0:$[0])}))==null?void 0:h.isOpenEnded)&&tt.createElement(tt.Fragment,null,tt.createElement(yt,{title:(b=(k=(x=r.props.options)==null?void 0:x.find(v=>{var $;return v.id===(($=i==null?void 0:i.choice)==null?void 0:$[0])}))==null?void 0:k.openEndedLabel)!=null?b:"Please specify",required:!1,appearance:t.appearance}),tt.createElement(Nr,{type:"text",placeholder:"Enter your answer here",onChange:v=>{o({choice:[v.target.value]})},appearance:t.appearance})),tt.createElement(Qt,{title:r.subtitle,appearance:t.appearance}))}import vo,{useEffect as $r,useState as Vi}from"react";import ji from"styled-components";import Po from"react";import ko from"react";var Hi=({color:e,percentage:t,size:o})=>{let i=o*.5-2,n=2*Math.PI*i,r=(1-t)*n;return ko.createElement("circle",{r:i,cx:o*.5,cy:o*.5,fill:"transparent",stroke:r!==n?e:"",strokeWidth:"3px",strokeDasharray:n,strokeDashoffset:t?r:0})},Qa=({fillColor:e,size:t,percentage:o,children:i,bgColor:n="#D9D9D9",className:r,style:l})=>ko.createElement("svg",{style:l,className:r,width:t,height:t,overflow:"visible"},ko.createElement("g",{transform:`rotate(-90 ${`${t*.5} ${t*.5}`})`},ko.createElement(Hi,{color:n,size:t}),ko.createElement(Hi,{color:e,percentage:Math.max(o,.1),size:t})),i),Zt=Qa;import Za from"styled-components";var Ra=({color:e="#FFFFFF"})=>Po.createElement("svg",{width:10,height:8,viewBox:"0 0 10 8",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Po.createElement("path",{d:"M1 4.34815L3.4618 7L3.4459 6.98287L9 1",stroke:e,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})),ep={width:"22px",height:"22px",borderRadius:"8px",display:"flex",justifyContent:"center",alignItems:"center"},tp={width:"22px",height:"22px",borderRadius:"40px",display:"flex",justifyContent:"center",alignItems:"center"},op={border:"1px solid #000000",color:"#FFFFFF"},rp={border:"1px solid #C5CBD3"},ip={color:"#FFFFFF"},np={border:"1px solid #C5CBD3"},sp=e=>e==="square"?ep:tp,lp=(e,t)=>e==="square"?t?op:rp:t?ip:np,ap=Za.div`
|
|
351
351
|
${e=>Ee(e)}
|
|
352
352
|
`,pt=({value:e,type:t="round",primaryColor:o="#000000",progress:i,appearance:n=at,style:r,className:l})=>{let p=sp(t),d=lp(t,e);return e===!0?p=V(w(w({},p),d),{backgroundColor:n.theme.colorTextSuccess,borderColor:t==="square"?o:"none"}):p=w(w({},p),d),e!==!0&&t==="round"&&i!==void 0&&i!==1?Po.createElement(Zt,{fillColor:o,percentage:i,size:22}):Po.createElement(ap,{styleOverrides:p,style:r,role:"checkbox",className:Te(a("checkIconContainer",n),a(e?"checkIconContainerChecked":"checkIconContainerUnchecked",n),e?"checkIconContainerChecked":"checkIconContainerUnchecked",l)},e&&Po.createElement(Ra,{color:"#FFFFFF"}))};var pp=ji.div`
|
|
353
353
|
display: flex;
|
|
@@ -615,7 +615,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
615
615
|
height: 100%;
|
|
616
616
|
min-height: 400px;
|
|
617
617
|
border-radius: ${e=>e.appearance.theme.borderRadius}px;
|
|
618
|
-
`;function
|
|
618
|
+
`;function ot({appearance:e,videoUri:t,autoplay:o=!1}){let i=Ip(),[n,r]=Np(o);if(t.includes("youtube")){let l=t.split("v=")[1],p=l.indexOf("&");return p!==-1&&(l=l.substring(0,p)),Ut.createElement(Mp,{width:"100%",height:"100%",src:`https://www.youtube.com/embed/${l}`,frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,appearance:e,className:a("youtubePlayer",e)})}if(t.includes("vimeo")){let l=t.split("vimeo.com/")[1],p=l.indexOf("&");return p!==-1&&(l=l.substring(0,p)),Ut.createElement(Dp,{width:"100%",height:"100%",src:`https://player.vimeo.com/video/${l}`,frameBorder:"0",allow:"autoplay; fullscreen; picture-in-picture",allowFullScreen:!0,appearance:e,className:a("vimeoPlayer",e)})}if(t.includes("wistia")){let l=t.split("wistia.com/medias/")[1],p=l.indexOf("&");return p!==-1&&(l=l.substring(0,p)),Ut.createElement(Up,{width:"100%",height:"100%",src:`https://fast.wistia.net/embed/iframe/${l}`,frameBorder:"0",allow:"autoplay; fullscreen; picture-in-picture",allowFullScreen:!0,appearance:e,className:a("wistiaPlayer",e)})}return Ut.createElement(Op,{className:a("videoPlayerWrapper",e),appearance:e},!n&&Ut.createElement(Lp,{onClick:()=>{r(!0),i.current.play()},appearance:e,className:a("playIconWrapper",e)},Ut.createElement(tr,null)),Ut.createElement($p,{appearance:e,controls:n,ref:i,play:n,src:t,autoPlay:o,muted:o}))}var Wp=or.div`
|
|
619
619
|
${e=>B(e)} {
|
|
620
620
|
display: flex;
|
|
621
621
|
flex-direction: column;
|
|
@@ -639,7 +639,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
639
639
|
max-height: 250px;
|
|
640
640
|
margin-bottom: 24px;
|
|
641
641
|
}
|
|
642
|
-
`;function an({stepData:e,appearance:t,setCanContinue:o}){return _p(()=>{o(!0)},[]),oo.createElement(Wp,{className:a("callToActionContainer",t)},oo.createElement(Hp,{className:a("callToActionTextContainer",t)},oo.createElement(Oe,{appearance:t,title:e.title,subtitle:e.subtitle})),e.imageUri&&oo.createElement(zp,{className:a("callToActionImage",t),src:e.imageUri}),!e.imageUri&&e.videoUri&&oo.createElement(Vp,{appearance:t,className:a("callToActionVideo",t)},oo.createElement(
|
|
642
|
+
`;function an({stepData:e,appearance:t,setCanContinue:o}){return _p(()=>{o(!0)},[]),oo.createElement(Wp,{className:a("callToActionContainer",t)},oo.createElement(Hp,{className:a("callToActionTextContainer",t)},oo.createElement(Oe,{appearance:t,title:e.title,subtitle:e.subtitle})),e.imageUri&&oo.createElement(zp,{className:a("callToActionImage",t),src:e.imageUri}),!e.imageUri&&e.videoUri&&oo.createElement(Vp,{appearance:t,className:a("callToActionVideo",t)},oo.createElement(ot,{appearance:t,videoUri:e.videoUri})))}import dt,{useEffect as zr,useState as Hr}from"react";import bt from"styled-components";var pn=bt.div`
|
|
643
643
|
width: auto;
|
|
644
644
|
display: flex;
|
|
645
645
|
flex-direction: column;
|
|
@@ -693,7 +693,7 @@ var na=Object.defineProperty,sa=Object.defineProperties;var la=Object.getOwnProp
|
|
|
693
693
|
display: flex;
|
|
694
694
|
align-self: center;
|
|
695
695
|
`;var xn=({stepData:e,setCanContinue:t,onSaveData:o,appearance:i})=>{let n=e.props,[r,l]=Hr([]),[p,d]=Hr(!1),[s,u]=Hr(e.id);return zr(()=>{r.length==0&&!p&&(d(!0),o({choice:[]}))},[p]),zr(()=>{s!==e.id&&(u(e.id),l([]))},[e]),zr(()=>{o({choice:r}),r.length>=n.minChoices?t(!0):t(!1)},[r]),dt.createElement(pn,{className:a("selectListContainer",i)},dt.createElement(dn,null,dt.createElement(cn,{className:a("selectListTitle",i)},e.title),dt.createElement(mn,{appearance:i,className:a("selectListSubtitle",i)},e.subtitle)),n.options.map((c,g)=>{let S=r.includes(c.id);return dt.createElement(un,{key:`select-item-${g}`,onClick:()=>{if(r.includes(c.id)){l(r.filter(F=>F!==c.id));return}r.length<n.maxChoices?l([...r,c.id]):r.length==1&&n.maxChoices==1&&l([c.id])},hideBottomBorder:g===n.options.length-1,className:a("selectListSelectItem",i)},dt.createElement(fn,{className:a("selectListItemImage",i)},c.imageUri&&dt.createElement(gn,{src:c.imageUri,alt:`select-icon-${g}`}),dt.createElement(hn,{appearance:i,className:a("selectListSelectItemText",i)},c.title)),dt.createElement(pt,{appearance:i,value:S,primaryColor:i.theme.colorPrimary}))}))};import We,{useEffect as Cn,useState as rr}from"react";var jp=({children:e,id:t,shouldWrap:o=!1})=>We.createElement(We.Fragment,null,o?We.createElement("div",{key:t,style:{width:"100%",height:"100%",position:"absolute",top:0,left:0,zIndex:1,overflowY:"auto"}},e):e),ir=({appearance:e,steps:t,selectedStep:o,customStepTypes:i,customVariables:n,onButtonClick:r,onStepCompletion:l,flowId:p,type:d,hideOnFlowCompletion:s,onComplete:u,setVisible:c,setShowModal:g,onDismiss:S,showPagination:F=!1,customFormElements:h,allowBackNavigation:x,validationHandler:k,onFormDataChange:b,showFooter:v,prefillData:$,updateUrlOnPageChange:E,repeatable:f})=>{var pe;let y=w(w({},{linkCollection:ln,multiInput:Ji,callToAction:an,selectList:xn}),i),{primaryCTAClickSideEffects:T,secondaryCTAClickSideEffects:I}=fe(),[N,D]=rr(!1),[z,j]=rr({}),[_,G]=rr(!1),[K,O]=rr(null),ee=(pe=t[o])!=null?pe:null,{markStepCompleted:q,markStepStarted:se,isLoading:Se,updateCustomVariables:ke,markFlowCompleted:Z}=ne();Cn(()=>{ke(n)},[n,Se]),Cn(()=>{b&&b(z,U(),t[o],o)},[z]);function U(){var J;return{data:(J=z[t[o].id])!=null?J:{},stepId:t[o].id,customVariables:n}}function ie(H,J,te){let M=o+1<t.length?t[o+1]:null;return l&&l(H,te,M,z,U()),r?r(H,o,J,M):!0}function Pe(H,J){j(te=>{let M={};return M[H.id]=J,w(w({},te),M)})}function je(H){return H.selectedStep.imageUri?We.createElement(tn,{image:H.selectedStep.imageUri,appearance:e,className:a("formContainerSidebarImage",e)}):null}let ve=v&&We.createElement(sn,{step:t[o],canContinue:N&&!_,formType:d,selectedStep:o,appearance:e,onPrimaryClick:()=>L(void 0,null,function*(){if(G(!0),k){let te=yield k(t[o],o,t[o+1],z,U());if(te!==!0){O(typeof te=="string"?te:null),G(!1);return}else O(null)}let H=w({},U());yield q(p,t[o].id,H),o+1<t.length&&!x&&(yield se(p,t[o+1].id));let J=ie(t[o],"primary",o);if(o+1>=t.length&&(u&&u(),S&&S(),s&&J&&(c&&c(!1),g(!1)),yield Z(p),f&&(yield se(p,t[0].id),typeof window!="undefined"&&window.localStorage&&Object.keys(window.localStorage).forEach(M=>{M.startsWith(Ur)&&window.localStorage.removeItem(M)}))),T(t[o]),G(!1),typeof window!="undefined"&&!x&&E&&o+1<t.length){let te=new URL(window.location.href);te.searchParams.set("p",t[o+1].id),window.history.pushState({},"",te.toString())}}),onSecondaryClick:()=>{ie(t[o],"secondary",o),I(t[o])},onBack:()=>L(void 0,null,function*(){o-1>=0&&(G(!0),yield se(p,t[o-1].id),G(!1))}),steps:t,allowBackNavigation:x,errorMessage:K,isSaving:_});return We.createElement(We.Fragment,null,We.createElement(Ri,{className:a("formContainer",e)},We.createElement(jp,{id:o,shouldWrap:d==="large-modal"},We.createElement(en,{key:ee.id,type:d,className:a("formContent",e)},t.map(H=>{var te;let J=y[(te=H.type)!=null?te:"multiInput"];return ee.id!==H.id?null:typeof J!="function"?J:We.createElement(J,{key:H.id,stepData:H,canContinue:N,setCanContinue:D,onSaveData:M=>{Pe(H,M)},appearance:e,customFormElements:h,flowId:p,prefillData:$})}),F&&We.createElement(er,{className:a("formPagination",e),appearance:e,stepCount:t.length,currentStep:o}),ve)),d=="large-modal"&&We.createElement(je,{selectedStep:t[o]})))};import Bo from"react";import{createGlobalStyle as Gp}from"styled-components";var Kp=Gp`
|
|
696
|
-
${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map(([i,n])=>typeof n=="object"?`${i} { ${Object.entries(n).map(([l,p])=>`${Ho(l)}: ${p};`).join(" ")} }`:`${Ho(i)}: ${n};`).join(" ")} }`).join(" ")}`;function ae({appearance:e}){if(!e||!e.styleOverrides)return Bo.createElement(Bo.Fragment,null);let t=Object.entries(e.styleOverrides).filter(([o,i])=>typeof i=="object");return t.length===0?Bo.createElement(Bo.Fragment,null):Bo.createElement(Kp,{inlineStyles:t})}import{useEffect as qp,useState as Yp}from"react";function ot(e,t=!0){let[o,i]=Yp(!1),{markStepStarted:n,isLoading:r,getFlowStatus:l,getFlowSteps:p,getCurrentStepIndex:d,targetingLogicShouldHideFlow:s,getFlow:u}=ne(),c=p(e);function g(){return L(this,null,function*(){!o&&!r&&l(e)===De&&s(u(e))===!1&&t&&c&&c.length>0&&(i(!0),yield n(e,c[d(e)].id))})}return qp(()=>{g()},[r,e,t]),{}}var Sn=({flowId:e,customStepTypes:t={},type:o="inline",visible:i,setVisible:n,customVariables:r,customFormElements:l,onComplete:p,appearance:d,hideOnFlowCompletion:s=!0,onStepCompletion:u,onButtonClick:c,dismissible:g=!0,endFlowOnDismiss:S=!1,modalPosition:F="center",repeatable:h=!1,onDismiss:x,showPagination:k=!1,allowBackNavigation:b=!1,validationHandler:v,showFrigadeBranding:$=!1,onFormDataChange:E,showFooter:f=!0,prefillData:A={},updateUrlOnPageChange:y=!1})=>{let{getFlow:T,getFlowSteps:I,isLoading:N,targetingLogicShouldHideFlow:D,getFlowStatus:z,getCurrentStepIndex:j,markFlowCompleted:_,markFlowNotStarted:G,markStepStarted:K}=ne(),O=j(e),{mergeAppearanceWithDefault:ee}=ce(),[q,se]=Jp(null),{setOpenFlowState:Se,getOpenFlowState:ke,hasOpenModals:Z}=Ie();ot(e,i);let U=I(e);d=ee(d);let[ie,Pe]=i!==void 0&&n!==void 0?[i,n]:[ke(e,!0),H=>Se(e,H)],je=typeof window!="undefined"?window.location.hash:null;if(yn(()=>{var H;if(U&&U.length>0&&b){let J=typeof window!="undefined"&&((H=window==null?void 0:window.location)!=null&&H.hash)?window.location.hash.replace("#",""):"";if(U&&(U==null?void 0:U.length)>0){let te=-1;if(J){let M=J;te=U.findIndex(Q=>Q.id===M),q===J&&(te=-1)}te!==-1&&(se(J),K(e,U[te].id))}}},[je]),yn(()=>{!N&&U&&U.length&&typeof window!="undefined"&&b&&(se(U[O].id),window.location.hash=U[O].id)},[N,O,U]),N)return null;let ve=T(e);if(!ve||D(ve)||!U||i!==void 0&&i===!1||z(e)===de&&s&&!h||(o=="modal"||o=="corner-modal")&&Z(e))return null;let pe=()=>{Pe(!1),x&&x(),S===!0&&_(e)};if(F=="center"&&o==="modal"||o==="large-modal"){let H={padding:"24px"};return o==="large-modal"?(H.width="85%",H.height="90%",H.maxHeight="800px",H.minHeight="500px",H.padding="0"):H.width="400px",rt.createElement(Re,{appearance:d,onClose:pe,visible:ie,style:H,dismissible:g,showFrigadeBranding:$},rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h}))}return o==="modal"&&F!=="center"?rt.createElement(qo,{appearance:d,onClose:pe,visible:ie,modalPosition:F},rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h})):rt.createElement(rt.Fragment,null,rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h}))},bn=Sn;import{useCallback as Vr,useContext as Xp,useEffect as Qp}from"react";function jr(){let{organizationId:e,userId:t,setOrganizationId:o}=Xp(re),{mutateUserFlowState:i}=_e(),{config:n,apiUrl:r}=Ze(),l=qt(),{verifySDKInitiated:p}=Yt();function d(g,S){return`frigade-user-group-registered-${g}-${S}`}Qp(()=>{if(t&&e){if(t.startsWith(Xt))return;let g=d(t,e);localStorage.getItem(g)||(l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify({foreignUserId:t,foreignUserGroupId:e})})),localStorage.setItem(g,"true"))}},[t,e]);let s=Vr(g=>L(this,null,function*(){if(!p())return;if(!e||!t){console.error("Cannot add properties to organization: Organization ID and User ID must both be set.",{organizationIdInternal:e,userId:t});return}let S={foreignUserId:t,foreignUserGroupId:e,properties:g};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(S)})),i()}),[e,t,n,i]),u=Vr((g,S)=>L(this,null,function*(){if(!p())return;if(!e||!t){console.error("Cannot track event for organization: Organization ID and User ID must both be set.",{organizationIdInternal:e,userId:t});return}let h={foreignUserId:t,foreignUserGroupId:e,events:[{event:g,properties:S}]};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(h)})),i()}),[e,t,n,i]),c=Vr((g,S)=>L(this,null,function*(){if(p())if(S){let F=d(t,g);localStorage.setItem(F,"true"),o(g);let h={foreignUserId:t,foreignUserGroupId:g,properties:S};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(h)})),i()}else o(g)}),[t,n,i]);return{organizationId:e,setOrganizationId:o,setOrganizationIdWithProperties:c,addPropertiesToOrganization:s,trackEventForOrganization:u}}var $t="frigade-xFrigade_guestUserId",Ao="frigade-xFrigade_userId",wn=({})=>{let{setFlowResponses:e}=bo(),{userFlowStatesData:t,isLoadingUserFlowStateData:o,mutateUserFlowState:i}=_e(),{userId:n,setUserId:r}=wo(),[l,p]=Eo(n),{getFlowStatus:d}=ne(),{flows:s,userProperties:u,setIsNewGuestUser:c,flowResponses:g}=Zp(re),[S,F]=Eo([]),[h,x]=Eo([]),{organizationId:k}=jr(),[b,v]=Eo(k),[$,E]=Eo(!1);ro(()=>{if(!o&&t)for(let T=0;T<t.length;T++){let I=t[T],N=s.find(D=>D.slug===(I==null?void 0:I.flowId));if(N&&I&&I.shouldTrigger===!0&&N.type=="FORM"&&N.triggerType==="AUTOMATIC"&&!h.includes(N.slug)){setTimeout(()=>{f(I.flowId)},500);break}}},[o,t]),ro(()=>{g.length>0&&i()},[g]),ro(()=>{$||(E(!0),i())},[o,E]);function f(T){let I=s.find(N=>N.slug===T);I&&I.triggerType==="AUTOMATIC"&&!h.includes(I.slug)&&(x([...h,I.slug]),F([I]))}function A(){if(!n){let T=localStorage.getItem(Ao);if(T){r(T);return}let I=localStorage.getItem($t);if(I){r(I);return}c(!0);let N=Xt+Rp();try{localStorage.setItem($t,N)}catch(D){console.log("Failed to save guest user id locally: Local storage unavailable",D)}r(D=>D||N)}}ro(()=>{try{if(s){let T=[];s.forEach(I=>{if(I.data){let N=I.data.match(/"imageUri":"(.*?)"/g);N&&N.forEach(D=>{let z=D.replace('"imageUri":"',"").replace('"',"");if(T.includes(z))return;let j=new Image;j.src=z,T.push(z)})}})}}catch(T){}},[s]),ro(()=>{if(n!==l&&(e([]),i()),p(n),n&&!n.startsWith(Xt))try{localStorage.setItem(Ao,n)}catch(T){console.log("Failed to save user id locally: Local storage available",T)}n===null&&setTimeout(()=>{n===null&&A()},50)},[n,s,u]),ro(()=>{k!=b&&(v(k),e([]),i())},[k,b,v]);function y(){return _t.createElement(_t.Fragment,null,S.map(T=>d(T.slug)!==De?null:_t.createElement("span",{key:T.slug},_t.createElement(bn,{flowId:T.slug,type:"modal",modalPosition:"center",endFlowOnDismiss:!0}))))}return _t.createElement(_t.Fragment,null,_t.createElement(y,null))};var 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 ed(e){if(!e)return;let t={};return Object.entries(e).forEach(([o,i])=>{if(Tn[o]){let n=Tn[o].split("."),r=t;n.forEach((l,p)=>{r[l]||(r[l]=p===n.length-1?i:{}),r=r[l]})}}),t}function td(e){if(!e)return;let t=ue({},e),o={};return Object.keys(t).forEach(i=>{let n=`.fr-${i}`;o[n]=t[i]}),o}function Fn(e){let{theme:t,styleOverrides:o}=e,i=ed(t),n=td(o);return{overrides:i,css:n}}import gd from"styled-components";import{compose as hd,variant as Pn}from"styled-system";import kn from"react";import od,{ThemeProvider as rd,useTheme as id}from"styled-components";import{border as nd,color as sd,compose as ld,get as ad,shadow as pd,space as dd,system as cd,typography as md}from"styled-system";var ud={width:{property:"width",scale:"sizes",transform:(e,t)=>ad(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},fd=od("div")(({css:e})=>e,ld(nd,sd,pd,dd,md,cd(ud))),Io=n=>{var r=n,{as:e,children:t,overrides:o}=r,i=$e(r,["as","children","overrides"]);let l=id(),p={border:"none",boxSizing:"border-box",m:0,p:0},d=()=>kn.createElement(fd,w(w({as:e},p),i),t);if(o!==void 0){let s=ue(l,o);return kn.createElement(rd,{theme:s},d())}return d()};var No={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"}},xd={sm:{paddingX:4,paddingY:1},md:{paddingX:6,paddingY:2}},vn=gd(Io)(()=>({whiteSpace:"nowrap"}),hd(Pn({scale:"components.Button",variants:"components.Button"}),Pn({prop:"size",variants:xd})));import Cd from"styled-components";import{variant as yd,system as Sd}from"styled-system";var nr={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 Bn=Cd(Io)(yd({scale:"components.Text",variants:"components.Text"}),Sd({fontWeight:{property:"fontWeight",scale:"fontWeights"}}));var En=4,An="px",bd=20,wd=Object.fromEntries(Array.from(Array(bd+1),(e,t)=>t===0?[.5,`${.5*En}${An}`]:[t,`${t*En}${An}`])),io={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"},sr={colors:V(w({},io),{neutral:{foreground:io.gray300},primary:{background:io.blue500,foreground:io.white,inverted:io.blue500},negative:{foreground:io.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:wd,components:{Button:No,Text:nr}};var Nn="https://api.frigade.com",re=Td({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:at,shouldGracefullyDegrade:!1,setShouldGracefullyDegrade:()=>{},apiUrl:Nn,readonly:!1,debug:!1});function Fd(){Object.keys(localStorage).forEach(e=>{e.startsWith("frigade-")&&localStorage.removeItem(e)})}var kd=({publicApiKey:e,userId:t,organizationId:o,config:i,children:n})=>{var ee,q,se,Se,ke,Z;let r=typeof window!="undefined"?localStorage.getItem($t):null,[l,p]=Ke(t||r),[d,s]=Ke(o||null),[u,c]=Ke([]),[g,S]=Ke([]),[F,h]=Ke([]),[x,k]=Ke({}),[b,v]=Ke({}),[$,E]=Ke([]),[f,A]=Ke({}),[y,T]=Ke(!1),[I,N]=Ke(!1),[D,z]=Ke(!G(e)),j=(U,ie)=>{if(ie==="_blank"){window.open(U,"_blank");return}setTimeout(()=>{window.location.href=U},50)},_={theme:w(w({},at.theme),(q=(ee=i==null?void 0:i.defaultAppearance)==null?void 0:ee.theme)!=null?q:{}),styleOverrides:w(w({},at.styleOverrides),(Se=(se=i==null?void 0:i.defaultAppearance)==null?void 0:se.styleOverrides)!=null?Se:{})};function G(U){return!!(U&&U.length>10&&U.substring(0,10)==="api_public")}lr(()=>{t&&p(t)},[t]),lr(()=>{l&&typeof window!="undefined"&&window.localStorage&&window.localStorage.getItem(Ao)&&window.localStorage.getItem(Ao)!==l&&Fd()},[l]),lr(()=>{o&&s(o)},[o]),lr(()=>{if(G(e))z(!1);else{console.error("Frigade SDK failed to initialize. API key provided is either missing or valid."),z(!0);return}},[e,z]);let K={publicApiKey:e,userId:l,setUserId:p,setFlows:c,flows:u,failedFlowResponses:g,setFailedFlowResponses:S,flowResponses:F,setFlowResponses:h,userProperties:x,setUserProperties:k,openFlowStates:b,setOpenFlowStates:v,completedFlowsToKeepOpenDuringSession:$,setCompletedFlowsToKeepOpenDuringSession:E,customVariables:f,setCustomVariables:A,isNewGuestUser:y,setIsNewGuestUser:T,hasActiveFullPageFlow:I,setHasActiveFullPageFlow:N,organizationId:d,setOrganizationId:s,navigate:i&&i.navigate?i.navigate:j,defaultAppearance:_,shouldGracefullyDegrade:D,setShouldGracefullyDegrade:z,apiUrl:i&&i.apiUrl?i.apiUrl:Nn,readonly:i&&i.readonly?i.readonly:!1,debug:i&&i.debug?i.debug:!1,flowDataOverrides:i&&i.__internal__?i.__internal__:void 0},{overrides:O}=Fn(_);return D?Oo.createElement(re.Provider,{value:K},Oo.createElement(In,{theme:ue(_.theme,sr,O!=null?O:{},(ke=i==null?void 0:i.theme)!=null?ke:{})},n)):Oo.createElement(re.Provider,{value:K},Oo.createElement(In,{theme:ue(_.theme,sr,O!=null?O:{},(Z=i==null?void 0:i.theme)!=null?Z:{})},n,Oo.createElement(wn,null)))};import xc from"react";import Ce,{useEffect as Rr,useState as nl}from"react";import Je,{useState as Vd}from"react";import wt from"styled-components";import dr from"react";import Wt from"react";import Ln from"styled-components";var On=Ln.span`
|
|
696
|
+
${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map(([i,n])=>typeof n=="object"?`${i} { ${Object.entries(n).map(([l,p])=>`${Ho(l)}: ${p};`).join(" ")} }`:`${Ho(i)}: ${n};`).join(" ")} }`).join(" ")}`;function ae({appearance:e}){if(!e||!e.styleOverrides)return Bo.createElement(Bo.Fragment,null);let t=Object.entries(e.styleOverrides).filter(([o,i])=>typeof i=="object");return t.length===0?Bo.createElement(Bo.Fragment,null):Bo.createElement(Kp,{inlineStyles:t})}import{useEffect as qp,useState as Yp}from"react";function Ke(e,t=!0){let[o,i]=Yp(!1),{markStepStarted:n,isLoading:r,getFlowStatus:l,getFlowSteps:p,getCurrentStepIndex:d,targetingLogicShouldHideFlow:s,getFlow:u}=ne(),c=p(e);function g(){return L(this,null,function*(){!o&&!r&&l(e)===De&&s(u(e))===!1&&t&&c&&c.length>0&&(i(!0),yield n(e,c[d(e)].id))})}return qp(()=>{g()},[r,e,t]),{}}var Sn=({flowId:e,customStepTypes:t={},type:o="inline",visible:i,setVisible:n,customVariables:r,customFormElements:l,onComplete:p,appearance:d,hideOnFlowCompletion:s=!0,onStepCompletion:u,onButtonClick:c,dismissible:g=!0,endFlowOnDismiss:S=!1,modalPosition:F="center",repeatable:h=!1,onDismiss:x,showPagination:k=!1,allowBackNavigation:b=!1,validationHandler:v,showFrigadeBranding:$=!1,onFormDataChange:E,showFooter:f=!0,prefillData:A={},updateUrlOnPageChange:y=!1})=>{let{getFlow:T,getFlowSteps:I,isLoading:N,targetingLogicShouldHideFlow:D,getFlowStatus:z,getCurrentStepIndex:j,markFlowCompleted:_,markFlowNotStarted:G,markStepStarted:K}=ne(),O=j(e),{mergeAppearanceWithDefault:ee}=ce(),[q,se]=Jp(null),{setOpenFlowState:Se,getOpenFlowState:ke,hasOpenModals:Z}=Ie();Ke(e,i);let U=I(e);d=ee(d);let[ie,Pe]=i!==void 0&&n!==void 0?[i,n]:[ke(e,!0),H=>Se(e,H)],je=typeof window!="undefined"?window.location.hash:null;if(yn(()=>{var H;if(U&&U.length>0&&b){let J=typeof window!="undefined"&&((H=window==null?void 0:window.location)!=null&&H.hash)?window.location.hash.replace("#",""):"";if(U&&(U==null?void 0:U.length)>0){let te=-1;if(J){let M=J;te=U.findIndex(Q=>Q.id===M),q===J&&(te=-1)}te!==-1&&(se(J),K(e,U[te].id))}}},[je]),yn(()=>{!N&&U&&U.length&&typeof window!="undefined"&&b&&(se(U[O].id),window.location.hash=U[O].id)},[N,O,U]),N)return null;let ve=T(e);if(!ve||D(ve)||!U||i!==void 0&&i===!1||z(e)===de&&s&&!h||(o=="modal"||o=="corner-modal")&&Z(e))return null;let pe=()=>{Pe(!1),x&&x(),S===!0&&_(e)};if(F=="center"&&o==="modal"||o==="large-modal"){let H={padding:"24px"};return o==="large-modal"?(H.width="85%",H.height="90%",H.maxHeight="800px",H.minHeight="500px",H.padding="0"):H.width="400px",rt.createElement(et,{appearance:d,onClose:pe,visible:ie,style:H,dismissible:g,showFrigadeBranding:$},rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h}))}return o==="modal"&&F!=="center"?rt.createElement(qo,{appearance:d,onClose:pe,visible:ie,modalPosition:F},rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h})):rt.createElement(rt.Fragment,null,rt.createElement(ae,{appearance:d}),rt.createElement(ir,{appearance:d,steps:U,selectedStep:O,customStepTypes:t,customVariables:r,onButtonClick:c,onStepCompletion:u,flowId:e,type:o,hideOnFlowCompletion:s,onComplete:p,setVisible:n,setShowModal:Pe,onDismiss:x,showPagination:k,customFormElements:l,allowBackNavigation:b,validationHandler:v,onFormDataChange:E,showFooter:f,prefillData:A,updateUrlOnPageChange:y,repeatable:h}))},bn=Sn;import{useCallback as Vr,useContext as Xp,useEffect as Qp}from"react";function jr(){let{organizationId:e,userId:t,setOrganizationId:o}=Xp(re),{mutateUserFlowState:i}=_e(),{config:n,apiUrl:r}=Re(),l=qt(),{verifySDKInitiated:p}=Yt();function d(g,S){return`frigade-user-group-registered-${g}-${S}`}Qp(()=>{if(t&&e){if(t.startsWith(Xt))return;let g=d(t,e);localStorage.getItem(g)||(l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify({foreignUserId:t,foreignUserGroupId:e})})),localStorage.setItem(g,"true"))}},[t,e]);let s=Vr(g=>L(this,null,function*(){if(!p())return;if(!e||!t){console.error("Cannot add properties to organization: Organization ID and User ID must both be set.",{organizationIdInternal:e,userId:t});return}let S={foreignUserId:t,foreignUserGroupId:e,properties:g};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(S)})),i()}),[e,t,n,i]),u=Vr((g,S)=>L(this,null,function*(){if(!p())return;if(!e||!t){console.error("Cannot track event for organization: Organization ID and User ID must both be set.",{organizationIdInternal:e,userId:t});return}let h={foreignUserId:t,foreignUserGroupId:e,events:[{event:g,properties:S}]};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(h)})),i()}),[e,t,n,i]),c=Vr((g,S)=>L(this,null,function*(){if(p())if(S){let F=d(t,g);localStorage.setItem(F,"true"),o(g);let h={foreignUserId:t,foreignUserGroupId:g,properties:S};yield l(`${r}userGroups`,V(w({},n),{method:"POST",body:JSON.stringify(h)})),i()}else o(g)}),[t,n,i]);return{organizationId:e,setOrganizationId:o,setOrganizationIdWithProperties:c,addPropertiesToOrganization:s,trackEventForOrganization:u}}var $t="frigade-xFrigade_guestUserId",Ao="frigade-xFrigade_userId",wn=({})=>{let{setFlowResponses:e}=bo(),{userFlowStatesData:t,isLoadingUserFlowStateData:o,mutateUserFlowState:i}=_e(),{userId:n,setUserId:r}=wo(),[l,p]=Eo(n),{getFlowStatus:d}=ne(),{flows:s,userProperties:u,setIsNewGuestUser:c,flowResponses:g}=Zp(re),[S,F]=Eo([]),[h,x]=Eo([]),{organizationId:k}=jr(),[b,v]=Eo(k),[$,E]=Eo(!1);ro(()=>{if(!o&&t)for(let T=0;T<t.length;T++){let I=t[T],N=s.find(D=>D.slug===(I==null?void 0:I.flowId));if(N&&I&&I.shouldTrigger===!0&&N.type=="FORM"&&N.triggerType==="AUTOMATIC"&&!h.includes(N.slug)){setTimeout(()=>{f(I.flowId)},500);break}}},[o,t]),ro(()=>{g.length>0&&i()},[g]),ro(()=>{$||(E(!0),i())},[o,E]);function f(T){let I=s.find(N=>N.slug===T);I&&I.triggerType==="AUTOMATIC"&&!h.includes(I.slug)&&(x([...h,I.slug]),F([I]))}function A(){if(!n){let T=localStorage.getItem(Ao);if(T){r(T);return}let I=localStorage.getItem($t);if(I){r(I);return}c(!0);let N=Xt+Rp();try{localStorage.setItem($t,N)}catch(D){console.log("Failed to save guest user id locally: Local storage unavailable",D)}r(D=>D||N)}}ro(()=>{try{if(s){let T=[];s.forEach(I=>{if(I.data){let N=I.data.match(/"imageUri":"(.*?)"/g);N&&N.forEach(D=>{let z=D.replace('"imageUri":"',"").replace('"',"");if(T.includes(z))return;let j=new Image;j.src=z,T.push(z)})}})}}catch(T){}},[s]),ro(()=>{if(n!==l&&(e([]),i()),p(n),n&&!n.startsWith(Xt))try{localStorage.setItem(Ao,n)}catch(T){console.log("Failed to save user id locally: Local storage available",T)}n===null&&setTimeout(()=>{n===null&&A()},50)},[n,s,u]),ro(()=>{k!=b&&(v(k),e([]),i())},[k,b,v]);function y(){return _t.createElement(_t.Fragment,null,S.map(T=>d(T.slug)!==De?null:_t.createElement("span",{key:T.slug},_t.createElement(bn,{flowId:T.slug,type:"modal",modalPosition:"center",endFlowOnDismiss:!0}))))}return _t.createElement(_t.Fragment,null,_t.createElement(y,null))};var 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 ed(e){if(!e)return;let t={};return Object.entries(e).forEach(([o,i])=>{if(Tn[o]){let n=Tn[o].split("."),r=t;n.forEach((l,p)=>{r[l]||(r[l]=p===n.length-1?i:{}),r=r[l]})}}),t}function td(e){if(!e)return;let t=ue({},e),o={};return Object.keys(t).forEach(i=>{let n=`.fr-${i}`;o[n]=t[i]}),o}function Fn(e){let{theme:t,styleOverrides:o}=e,i=ed(t),n=td(o);return{overrides:i,css:n}}import gd from"styled-components";import{compose as hd,variant as Pn}from"styled-system";import kn from"react";import od,{ThemeProvider as rd,useTheme as id}from"styled-components";import{border as nd,color as sd,compose as ld,get as ad,shadow as pd,space as dd,system as cd,typography as md}from"styled-system";var ud={width:{property:"width",scale:"sizes",transform:(e,t)=>ad(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},fd=od("div")(({css:e})=>e,ld(nd,sd,pd,dd,md,cd(ud))),Io=n=>{var r=n,{as:e,children:t,overrides:o}=r,i=$e(r,["as","children","overrides"]);let l=id(),p={border:"none",boxSizing:"border-box",m:0,p:0},d=()=>kn.createElement(fd,w(w({as:e},p),i),t);if(o!==void 0){let s=ue(l,o);return kn.createElement(rd,{theme:s},d())}return d()};var No={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"}},xd={sm:{paddingX:4,paddingY:1},md:{paddingX:6,paddingY:2}},vn=gd(Io)(()=>({whiteSpace:"nowrap"}),hd(Pn({scale:"components.Button",variants:"components.Button"}),Pn({prop:"size",variants:xd})));import Cd from"styled-components";import{variant as yd,system as Sd}from"styled-system";var nr={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 Bn=Cd(Io)(yd({scale:"components.Text",variants:"components.Text"}),Sd({fontWeight:{property:"fontWeight",scale:"fontWeights"}}));var En=4,An="px",bd=20,wd=Object.fromEntries(Array.from(Array(bd+1),(e,t)=>t===0?[.5,`${.5*En}${An}`]:[t,`${t*En}${An}`])),io={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"},sr={colors:V(w({},io),{neutral:{foreground:io.gray300},primary:{background:io.blue500,foreground:io.white,inverted:io.blue500},negative:{foreground:io.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:wd,components:{Button:No,Text:nr}};var Nn="https://api.frigade.com",re=Td({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:at,shouldGracefullyDegrade:!1,setShouldGracefullyDegrade:()=>{},apiUrl:Nn,readonly:!1,debug:!1});function Fd(){Object.keys(localStorage).forEach(e=>{e.startsWith("frigade-")&&localStorage.removeItem(e)})}var kd=({publicApiKey:e,userId:t,organizationId:o,config:i,children:n})=>{var ee,q,se,Se,ke,Z;let r=typeof window!="undefined"?localStorage.getItem($t):null,[l,p]=qe(t||r),[d,s]=qe(o||null),[u,c]=qe([]),[g,S]=qe([]),[F,h]=qe([]),[x,k]=qe({}),[b,v]=qe({}),[$,E]=qe([]),[f,A]=qe({}),[y,T]=qe(!1),[I,N]=qe(!1),[D,z]=qe(!G(e)),j=(U,ie)=>{if(ie==="_blank"){window.open(U,"_blank");return}setTimeout(()=>{window.location.href=U},50)},_={theme:w(w({},at.theme),(q=(ee=i==null?void 0:i.defaultAppearance)==null?void 0:ee.theme)!=null?q:{}),styleOverrides:w(w({},at.styleOverrides),(Se=(se=i==null?void 0:i.defaultAppearance)==null?void 0:se.styleOverrides)!=null?Se:{})};function G(U){return!!(U&&U.length>10&&U.substring(0,10)==="api_public")}lr(()=>{t&&p(t)},[t]),lr(()=>{l&&typeof window!="undefined"&&window.localStorage&&window.localStorage.getItem(Ao)&&window.localStorage.getItem(Ao)!==l&&Fd()},[l]),lr(()=>{o&&s(o)},[o]),lr(()=>{if(G(e))z(!1);else{console.error("Frigade SDK failed to initialize. API key provided is either missing or valid."),z(!0);return}},[e,z]);let K={publicApiKey:e,userId:l,setUserId:p,setFlows:c,flows:u,failedFlowResponses:g,setFailedFlowResponses:S,flowResponses:F,setFlowResponses:h,userProperties:x,setUserProperties:k,openFlowStates:b,setOpenFlowStates:v,completedFlowsToKeepOpenDuringSession:$,setCompletedFlowsToKeepOpenDuringSession:E,customVariables:f,setCustomVariables:A,isNewGuestUser:y,setIsNewGuestUser:T,hasActiveFullPageFlow:I,setHasActiveFullPageFlow:N,organizationId:d,setOrganizationId:s,navigate:i&&i.navigate?i.navigate:j,defaultAppearance:_,shouldGracefullyDegrade:D,setShouldGracefullyDegrade:z,apiUrl:i&&i.apiUrl?i.apiUrl:Nn,readonly:i&&i.readonly?i.readonly:!1,debug:i&&i.debug?i.debug:!1,flowDataOverrides:i&&i.__internal__?i.__internal__:void 0},{overrides:O}=Fn(_);return D?Oo.createElement(re.Provider,{value:K},Oo.createElement(In,{theme:ue(_.theme,sr,O!=null?O:{},(ke=i==null?void 0:i.theme)!=null?ke:{})},n)):Oo.createElement(re.Provider,{value:K},Oo.createElement(In,{theme:ue(_.theme,sr,O!=null?O:{},(Z=i==null?void 0:i.theme)!=null?Z:{})},n,Oo.createElement(wn,null)))};import xc from"react";import Ce,{useEffect as Rr,useState as nl}from"react";import Xe,{useState as Vd}from"react";import wt from"styled-components";import dr from"react";import Wt from"react";import Ln from"styled-components";var On=Ln.span`
|
|
697
697
|
font-weight: 600;
|
|
698
698
|
font-size: 14px;
|
|
699
699
|
font-style: normal;
|
|
@@ -792,7 +792,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
792
792
|
padding-right: ${e=>e.padding};
|
|
793
793
|
margin-bottom: ${e=>e.textLocation=="top"?"8px":"0px"};
|
|
794
794
|
${e=>Ee(e)}
|
|
795
|
-
`;var ze=({count:e,total:t,display:o="count",textLocation:i="left",style:n={},textStyle:r={},appearance:l})=>{var g;if(t===0)return zt.createElement(zt.Fragment,null);Object.keys(r).length===0&&r.constructor===Object&&(r={color:(g=l==null?void 0:l.theme)==null?void 0:g.colorText});let p=e===0?"10px":`${e/t*100}%`,d=o==="compact"?"8px":"10px",s=Math.round(e/t*100),u=o==="compact"?"10px":"14px",c;return o==="count"||o==="compact"?c=`${e}/${t}`:o==="percent"&&(c=`${s}% complete`),i==="top"&&(u="0px"),zt.createElement(vd,{className:a("progressBarContainer",l),textLocation:i,styleOverrides:n},zt.createElement(Ed,{className:a("progressBarStepText",l),styleOverrides:V(w({},r),{fontSize:o==="compact"?12:14,fontWeight:600}),appearance:l,padding:u,textLocation:i},c),zt.createElement(Bd,{textLocation:i,className:a("progressBar",l)},zt.createElement(Wn,{style:{zIndex:o=="compact"?1:5},fgWidth:p,barHeight:d,appearance:l,className:a("progressBarFill",l)}),zt.createElement(zn,{className:a("progressBarBackground",l),barHeight:d,appearance:l})))};import $o from"react";import Id from"styled-components";import ur from"react";import mr from"react";var no=({stepData:e,appearance:t})=>mr.createElement(mr.Fragment,null,mr.createElement(Mn,{appearance:t,className:a("checklistStepTitle",t),dangerouslySetInnerHTML:R(e.title)}),mr.createElement(Dn,{appearance:t,className:a("checklistStepSubtitle",t),dangerouslySetInnerHTML:R(e.subtitle)}));import Kr from"react";var so=({stepData:e,appearance:t})=>{let o=()=>{e.handlePrimaryButtonClick&&e.handlePrimaryButtonClick()},i=()=>{e.handleSecondaryButtonClick&&e.handleSecondaryButtonClick()};return Kr.createElement(Ro,{className:a("ctaContainer",t)},Kr.createElement(le,{appearance:t,title:e.primaryButtonTitle,onClick:o}),e.secondaryButtonTitle&&Kr.createElement(le,{appearance:t,secondary:!0,title:e.secondaryButtonTitle,onClick:i,style:{width:"auto",marginRight:"12px"}}))};var lo=({stepData:e,appearance:t})=>ur.createElement(ur.Fragment,null,ur.createElement(no,{stepData:e,appearance:t}),ur.createElement(so,{stepData:e,appearance:t}));import Ad from"react";function Hn(e){return Ad.createElement(
|
|
795
|
+
`;var ze=({count:e,total:t,display:o="count",textLocation:i="left",style:n={},textStyle:r={},appearance:l})=>{var g;if(t===0)return zt.createElement(zt.Fragment,null);Object.keys(r).length===0&&r.constructor===Object&&(r={color:(g=l==null?void 0:l.theme)==null?void 0:g.colorText});let p=e===0?"10px":`${e/t*100}%`,d=o==="compact"?"8px":"10px",s=Math.round(e/t*100),u=o==="compact"?"10px":"14px",c;return o==="count"||o==="compact"?c=`${e}/${t}`:o==="percent"&&(c=`${s}% complete`),i==="top"&&(u="0px"),zt.createElement(vd,{className:a("progressBarContainer",l),textLocation:i,styleOverrides:n},zt.createElement(Ed,{className:a("progressBarStepText",l),styleOverrides:V(w({},r),{fontSize:o==="compact"?12:14,fontWeight:600}),appearance:l,padding:u,textLocation:i},c),zt.createElement(Bd,{textLocation:i,className:a("progressBar",l)},zt.createElement(Wn,{style:{zIndex:o=="compact"?1:5},fgWidth:p,barHeight:d,appearance:l,className:a("progressBarFill",l)}),zt.createElement(zn,{className:a("progressBarBackground",l),barHeight:d,appearance:l})))};import $o from"react";import Id from"styled-components";import ur from"react";import mr from"react";var no=({stepData:e,appearance:t})=>mr.createElement(mr.Fragment,null,mr.createElement(Mn,{appearance:t,className:a("checklistStepTitle",t),dangerouslySetInnerHTML:R(e.title)}),mr.createElement(Dn,{appearance:t,className:a("checklistStepSubtitle",t),dangerouslySetInnerHTML:R(e.subtitle)}));import Kr from"react";var so=({stepData:e,appearance:t})=>{let o=()=>{e.handlePrimaryButtonClick&&e.handlePrimaryButtonClick()},i=()=>{e.handleSecondaryButtonClick&&e.handleSecondaryButtonClick()};return Kr.createElement(Ro,{className:a("ctaContainer",t)},Kr.createElement(le,{appearance:t,title:e.primaryButtonTitle,onClick:o}),e.secondaryButtonTitle&&Kr.createElement(le,{appearance:t,secondary:!0,title:e.secondaryButtonTitle,onClick:i,style:{width:"auto",marginRight:"12px"}}))};var lo=({stepData:e,appearance:t})=>ur.createElement(ur.Fragment,null,ur.createElement(no,{stepData:e,appearance:t}),ur.createElement(so,{stepData:e,appearance:t}));import Ad from"react";function Hn(e){return Ad.createElement(ot,{appearance:e.appearance,videoUri:e.videoUri,autoplay:e.autoplay})}var qr="default",Nd=Id.img`
|
|
796
796
|
border-radius: ${e=>{var t;return(t=e.appearance)==null?void 0:t.theme.borderRadius}}px;
|
|
797
797
|
width: 100%;
|
|
798
798
|
height: auto;
|
|
@@ -908,7 +908,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
908
908
|
`,Qd=wt.div`
|
|
909
909
|
flex: 2;
|
|
910
910
|
padding: 40px 40px 40px 0px;
|
|
911
|
-
`,Zd=({title:e,subtitle:t,steps:o=[],style:i={},selectedStep:n,setSelectedStep:r,className:l="",customStepTypes:p=new Map,appearance:d,type:s})=>{let{mergeAppearanceWithDefault:u}=ce();d=u(d);let c={[qr]:Vn,[Gn]:Kn,[Yn]:Jn},g=w(w({},c),p),[S,F]=Vd(0),h=n!=null?n:S,x=r!=null?r:F,k=o.filter(v=>v.complete===!0).length,b=()=>{var v;return!((v=o[h])!=null&&v.type)||!g[o[h].type]?g[qr]({stepData:o[h],appearance:d}):typeof g[o[h].type]!="function"?g[o[h].type]:g[o[h].type]({stepData:o[h],appearance:d})};return
|
|
911
|
+
`,Zd=({title:e,subtitle:t,steps:o=[],style:i={},selectedStep:n,setSelectedStep:r,className:l="",customStepTypes:p=new Map,appearance:d,type:s})=>{let{mergeAppearanceWithDefault:u}=ce();d=u(d);let c={[qr]:Vn,[Gn]:Kn,[Yn]:Jn},g=w(w({},c),p),[S,F]=Vd(0),h=n!=null?n:S,x=r!=null?r:F,k=o.filter(v=>v.complete===!0).length,b=()=>{var v;return!((v=o[h])!=null&&v.type)||!g[o[h].type]?g[qr]({stepData:o[h],appearance:d}):typeof g[o[h].type]!="function"?g[o[h].type]:g[o[h].type]({stepData:o[h],appearance:d})};return Xe.createElement(jd,{type:s,styleOverrides:i,className:l,appearance:d},Xe.createElement(Yd,{className:a("checklistHeaderContainer",d),appearance:d},Xe.createElement(qd,{className:a("checklistHeader",d),appearance:d},Xe.createElement(Gd,{className:a("checklistTitle",d),appearance:d},e),Xe.createElement(Kd,{className:a("checklistSubtitle",d),appearance:d},t),Xe.createElement(ze,{total:o.length,count:k,style:{marginTop:"24px",paddingRight:"40px"},appearance:d})),Xe.createElement(Jd,{className:a("checklistStepsContainer",d)},o.map((v,$)=>Xe.createElement(_n,{data:v,index:$,key:$,listLength:o.length,isSelected:$===h,primaryColor:d.theme.colorPrimary,style:{justifyContent:"space-between"},onClick:()=>{x($)},appearance:d})))),Xe.createElement(Xd,{appearance:d,className:a("checklistDivider",d)}),Xe.createElement(Qd,null,Xe.createElement(b,null)))},Yr=Zd;import Y,{useState as rc}from"react";import Xn from"react";import Rd from"styled-components";var ec=Rd.svg`
|
|
912
912
|
transition: 'transform 0.35s ease-in-out';
|
|
913
913
|
`,po=({style:e,className:t})=>Xn.createElement(ec,{width:"7",height:"10",viewBox:"0 0 9 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:e,className:t},Xn.createElement("path",{d:"M1 13L7.5 7L0.999999 1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}));import be from"styled-components";var Jr={boxShadow:"0px 6px 25px rgba(0, 0, 0, 0.06)",padding:"32px",maxHeight:"700px",msOverflowStyle:"none",scrollbarWidth:"none",paddingBottom:"12px",minHeight:"610px"},Qn=be.div`
|
|
914
914
|
max-height: 350px;
|
|
@@ -1123,7 +1123,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1123
1123
|
line-height: 14px;
|
|
1124
1124
|
font-weight: 400;
|
|
1125
1125
|
cursor: pointer;
|
|
1126
|
-
`;var oc=({steps:e,style:t,title:o,primaryColor:i,appearance:n,onButtonClick:r})=>{let{primaryCTAClickSideEffects:l}=fe();return ut.createElement(hs,{style:t,className:a("guideContainer",n)},ut.createElement(Cs,{className:a("guideTitle",n)},o),ut.createElement(xs,{className:a("guideItemContainer",n)},e.map((p,d)=>{var s;return ut.createElement(ys,{key:`guide-${(s=p.id)!=null?s:d}`,className:a("guideItem",n)},p.icon&&ut.createElement(Ss,{className:a("guideIcon",n)},ut.createElement(bs,null,p.icon)),ut.createElement(ws,{className:a("guideItemTitle",n),dangerouslySetInnerHTML:R(p.title)}),ut.createElement(Ts,{className:a("guideItemSubtitle",n),dangerouslySetInnerHTML:R(p.subtitle)}),ut.createElement(Fs,{className:a("guideItemLink",n),color:i,onClick:()=>{p.primaryButtonUri&&l(p),r&&r(p)}},p.primaryButtonTitle))})))},Mo=oc;var ic=({steps:e,title:t,subtitle:o,stepsTitle:i,visible:n,onClose:r,selectedStep:l,setSelectedStep:p,customStepTypes:d,appearance:s,guideData:u,guideTitle:c,onGuideButtonClick:g})=>{let S=({stepData:f,handleSecondaryCTAClick:A,handleCTAClick:y})=>f?Y.createElement(ss,{className:a("checklistStepContainer",s),"data-testid":"checklistStepContainer"},Y.createElement(ls,{appearance:s,className:a("checklistStepTitle",s),dangerouslySetInnerHTML:R(f.title)}),Y.createElement(as,{appearance:s,className:a("checklistStepSubtitle",s),dangerouslySetInnerHTML:R(f.subtitle)}),Y.createElement(ps,{className:a("checklistCTAContainer",s)},f.secondaryButtonTitle&&Y.createElement(le,{title:f.secondaryButtonTitle,onClick:A,appearance:s,secondary:!0}),Y.createElement(le,{title:f.primaryButtonTitle,onClick:y,appearance:s}))):Y.createElement(Y.Fragment,null),h=w(w({},{default:f=>{var I;if((I=e[b])!=null&&I.StepContent){let N=e[b].StepContent;return Y.createElement("div",null,N)}let A=e[b];return Y.createElement(S,{stepData:f,handleCTAClick:()=>{A.handlePrimaryButtonClick&&A.handlePrimaryButtonClick()},handleSecondaryCTAClick:()=>{A.handleSecondaryButtonClick&&A.handleSecondaryButtonClick()}})}}),d),[x,k]=rc(0),b=l!=null?l:x,v=p!=null?p:k,$=()=>{var f;return e?!((f=e[b])!=null&&f.type)||!h[e[b].type]?h.default(e[b]):typeof h[e[b].type]!="function"?h[e[b].type]:h[e[b].type]({stepData:e[b],primaryColor:s.theme.colorPrimary}):Y.createElement(Y.Fragment,null)},E=e.filter(f=>f.complete).length;return n?(s.theme.modalContainer||(s.theme.borderRadius&&(Jr.borderRadius=s.theme.borderRadius+"px"),s.theme.modalContainer=Jr),Y.createElement(
|
|
1126
|
+
`;var oc=({steps:e,style:t,title:o,primaryColor:i,appearance:n,onButtonClick:r})=>{let{primaryCTAClickSideEffects:l}=fe();return ut.createElement(hs,{style:t,className:a("guideContainer",n)},ut.createElement(Cs,{className:a("guideTitle",n)},o),ut.createElement(xs,{className:a("guideItemContainer",n)},e.map((p,d)=>{var s;return ut.createElement(ys,{key:`guide-${(s=p.id)!=null?s:d}`,className:a("guideItem",n)},p.icon&&ut.createElement(Ss,{className:a("guideIcon",n)},ut.createElement(bs,null,p.icon)),ut.createElement(ws,{className:a("guideItemTitle",n),dangerouslySetInnerHTML:R(p.title)}),ut.createElement(Ts,{className:a("guideItemSubtitle",n),dangerouslySetInnerHTML:R(p.subtitle)}),ut.createElement(Fs,{className:a("guideItemLink",n),color:i,onClick:()=>{p.primaryButtonUri&&l(p),r&&r(p)}},p.primaryButtonTitle))})))},Mo=oc;var ic=({steps:e,title:t,subtitle:o,stepsTitle:i,visible:n,onClose:r,selectedStep:l,setSelectedStep:p,customStepTypes:d,appearance:s,guideData:u,guideTitle:c,onGuideButtonClick:g})=>{let S=({stepData:f,handleSecondaryCTAClick:A,handleCTAClick:y})=>f?Y.createElement(ss,{className:a("checklistStepContainer",s),"data-testid":"checklistStepContainer"},Y.createElement(ls,{appearance:s,className:a("checklistStepTitle",s),dangerouslySetInnerHTML:R(f.title)}),Y.createElement(as,{appearance:s,className:a("checklistStepSubtitle",s),dangerouslySetInnerHTML:R(f.subtitle)}),Y.createElement(ps,{className:a("checklistCTAContainer",s)},f.secondaryButtonTitle&&Y.createElement(le,{title:f.secondaryButtonTitle,onClick:A,appearance:s,secondary:!0}),Y.createElement(le,{title:f.primaryButtonTitle,onClick:y,appearance:s}))):Y.createElement(Y.Fragment,null),h=w(w({},{default:f=>{var I;if((I=e[b])!=null&&I.StepContent){let N=e[b].StepContent;return Y.createElement("div",null,N)}let A=e[b];return Y.createElement(S,{stepData:f,handleCTAClick:()=>{A.handlePrimaryButtonClick&&A.handlePrimaryButtonClick()},handleSecondaryCTAClick:()=>{A.handleSecondaryButtonClick&&A.handleSecondaryButtonClick()}})}}),d),[x,k]=rc(0),b=l!=null?l:x,v=p!=null?p:k,$=()=>{var f;return e?!((f=e[b])!=null&&f.type)||!h[e[b].type]?h.default(e[b]):typeof h[e[b].type]!="function"?h[e[b].type]:h[e[b].type]({stepData:e[b],primaryColor:s.theme.colorPrimary}):Y.createElement(Y.Fragment,null)},E=e.filter(f=>f.complete).length;return n?(s.theme.modalContainer||(s.theme.borderRadius&&(Jr.borderRadius=s.theme.borderRadius+"px"),s.theme.modalContainer=Jr),Y.createElement(et,{onClose:r,visible:n,appearance:s},Y.createElement(fs,null,Y.createElement(Zn,null,Y.createElement(Rn,{appearance:s,className:a("checklistTitle",s)},t),Y.createElement(es,{appearance:s,className:a("checklistSubtitle",s)},o)),Y.createElement(Qn,null,e&&e.length>0&&Y.createElement(ts,{className:a("stepsContainer",s)},Y.createElement(os,null,Y.createElement("div",{style:{flex:3}},Y.createElement(rs,{className:a("stepsTitle",s)},i)),Y.createElement(us,null,Y.createElement(ze,{style:{width:"100%"},count:E,total:e.length,appearance:s}))),Y.createElement(is,null,Y.createElement(ns,{className:a("checklistStepListContainer",s),appearance:s},e.map((f,A)=>{var T;let y=b===A;return Y.createElement(ds,{selected:y,className:a(`checklistStepListItem${y?"Selected":""}`,s),key:`checklist-guide-step-${(T=f.id)!=null?T:A}`,disabled:f.blocked,onClick:()=>{f.blocked||v(A)},title:f.blocked?"Finish remaining steps to continue":void 0},y&&Y.createElement(pr,{className:a("checklistStepItemSelectedIndicator",s),layoutId:"checklist-step-selected",style:{backgroundColor:s.theme.colorPrimary,borderRadius:0,height:"100%",top:"0%",width:"2px"}}),Y.createElement(cs,{selected:y,className:a(`checklistStepListStepName${y?"Selected":""}`,s)},f.stepName),Y.createElement(ms,null,Y.createElement(pt,{value:f.complete,type:"round",primaryColor:s.theme.colorPrimary,progress:f.progress,appearance:s}),Y.createElement(gs,null,Y.createElement(po,{style:{marginLeft:"10px"},color:s.theme.colorBackgroundSecondary}))))})),Y.createElement($,null))),u&&u.length>0&&Y.createElement(Mo,{steps:u,title:c,primaryColor:s.theme.colorPrimary,style:{border:"none",boxShadow:"none"},appearance:s,onButtonClick:f=>(g&&g(f),!0)}))))):Y.createElement(Y.Fragment,null)},Xr=ic;import Me,{useEffect as nc,useState as sc}from"react";import Fe from"react";import ft from"styled-components";var ks=ft.div`
|
|
1127
1127
|
background-color: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.colorBackground}};
|
|
1128
1128
|
border: 1px solid;
|
|
1129
1129
|
border-color: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.colorBorder}};
|
|
@@ -1178,7 +1178,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1178
1178
|
flex-direction: row;
|
|
1179
1179
|
justify-content: flex-start;
|
|
1180
1180
|
align-items: center;
|
|
1181
|
-
`;var Os=({stepData:e,collapsed:t,onClick:o,onPrimaryButtonClick:i,onSecondaryButtonClick:n,appearance:r,customStepTypes:l})=>{var c,g;let p=t?{}:{transform:"rotate(90deg)"},d=t?{overflow:"hidden",maxHeight:"0px",transition:"max-height 0.35s ease-out"}:{overflow:"hidden",maxHeight:"1000px",transition:"max-height 0.7s ease-out"};function s(){var S,F;return Fe.createElement(Fe.Fragment,null,e.imageUri||e.videoUri?Fe.createElement(Ps,{className:a("stepMediaContainer",r)},e.imageUri?Fe.createElement(vs,{className:a("stepImage",r),src:e.imageUri}):null,e.videoUri?Fe.createElement(
|
|
1181
|
+
`;var Os=({stepData:e,collapsed:t,onClick:o,onPrimaryButtonClick:i,onSecondaryButtonClick:n,appearance:r,customStepTypes:l})=>{var c,g;let p=t?{}:{transform:"rotate(90deg)"},d=t?{overflow:"hidden",maxHeight:"0px",transition:"max-height 0.35s ease-out"}:{overflow:"hidden",maxHeight:"1000px",transition:"max-height 0.7s ease-out"};function s(){var S,F;return Fe.createElement(Fe.Fragment,null,e.imageUri||e.videoUri?Fe.createElement(Ps,{className:a("stepMediaContainer",r)},e.imageUri?Fe.createElement(vs,{className:a("stepImage",r),src:e.imageUri}):null,e.videoUri?Fe.createElement(ot,{appearance:r,videoUri:e.videoUri,autoplay:(S=e.props)==null?void 0:S.autoplayVideo}):null):null,Fe.createElement(Is,{className:a("stepSubtitle",r),appearance:r,dangerouslySetInnerHTML:R(e.subtitle)}),Fe.createElement(Ro,{className:a("checklistCTAContainer",r)},e.secondaryButtonTitle?Fe.createElement(le,{secondary:!0,title:e.secondaryButtonTitle,onClick:()=>n(),appearance:r}):null,Fe.createElement(le,{title:(F=e.primaryButtonTitle)!=null?F:"Continue",onClick:()=>i(),appearance:r})))}function u(){if(!l)return null;let S=l[e.type];return S?typeof S!="function"?S:S(e,r):null}return Fe.createElement(ks,{"data-testid":`step-${e.id}`,className:a("checklistStepContainer",r),appearance:r},Fe.createElement(Bs,{className:a("stepHeader",r),onClick:()=>o()},Fe.createElement(Ns,{className:a("stepHeaderContent",r)},Fe.createElement(ar,{value:e.complete,style:{width:"auto",borderTop:0},primaryColor:(c=r==null?void 0:r.theme)==null?void 0:c.colorPrimary,appearance:r}),Fe.createElement(Es,{appearance:r,className:a("stepTitle",r),dangerouslySetInnerHTML:R(e.title)})),Fe.createElement(As,{className:a("stepChevronContainer",r),appearance:r},Fe.createElement(po,{style:V(w({},p),{transition:"transform 0.2s ease-in-out"})}))),Fe.createElement("div",{key:e.id,style:w({},d),className:a("stepContent",r)},(g=u())!=null?g:s()))};import co from"styled-components";var A0=co.div`
|
|
1182
1182
|
background: #ffffff;
|
|
1183
1183
|
box-shadow: 0px 6px 25px rgba(0, 0, 0, 0.06);
|
|
1184
1184
|
border-radius: 6px;
|
|
@@ -1219,7 +1219,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1219
1219
|
padding: 24px;
|
|
1220
1220
|
border-radius: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.borderRadius}}px;
|
|
1221
1221
|
background-color: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.colorBackground}};
|
|
1222
|
-
`;var lc=({title:e,subtitle:t,steps:o,onClose:i,visible:n,autoExpandFirstIncompleteStep:r=!0,autoCollapse:l=!0,autoExpandNextStep:p=!0,setSelectedStep:d,appearance:s,type:u,className:c,customStepTypes:g,style:S,onButtonClick:F})=>{let h=o.filter(E=>E.complete).length,[x,k]=sc(Array(o.length).fill(!0));nc(()=>{let E=[...x];if(r){for(let f=0;f<o.length;f++)if(!o[f].complete){E[f]=!1;break}k(E)}},[]);let b=E=>{let f=[...x];if(l)for(let A=0;A<x.length;++A)A!=E&&f[E]&&(f[A]=!0);f[E]=!x[E],k(f)};if(!n&&u=="modal")return Me.createElement(Me.Fragment,null);let v=Me.createElement(Me.Fragment,null,Me.createElement(Ls,null,Me.createElement($s,{appearance:s,className:a("checklistTitle",s),dangerouslySetInnerHTML:R(e)}),Me.createElement(Ms,{appearance:s,className:a("checklistSubtitle",s),dangerouslySetInnerHTML:R(t)})),Me.createElement(ze,{display:"percent",count:h,total:o.length,style:{margin:"14px 0px 8px 0px"},appearance:s})),$=Me.createElement(Ds,{className:Te(a("checklistContainer",s),c)},o.map((E,f)=>{var y;let A=x[f];return Me.createElement(Os,{appearance:s,stepData:E,collapsed:A,key:`modal-checklist-${(y=E.id)!=null?y:f}`,onClick:()=>{b(f),d(f),F&&F(o[f],f,x[f]?"expand":"collapse")},onPrimaryButtonClick:()=>{b(f),p&&f<o.length-1&&d(f+1),E.handlePrimaryButtonClick&&E.handlePrimaryButtonClick()},onSecondaryButtonClick:()=>{E.handleSecondaryButtonClick&&E.handleSecondaryButtonClick()},customStepTypes:g})}));return u==="inline"?Me.createElement(Us,{appearance:s,className:Te(a("checklistInlineContainer",s),c),style:S},v,$):Me.createElement(Me.Fragment,null,Me.createElement(
|
|
1222
|
+
`;var lc=({title:e,subtitle:t,steps:o,onClose:i,visible:n,autoExpandFirstIncompleteStep:r=!0,autoCollapse:l=!0,autoExpandNextStep:p=!0,setSelectedStep:d,appearance:s,type:u,className:c,customStepTypes:g,style:S,onButtonClick:F})=>{let h=o.filter(E=>E.complete).length,[x,k]=sc(Array(o.length).fill(!0));nc(()=>{let E=[...x];if(r){for(let f=0;f<o.length;f++)if(!o[f].complete){E[f]=!1;break}k(E)}},[]);let b=E=>{let f=[...x];if(l)for(let A=0;A<x.length;++A)A!=E&&f[E]&&(f[A]=!0);f[E]=!x[E],k(f)};if(!n&&u=="modal")return Me.createElement(Me.Fragment,null);let v=Me.createElement(Me.Fragment,null,Me.createElement(Ls,null,Me.createElement($s,{appearance:s,className:a("checklistTitle",s),dangerouslySetInnerHTML:R(e)}),Me.createElement(Ms,{appearance:s,className:a("checklistSubtitle",s),dangerouslySetInnerHTML:R(t)})),Me.createElement(ze,{display:"percent",count:h,total:o.length,style:{margin:"14px 0px 8px 0px"},appearance:s})),$=Me.createElement(Ds,{className:Te(a("checklistContainer",s),c)},o.map((E,f)=>{var y;let A=x[f];return Me.createElement(Os,{appearance:s,stepData:E,collapsed:A,key:`modal-checklist-${(y=E.id)!=null?y:f}`,onClick:()=>{b(f),d(f),F&&F(o[f],f,x[f]?"expand":"collapse")},onPrimaryButtonClick:()=>{b(f),p&&f<o.length-1&&d(f+1),E.handlePrimaryButtonClick&&E.handlePrimaryButtonClick()},onSecondaryButtonClick:()=>{E.handleSecondaryButtonClick&&E.handleSecondaryButtonClick()},customStepTypes:g})}));return u==="inline"?Me.createElement(Us,{appearance:s,className:Te(a("checklistInlineContainer",s),c),style:S},v,$):Me.createElement(Me.Fragment,null,Me.createElement(et,{onClose:i,visible:n,appearance:s,style:{maxWidth:"600px"},headerContent:v},$))},Qr=lc;import he,{useEffect as Zr,useRef as gc,useState as Ht}from"react";import{useEffect as ac,useState as pc}from"react";var _s=()=>{let e={isSmall:"(max-width: 480px)",isMedium:"(min-width: 481px) AND (max-width: 1023px)",isLarge:"(min-width: 1025px)"},t=Object.fromEntries(Object.entries(e).map(([p])=>[p,!1])),[o,i]=pc(t),n=null,r=()=>{n!==null?clearTimeout(n):l(),n=setTimeout(()=>{l()},16)},l=()=>{let p=Object.fromEntries(Object.entries(e).map(([d,s])=>{if(!window)return[d,!1];let u=window.matchMedia(s);return u.addEventListener("change",r),[d,u.matches]}));i(p)};return ac(()=>{l()},[]),o};import mo from"react";import xe,{css as Ws,keyframes as zs}from"styled-components";var Hs=Ws`
|
|
1223
1223
|
border: 1px solid ${({theme:e})=>e.colorBorder};
|
|
1224
1224
|
`,dc=Ws`
|
|
1225
1225
|
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.06);
|
|
@@ -1361,7 +1361,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1361
1361
|
color: ${({theme:e})=>e.colorTextSecondary};
|
|
1362
1362
|
${e=>e.blocked||e.complete?"opacity: 0.4;":`
|
|
1363
1363
|
`}
|
|
1364
|
-
`;var ol=({stepData:e,style:t={},appearance:o})=>{let{mergeAppearanceWithDefault:i}=ce(),{primaryCTAClickSideEffects:n}=fe();o=i(o);let{imageUri:r=null,subtitle:l=null,title:p=null,complete:d=!1,blocked:s=!1}=e,u=e.primaryButtonTitle||e.secondaryButtonTitle,c=()=>{n(e)};return mo.createElement(Ys,{className:a("carouselCard",o),onClick:s?null:c,style:t,blocked:s,complete:d},r&&mo.createElement(Js,{className:a("carouselCardImage",o),src:r,alt:p,style:{opacity:d||s?.4:1}}),d&&mo.createElement(Qs,{className:a("carouselCompletedPill",o)},mo.createElement(tl,{style:{color:"#108E0B"}},"Complete")),p&&mo.createElement(el,{blocked:s,complete:d,className:a("carouselCardTitle",o),dangerouslySetInnerHTML:R(p)}),l&&mo.createElement(Tt.Quiet,{blocked:s,complete:d,className:a("carouselCardSubtitle",o),dangerouslySetInnerHTML:R(l)}))};var hc=()=>he.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},he.createElement("path",{d:"M14 6L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),he.createElement("path",{d:"M14 18L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),he.createElement("path",{d:"M4 12H20",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"})),rl=({side:e="left",show:t=!1,onClick:o=()=>{}})=>{let[i,n]=Ht(!1),[r,l]=Ht(!1);Zr(()=>{t===!0&&i===!1?n(!0):t===!1&&i===!0&&l(!0)},[t]);let p=()=>{n(!1),l(!1)},d=e=="left"?{top:0,bottom:0,left:-20,transform:"rotate(180deg)"}:{top:0,bottom:0,right:-20};return i?he.createElement(Gs,{style:d,reversed:r,onAnimationEnd:r?p:null},he.createElement(Ks,{onClick:()=>o(),style:{right:16,top:"calc(50% - 24px)"}},he.createElement(hc,null))):null},il=({flowId:e,appearance:t,customVariables:o,className:i})=>{let n=gc(null),[r,l]=Ht(!1),[p,d]=Ht(!1),[s,u]=Ht(null),[c,g]=Ht([]),[S,F]=Ht(0),{isSmall:h}=_s(),x=h?1:3,{getFlowMetadata:k,getFlowSteps:b,getNumberOfStepsCompleted:v,updateCustomVariables:$,isLoading:E}=ne();Zr(()=>{$(o)},[o,E]),Zr(()=>{if(E)return;let N=k(e),D=v(e),z=b(e);u(N),(N.data!==null||N.steps!==null)&&(g(z.sort((j,_)=>Number(j.complete)-Number(_.complete))),d(z.length>x),F(D))},[E]);let f=[];for(let N=0;N<c.length;N+=x)f.push(c.slice(N,N+x));let A=N=>{let D=N.target,z=D.scrollWidth-D.clientWidth,j=Math.ceil(D.scrollLeft);j>0&&r===!1&&l(!0),j===0&&r===!0&&l(!1),j<z&&p===!1&&d(!0),j===z&&p===!0&&d(!1)},y=(N=!0)=>{let D=N?1:-1;n.current!==null&&n.current.scrollBy({left:n.current.clientWidth*D,behavior:"smooth"})},T=null,I=N=>{T!==null?clearTimeout(T):A(N),T=setTimeout(()=>{A(N)},16)};return E?null:he.createElement(Xs,{className:Te(a("carouselContainer",t),i)},he.createElement("div",{style:{display:"flex",justifyContent:h?"center":"space-between",marginBottom:20,flexWrap:h?"wrap":"nowrap",gap:h?16:20}},he.createElement("div",null,he.createElement(Zs,{className:a("carouselTitle",t),dangerouslySetInnerHTML:R(s==null?void 0:s.title)}),he.createElement(Tt.Quiet,{className:a("carouselSubtitle",t),dangerouslySetInnerHTML:R(s==null?void 0:s.subtitle)})),he.createElement(Rs,{className:a("progressWrapper",t)},he.createElement(ze,{count:S,total:c.length,appearance:t}))),he.createElement("div",{style:{position:"relative"}},he.createElement(rl,{show:r,onClick:()=>y(!1)}),he.createElement(rl,{side:"right",show:p,onClick:y}),he.createElement(Vs,{ref:n,onScroll:I},f.map((N,D)=>he.createElement(js,{key:D,style:{flex:`0 0 calc(100% - ${c.length>x?36:0}px)`}},N.map((z,j)=>he.createElement(ol,{key:j,stepData:z,style:{flex:c.length>x?`0 1 calc(100% / ${x} - 16px * 2 / ${x})`:1},appearance:t})))))),he.createElement(ae,{appearance:t}))};var ei=$=>{var E=$,{flowId:e,title:t,subtitle:o,style:i,initialSelectedStep:n,className:r,type:l="inline",onDismiss:p,visible:d,customVariables:s,onStepCompletion:u,onButtonClick:c,appearance:g,hideOnFlowCompletion:S,setVisible:F,customStepTypes:h,checklistStyle:x="default",autoExpandFirstIncompleteStep:k,autoExpandNextStep:b}=E,v=$e(E,["flowId","title","subtitle","style","initialSelectedStep","className","type","onDismiss","visible","customVariables","onStepCompletion","onButtonClick","appearance","hideOnFlowCompletion","setVisible","customStepTypes","checklistStyle","autoExpandFirstIncompleteStep","autoExpandNextStep"]);let{getFlow:f,getFlowSteps:A,markStepCompleted:y,getStepStatus:T,getNumberOfStepsCompleted:I,isLoading:N,targetingLogicShouldHideFlow:D,updateCustomVariables:z,getFlowMetadata:j,isStepBlocked:_,getFlowStatus:G,hasActiveFullPageFlow:K,setHasActiveFullPageFlow:O,markStepStarted:ee,getCurrentStepIndex:q}=ne(),{primaryCTAClickSideEffects:se,secondaryCTAClickSideEffects:Se}=fe(),{getOpenFlowState:ke,setOpenFlowState:Z}=Ie(),[U,ie]=nl(n||0),[Pe,je]=nl(!1),ve=d===void 0?ke(e):d,pe=l==="modal",{mergeAppearanceWithDefault:H}=ce(),J=A(e),te=q(e);if(g=H(g),Rr(()=>{z(s)},[s,N]),Rr(()=>{d!==void 0&&(pe&&d===!0?O(!0):pe&&d===!1&&O(!1))},[d,F,K]),Rr(()=>{U!==te&&ie(te)},[te]),N)return null;let M=f(e);if(!M||D(M)||!J||S===!0&&G(e)===de)return null;let Q=j(e);if(Q!=null&&Q.title&&(t=Q.title),Q!=null&&Q.subtitle&&(o=Q.subtitle),!Pe&&n===void 0&&I(e)>0){let m=J.findIndex(C=>C.complete===!1);ie(m>-1?m:J.length-1),je(!0)}function we(){if(U+1>=J.length){pe&&Z(e,!1);return}_(e,J[U+1].id)||ie(U+1)}function Ge(m,C,P){let W=U+1<J.length?J[U+1]:null;c&&c(m,U,C,W)===!0&&pe&&
|
|
1364
|
+
`;var ol=({stepData:e,style:t={},appearance:o})=>{let{mergeAppearanceWithDefault:i}=ce(),{primaryCTAClickSideEffects:n}=fe();o=i(o);let{imageUri:r=null,subtitle:l=null,title:p=null,complete:d=!1,blocked:s=!1}=e,u=e.primaryButtonTitle||e.secondaryButtonTitle,c=()=>{n(e)};return mo.createElement(Ys,{className:a("carouselCard",o),onClick:s?null:c,style:t,blocked:s,complete:d},r&&mo.createElement(Js,{className:a("carouselCardImage",o),src:r,alt:p,style:{opacity:d||s?.4:1}}),d&&mo.createElement(Qs,{className:a("carouselCompletedPill",o)},mo.createElement(tl,{style:{color:"#108E0B"}},"Complete")),p&&mo.createElement(el,{blocked:s,complete:d,className:a("carouselCardTitle",o),dangerouslySetInnerHTML:R(p)}),l&&mo.createElement(Tt.Quiet,{blocked:s,complete:d,className:a("carouselCardSubtitle",o),dangerouslySetInnerHTML:R(l)}))};var hc=()=>he.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},he.createElement("path",{d:"M14 6L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),he.createElement("path",{d:"M14 18L20 12",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"}),he.createElement("path",{d:"M4 12H20",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round"})),rl=({side:e="left",show:t=!1,onClick:o=()=>{}})=>{let[i,n]=Ht(!1),[r,l]=Ht(!1);Zr(()=>{t===!0&&i===!1?n(!0):t===!1&&i===!0&&l(!0)},[t]);let p=()=>{n(!1),l(!1)},d=e=="left"?{top:0,bottom:0,left:-20,transform:"rotate(180deg)"}:{top:0,bottom:0,right:-20};return i?he.createElement(Gs,{style:d,reversed:r,onAnimationEnd:r?p:null},he.createElement(Ks,{onClick:()=>o(),style:{right:16,top:"calc(50% - 24px)"}},he.createElement(hc,null))):null},il=({flowId:e,appearance:t,customVariables:o,className:i})=>{let n=gc(null),[r,l]=Ht(!1),[p,d]=Ht(!1),[s,u]=Ht(null),[c,g]=Ht([]),[S,F]=Ht(0),{isSmall:h}=_s(),x=h?1:3,{getFlowMetadata:k,getFlowSteps:b,getNumberOfStepsCompleted:v,updateCustomVariables:$,isLoading:E}=ne();Zr(()=>{$(o)},[o,E]),Zr(()=>{if(E)return;let N=k(e),D=v(e),z=b(e);u(N),(N.data!==null||N.steps!==null)&&(g(z.sort((j,_)=>Number(j.complete)-Number(_.complete))),d(z.length>x),F(D))},[E]);let f=[];for(let N=0;N<c.length;N+=x)f.push(c.slice(N,N+x));let A=N=>{let D=N.target,z=D.scrollWidth-D.clientWidth,j=Math.ceil(D.scrollLeft);j>0&&r===!1&&l(!0),j===0&&r===!0&&l(!1),j<z&&p===!1&&d(!0),j===z&&p===!0&&d(!1)},y=(N=!0)=>{let D=N?1:-1;n.current!==null&&n.current.scrollBy({left:n.current.clientWidth*D,behavior:"smooth"})},T=null,I=N=>{T!==null?clearTimeout(T):A(N),T=setTimeout(()=>{A(N)},16)};return E?null:he.createElement(Xs,{className:Te(a("carouselContainer",t),i)},he.createElement("div",{style:{display:"flex",justifyContent:h?"center":"space-between",marginBottom:20,flexWrap:h?"wrap":"nowrap",gap:h?16:20}},he.createElement("div",null,he.createElement(Zs,{className:a("carouselTitle",t),dangerouslySetInnerHTML:R(s==null?void 0:s.title)}),he.createElement(Tt.Quiet,{className:a("carouselSubtitle",t),dangerouslySetInnerHTML:R(s==null?void 0:s.subtitle)})),he.createElement(Rs,{className:a("progressWrapper",t)},he.createElement(ze,{count:S,total:c.length,appearance:t}))),he.createElement("div",{style:{position:"relative"}},he.createElement(rl,{show:r,onClick:()=>y(!1)}),he.createElement(rl,{side:"right",show:p,onClick:y}),he.createElement(Vs,{ref:n,onScroll:I},f.map((N,D)=>he.createElement(js,{key:D,style:{flex:`0 0 calc(100% - ${c.length>x?36:0}px)`}},N.map((z,j)=>he.createElement(ol,{key:j,stepData:z,style:{flex:c.length>x?`0 1 calc(100% / ${x} - 16px * 2 / ${x})`:1},appearance:t})))))),he.createElement(ae,{appearance:t}))};var ei=$=>{var E=$,{flowId:e,title:t,subtitle:o,style:i,initialSelectedStep:n,className:r,type:l="inline",onDismiss:p,visible:d,customVariables:s,onStepCompletion:u,onButtonClick:c,appearance:g,hideOnFlowCompletion:S,setVisible:F,customStepTypes:h,checklistStyle:x="default",autoExpandFirstIncompleteStep:k,autoExpandNextStep:b}=E,v=$e(E,["flowId","title","subtitle","style","initialSelectedStep","className","type","onDismiss","visible","customVariables","onStepCompletion","onButtonClick","appearance","hideOnFlowCompletion","setVisible","customStepTypes","checklistStyle","autoExpandFirstIncompleteStep","autoExpandNextStep"]);let{getFlow:f,getFlowSteps:A,markStepCompleted:y,getStepStatus:T,getNumberOfStepsCompleted:I,isLoading:N,targetingLogicShouldHideFlow:D,updateCustomVariables:z,getFlowMetadata:j,isStepBlocked:_,getFlowStatus:G,hasActiveFullPageFlow:K,setHasActiveFullPageFlow:O,markStepStarted:ee,getCurrentStepIndex:q}=ne(),{primaryCTAClickSideEffects:se,secondaryCTAClickSideEffects:Se}=fe(),{getOpenFlowState:ke,setOpenFlowState:Z}=Ie(),[U,ie]=nl(n||0),[Pe,je]=nl(!1),ve=d===void 0?ke(e):d,pe=l==="modal",{mergeAppearanceWithDefault:H}=ce();Ke(e,d);let J=A(e),te=q(e);if(g=H(g),Rr(()=>{z(s)},[s,N]),Rr(()=>{d!==void 0&&(pe&&d===!0?O(!0):pe&&d===!1&&O(!1))},[d,F,K]),Rr(()=>{U!==te&&ie(te)},[te]),N)return null;let M=f(e);if(!M||D(M)||!J||S===!0&&G(e)===de)return null;let Q=j(e);if(Q!=null&&Q.title&&(t=Q.title),Q!=null&&Q.subtitle&&(o=Q.subtitle),!Pe&&n===void 0&&I(e)>0){let m=J.findIndex(C=>C.complete===!1);ie(m>-1?m:J.length-1),je(!0)}function we(){if(U+1>=J.length){pe&&Z(e,!1);return}_(e,J[U+1].id)||ie(U+1)}function Ge(m,C,P){let W=U+1<J.length?J[U+1]:null;c&&c(m,U,C,W)===!0&&pe&&Qe(),u&&u(m,P,W),!u&&!c&&(m.primaryButtonUri||m.secondaryButtonUri)&&pe&&Qe()}function xt(){return J.map((m,C)=>V(w({},m),{handleSecondaryButtonClick:()=>{we(),Se(m),m.skippable===!0&&y(e,m.id,{skipped:!0}),Ge(m,"secondary",C)},handlePrimaryButtonClick:()=>{(!m.completionCriteria&&(m.autoMarkCompleted||m.autoMarkCompleted===void 0)||m.completionCriteria&&m.autoMarkCompleted===!0)&&(y(e,m.id),we()),Ge(m,"primary",C),se(m),T(e,m.id)===Ue&&we()}}))}function Ye(){return Ce.createElement(ae,{appearance:g})}let nt={steps:xt(),title:t,subtitle:o,primaryColor:g.theme.colorPrimary,appearance:g,customStepTypes:h,type:l,className:r,autoExpandFirstIncompleteStep:k,autoExpandNextStep:b};function Qe(){Z(e,!1),p&&p(),F&&F(!1)}function vt(){return Ce.createElement(Ce.Fragment,null,Ce.createElement(Ye,null),Ce.createElement(il,{flowId:e,appearance:g,customVariables:s,className:r}))}function jt(){return Ce.createElement(Ce.Fragment,null,Ce.createElement(Ye,null),Ce.createElement(Qr,w({visible:ve,onClose:()=>{Qe()},selectedStep:U,setSelectedStep:ie,autoExpandNextStep:!0,appearance:g,onButtonClick:c},nt)))}function Gt(){var P;let m=v.guideFlowId,C;return m&&f(m)&&(C=A(m)),Ce.createElement(Ce.Fragment,null,Ce.createElement(Ye,null),Ce.createElement(Xr,w({visible:ve,stepsTitle:Q.stepsTitle?Q.stepsTitle:"Your quick start guide",onClose:()=>{Qe()},selectedStep:U,setSelectedStep:ie,guideData:C,guideTitle:(P=v.guideTitle)!=null?P:"Guide",appearance:g,title:t,subtitle:o,onGuideButtonClick:W=>{Ge(W,"link",0)},customStepTypes:h},nt)))}function Bt(){let m=Ce.createElement(Yr,w({flowId:e,style:i,selectedStep:U,setSelectedStep:ie,appearance:g,type:l},nt));return pe?Ce.createElement(et,{onClose:()=>{Qe()},visible:ve,appearance:g,style:{paddingTop:"0px",padding:"12px",paddingLeft:0}},Ce.createElement(Ye,null),m):Ce.createElement(Ce.Fragment,null,Ce.createElement(Ye,null),m)}switch(x){case"condensed":return jt();case"with-guide":return Gt();case"default":return Bt();case"carousel":return vt();default:return Bt()}};var Cc=e=>xc.createElement(ei,w({type:"inline"},e));import kt,{useEffect as yc}from"react";import it from"react";import gr from"styled-components";var sl=gr.div`
|
|
1365
1365
|
border: 1px solid ${e=>e.appearance.theme.colorBorder};
|
|
1366
1366
|
border-radius: ${e=>e.appearance.theme.borderRadius}px;
|
|
1367
1367
|
padding: 10px 12px 10px 12px;
|
|
@@ -1421,7 +1421,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1421
1421
|
justify-content: center;
|
|
1422
1422
|
margin-left: 16px;
|
|
1423
1423
|
min-width: 200px;
|
|
1424
|
-
`,
|
|
1424
|
+
`,ZS=Do.div`
|
|
1425
1425
|
display: flex;
|
|
1426
1426
|
justify-content: center;
|
|
1427
1427
|
align-items: flex-end;
|
|
@@ -1471,7 +1471,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1471
1471
|
`,Oc=Uo(bl)`
|
|
1472
1472
|
width: ${go+12}px;
|
|
1473
1473
|
height: ${go+12}px;
|
|
1474
|
-
`,Lc=({steps:e=[],onDismiss:t,onComplete:o=()=>{},tooltipPosition:i="auto",showHighlight:n=!0,primaryColor:r="#000000",offset:l={x:0,y:0},visible:p=!0,containerStyle:d={},selectedStep:s=0,customStepTypes:u,appearance:c,dismissible:g=!1,showHighlightOnly:S,showStepCount:F=!0,completedStepsCount:h=0,showFrigadeBranding:x=!1,cssPosition:k="absolute",onViewTooltip:b,className:v})=>{var xt,
|
|
1474
|
+
`,Lc=({steps:e=[],onDismiss:t,onComplete:o=()=>{},tooltipPosition:i="auto",showHighlight:n=!0,primaryColor:r="#000000",offset:l={x:0,y:0},visible:p=!0,containerStyle:d={},selectedStep:s=0,customStepTypes:u,appearance:c,dismissible:g=!1,showHighlightOnly:S,showStepCount:F=!0,completedStepsCount:h=0,showFrigadeBranding:x=!1,cssPosition:k="absolute",onViewTooltip:b,className:v})=>{var xt,Ye,nt,Qe,vt,jt,Gt,Bt,m,C,P,W,Be,Et,At,It,ge,xo,Co;let{logErrorIfDebugMode:$}=xl(),[E,f]=fo(),[A,y]=fo(new Date),T=Bc(null),[I,N]=fo(document.querySelector(e[s].selector)),D=hl(I,A),[z,j]=fo(),[_,G]=fo(!S),K=(Ye=(xt=e[s])==null?void 0:xt.props)!=null&&Ye.position?e[s].props.position:k,O=(vt=(Qe=(nt=e[s])==null?void 0:nt.props)==null?void 0:Qe.zIndex)!=null?vt:90,ee=(jt=E==null?void 0:E.width)!=null?jt:yl,q=(Gt=E==null?void 0:E.height)!=null?Gt:Sl,[se,Se]=fo(new Date().getTime());l=(C=(m=(Bt=e[s])==null?void 0:Bt.props)==null?void 0:m.offset)!=null?C:l;let ke=window.location.pathname.split("/").pop();Cl(()=>{T.current&&f({width:T.current.clientWidth,height:T.current.clientHeight})},[s,A,K]),uo(()=>{S||G(!0)},[s]),uo(()=>{p&&_&&b(s)},[_]);let Z=()=>{if(K==="static")return;let oe=document.querySelector(e[s].selector);if(!oe){j(void 0),N(null),$(`FrigadeTour: Could not find element with selector "${e[s].selector}" for step ${e[s].id}`);return}z&&z===JSON.stringify(oe==null?void 0:oe.getBoundingClientRect())||(N(oe),y(new Date),oe&&j(JSON.stringify(oe.getBoundingClientRect())))};if(uo(()=>{let oe=new MutationObserver(Z);return oe.observe(document.body,{subtree:!0,childList:!0}),()=>oe.disconnect()},[Z]),uo(()=>{let oe=new MutationObserver(Z);return oe.observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["style","class"]}),()=>oe.disconnect()},[Z]),uo(()=>{let oe=setInterval(()=>{Z()},10);return()=>clearInterval(oe)},[Z]),Cl(()=>{setTimeout(()=>{Z()},Ec),Z()},[s,ke]),uo(()=>{if(!p)return;let oe=Ze=>{Ze.key==="Escape"&&t()};return document.addEventListener("keydown",oe),()=>{document.removeEventListener("keydown",oe)}},[]),I===null||!p)return null;let U=i==="auto"?"right":i,ie=ti(D,U,ee,l,K),Pe=D.right+ee>(window.innerWidth||document.documentElement.clientWidth),je=D.bottom+Sl>(window.innerHeight||document.documentElement.clientHeight);Pe&&i==="auto"&&(ie=ti(D,"left",ee,l,K),U="left"),(W=(P=e[s])==null?void 0:P.props)!=null&&W.tooltipPosition&&((Et=(Be=e[s])==null?void 0:Be.props)==null?void 0:Et.tooltipPosition)!=="auto"&&(((It=(At=e[s])==null?void 0:At.props)==null?void 0:It.tooltipPosition)==="left"||((xo=(ge=e[s])==null?void 0:ge.props)==null?void 0:xo.tooltipPosition)==="right")&&(U=e[s].props.tooltipPosition);let ve=()=>{let oe=()=>{if(e[s].handlePrimaryButtonClick&&(e[s].handlePrimaryButtonClick(),G(!1),setTimeout(()=>{Z()},30)),h===e.length-1)return o()},Ze=()=>{e[s].handleSecondaryButtonClick&&(e[s].handleSecondaryButtonClick(),S&&!e[s].secondaryButtonUri&&G(!1))};return X.createElement(X.Fragment,null,F&&e.length>1&&X.createElement(ki,null,X.createElement(vi,{role:"status",className:a("tooltipStepCounter",c)},s+1," of ",e.length)),(e[s].primaryButtonTitle||e[s].secondaryButtonTitle)&&X.createElement(Pi,{showStepCount:F,className:a("tooltipCTAContainer",c)},e[s].secondaryButtonTitle&&X.createElement(le,{title:e[s].secondaryButtonTitle,appearance:c,onClick:Ze,size:"small",withMargin:!1,secondary:!0}),e[s].primaryButtonTitle&&X.createElement(le,{title:e[s].primaryButtonTitle,appearance:c,onClick:oe,autoFocus:!0,withMargin:!1,size:"small"})))},pe=()=>{var oe;return X.createElement(X.Fragment,null,g&&X.createElement(Si,{"data-testid":"tooltip-dismiss",onClick:()=>{t&&t()},className:a("tooltipClose",c),hasImage:!!e[s].imageUri||!!e[s].videoUri,"aria-label":"Close Tooltip",role:"button",tabIndex:0},X.createElement(Ne,null)),e[s].imageUri&&X.createElement(bi,{dismissible:g,appearance:c,role:"img","aria-label":e[s].title,src:e[s].imageUri,className:a("tooltipImageContainer",c)}),e[s].videoUri&&!e[s].imageUri&&X.createElement(wi,{dismissible:g,appearance:c,role:"video","aria-label":e[s].title,className:a("tooltipVideoContainer",c)},X.createElement(ot,{appearance:c,videoUri:e[s].videoUri,autoplay:(oe=e[s].props)==null?void 0:oe.autoplayVideo})),X.createElement(Fi,{className:a("tooltipContentContainer",c)},X.createElement(Oe,{appearance:c,title:e[s].title,subtitle:e[s].subtitle,size:"small",ariaPrefix:`Tooltip${e[s].id}`}),X.createElement(Ti,{className:a("tooltipFooter",c)},X.createElement(ve,null))))},J=w(w({},{default:oe=>{var Ze;if((Ze=e[s])!=null&&Ze.StepContent){let ia=e[s].StepContent;return X.createElement("div",null,ia)}return X.createElement(pe,null)}}),u),te=()=>{var oe;return e?!((oe=e[s])!=null&&oe.type)||!J[e[s].type]?J.default(e[s]):J[e[s].type]({stepData:e[s],primaryColor:r}):X.createElement(X.Fragment,null)};if(e[s].complete===!0||ie.x==0&&ie.y==0&&new Date().getTime()-se<100)return null;let M={top:(ie==null?void 0:ie.y)-go,left:(Co=U=="left"?D.x+l.x:(ie==null?void 0:ie.x)-go)!=null?Co:0,cursor:S?"pointer":"default",position:K},Q=()=>{let Ze=M.left+(U=="left"?-ee:24);return Math.min(Math.max(Ze,20),window.innerWidth-ee-20)},we=()=>{if(K==="fixed")return M.top;let oe=M.top+q,Ze=20;return oe>window.innerHeight-Ze?M.top+-q:M.top},Ge=()=>{S&&(y(new Date),G(!_))};return X.createElement(Nc,{className:v},X.createElement(Oc,{style:M,zIndex:O,className:a("tourHighlightContainer",c)},n&&e[s].showHighlight!==!1&&k!=="static"&&X.createElement(X.Fragment,null,X.createElement(Ic,{style:{position:K},onClick:Ge,primaryColor:c.theme.colorPrimary,className:a("tourHighlightInnerCircle",c)}),X.createElement(Ac,{style:{position:"absolute"},onClick:Ge,primaryColor:c.theme.colorPrimary,className:a("tourHighlightOuterCircle",c)}))),X.createElement(bl,{style:V(w({},M),{left:Q(),top:we()}),zIndex:O+1,className:a("tooltipContainerWrapper",c)},_&&X.createElement(X.Fragment,null,X.createElement(Vo,{ref:T,role:"dialog","aria-labelledby":`frigadeTooltip${e[s].id}Title`,"aria-describedby":`frigadeTooltip${e[s].id}Subtitle`,layoutId:"tooltip-container",tabIndex:0,"aria-label":"Tooltip",style:w({position:"relative",width:"max-content",right:0,top:k!=="static"?12:0},d),appearance:c,className:a("tooltipContainer",c),maxWidth:yl,zIndex:O+10},X.createElement(te,null)),x&&X.createElement(Ei,{className:a("poweredByFrigadeTooltipRibbon",c),appearance:c,zIndex:O+10},X.createElement(jo,{appearance:c})))))},_o=Lc;import{Portal as Dc}from"react-portal";var Uc=x=>{var k=x,{flowId:e,customVariables:t,appearance:o,onStepCompletion:i,onButtonClick:n,showTooltipsSimultaneously:r=!1,onDismiss:l,dismissible:p,tooltipPosition:d="auto",showHighlightOnly:s=!1,dismissBehavior:u="skip-flow",onComplete:c,skipIfNotFound:g=!1,cssPosition:S="absolute",className:F}=k,h=$e(k,["flowId","customVariables","appearance","onStepCompletion","onButtonClick","showTooltipsSimultaneously","onDismiss","dismissible","tooltipPosition","showHighlightOnly","dismissBehavior","onComplete","skipIfNotFound","cssPosition","className"]);let{getFlow:b,getFlowSteps:v,isLoading:$,targetingLogicShouldHideFlow:E,markStepCompleted:f,markStepStarted:A,markFlowCompleted:y,markFlowSkipped:T,updateCustomVariables:I,getCurrentStepIndex:N,getStepStatus:D,isStepBlocked:z,getFlowStatus:j,getNumberOfStepsCompleted:_}=ne(),{isLoadingUserFlowStateData:G}=_e(),{primaryCTAClickSideEffects:K,secondaryCTAClickSideEffects:O}=fe(),{hasOpenModals:ee}=Ie(),q=N(e),{openFlowStates:se}=$c(re),{mergeAppearanceWithDefault:Se}=ce();if(o=Se(o),Mc(()=>{I(t)},[t,$]),G)return null;let ke=b(e);if(!ke||E(ke)||j(e)==de||ee())return null;let Z=v(e);if(Object.keys(se).length>0){let M=Object.keys(se).find(Q=>se[Q]===!0);if(M!==void 0&&M!==e)return gt.createElement(gt.Fragment,null)}function U(M){return L(this,null,function*(){if(yield f(e,M.id),Z.map(Q=>D(e,Q.id)).every(Q=>Q===Ue)){yield y(e);return}!s&&q+1<Z.length&&!r&&z(e,Z[q+1].id)})}function ie(M,Q,we){let Ge=q+1<Z.length?Z[q+1]:null;n&&n(M,q,Q,Ge),i&&i(M,we,Ge)}function Pe(){return Z.map(M=>V(w({},M),{handleSecondaryButtonClick:()=>L(this,null,function*(){O(M),M.skippable===!0&&(yield f(e,M.id,{skipped:!0})),ie(M,"secondary",q)}),handlePrimaryButtonClick:()=>L(this,null,function*(){(!M.completionCriteria&&(M.autoMarkCompleted||M.autoMarkCompleted===void 0)||M.completionCriteria&&M.autoMarkCompleted===!0)&&(yield U(M)),ie(M,"primary",q),K(M)})}))}function je(M){return L(this,null,function*(){l&&l(),u==="skip-flow"?yield T(e):yield f(e,M.id)})}function ve(){c&&c()}function pe(M){return L(this,null,function*(){yield A(e,Z[M].id)})}let H=!document.querySelector(Z[q].selector);function J(){let M=Z.findIndex((Q,we)=>!!document.querySelector(Q.selector)&&we>=q);return Z.map((Q,we)=>r?gt.createElement(_o,w({key:Q.id,appearance:o,steps:Pe(),selectedStep:we,showTooltipsSimultaneously:r,dismissible:p,onDismiss:()=>je(Q),tooltipPosition:d,showHighlightOnly:s,completedStepsCount:_(e),onComplete:ve,cssPosition:S,onViewTooltip:pe,className:F},h)):g&&H&&we===M?gt.createElement(_o,w({key:Q.id,appearance:o,steps:Pe(),selectedStep:we,showTooltipsSimultaneously:r,dismissible:p,onDismiss:()=>je(Q),tooltipPosition:d,showHighlightOnly:s,completedStepsCount:_(e),onComplete:ve,cssPosition:S,onViewTooltip:pe,className:F},h)):we!=q?null:gt.createElement(_o,w({key:Q.id,appearance:o,steps:Pe(),selectedStep:we,showTooltipsSimultaneously:r,dismissible:p,onDismiss:()=>je(Q),tooltipPosition:d,showHighlightOnly:s,completedStepsCount:_(e),onComplete:ve,cssPosition:S,onViewTooltip:pe,className:F},h)))}function te(){return gt.createElement(gt.Fragment,null,gt.createElement(ae,{appearance:o}),J())}return S==="static"?te():gt.createElement(Dc,null,te())};import Le,{useEffect as _c,useRef as Wc,useState as zc}from"react";import{Portal as Hc}from"react-portal";import Vt from"styled-components";var wl=Vt.button`
|
|
1475
1475
|
${e=>B(e)} {
|
|
1476
1476
|
// Anything inside this block will be ignored if the user provides a custom class
|
|
1477
1477
|
|
|
@@ -1670,7 +1670,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1670
1670
|
height: 100%;
|
|
1671
1671
|
min-height: 200px;
|
|
1672
1672
|
border-radius: ${e=>e.appearance.theme.borderRadius}px;
|
|
1673
|
-
`;function Cr({stepData:e,appearance:t,classPrefix:o=""}){var i;return e.videoUri?jl.createElement(
|
|
1673
|
+
`;function Cr({stepData:e,appearance:t,classPrefix:o=""}){var i;return e.videoUri?jl.createElement(ot,{appearance:t,videoUri:e.videoUri,autoplay:(i=e.props)==null?void 0:i.autoplayVideo}):e.imageUri?jl.createElement(Gc,{className:a(`${o}image`,t),appearance:t,src:e.imageUri}):null}var qc=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:n,className:r,style:l,dismissible:p,onClick:d})=>{let{getFlow:s,markFlowCompleted:u,markFlowSkipped:c,markStepCompleted:g,isLoading:S,targetingLogicShouldHideFlow:F,updateCustomVariables:h,getFlowSteps:x,getFlowStatus:k,getCurrentStepIndex:b}=ne(),{primaryCTAClickSideEffects:v,secondaryCTAClickSideEffects:$}=fe(),{mergeAppearanceWithDefault:E}=ce();if(Ke(e),n=E(n),Kc(()=>{h(o)},[o,S]),S)return null;let f=s(e);if(!f||F(f)||k(e)===de)return null;let y=x(e)[b(e)];return Ve.createElement(Ve.Fragment,null,Ve.createElement(ae,{appearance:n}),Ve.createElement(Ol,{appearance:n,className:Te(a("embeddedTipContainer",n),r),style:l,onClick:d},(p===!0||y.dismissible)&&Ve.createElement(Ml,{onClick:()=>L(void 0,null,function*(){yield c(e),t&&t()}),className:a("embeddedTipDismissButton",n)},Ve.createElement(Ne,null)),(y.imageUri||y.videoUri)&&Ve.createElement(xr,{className:a("embeddedTipMediaContainer",n)},Ve.createElement(Cr,{appearance:n,stepData:y})),Ve.createElement(Ll,null,Ve.createElement(Oe,{size:"small",appearance:n,title:y.title,subtitle:y.subtitle})),(y.primaryButtonTitle||y.secondaryButtonTitle)&&Ve.createElement($l,{className:a("embeddedTipCallToActionContainer",n)},y.primaryButtonTitle&&Ve.createElement(le,{classPrefix:"embeddedTip",title:y.primaryButtonTitle,appearance:n,withMargin:!1,size:"medium",type:"inline",onClick:()=>L(void 0,null,function*(){y.handlePrimaryButtonClick(),v(y),!(i&&i(y,b(e),"primary")===!1)&&(yield g(e,y.id),yield u(e))})}),y.secondaryButtonTitle&&Ve.createElement(le,{classPrefix:"embeddedTip",title:y.secondaryButtonTitle,appearance:n,withMargin:!1,size:"medium",type:"inline",onClick:()=>L(void 0,null,function*(){y.handleSecondaryButtonClick(),$(y),i&&i(y,b(e),"secondary")}),secondary:!0}))))};import Ae,{useEffect as Yc}from"react";import ho from"styled-components";var Gl=ho.div`
|
|
1674
1674
|
// use the :not annotation
|
|
1675
1675
|
${e=>B(e)} {
|
|
1676
1676
|
display: flex;
|
|
@@ -1712,7 +1712,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1712
1712
|
justify-content: ${e=>e.type==="square"?"flex-end":"center"};
|
|
1713
1713
|
align-items: flex-end;
|
|
1714
1714
|
margin-left: ${e=>e.type==="square"?"0px":"16px"};
|
|
1715
|
-
`;import ii from"react";var Jl=({style:e,className:t})=>ii.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"46",height:"46",fill:"none",viewBox:"0 0 46 46",style:e,className:t},ii.createElement("circle",{cx:"23",cy:"23",r:"23",fill:"#E6F1FF"}),ii.createElement("path",{stroke:"#0171F8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5",d:"M32 18.5l-2.25-1.313M32 18.5v2.25m0-2.25l-2.25 1.313M14 18.5l2.25-1.313M14 18.5l2.25 1.313M14 18.5v2.25m9 3l2.25-1.313M23 23.75l-2.25-1.313M23 23.75V26m0 6.75l2.25-1.313M23 32.75V30.5m0 2.25l-2.25-1.313m0-16.875L23 13.25l2.25 1.313M32 25.25v2.25l-2.25 1.313m-13.5 0L14 27.5v-2.25"}));var Jc=({flowId:e,title:t,subtitle:o,onDismiss:i,customVariables:n,onButtonClick:r,appearance:l,type:p="full-width",icon:d,onClick:s})=>{let{getFlow:u,markFlowCompleted:c,markFlowSkipped:g,isLoading:S,targetingLogicShouldHideFlow:F,updateCustomVariables:h,getFlowMetadata:x,getFlowStatus:k,getFlowSteps:b,getCurrentStepIndex:v}=ne(),{primaryCTAClickSideEffects:$}=fe(),{mergeAppearanceWithDefault:E}=ce();if(
|
|
1715
|
+
`;import ii from"react";var Jl=({style:e,className:t})=>ii.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"46",height:"46",fill:"none",viewBox:"0 0 46 46",style:e,className:t},ii.createElement("circle",{cx:"23",cy:"23",r:"23",fill:"#E6F1FF"}),ii.createElement("path",{stroke:"#0171F8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5",d:"M32 18.5l-2.25-1.313M32 18.5v2.25m0-2.25l-2.25 1.313M14 18.5l2.25-1.313M14 18.5l2.25 1.313M14 18.5v2.25m9 3l2.25-1.313M23 23.75l-2.25-1.313M23 23.75V26m0 6.75l2.25-1.313M23 32.75V30.5m0 2.25l-2.25-1.313m0-16.875L23 13.25l2.25 1.313M32 25.25v2.25l-2.25 1.313m-13.5 0L14 27.5v-2.25"}));var Jc=({flowId:e,title:t,subtitle:o,onDismiss:i,customVariables:n,onButtonClick:r,appearance:l,type:p="full-width",icon:d,onClick:s})=>{let{getFlow:u,markFlowCompleted:c,markFlowSkipped:g,isLoading:S,targetingLogicShouldHideFlow:F,updateCustomVariables:h,getFlowMetadata:x,getFlowStatus:k,getFlowSteps:b,getCurrentStepIndex:v}=ne(),{primaryCTAClickSideEffects:$}=fe(),{mergeAppearanceWithDefault:E}=ce();if(Ke(e),l=E(l),Yc(()=>{h(n)},[n,S]),S)return null;let f=u(e);if(!f||F(f)||k(e)===de)return null;let A=b(e),y=A.length>0?A[v(e)]:x(e);return y!=null&&y.title&&(t=y.title),y!=null&&y.subtitle&&(o=y.subtitle),Ae.createElement(Ae.Fragment,null,Ae.createElement(ae,{appearance:l}),Ae.createElement(Gl,{type:p,appearance:l,className:a("bannerContainer",l),onClick:s},p!="square"&&Ae.createElement(Kl,{className:a("bannerIconContainer",l)},d||Ae.createElement(Jl,null)),p==="square"&&y.dismissible&&Ae.createElement(ri,{type:p,className:a("bannerDismissButtonContainer",l)},Ae.createElement(oi,{type:p,onClick:()=>L(void 0,null,function*(){yield g(e),i&&i()}),className:a("bannerDismissButton",l)},Ae.createElement(Ne,null))),Ae.createElement(ql,{type:p},Ae.createElement(Oe,{appearance:l,title:t,subtitle:o,classPrefix:"banner"})),(y==null?void 0:y.primaryButtonTitle)&&Ae.createElement(Yl,{type:p,className:a("bannerCallToActionContainer",l)},Ae.createElement(le,{title:y==null?void 0:y.primaryButtonTitle,appearance:l,onClick:()=>{$(y),r&&r(y,0,"primary")},classPrefix:"banner"})),p!=="square"&&y.dismissible&&Ae.createElement(ri,{type:p,className:a("bannerDismissButtonContainer",l)},Ae.createElement(oi,{type:p,onClick:()=>L(void 0,null,function*(){yield g(e),i&&i()}),className:a("bannerDismissButton",l)},Ae.createElement(Ne,null)))))};import me,{useEffect as Xc}from"react";import{Portal as Qc}from"react-portal";import ht from"styled-components";var Xl=ht.div`
|
|
1716
1716
|
display: flex;
|
|
1717
1717
|
flex-direction: column;
|
|
1718
1718
|
width: 100%;
|
|
@@ -1775,7 +1775,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1775
1775
|
display: flex;
|
|
1776
1776
|
flex-direction: column;
|
|
1777
1777
|
flex: 1;
|
|
1778
|
-
`,
|
|
1778
|
+
`,Aw=ht.div`
|
|
1779
1779
|
display: flex;
|
|
1780
1780
|
flex-direction: column;
|
|
1781
1781
|
justify-content: center;
|
|
@@ -1805,5 +1805,5 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${To}${t}.${To}${t} { ${Object.entries(o).map
|
|
|
1805
1805
|
opacity: 0.8;
|
|
1806
1806
|
}
|
|
1807
1807
|
}
|
|
1808
|
-
`;var Zc=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:n,className:r,style:l,type:p="modal"})=>{let{getFlow:d,markFlowCompleted:s,markFlowSkipped:u,markStepCompleted:c,getNumberOfStepsCompleted:g,isLoading:S,targetingLogicShouldHideFlow:F,updateCustomVariables:h,getFlowSteps:x,getFlowStatus:k,getFlowMetadata:b}=ne(),{primaryCTAClickSideEffects:v}=fe(),{mergeAppearanceWithDefault:$}=ce(),[E,f]=me.useState(null),[A,y]=me.useState(""),T=b(e),{hasOpenModals:I,setKeepCompletedFlowOpenDuringSession:N,shouldKeepCompletedFlowOpenDuringSession:D}=Ie();if(
|
|
1808
|
+
`;var Zc=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:n,className:r,style:l,type:p="modal"})=>{let{getFlow:d,markFlowCompleted:s,markFlowSkipped:u,markStepCompleted:c,getNumberOfStepsCompleted:g,isLoading:S,targetingLogicShouldHideFlow:F,updateCustomVariables:h,getFlowSteps:x,getFlowStatus:k,getFlowMetadata:b}=ne(),{primaryCTAClickSideEffects:v}=fe(),{mergeAppearanceWithDefault:$}=ce(),[E,f]=me.useState(null),[A,y]=me.useState(""),T=b(e),{hasOpenModals:I,setKeepCompletedFlowOpenDuringSession:N,shouldKeepCompletedFlowOpenDuringSession:D}=Ie();if(Ke(e),n=$(n),Xc(()=>{h(o)},[o,S]),S)return null;let z=d(e);if(!z||F(z)||k(e)===de||g(e)===1&&!D(e)||I())return null;let _=x(e)[g(e)];function G(){var ee,q;return me.createElement(me.Fragment,null,me.createElement(li,null,me.createElement(Oe,{size:"large",appearance:n,title:_.title,subtitle:_.subtitle})),me.createElement(ni,{className:a("npsNumberButtonContainer",n),appearance:n},Array.from(Array(10).keys()).map(se=>me.createElement(Ql,{className:a("npsNumberButton",n),selected:E===se+1,key:se,onClick:()=>L(this,null,function*(){N(e),f(se+1),yield c(e,_.id,{score:se+1})}),appearance:n},se+1))),me.createElement(Zl,{appearance:n},me.createElement(si,{appearance:n},(ee=T==null?void 0:T.negativeLabel)!=null?ee:"Not likely at all"),me.createElement(si,{appearance:n},(q=T==null?void 0:T.positiveLabel)!=null?q:"Extremely likely")))}function K(){var ee;return me.createElement(me.Fragment,null,me.createElement(li,null,me.createElement(Oe,{appearance:n,title:(ee=_.title)!=null?ee:"Why did you choose this score?",size:"large"})),me.createElement(Rl,{appearance:n,value:A,onChange:q=>{y(q.target.value)},placeholder:"Add your optional feedback here..."}),me.createElement(ni,{appearance:n,className:a("npsNumberButtonContainer",n)},me.createElement(le,{size:"large",withMargin:!1,onClick:()=>L(this,null,function*(){yield s(e),i&&i(_,1,"primary")}),appearance:n,title:_.secondaryButtonTitle||"Skip",secondary:!0}),me.createElement(le,{size:"large",withMargin:!1,onClick:()=>L(this,null,function*(){yield c(e,_.id,{feedbackText:A}),yield s(e),i&&i(_,1,"primary")}),appearance:n,title:_.primaryButtonTitle||"Submit"})))}function O(){return g(e)>=2?null:me.createElement(me.Fragment,null,me.createElement(ae,{appearance:n}),me.createElement(Xl,{appearance:n,className:Te(a("npsSurveyContainer",n),r),style:l,type:p},me.createElement(ea,{onClick:()=>L(this,null,function*(){yield u(e),t&&t()}),className:a("npsSurveyDismissButton",n)},me.createElement(Ne,null)),g(e)==0&&G(),g(e)==1&&K()))}return p==="inline"?O():me.createElement(Qc,null,O())};import ye,{useEffect as Rc}from"react";var em=({flowId:e,onDismiss:t,customVariables:o,onButtonClick:i,appearance:n,className:r,style:l,dismissible:p=!0,modalPosition:d="center",showPagination:s=!0,allowBackNavigation:u})=>{let{getFlow:c,markFlowCompleted:g,markFlowSkipped:S,markStepCompleted:F,markStepStarted:h,isLoading:x,targetingLogicShouldHideFlow:k,updateCustomVariables:b,getFlowSteps:v,getFlowStatus:$,getCurrentStepIndex:E}=ne(),{primaryCTAClickSideEffects:f,secondaryCTAClickSideEffects:A}=fe(),{mergeAppearanceWithDefault:y}=ce(),{setOpenFlowState:T,getOpenFlowState:I,hasOpenModals:N}=Ie();Ke(e);let[D,z]=[I(e,!0),Se=>T(e,Se)];if(n=y(n),Rc(()=>{b(o)},[o,x]),x)return null;let j=c(e);if(!j||k(j)||$(e)===de||N())return null;let _=v(e),G=E(e),K=_.length,O=_[G],ee=()=>L(void 0,null,function*(){z(!1),yield S(e),t&&t()});function q(){var Se;return ye.createElement(ye.Fragment,null,ye.createElement(ae,{appearance:n}),ye.createElement(Dl,{appearance:n,className:Te(a("announcementContainer",n),r),style:l},(p===!0||O.dismissible)&&d=="inline"&&ye.createElement(zl,{onClick:()=>L(this,null,function*(){yield S(e),t&&t()}),className:a("announcementDismissButton",n)},ye.createElement(Ne,null)),ye.createElement(Ul,null,ye.createElement(Hl,{appearance:n,className:a("announcementTitle",n),dangerouslySetInnerHTML:R(O.title)}),O.subtitle&&ye.createElement(Vl,{appearance:n,className:a("announcementSubtitle",n),dangerouslySetInnerHTML:R(O.subtitle)})),(O.imageUri||O.videoUri)&&ye.createElement(xr,{className:a("announcementMediaContainer",n)},ye.createElement(Cr,{appearance:n,stepData:O})),s&&K>1&&ye.createElement(_l,{className:a("announcementPaginationContainer",n)},ye.createElement(er,{className:a("announcementPagination",n),appearance:n,stepCount:K,currentStep:G})),(O.primaryButtonTitle||O.secondaryButtonTitle)&&ye.createElement(Wl,{allowBackNavigation:u,className:a("announcementCTAContainer",n)},u&&G>0&&ye.createElement(le,{classPrefix:"announcementBack",title:(Se=O.backButtonTitle)!=null?Se:"Back",appearance:n,withMargin:!1,size:"small",type:"full-width",onClick:()=>L(this,null,function*(){i&&i(O,E(e),"back"),yield h(e,_[G-1].id)}),secondary:!0}),O.secondaryButtonTitle&&ye.createElement(le,{classPrefix:"announcement",title:O.secondaryButtonTitle,appearance:n,withMargin:!1,size:"small",type:"full-width",onClick:()=>L(this,null,function*(){O.handleSecondaryButtonClick(),A(O),i&&i(O,E(e),"secondary")}),secondary:!0}),O.primaryButtonTitle&&ye.createElement(le,{classPrefix:"announcement",title:O.primaryButtonTitle,appearance:n,withMargin:!1,size:"small",type:"full-width",onClick:()=>L(this,null,function*(){f(O),!(i&&i(O,E(e),"primary")===!1)&&(E(e)===K-1?(O.handlePrimaryButtonClick(),yield g(e)):O.handlePrimaryButtonClick())})}))))}let se={padding:"24px",maxWidth:"400px"};return d==="inline"?q():d!=="center"?ye.createElement(qo,{modalPosition:d,onClose:ee,visible:D,dismissible:p,appearance:n},q()):ye.createElement(et,{appearance:n,onClose:ee,visible:D,style:se,dismissible:p},q())};import*as yr from"react";import ta from"react";var oa=n=>{var r=n,{as:e="span",children:t,variant:o="Body1"}=r,i=$e(r,["as","children","variant"]);return ta.createElement(Bn,w({color:"neutral.foreground",fontFamily:"default",forwardedAs:e,variant:o},i),t)},tm=Object.fromEntries(Object.keys(nr).map(e=>{let t=["H1","H2","H3","H4"].includes(e)?e.toLowerCase():void 0,o=i=>ta.createElement(oa,V(w({as:t},i),{variant:e}),i.children);return o.displayName=`Text.${e}`,[e,o]})),ai=Object.assign(oa,tm);var ra=l=>{var p=l,{as:e="button",className:t,size:o="md",title:i,variant:n="Primary"}=p,r=$e(p,["as","className","size","title","variant"]);var d;return yr.createElement(vn,w({className:`fr-button-${n.toLowerCase()}${t?` ${t}`:""}`,forwardedAs:e,variant:n,size:o,borderRadius:"md"},r),yr.createElement(ai,{color:(d=No[n])==null?void 0:d.color,fontWeight:"semibold"},i))},om=Object.fromEntries(Object.keys(No).map(e=>{let t=o=>yr.createElement(ra,V(w({},o),{variant:e}));return t.displayName=`Button.${e}`,[e,t]})),rm=Object.assign(ra,om);export{Io as Box,rm as Button,pt as CheckBox,wr as FlowType,yt as FormLabel,Or as FormTextField,em as FrigadeAnnouncement,Jc as FrigadeBanner,ei as FrigadeChecklist,at as FrigadeDefaultAppearance,qc as FrigadeEmbeddedTip,Sn as FrigadeForm,wc as FrigadeGuide,Cc as FrigadeHeroChecklist,Zc as FrigadeNPSSurvey,Sc as FrigadeProgressBadge,kd as FrigadeProvider,Vc as FrigadeSupportWidget,Uc as FrigadeTour,ze as ProgressBar,Zt as ProgressRing,ai as Text,sr as tokens,Ie as useFlowOpens,bo as useFlowResponses,ne as useFlows,jr as useOrganization,wo as useUser,_e as useUserFlowStates};
|
|
1809
1809
|
//# sourceMappingURL=index.mjs.map
|