@frigade/react 1.37.7 → 1.37.8
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 +6 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +6 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
var va=Object.create;var Oo=Object.defineProperty,Ba=Object.defineProperties,Ea=Object.getOwnPropertyDescriptor,Aa=Object.getOwnPropertyDescriptors,Oa=Object.getOwnPropertyNames,Ro=Object.getOwnPropertySymbols,Na=Object.getPrototypeOf,$r=Object.prototype.hasOwnProperty,xi=Object.prototype.propertyIsEnumerable;var hi=(e,t,o)=>t in e?Oo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,F=(e,t)=>{for(var o in t||(t={}))$r.call(t,o)&&hi(e,o,t[o]);if(Ro)for(var o of Ro(t))xi.call(t,o)&&hi(e,o,t[o]);return e},K=(e,t)=>Ba(e,Aa(t));var Ci=e=>typeof e=="symbol"?e:e+"",Ye=(e,t)=>{var o={};for(var i in e)$r.call(e,i)&&t.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&Ro)for(var i of Ro(e))t.indexOf(i)<0&&xi.call(e,i)&&(o[i]=e[i]);return o};var Ia=(e,t)=>{for(var o in t)Oo(e,o,{get:t[o],enumerable:!0})},yi=(e,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Oa(t))!$r.call(e,n)&&n!==o&&Oo(e,n,{get:()=>t[n],enumerable:!(i=Ea(t,n))||i.enumerable});return e};var f=(e,t,o)=>(o=e!=null?va(Na(e)):{},yi(t||!e||!e.__esModule?Oo(o,"default",{value:e,enumerable:!0}):o,e)),La=e=>yi(Oo({},"__esModule",{value:!0}),e);var U=(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())});var Dd={};Ia(Dd,{Box:()=>xo,Button:()=>ka,CheckBox:()=>xt,FlowType:()=>or,FormLabel:()=>vt,FormTextField:()=>fr,FrigadeAnnouncement:()=>wa,FrigadeBanner:()=>na,FrigadeChecklist:()=>Ar,FrigadeDefaultAppearance:()=>ht,FrigadeEmbeddedTip:()=>Rl,FrigadeForm:()=>Yr,FrigadeGuide:()=>Al,FrigadeHeroChecklist:()=>xl,FrigadeNPSSurvey:()=>ma,FrigadeProgressBadge:()=>Bl,FrigadeProvider:()=>Hn,FrigadeSupportWidget:()=>Yl,FrigadeTour:()=>Dl,ProgressBar:()=>Qe,ProgressRing:()=>qt,Text:()=>Ir,tokens:()=>Fr,useFlowOpens:()=>_e,useFlowResponses:()=>ao,useFlows:()=>R,useOrganization:()=>br,useUser:()=>co,useUserFlowStates:()=>Xe});module.exports=La(Dd);var de=f(require("react")),Wn=require("styled-components");var he=f(require("react"));var it=require("react");var Gt=f(require("react"));var Si="1.37.7";var Pt="NOT_STARTED_STEP",se="COMPLETED_FLOW",er="ABORTED_FLOW",Kt="STARTED_FLOW",et="NOT_STARTED_FLOW",Je="COMPLETED_STEP",No="STARTED_STEP";function ut(){let{publicApiKey:e,userId:t,apiUrl:o}=Gt.default.useContext(Z);return{config:(0,Gt.useMemo)(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":Si,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:(0,Gt.useMemo)(()=>`${o}/v1/public/`,[o])}}var $a="frigade-last-call-at-",Ma="frigade-last-call-data-";function io(){let{shouldGracefullyDegrade:e,readonly:t}=Gt.default.useContext(Z);return(o,i)=>U(this,null,function*(){if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return ro();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),ro();let n=$a+o,r=Ma+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 ro()}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 ro(p)}return l?l.ok?l:ro(l.statusText):ro()})}function ro(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function no(){let{publicApiKey:e,shouldGracefullyDegrade:t}=Gt.default.useContext(Z);function o(){return t?(console.error("Frigade hooks cannot be used when Frigade SDK has failed to initialize"),!1):e?!0:(console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider"),!1)}return{verifySDKInitiated:o}}var Io=require("react");var lo=require("react");var wi=f(require("swr"));var bi=require("react");function _e(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:n}=(0,bi.useContext)(Z);function r(c,g=!1){var b;return(b=e[c])!=null?b:g}function l(c,g){t(b=>K(F({},b),{[c]:g}))}function p(c){t(g=>{let w=g,{[c]:b}=w,T=Ye(w,[Ci(c)]);return F({},T)})}function d(c){n.includes(c)||i(g=>[...g,c])}function s(c){return n.includes(c)}function m(c){return Object.entries(e).some(([g,b])=>b&&g!=c)||o}return{getOpenFlowState:r,setOpenFlowState:l,resetOpenFlowState:p,hasOpenModals:m,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:s}}var Ti=f(require("swr/immutable"));var so=f(require("core-js-pure/actual/structured-clone"));function Mr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Pe(...e){let t=e.shift(),o=e.length===1?e[0]:Pe(...e);if(!Mr(t)||!Mr(o))throw new Error("deepmerge can only merge Objects");let i=(0,so.default)(t);return Object.entries(o).forEach(([n,r])=>{Mr(r)?i[n]!==void 0?Object.assign(i,{[n]:Pe(i[n],(0,so.default)(r))}):Object.assign(i,{[n]:(0,so.default)(r)}):Array.isArray(r)?i[n]!==void 0?Object.assign(i,{[n]:[...i[n],...(0,so.default)(r)]}):Object.assign(i,{[n]:(0,so.default)(r)}):Object.assign(i,{[n]:r})}),i}var Da="unknown";function Xe(){let{config:e,apiUrl:t}=ut(),{publicApiKey:o,userId:i,organizationId:n,flows:r,setShouldGracefullyDegrade:l,readonly:p}=(0,lo.useContext)(Z),{resetOpenFlowState:d}=_e(),[s,m]=(0,lo.useState)(!1),c={data:r.map(k=>({flowId:k.id,flowState:se,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},g=k=>fetch(k,e).then(v=>{if(v.ok)return v.json();throw new Error("Failed to fetch user flow states")}).catch(v=>(console.log(`Error fetching ${k}: ${v}. Will gracefully degrade and hide Frigade`),l(!0),c)),b=o&&r&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${n?`&foreignUserGroupId=${encodeURIComponent(n)}`:""}`:null,{data:T,isLoading:w,mutate:C,error:B}=p?(0,Ti.default)(b,g):(0,wi.default)(b,g,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!1,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),P=T==null?void 0:T.data;(0,lo.useEffect)(()=>{!s&&!w&&P&&m(!0)},[P,s,w]);function E(k){return U(this,null,function*(){if(P&&!p){let v=P.find(L=>L.flowId===k);v&&v.flowState!==se&&(v.flowState=se),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function $(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.stepStates[v]=L,N.flowState=Kt),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function y(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.lastStepId=v,N.stepStates[v]=L,N.flowState=Kt),yield C(Pe(T,{data:P}),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function u(k){return U(this,null,function*(){if(P){let v=P.find(L=>L.flowId===k);v&&v.flowState!==et&&(v.flowState=et,v.lastStepId=Da,Object.keys(v.stepStates).forEach(L=>{v.stepStates[L].actionType=Pt,v.stepStates[L].createdAt=new Date().toISOString()}),yield C(Pe(T,{data:P}),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1}),d(k))}})}function I(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.stepStates[v]=L),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}return{userFlowStatesData:P,isLoadingUserFlowStateData:!s,mutateUserFlowState:C,optimisticallyMarkFlowCompleted:E,optimisticallyMarkFlowNotStarted:u,optimisticallyMarkStepCompleted:$,optimisticallyMarkStepNotStarted:I,optimisticallyMarkStepStarted:y,error:B}}function ao(){let{config:e,apiUrl:t}=ut(),{userFlowStatesData:o,mutateUserFlowState:i}=Xe(),{failedFlowResponses:n,setFailedFlowResponses:r,flowResponses:l,setFlowResponses:p}=(0,Io.useContext)(Z),[d,s]=(0,Io.useState)(new Set),[m,c]=(0,Io.useState)(new Set),g=io();function b(C){let B=JSON.stringify(C);if(d.has(B))return null;d.add(B),s(d),m.add(C),c(m);let P=l==null?void 0:l.find(E=>E.flowSlug===C.flowSlug&&E.stepId===C.stepId&&E.actionType===C.actionType&&E.createdAt===C.createdAt);return g(`${t}flowResponses`,K(F({},e),{method:"POST",body:B})).then(E=>{E.status!==200&&E.status!==201?(console.log("Failed to send flow response for step "+C.stepId+". Will retry again later."),r([...n,C])):P||p($=>[...$!=null?$:[],C])})}function T(C){return U(this,null,function*(){C.foreignUserId&&(C.actionType===Kt||C.actionType===et?yield b(C):C.actionType===se?yield b(C):C.actionType===No?yield b(C):C.actionType===Je?yield b(C):C.actionType===er?yield b(C):C.actionType===Pt&&(yield b(C)))})}function w(){let C=[];return o==null||o.forEach(B=>{if(B&&B.stepStates&&Object.keys(B.stepStates).length!==0)for(let P in B.stepStates){let E=B.stepStates[P];C.push({foreignUserId:B.foreignUserId,flowSlug:B.flowId,stepId:E.stepId,actionType:E.actionType,data:{},createdAt:new Date(E.createdAt),blocked:E.blocked,hidden:E.hidden})}}),[...C,...l]}return{addResponse:T,setFlowResponses:p,getFlowResponses:w}}var ki=f(require("swr"));var Ua=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,Fi=e=>{let t=Ua.exec(e);if(t===null)return null;let o=null;return t.forEach((i,n)=>{let r=_a(i,"'","");r.startsWith("flow_")&&(o=r)}),o},_a=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};function tr(e){try{return JSON.parse(e)}catch(t){return console.error("Failed to parse Frigade config.yml to JSON",t),null}}var or=(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))(or||{});function R(){let{config:e,apiUrl:t}=ut(),{flows:o,setFlows:i,userId:n,organizationId:r,publicApiKey:l,customVariables:p,setCustomVariables:d,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:m,setFlowResponses:c,setShouldGracefullyDegrade:g,readonly:b,flowDataOverrides:T}=(0,it.useContext)(Z),w={data:[]},{verifySDKInitiated:C}=no(),{addResponse:B,getFlowResponses:P}=ao(),E=h=>fetch(h,e).then(S=>S.ok?S.json():(console.log(`Error fetching ${h} (${S.status}): ${S.statusText}. Will gracefully degrade and hide Frigade`),g(!0),w)).catch(S=>(console.log(`Error fetching ${h}: ${S}. Will gracefully degrade and hide Frigade`),g(!0),w)),{mutateUserFlowState:$,userFlowStatesData:y,isLoadingUserFlowStateData:u,optimisticallyMarkFlowCompleted:I,optimisticallyMarkFlowNotStarted:k,optimisticallyMarkStepCompleted:v,optimisticallyMarkStepNotStarted:L,optimisticallyMarkStepStarted:N}=Xe(),{data:O,error:q,isLoading:z}=(0,ki.default)(l?`${t}flows${b?"?readonly=true":""}`:null,E,{keepPreviousData:!0});(0,it.useEffect)(()=>{if(q){console.error(q);return}O&&O.data&&i(O.data)},[O,q]);function ee(h){if(z)return null;let S=o.find(x=>x.slug===h);return!S&&o.length>0&&!u&&!z?(console.log(`Flow with id ${h} not found`),null):(S&&T&&T[h]&&(S.data=T[h]),(S==null?void 0:S.active)===!1&&!b?null:S)}function X(h){var _,we,Re,Nt,jt;if(!ee(h))return[];let S=(_=ee(h))==null?void 0:_.data;return S?(S=ce(S),((jt=(Nt=(we=tr(S))==null?void 0:we.data)!=null?Nt:(Re=tr(S))==null?void 0:Re.steps)!=null?jt:[]).map(be=>{let Eo=fe(be);return K(F({handleSecondaryButtonClick:()=>{be.skippable===!0&&te(h,be.id,{skipped:!0})}},be),{complete:Fe(h,be.id)===Je||Eo>=1,started:Fe(h,be.id)===No||Fe(h,be.id)===Je,currentlyActive:y==null?void 0:y.some(Ao=>Ao.flowId==h&&Ao.lastStepId===be.id),blocked:ke(h,be.id),hidden:G(h,be.id),handlePrimaryButtonClick:()=>{(!be.completionCriteria&&(be.autoMarkCompleted||be.autoMarkCompleted===void 0)||be.completionCriteria&&be.autoMarkCompleted===!0)&&te(h,be.id)},progress:Eo})}).filter(be=>be.hidden!==!0)):[]}function ce(h){return h.replaceAll(/\${(.*?)}/g,(S,x)=>p[x]===void 0?"":String(p[x]).replace(/[\u00A0-\u9999<>\&]/g,function(_){return"&#"+_.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(h){var x;if(!ee(h))return[];let S=ee(h).data;return S?(S=ce(S),(x=JSON.parse(S))!=null?x:{}):[]}function J(h,S){d(x=>K(F({},x),{[h]:S}))}function ue(h){!u&&!z&&h&&JSON.stringify(p)!=JSON.stringify(F(F({},p),h))&&Object.keys(h).forEach(S=>{J(S,h[S])})}let Le=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:No,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield N(h,S,_),B(_))}),[n,r,y]),Ke=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:Pt,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield L(h,S,_),B(_))}),[n,r,y]),te=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:Je,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield v(h,S,_),B(_))}),[n,r,y]),xe=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C()||rt(h)===et)return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:et,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};yield k(h),Ue(x)&&B(x)}),[n,r,y]),W=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:Kt,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&B(x)}),[n,r,y]),ne=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:se,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&(yield I(h),B(x))}),[n,r,y]),qe=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:er,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&(yield I(h),B(x))}),[n,r,y]);function Ue(h){var S;if(y===void 0)return!1;if(y){let x=y.find(_=>_.flowId===h.flowSlug);if(h.actionType===Pt&&(!(x!=null&&x.stepStates[h.stepId])||x.stepStates[h.stepId].actionType===Pt))return!1;if(x&&((S=x.stepStates[h.stepId])==null?void 0:S.actionType)===h.actionType){if(h.actionType===Je&&(!h.data||JSON.stringify(h.data)===JSON.stringify({})))return!1;let _=Object.keys(x.stepStates).sort((we,Re)=>{let Nt=new Date(x.stepStates[we].createdAt),jt=new Date(x.stepStates[Re].createdAt);return Nt.getTime()-jt.getTime()});if(x.stepStates[_[_.length-1]].actionType===h.actionType&&h.stepId===_[_.length-1])return!1}if(x&&x.flowState===se&&h.actionType===se)return!1}return!0}function Fe(h,S){let x=H(h,S);return u?null:x?x.actionType:Pt}function ke(h,S){let x=H(h,S);return x?x.blocked:!1}function G(h,S){let x=H(h,S);return x?x.hidden:!1}function H(h,S){var _;if(u)return null;let x=y==null?void 0:y.find(we=>we.flowId===h);return!x||!x.stepStates[S]?null:(_=x.stepStates[S])!=null?_:null}function M(h){var x,_;if(u||!y)return null;if(rt(h)===et)return(x=X(h)[0])!=null?x:null;let S=(_=y.find(we=>we.flowId===h))==null?void 0:_.lastStepId;return S?X(h).find(we=>we.id===S):null}function j(h){var _;let S=M(h);if(!S)return 0;let x=(_=X(h).findIndex(we=>we.id===S.id))!=null?_:0;return Fe(h,S.id)===Je&&x<X(h).length-1?x+1:x}function fe(h){if(!h.completionCriteria)return;let S=Fi(h.completionCriteria);if(S===null)return;let x=Ft(S),_=Vt(S);return _===0?void 0:x/_}function rt(h){let S=y==null?void 0:y.find(x=>x.flowId===h);return S?S.flowState:null}function Ft(h){let S=X(h);return S.length===0?0:S.filter(_=>Fe(h,_.id)===Je).length}function Vt(h){return X(h).length}function ct(h){let S=o.find(x=>x.slug===h);return S?(T&&T[h]&&(S.data=T[h]),tr(S.data)):null}function kt(h){if(b)return!1;if(u)return!0;if(h!=null&&h.targetingLogic&&y){let S=y.find(x=>x.flowId===h.slug);if(S)return S.shouldTrigger===!1}return!!(h!=null&&h.targetingLogic&&n&&n.startsWith("guest_"))}function mt(h){return!kt(ee(h))}function to(){n&&$()}function oo(){return o}return{getAllFlows:oo,getFlow:ee,getFlowData:ct,isLoading:u||z,getStepStatus:Fe,getFlowSteps:X,getCurrentStepIndex:j,markStepStarted:Le,markStepCompleted:te,markFlowNotStarted:xe,markFlowStarted:W,markFlowCompleted:ne,markFlowAborted:qe,markStepNotStarted:Ke,getFlowStatus:rt,getNumberOfStepsCompleted:Ft,getNumberOfSteps:Vt,targetingLogicShouldHideFlow:kt,setCustomVariable:J,updateCustomVariables:ue,customVariables:p,getStepOptionalProgress:fe,getFlowMetadata:Q,isStepBlocked:ke,isStepHidden:G,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:m,isFlowAvailableToUser:mt,refresh:to}}var Lt=require("react");var po="guest_";function co(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:n}=(0,Lt.useContext)(Z),{config:r,apiUrl:l}=ut(),{mutateUserFlowState:p}=Xe(),d=io(),{verifySDKInitiated:s}=no();function m(T){return`frigade-user-registered-${T}`}(0,Lt.useEffect)(()=>{if(e&&!t){if(e.startsWith(po))return;let T=m(e);localStorage.getItem(T)||(d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify({foreignId:e})})),localStorage.setItem(T,"true"))}},[e,n,t]);let c=(0,Lt.useCallback)(T=>U(this,null,function*(){if(!s())return;let w={foreignId:e,properties:T};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(w)})),i(C=>F(F({},C),T)),p()}),[e,r,n,p]),g=(0,Lt.useCallback)((T,w)=>U(this,null,function*(){if(!s())return;let B={foreignId:e,events:[{event:T,properties:w}]};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(B)})),p()}),[e,r,p]),b=(0,Lt.useCallback)((T,w)=>U(this,null,function*(){if(s())if(w){let C=m(T);localStorage.setItem(C,"true"),o(T);let B={foreignId:T,properties:w};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(B)})),i(P=>F(F({},P),w)),p()}else o(T)}),[r,n,p]);return{userId:e,setUserId:o,setUserIdWithProperties:b,addPropertiesToUser:c,trackEventForUser:g}}var An=require("uuid");var ze=f(require("react"));var Ae=f(require("react")),Mo=f(require("styled-components"));var vi=f(require("react")),Bi=f(require("styled-components"));var Pi="fr-",Lo="cfr-";function a(e,t){let o=`${Pi}${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+" "+Lo+e}return o}function A(e){if(!e.className||e.className.indexOf(Lo)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(Pi)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function rr(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function We(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${rr(t)}: ${e.styleOverrides[t]};`).join(" "):""}function $e(...e){return e.filter(Boolean).join(" ")}function $o(e){return e.charAt(0).toUpperCase()+e.slice(1)}var Wa=Bi.default.div`
|
|
2
|
+
var va=Object.create;var Oo=Object.defineProperty,Ba=Object.defineProperties,Ea=Object.getOwnPropertyDescriptor,Aa=Object.getOwnPropertyDescriptors,Oa=Object.getOwnPropertyNames,Ro=Object.getOwnPropertySymbols,Na=Object.getPrototypeOf,$r=Object.prototype.hasOwnProperty,xi=Object.prototype.propertyIsEnumerable;var hi=(e,t,o)=>t in e?Oo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,F=(e,t)=>{for(var o in t||(t={}))$r.call(t,o)&&hi(e,o,t[o]);if(Ro)for(var o of Ro(t))xi.call(t,o)&&hi(e,o,t[o]);return e},K=(e,t)=>Ba(e,Aa(t));var Ci=e=>typeof e=="symbol"?e:e+"",Ye=(e,t)=>{var o={};for(var i in e)$r.call(e,i)&&t.indexOf(i)<0&&(o[i]=e[i]);if(e!=null&&Ro)for(var i of Ro(e))t.indexOf(i)<0&&xi.call(e,i)&&(o[i]=e[i]);return o};var Ia=(e,t)=>{for(var o in t)Oo(e,o,{get:t[o],enumerable:!0})},yi=(e,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Oa(t))!$r.call(e,n)&&n!==o&&Oo(e,n,{get:()=>t[n],enumerable:!(i=Ea(t,n))||i.enumerable});return e};var f=(e,t,o)=>(o=e!=null?va(Na(e)):{},yi(t||!e||!e.__esModule?Oo(o,"default",{value:e,enumerable:!0}):o,e)),La=e=>yi(Oo({},"__esModule",{value:!0}),e);var U=(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())});var Dd={};Ia(Dd,{Box:()=>xo,Button:()=>ka,CheckBox:()=>xt,FlowType:()=>or,FormLabel:()=>vt,FormTextField:()=>fr,FrigadeAnnouncement:()=>wa,FrigadeBanner:()=>na,FrigadeChecklist:()=>Ar,FrigadeDefaultAppearance:()=>ht,FrigadeEmbeddedTip:()=>Rl,FrigadeForm:()=>Yr,FrigadeGuide:()=>Al,FrigadeHeroChecklist:()=>xl,FrigadeNPSSurvey:()=>ma,FrigadeProgressBadge:()=>Bl,FrigadeProvider:()=>Hn,FrigadeSupportWidget:()=>Yl,FrigadeTour:()=>Dl,ProgressBar:()=>Qe,ProgressRing:()=>qt,Text:()=>Ir,tokens:()=>Fr,useFlowOpens:()=>_e,useFlowResponses:()=>ao,useFlows:()=>R,useOrganization:()=>br,useUser:()=>co,useUserFlowStates:()=>Xe});module.exports=La(Dd);var de=f(require("react")),Wn=require("styled-components");var he=f(require("react"));var it=require("react");var Gt=f(require("react"));var Si="1.37.8";var Pt="NOT_STARTED_STEP",se="COMPLETED_FLOW",er="ABORTED_FLOW",Kt="STARTED_FLOW",et="NOT_STARTED_FLOW",Je="COMPLETED_STEP",No="STARTED_STEP";function ut(){let{publicApiKey:e,userId:t,apiUrl:o}=Gt.default.useContext(Z);return{config:(0,Gt.useMemo)(()=>({headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json","X-Frigade-SDK-Version":Si,"X-Frigade-SDK-Platform":"React"}}),[e,t]),apiUrl:(0,Gt.useMemo)(()=>`${o}/v1/public/`,[o])}}var $a="frigade-last-call-at-",Ma="frigade-last-call-data-";function io(){let{shouldGracefullyDegrade:e,readonly:t}=Gt.default.useContext(Z);return(o,i)=>U(this,null,function*(){if(t&&(i.method==="POST"||i.method==="PUT"||i.method==="DELETE"))return ro();if(e)return console.log(`Skipping ${o} call to Frigade due to error`),ro();let n=$a+o,r=Ma+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 ro()}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 ro(p)}return l?l.ok?l:ro(l.statusText):ro()})}function ro(e){return e&&console.log("Call to Frigade failed",e),{json:()=>({})}}function no(){let{publicApiKey:e,shouldGracefullyDegrade:t}=Gt.default.useContext(Z);function o(){return t?(console.error("Frigade hooks cannot be used when Frigade SDK has failed to initialize"),!1):e?!0:(console.error("Frigade hooks cannot be used outside the scope of FrigadeProvider"),!1)}return{verifySDKInitiated:o}}var Io=require("react");var lo=require("react");var wi=f(require("swr"));var bi=require("react");function _e(){let{openFlowStates:e,setOpenFlowStates:t,hasActiveFullPageFlow:o,setCompletedFlowsToKeepOpenDuringSession:i,completedFlowsToKeepOpenDuringSession:n}=(0,bi.useContext)(Z);function r(c,g=!1){var b;return(b=e[c])!=null?b:g}function l(c,g){t(b=>K(F({},b),{[c]:g}))}function p(c){t(g=>{let w=g,{[c]:b}=w,T=Ye(w,[Ci(c)]);return F({},T)})}function d(c){n.includes(c)||i(g=>[...g,c])}function s(c){return n.includes(c)}function m(c){return Object.entries(e).some(([g,b])=>b&&g!=c)||o}return{getOpenFlowState:r,setOpenFlowState:l,resetOpenFlowState:p,hasOpenModals:m,setKeepCompletedFlowOpenDuringSession:d,shouldKeepCompletedFlowOpenDuringSession:s}}var Ti=f(require("swr/immutable"));var so=f(require("core-js-pure/actual/structured-clone"));function Mr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Pe(...e){let t=e.shift(),o=e.length===1?e[0]:Pe(...e);if(!Mr(t)||!Mr(o))throw new Error("deepmerge can only merge Objects");let i=(0,so.default)(t);return Object.entries(o).forEach(([n,r])=>{Mr(r)?i[n]!==void 0?Object.assign(i,{[n]:Pe(i[n],(0,so.default)(r))}):Object.assign(i,{[n]:(0,so.default)(r)}):Array.isArray(r)?i[n]!==void 0?Object.assign(i,{[n]:[...i[n],...(0,so.default)(r)]}):Object.assign(i,{[n]:(0,so.default)(r)}):Object.assign(i,{[n]:r})}),i}var Da="unknown";function Xe(){let{config:e,apiUrl:t}=ut(),{publicApiKey:o,userId:i,organizationId:n,flows:r,setShouldGracefullyDegrade:l,readonly:p}=(0,lo.useContext)(Z),{resetOpenFlowState:d}=_e(),[s,m]=(0,lo.useState)(!1),c={data:r.map(k=>({flowId:k.id,flowState:se,lastStepId:null,userId:i,foreignUserId:i,stepStates:{},shouldTrigger:!1}))},g=k=>fetch(k,e).then(v=>{if(v.ok)return v.json();throw new Error("Failed to fetch user flow states")}).catch(v=>(console.log(`Error fetching ${k}: ${v}. Will gracefully degrade and hide Frigade`),l(!0),c)),b=o&&r&&i?`${t}userFlowStates?foreignUserId=${encodeURIComponent(i)}${n?`&foreignUserGroupId=${encodeURIComponent(n)}`:""}`:null,{data:T,isLoading:w,mutate:C,error:B}=p?(0,Ti.default)(b,g):(0,wi.default)(b,g,{revalidateOnFocus:!0,revalidateIfStale:!0,keepPreviousData:!0,revalidateOnMount:!1,errorRetryInterval:1e4,errorRetryCount:3,onError:()=>c,onLoadingSlow:()=>c}),P=T==null?void 0:T.data;(0,lo.useEffect)(()=>{!s&&!w&&P&&m(!0)},[P,s,w]);function E(k){return U(this,null,function*(){if(P&&!p){let v=P.find(L=>L.flowId===k);v&&v.flowState!==se&&(v.flowState=se),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function $(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.stepStates[v]=L,N.flowState=Kt),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function y(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.lastStepId=v,N.stepStates[v]=L,N.flowState=Kt),yield C(Pe(T,{data:P}),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}function u(k){return U(this,null,function*(){if(P){let v=P.find(L=>L.flowId===k);v&&v.flowState!==et&&(v.flowState=et,v.lastStepId=Da,Object.keys(v.stepStates).forEach(L=>{v.stepStates[L].actionType=Pt,v.stepStates[L].createdAt=new Date().toISOString()}),yield C(Pe(T,{data:P}),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1}),d(k))}})}function I(k,v,L){return U(this,null,function*(){if(P){let N=P.find(O=>O.flowId===k);N&&(N.stepStates[v]=L),yield C(Promise.resolve(Pe(T,{data:P})),{optimisticData:Pe(T,{data:P}),revalidate:!1,rollbackOnError:!1})}})}return{userFlowStatesData:P,isLoadingUserFlowStateData:!s,mutateUserFlowState:C,optimisticallyMarkFlowCompleted:E,optimisticallyMarkFlowNotStarted:u,optimisticallyMarkStepCompleted:$,optimisticallyMarkStepNotStarted:I,optimisticallyMarkStepStarted:y,error:B}}function ao(){let{config:e,apiUrl:t}=ut(),{userFlowStatesData:o,mutateUserFlowState:i}=Xe(),{failedFlowResponses:n,setFailedFlowResponses:r,flowResponses:l,setFlowResponses:p}=(0,Io.useContext)(Z),[d,s]=(0,Io.useState)(new Set),[m,c]=(0,Io.useState)(new Set),g=io();function b(C){let B=JSON.stringify(C);if(d.has(B))return null;d.add(B),s(d),m.add(C),c(m);let P=l==null?void 0:l.find(E=>E.flowSlug===C.flowSlug&&E.stepId===C.stepId&&E.actionType===C.actionType&&E.createdAt===C.createdAt);return g(`${t}flowResponses`,K(F({},e),{method:"POST",body:B})).then(E=>{E.status!==200&&E.status!==201?(console.log("Failed to send flow response for step "+C.stepId+". Will retry again later."),r([...n,C])):P||p($=>[...$!=null?$:[],C])})}function T(C){return U(this,null,function*(){C.foreignUserId&&(C.actionType===Kt||C.actionType===et?yield b(C):C.actionType===se?yield b(C):C.actionType===No?yield b(C):C.actionType===Je?yield b(C):C.actionType===er?yield b(C):C.actionType===Pt&&(yield b(C)))})}function w(){let C=[];return o==null||o.forEach(B=>{if(B&&B.stepStates&&Object.keys(B.stepStates).length!==0)for(let P in B.stepStates){let E=B.stepStates[P];C.push({foreignUserId:B.foreignUserId,flowSlug:B.flowId,stepId:E.stepId,actionType:E.actionType,data:{},createdAt:new Date(E.createdAt),blocked:E.blocked,hidden:E.hidden})}}),[...C,...l]}return{addResponse:T,setFlowResponses:p,getFlowResponses:w}}var ki=f(require("swr"));var Ua=/user.flow\(([^\)]+)\) == '?COMPLETED_FLOW'?/gm,Fi=e=>{let t=Ua.exec(e);if(t===null)return null;let o=null;return t.forEach((i,n)=>{let r=_a(i,"'","");r.startsWith("flow_")&&(o=r)}),o},_a=function(e,t,o){return e.replace(new RegExp(t,"g"),o)};function tr(e){try{return JSON.parse(e)}catch(t){return console.error("Failed to parse Frigade config.yml to JSON",t),null}}var or=(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))(or||{});function R(){let{config:e,apiUrl:t}=ut(),{flows:o,setFlows:i,userId:n,organizationId:r,publicApiKey:l,customVariables:p,setCustomVariables:d,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:m,setFlowResponses:c,setShouldGracefullyDegrade:g,readonly:b,flowDataOverrides:T}=(0,it.useContext)(Z),w={data:[]},{verifySDKInitiated:C}=no(),{addResponse:B,getFlowResponses:P}=ao(),E=h=>fetch(h,e).then(S=>S.ok?S.json():(console.log(`Error fetching ${h} (${S.status}): ${S.statusText}. Will gracefully degrade and hide Frigade`),g(!0),w)).catch(S=>(console.log(`Error fetching ${h}: ${S}. Will gracefully degrade and hide Frigade`),g(!0),w)),{mutateUserFlowState:$,userFlowStatesData:y,isLoadingUserFlowStateData:u,optimisticallyMarkFlowCompleted:I,optimisticallyMarkFlowNotStarted:k,optimisticallyMarkStepCompleted:v,optimisticallyMarkStepNotStarted:L,optimisticallyMarkStepStarted:N}=Xe(),{data:O,error:q,isLoading:z}=(0,ki.default)(l?`${t}flows${b?"?readonly=true":""}`:null,E,{keepPreviousData:!0});(0,it.useEffect)(()=>{if(q){console.error(q);return}O&&O.data&&i(O.data)},[O,q]);function ee(h){if(z)return null;let S=o.find(x=>x.slug===h);return!S&&o.length>0&&!u&&!z?(console.log(`Flow with id ${h} not found`),null):(S&&T&&T[h]&&(S.data=T[h]),(S==null?void 0:S.active)===!1&&!b?null:S)}function X(h){var _,we,Re,Nt,jt;if(!ee(h))return[];let S=(_=ee(h))==null?void 0:_.data;return S?(S=ce(S),((jt=(Nt=(we=tr(S))==null?void 0:we.data)!=null?Nt:(Re=tr(S))==null?void 0:Re.steps)!=null?jt:[]).map(be=>{let Eo=fe(be);return K(F({handleSecondaryButtonClick:()=>{be.skippable===!0&&te(h,be.id,{skipped:!0})}},be),{complete:Fe(h,be.id)===Je||Eo>=1,started:Fe(h,be.id)===No||Fe(h,be.id)===Je,currentlyActive:y==null?void 0:y.some(Ao=>Ao.flowId==h&&Ao.lastStepId===be.id),blocked:ke(h,be.id),hidden:G(h,be.id),handlePrimaryButtonClick:()=>{(!be.completionCriteria&&(be.autoMarkCompleted||be.autoMarkCompleted===void 0)||be.completionCriteria&&be.autoMarkCompleted===!0)&&te(h,be.id)},progress:Eo})}).filter(be=>be.hidden!==!0)):[]}function ce(h){return h.replaceAll(/\${(.*?)}/g,(S,x)=>p[x]===void 0?"":String(p[x]).replace(/[\u00A0-\u9999<>\&]/g,function(_){return"&#"+_.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(h){var x;if(!ee(h))return[];let S=ee(h).data;return S?(S=ce(S),(x=JSON.parse(S))!=null?x:{}):[]}function J(h,S){d(x=>K(F({},x),{[h]:S}))}function ue(h){!u&&!z&&h&&JSON.stringify(p)!=JSON.stringify(F(F({},p),h))&&Object.keys(h).forEach(S=>{J(S,h[S])})}let Le=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:No,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield N(h,S,_),B(_))}),[n,r,y]),Ke=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:Pt,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield L(h,S,_),B(_))}),[n,r,y]),te=(0,it.useCallback)((h,S,x)=>U(this,null,function*(){if(!C())return;let _={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:S,actionType:Je,data:x!=null?x:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(_)&&(yield v(h,S,_),B(_))}),[n,r,y]),xe=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C()||rt(h)===et)return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:et,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};yield k(h),Ue(x)&&B(x)}),[n,r,y]),W=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:Kt,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&B(x)}),[n,r,y]),ne=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:se,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&(yield I(h),B(x))}),[n,r,y]),qe=(0,it.useCallback)((h,S)=>U(this,null,function*(){if(!C())return;let x={foreignUserId:n,foreignUserGroupId:r!=null?r:null,flowSlug:h,stepId:"unknown",actionType:er,data:S!=null?S:{},createdAt:new Date,blocked:!1,hidden:!1};Ue(x)&&(yield I(h),B(x))}),[n,r,y]);function Ue(h){var S;if(y===void 0)return!1;if(y){let x=y.find(_=>_.flowId===h.flowSlug);if(h.actionType===Pt&&(!(x!=null&&x.stepStates[h.stepId])||x.stepStates[h.stepId].actionType===Pt))return!1;if(x&&((S=x.stepStates[h.stepId])==null?void 0:S.actionType)===h.actionType){if(h.actionType===Je&&(!h.data||JSON.stringify(h.data)===JSON.stringify({})))return!1;let _=Object.keys(x.stepStates).sort((we,Re)=>{let Nt=new Date(x.stepStates[we].createdAt),jt=new Date(x.stepStates[Re].createdAt);return Nt.getTime()-jt.getTime()});if(x.stepStates[_[_.length-1]].actionType===h.actionType&&h.stepId===_[_.length-1])return!1}if(x&&x.flowState===se&&h.actionType===se)return!1}return!0}function Fe(h,S){let x=H(h,S);return u?null:x?x.actionType:Pt}function ke(h,S){let x=H(h,S);return x?x.blocked:!1}function G(h,S){let x=H(h,S);return x?x.hidden:!1}function H(h,S){var _;if(u)return null;let x=y==null?void 0:y.find(we=>we.flowId===h);return!x||!x.stepStates[S]?null:(_=x.stepStates[S])!=null?_:null}function M(h){var x,_;if(u||!y)return null;if(rt(h)===et)return(x=X(h)[0])!=null?x:null;let S=(_=y.find(we=>we.flowId===h))==null?void 0:_.lastStepId;return S?X(h).find(we=>we.id===S):null}function j(h){var _;let S=M(h);if(!S)return 0;let x=(_=X(h).findIndex(we=>we.id===S.id))!=null?_:0;return Fe(h,S.id)===Je&&x<X(h).length-1?x+1:x}function fe(h){if(!h.completionCriteria)return;let S=Fi(h.completionCriteria);if(S===null)return;let x=Ft(S),_=Vt(S);return _===0?void 0:x/_}function rt(h){let S=y==null?void 0:y.find(x=>x.flowId===h);return S?S.flowState:null}function Ft(h){let S=X(h);return S.length===0?0:S.filter(_=>Fe(h,_.id)===Je).length}function Vt(h){return X(h).length}function ct(h){let S=o.find(x=>x.slug===h);return S?(T&&T[h]&&(S.data=T[h]),tr(S.data)):null}function kt(h){if(b)return!1;if(u)return!0;if(h!=null&&h.targetingLogic&&y){let S=y.find(x=>x.flowId===h.slug);if(S)return S.shouldTrigger===!1}return!!(h!=null&&h.targetingLogic&&n&&n.startsWith("guest_"))}function mt(h){return!kt(ee(h))}function to(){n&&$()}function oo(){return o}return{getAllFlows:oo,getFlow:ee,getFlowData:ct,isLoading:u||z,getStepStatus:Fe,getFlowSteps:X,getCurrentStepIndex:j,markStepStarted:Le,markStepCompleted:te,markFlowNotStarted:xe,markFlowStarted:W,markFlowCompleted:ne,markFlowAborted:qe,markStepNotStarted:Ke,getFlowStatus:rt,getNumberOfStepsCompleted:Ft,getNumberOfSteps:Vt,targetingLogicShouldHideFlow:kt,setCustomVariable:J,updateCustomVariables:ue,customVariables:p,getStepOptionalProgress:fe,getFlowMetadata:Q,isStepBlocked:ke,isStepHidden:G,hasActiveFullPageFlow:s,setHasActiveFullPageFlow:m,isFlowAvailableToUser:mt,refresh:to}}var Lt=require("react");var po="guest_";function co(){let{userId:e,organizationId:t,setUserId:o,setUserProperties:i,shouldGracefullyDegrade:n}=(0,Lt.useContext)(Z),{config:r,apiUrl:l}=ut(),{mutateUserFlowState:p}=Xe(),d=io(),{verifySDKInitiated:s}=no();function m(T){return`frigade-user-registered-${T}`}(0,Lt.useEffect)(()=>{if(e&&!t){if(e.startsWith(po))return;let T=m(e);localStorage.getItem(T)||(d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify({foreignId:e})})),localStorage.setItem(T,"true"))}},[e,n,t]);let c=(0,Lt.useCallback)(T=>U(this,null,function*(){if(!s())return;let w={foreignId:e,properties:T};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(w)})),i(C=>F(F({},C),T)),p()}),[e,r,n,p]),g=(0,Lt.useCallback)((T,w)=>U(this,null,function*(){if(!s())return;let B={foreignId:e,events:[{event:T,properties:w}]};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(B)})),p()}),[e,r,p]),b=(0,Lt.useCallback)((T,w)=>U(this,null,function*(){if(s())if(w){let C=m(T);localStorage.setItem(C,"true"),o(T);let B={foreignId:T,properties:w};yield d(`${l}users`,K(F({},r),{method:"POST",body:JSON.stringify(B)})),i(P=>F(F({},P),w)),p()}else o(T)}),[r,n,p]);return{userId:e,setUserId:o,setUserIdWithProperties:b,addPropertiesToUser:c,trackEventForUser:g}}var An=require("uuid");var ze=f(require("react"));var Ae=f(require("react")),Mo=f(require("styled-components"));var vi=f(require("react")),Bi=f(require("styled-components"));var Pi="fr-",Lo="cfr-";function a(e,t){let o=`${Pi}${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+" "+Lo+e}return o}function A(e){if(!e.className||e.className.indexOf(Lo)!==-1)return"";let o=e.className.replace(/\s+/g," ").split(" ");return o.length==1&&o[0].startsWith(Pi)?"":`:not(${o.map(i=>`.${i}`).join(", ")})`}function rr(e){return e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}function We(e){return e!=null&&e.styleOverrides?Object.keys(e.styleOverrides).map(t=>`${rr(t)}: ${e.styleOverrides[t]};`).join(" "):""}function $e(...e){return e.filter(Boolean).join(" ")}function $o(e){return e.charAt(0).toUpperCase()+e.slice(1)}var Wa=Bi.default.div`
|
|
3
3
|
display: flex;
|
|
4
4
|
justify-content: center;
|
|
5
5
|
position: fixed;
|
|
@@ -1138,6 +1138,10 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${Lo}${t}.${Lo}${t} { ${Object.entries(o).map
|
|
|
1138
1138
|
flex-direction: row;
|
|
1139
1139
|
justify-content: space-between;
|
|
1140
1140
|
align-items: center;
|
|
1141
|
+
cursor: pointer;
|
|
1142
|
+
:hover {
|
|
1143
|
+
opacity: 0.8;
|
|
1144
|
+
}
|
|
1141
1145
|
`,Hs=wt.default.p`
|
|
1142
1146
|
color: ${e=>{var t,o;return(o=(t=e.appearance)==null?void 0:t.theme)==null?void 0:o.colorText}};
|
|
1143
1147
|
font-style: normal;
|
|
@@ -1165,7 +1169,7 @@ ${e=>e.inlineStyles.map(([t,o])=>`.${Lo}${t}.${Lo}${t} { ${Object.entries(o).map
|
|
|
1165
1169
|
flex-direction: row;
|
|
1166
1170
|
justify-content: flex-start;
|
|
1167
1171
|
align-items: center;
|
|
1168
|
-
`;var Ks=({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 b;return Ie.default.createElement(Ie.default.Fragment,null,e.imageUri||e.videoUri?Ie.default.createElement(_s,{className:a("stepMediaContainer",r)},e.imageUri?Ie.default.createElement(Ws,{className:a("stepImage",r),src:e.imageUri,style:e.imageStyle}):null,e.videoUri?Ie.default.createElement(Ct,{appearance:r,videoUri:e.videoUri}):null):null,Ie.default.createElement(js,{className:a("stepSubtitle",r),appearance:r,dangerouslySetInnerHTML:ge(e.subtitle)}),Ie.default.createElement(gr,{className:a("checklistCTAContainer",r)},e.secondaryButtonTitle?Ie.default.createElement(ae,{secondary:!0,title:e.secondaryButtonTitle,onClick:()=>n(),appearance:r}):null,Ie.default.createElement(ae,{title:(b=e.primaryButtonTitle)!=null?b:"Continue",onClick:()=>i(),appearance:r})))}function m(){if(!l)return null;let b=l[e.type];return b?typeof b!="function"?b:b(e,r):null}return Ie.default.createElement(Us,{"data-testid":`step-${e.id}`,className:a("checklistStepContainer",r),appearance:r},Ie.default.createElement(zs,{className:a("stepHeader",r)},Ie.default.createElement(Gs,null,Ie.default.createElement(kr,{value:e.complete,style:{width:"auto",borderTop:0},primaryColor:(c=r==null?void 0:r.theme)==null?void 0:c.colorPrimary,appearance:r}),Ie.default.createElement(Hs,{appearance:r,className:a("stepTitle",r),dangerouslySetInnerHTML:ge(e.title)
|
|
1172
|
+
`;var Ks=({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 b;return Ie.default.createElement(Ie.default.Fragment,null,e.imageUri||e.videoUri?Ie.default.createElement(_s,{className:a("stepMediaContainer",r)},e.imageUri?Ie.default.createElement(Ws,{className:a("stepImage",r),src:e.imageUri,style:e.imageStyle}):null,e.videoUri?Ie.default.createElement(Ct,{appearance:r,videoUri:e.videoUri}):null):null,Ie.default.createElement(js,{className:a("stepSubtitle",r),appearance:r,dangerouslySetInnerHTML:ge(e.subtitle)}),Ie.default.createElement(gr,{className:a("checklistCTAContainer",r)},e.secondaryButtonTitle?Ie.default.createElement(ae,{secondary:!0,title:e.secondaryButtonTitle,onClick:()=>n(),appearance:r}):null,Ie.default.createElement(ae,{title:(b=e.primaryButtonTitle)!=null?b:"Continue",onClick:()=>i(),appearance:r})))}function m(){if(!l)return null;let b=l[e.type];return b?typeof b!="function"?b:b(e,r):null}return Ie.default.createElement(Us,{"data-testid":`step-${e.id}`,className:a("checklistStepContainer",r),appearance:r},Ie.default.createElement(zs,{className:a("stepHeader",r),onClick:()=>o()},Ie.default.createElement(Gs,null,Ie.default.createElement(kr,{value:e.complete,style:{width:"auto",borderTop:0},primaryColor:(c=r==null?void 0:r.theme)==null?void 0:c.colorPrimary,appearance:r}),Ie.default.createElement(Hs,{appearance:r,className:a("stepTitle",r),dangerouslySetInnerHTML:ge(e.title)})),Ie.default.createElement(Vs,{className:a("stepChevronContainer",r),appearance:r},Ie.default.createElement(Fo,{style:K(F({},p),{transition:"transform 0.2s ease-in-out"})}))),Ie.default.createElement("div",{key:e.id,style:F({},d)},(g=m())!=null?g:s()))};var Zt=f(require("styled-components")),px=Zt.default.div`
|
|
1169
1173
|
background: #ffffff;
|
|
1170
1174
|
box-shadow: 0px 6px 25px rgba(0, 0, 0, 0.06);
|
|
1171
1175
|
border-radius: 6px;
|