Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@onefootprint/footprint-js

Package Overview
Dependencies
Maintainers
3
Versions
75
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@onefootprint/footprint-js - npm Package Compare versions

Comparing version 3.0.0 to 3.1.0

10

dist/footprint-js.d.ts

@@ -223,3 +223,7 @@ import * as CSS from 'csstype';

hideFootprintLogo?: boolean;
hideButtons?: boolean;
};
type FormRef = {
save: () => void;
};
interface FormProps extends PropsBase {

@@ -233,2 +237,3 @@ kind: ComponentKind.Form;

options?: FormOptions;
getRef?: (ref: FormRef) => void;
onComplete?: () => void;

@@ -249,3 +254,4 @@ onCancel?: () => void;

propsReceived = "propsReceived",
started = "started"
started = "started",
formSaved = "formSaved"
}

@@ -263,2 +269,2 @@

export { Footprint, Appearance as FootprintAppearance, AppearanceRules as FootprintAppearanceRules, AppearanceTheme as FootprintAppearanceTheme, AppearanceVariables as FootprintAppearanceVariables, Component as FootprintComponent, ComponentKind as FootprintComponentKind, FormOptions as FootprintFormOptions, FormProps as FootprintFormProps, FormType as FootprintFormType, IdentifyRequest as FootprintIdentifyRequest, PrivateEvent as FootprintPrivateEvent, Props as FootprintProps, PropsBase as FootprintPropsBase, PublicEvent as FootprintPublicEvent, RenderProps as FootprintRenderProps, FootprintUserData, Variant as FootprintVariant, VerifyButtonProps as FootprintVerifyButtonProps, VerifyOptions as FootprintVerifyOptions, VerifyProps as FootprintVerifyProps, footprint as default, identifyUser as identifyFootprintUser };
export { Footprint, Appearance as FootprintAppearance, AppearanceRules as FootprintAppearanceRules, AppearanceTheme as FootprintAppearanceTheme, AppearanceVariables as FootprintAppearanceVariables, Component as FootprintComponent, ComponentKind as FootprintComponentKind, FormOptions as FootprintFormOptions, FormProps as FootprintFormProps, FormRef as FootprintFormRef, FormType as FootprintFormType, IdentifyRequest as FootprintIdentifyRequest, PrivateEvent as FootprintPrivateEvent, Props as FootprintProps, PropsBase as FootprintPropsBase, PublicEvent as FootprintPublicEvent, RenderProps as FootprintRenderProps, FootprintUserData, Variant as FootprintVariant, VerifyButtonProps as FootprintVerifyButtonProps, VerifyOptions as FootprintVerifyOptions, VerifyProps as FootprintVerifyProps, footprint as default, identifyUser as identifyFootprintUser };

4

dist/footprint-js.js

@@ -1,2 +0,2 @@

var ye=Object.defineProperty,ve=Object.defineProperties;var ge=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var $=(e,r,t)=>r in e?ye(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,C=(e,r)=>{for(var t in r||(r={}))U.call(r,t)&&$(e,t,r[t]);if(O)for(var t of O(r))j.call(r,t)&&$(e,t,r[t]);return e},x=(e,r)=>ve(e,ge(r));var L=(e,r)=>{var t={};for(var n in e)U.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(e!=null&&O)for(var n of O(e))r.indexOf(n)<0&&j.call(e,n)&&(t[n]=e[n]);return t};var m=(e,r,t)=>new Promise((n,o)=>{var a=i=>{try{c(t.next(i));}catch(s){o(s);}},d=i=>{try{c(t.throw(i));}catch(s){o(s);}},c=i=>i.done?n(i.value):Promise.resolve(i.value).then(a,d);c((t=t.apply(e,r)).next());});var h="application/x-postmate-v1+json",he=5,Pe=0,Ee=function(){return ++Pe};var Ce=function(r){var t=document.createElement("a");t.href=r;var n=t.protocol.length>4?t.protocol:window.location.protocol,o=t.host.length?t.port==="80"||t.port==="443"?t.hostname:t.host:window.location.host;return t.origin||n+"//"+o},we={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},N=function(r,t){return !(typeof t=="string"&&r.origin!==t||!r.data||typeof r.data=="object"&&!("postmate"in r.data)||r.data.type!==h||!we[r.data.postmate])},Ie=function(r,t){var n=typeof r[t]=="function"?r[t]():r[t];return P.Promise.resolve(n)},be=function(){function e(t){var n=this;this.parent=t.parent,this.frame=t.frame,this.child=t.child,this.childOrigin=t.childOrigin,this.events={},this.listener=function(o){if(!N(o,n.childOrigin))return !1;var a=((o||{}).data||{}).value||{},d=a.data,c=a.name;o.data.postmate==="emit"&&c in n.events&&n.events[c].forEach(function(i){i.call(n,d);});},this.parent.addEventListener("message",this.listener,!1);}var r=e.prototype;return r.get=function(n){var o=this;return new P.Promise(function(a){var d=Ee(),c=function i(s){s.data.uid===d&&s.data.postmate==="reply"&&(o.parent.removeEventListener("message",i,!1),a(s.data.value));};o.parent.addEventListener("message",c,!1),o.child.postMessage({postmate:"request",type:h,property:n,uid:d},o.childOrigin);})},r.call=function(n,o){this.child.postMessage({postmate:"call",type:h,property:n,data:o},this.childOrigin);},r.on=function(n,o){this.events[n]||(this.events[n]=[]),this.events[n].push(o);},r.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame);},e}(),Oe=function(){function e(t){var n=this;this.model=t.model,this.parent=t.parent,this.parentOrigin=t.parentOrigin,this.child=t.child,this.child.addEventListener("message",function(o){if(N(o,n.parentOrigin)){var a=o.data,d=a.property,c=a.uid,i=a.data;if(o.data.postmate==="call"){d in n.model&&typeof n.model[d]=="function"&&n.model[d](i);return}Ie(n.model,d).then(function(s){return o.source.postMessage({property:d,postmate:"reply",type:h,uid:c,value:s},o.origin)});}});}var r=e.prototype;return r.emit=function(n,o){this.parent.postMessage({postmate:"emit",type:h,value:{name:n,data:o}},this.parentOrigin);},e}(),P=function(){function e(t){var n=t.container,o=n===void 0?typeof o!="undefined"?o:document.body:n,a=t.model,d=t.url,c=t.name,i=c===void 0?"":c,s=t.allow,p=t.classListArray,f=p===void 0?[]:p;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=i||"",this.frame.classList.add.apply(this.frame.classList,f),s&&(this.frame.allow=s),o.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=a||{},this.sendHandshake(d)}var r=e.prototype;return r.sendHandshake=function(n){var o=this,a=Ce(n),d=0,c;return new e.Promise(function(i,s){var p=function u(I){return N(I,a)?I.data.postmate==="handshake-reply"?(clearInterval(c),o.parent.removeEventListener("message",u,!1),o.childOrigin=I.origin,i(new be(o))):s("Failed handshake"):!1};o.parent.addEventListener("message",p,!1);var f=function(){d++,o.child.postMessage({postmate:"handshake",type:h,model:o.model},a),d===he&&clearInterval(c);},g=function(){f(),c=setInterval(f,500);};o.frame.attachEvent?o.frame.attachEvent("onload",g):o.frame.addEventListener("load",g),o.frame.src=n;})},e}();P.debug=!1;P.Promise=function(){try{return window?window.Promise:Promise}catch(e){return null}}();P.Model=function(){function e(t){return this.child=window,this.model=t,this.parent=this.child.parent,this.sendHandshakeReply()}var r=e.prototype;return r.sendHandshakeReply=function(){var n=this;return new P.Promise(function(o,a){var d=function c(i){if(i.data.postmate){if(i.data.postmate==="handshake"){n.child.removeEventListener("message",c,!1),i.source.postMessage({postmate:"handshake-reply",type:h},i.origin),n.parentOrigin=i.origin;var s=i.data.model;return s&&Object.keys(s).forEach(function(p){n.model[p]=s[p];}),o(new Oe(n))}return a("Handshake Reply Failed")}};n.child.addEventListener("message",d,!1);})},e}();var q=P;var V=(o=>(o.closed="closed",o.canceled="canceled",o.completed="completed",o.clicked="clicked",o))(V||{}),H=(t=>(t.propsReceived="propsReceived",t.started="started",t))(H||{});var z="footprint-inline-container",J="footprint-body-locked",X="footprint-overlay",Y="footprint-overlay-container",Z=z,W=X,G="footprint-loading-indicator",y=(e,r)=>`${e}-${r}`,Q=e=>m(void 0,null,function*(){F(e),ke(e),yield Ve(e);}),ee=e=>{let r=y(Y,e),t=document.getElementById(r);if(t)return t;let n=document.createElement("div");return n.setAttribute("id",r),document.body.appendChild(n),n},Ve=e=>m(void 0,null,function*(){let r=y(Y,e),t=document.getElementById(r);if(!t)return;let n=t.querySelector("iframe.footprint-drawer");n&&(n==null||n.classList.add("footprint-drawer-closing"),yield new Promise(c=>{setTimeout(c,300);}));let o=t.querySelector("iframe.footprint-modal");o&&(o==null||o.classList.add("footprint-modal-closing"),yield new Promise(c=>{setTimeout(c,100);}));let a=y(W,e),d=document.getElementById(a);d&&(d.classList.add("footprint-overlay-fading"),yield new Promise(c=>{setTimeout(c,200);}),t.remove(),d.remove(),document.body.classList.remove(J));}),te=(e,r)=>{let t=y(Z,e),n=document.createElement("div");return n.classList.add(z),n.setAttribute("id",t),r.appendChild(n),n},ke=e=>{let r=y(Z,e),t=document.getElementById(r);t&&t.remove();},F=e=>{let r=y(G,e),t=document.getElementById(r);t&&t.remove();},S=(e,r)=>{let t=y(G,r),n=Ae(t);e.appendChild(n);},re=(e,r)=>{document.body.classList.add(J);let t=document.createElement("div"),n=y(W,r);return t.setAttribute("id",n),t.classList.add(X),e.appendChild(t),t},Ae=e=>{let r=document.createElement("div");r.setAttribute("id",e),r.classList.add("footprint-loading-indicator");let t=document.createElement("div");t.classList.add("footprint-loading-spin");let n=document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("width","24px"),n.setAttribute("height","24px"),n.setAttribute("fill","none"),n.setAttribute("aria-hidden","true");let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d","M12 2a10 10 0 0 1 10 10h-2a7.999 7.999 0 0 0-8-8V2Z"),n.appendChild(o),t.appendChild(n),r.appendChild(t),r};var Re=()=>`${Math.floor(Math.random()*1e3)}`,k=Re;var b=(o=>(o.Verify="verify",o.Form="form",o.Render="render",o.VerifyButton="verify-button",o))(b||{}),ne=(o=>(o.cardOnly="cardOnly",o.cardAndName="cardAndName",o.cardAndNameAndAddress="cardAndNameAndAddress",o.cardAndZip="cardAndZip",o))(ne||{});var _={["form"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify-button"]:{["clicked"]:"onClick"},["render"]:{}},oe={["form"]:[],["verify"]:[],["render"]:[],["verify-button"]:[]};var ae={["verify"]:["modal","drawer"],["verify-button"]:["inline"],["form"]:["inline","modal","drawer"],["render"]:["inline"]},D=(e,r)=>{var o;if(!r)return;let t=(o=ae[e])!=null?o:[];if(!t.includes(r))throw new Error(`Invalid variant: ${JSON.stringify(r)}. Valid variants for ${e} are ${t.join(", ")}`)},w=e=>{var t;let r=(t=ae[e])!=null?t:[];if(!r.length)throw new Error(`Invalid kind: ${e}`);return r[0]},B=e=>{if(!e)throw new Error("Kind is required");if(!Object.values(b).includes(e))throw new Error(`Invalid kind: ${e}. Valid kinds are: ${Object.values(b).join(", ")}}`)},xe=(e,r)=>{if(e==="inline"&&!r)throw new Error(`Inline component requires a containerId. Received ${r}`)},Le=e=>{let{kind:r}=e;if(r==="verify-button"){let t=e,{kind:n,appearance:o,variant:a,dialogVariant:d,onClick:c,label:i,containerId:s}=t,p=L(t,["kind","appearance","variant","dialogVariant","onClick","label","containerId"]);return x(C({},p),{variant:d,kind:"verify"})}},ie=(e,r,t)=>{var d;let{kind:n}=e,o=(d=_[n])!=null?d:{},a={};return Object.entries(o).forEach(([c,i])=>{let s=c;if(!Object.values(V).includes(s))return;let p=e[i];(!p||typeof p!="function")&&(p=()=>{});let f=s==="closed"||s==="canceled",g=n==="verify-button"&&s==="clicked";a[s]=()=>{p(),f&&(r==null||r());let u=Le(e);g&&u&&(t==null||t(u));};}),a},se=e=>{var s;let i=e,{kind:r,appearance:t,containerId:n}=i,o=L(i,["kind","appearance","containerId"]),a=(s=_[r])!=null?s:{},d=Object.values(a);return Object.fromEntries(Object.entries(o).filter(([p])=>!d.includes(p)))},A=e=>{let{kind:r,variant:t,containerId:n}=e;B(r),D(r,t);let o=t||w(r);return xe(o,n),x(C({},e),{variant:o})};var Ne=e=>typeof e=="object"&&!!e,K=({fontSrc:e,variables:r={},rules:t={},variant:n}={})=>{let o=()=>Object.keys(r).length?encodeURIComponent(JSON.stringify(r)):void 0,a=()=>Object.keys(t).length?encodeURIComponent(JSON.stringify(t)):void 0;return {fontSrc:e,variables:o(),rules:a(),variant:n}},de=()=>{let e=window.footprintAppearance;return !e||!Ne(e)?{}:{fontSrc:e.fontSrc,rules:e.rules,theme:e.theme,variables:e.variables}};var Fe=e=>{let{kind:r}=e;return r==="verify"?Se(e):_e(e)},Se=e=>{let{appearance:r,publicKey:t,variant:n,kind:o}=e,{fontSrc:a,rules:d,variables:c}=K(r),i="https://id.onefootprint.com",s=new URLSearchParams;t&&s.append("public_key",t),c&&s.append("variables",c),d&&s.append("rules",d),a&&s.append("font_src",a),s.append("variant",n!=null?n:w(o));let p=s.toString();return `${i}?${p}`},_e=e=>{let{appearance:r,kind:t,variant:n}=e,{fontSrc:o,rules:a,variables:d}=K(r),c="https://components.onefootprint.com",i=new URLSearchParams;d&&i.append("variables",d),a&&i.append("rules",a),o&&i.append("font_src",o),i.append("variant",n!=null?n:w(t));let s=i.toString();return `${c}/${t}?${s}`},ce=Fe;var De=e=>{let r=null,t=!1,n=A(e),{variant:o,containerId:a}=n,d=o==="modal"||o==="drawer",c,i,s=k(),p=()=>{if(!r)throw new Error("Footprint should be initialized in order to listen events");let l=ie(n,c,i);Object.entries(l).forEach(([E,R])=>{r==null||r.on(E,R);});},f=()=>{if(!r)throw new Error("Footprint should be initialized in order to receive props");r.call("propsReceived",se(n));},g=()=>{if(d)return ee(s);if(!a)throw new Error("containerId is required when rendering inline");let l=document.getElementById(a);if(!l)throw new Error(`Could not find container with id ${a} while rendering footprint`);return te(s,l)},u=(l,E)=>{if(!E){F(s),r==null||r.frame.classList.remove(`footprint-${o}-loading`),r==null||r.frame.classList.add(`footprint-${o}-loaded`);return}if(d){let R=re(l,s);S(R,s);}else S(l,s);};return {props:n,isRendered:t,render:()=>m(void 0,null,function*(){if(t)return;let l=g();l&&(l.hasChildNodes()&&(l.innerHTML=""),t=!0,u(l,!0),r=yield new q({classListArray:[`footprint-${o}`,`footprint-${o}-loading`],container:l,name:`footprint-iframe-${s}`,url:ce(n),allow:"otp-credentials; publickey-credentials-get *; camera *; clipboard-write;"}),p(),u(l,!1),r.on("started",()=>{f();}));}),destroy:()=>m(void 0,null,function*(){t&&(t=!1,yield Q(s),r&&(r.destroy(),r=null));}),registerEvent:(l,E)=>{l==="renderSecondary"&&(i=E),l==="destroy"&&(c=E);}}},M=De;var v=e=>{let r=A(e);return JSON.stringify(r)},Be=()=>{let e={};return {getOrCreate:a=>{let d=v(a.props),c=Object.values(e).find(i=>v(i.iframe.props)===d);return c?c.iframe:(e[d]={iframe:a,secondaryIframes:{}},a)},remove:a=>{let d=v(a.props),c=e[d];c&&(Object.keys(c.secondaryIframes).forEach(i=>{c.secondaryIframes[i].destroy();}),delete e[d]);},getOrCreateSecondary:(a,d)=>{let c=v(a.props),i=v(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while adding secondary");let{secondaryIframes:s}=e[c],p=Object.values(s).find(f=>v(f.props)===i);return p||(s[i]=d,d)},removeSecondary:(a,d)=>{let c=v(a.props),i=v(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while removing secondary");let{secondaryIframes:s}=e[c],p=s[i];p&&(p.destroy(),delete s[i]);}}},pe=Be;var Ke=()=>{let e=pe();return {init:t=>{let n=M(t),o=()=>m(void 0,null,function*(){e.remove(n),yield n.destroy();}),a=i=>m(void 0,null,function*(){e.removeSecondary(n,i),yield i.destroy();}),d=i=>m(void 0,null,function*(){let s=M(i);s=e.getOrCreateSecondary(n,s),s.registerEvent("destroy",()=>{a(s);}),s.render();});return {render:()=>m(void 0,null,function*(){n=e.getOrCreate(n),n.registerEvent("destroy",o),n.registerEvent("renderSecondary",d),yield n.render();}),destroy:o}}}},Me=Ke(),T=Me;var Te=e=>{window.setTimeout(e,0);},le=e=>typeof e=="object"&&!!e,$e=e=>{if(typeof window=="undefined")return;let r=o=>{var c;let a=(c=window.footprintCallbacks)!=null?c:{};if(!le(a))throw Error("`window.footprintCallbacks` must be a valid mapping from callback names to functions.");return oe[o].forEach(i=>{if(!a[i])throw Error(`Callback '${i}' must be defined in window.footprintCallbacks`)}),a},t=o=>{var u;let a=o.getAttribute("data-kind");B(a);let d=(u=o.getAttribute("data-variant"))!=null?u:w(a);D(a,d);let c=de(),i=r(a),s=o.getAttribute("data-props")||"",p;try{p=JSON.parse(s);}catch(I){throw Error("Could not parse `data-props` for footprint.")}if(!le(p))throw Error("`data-props` on the footprint element has to be a valid JSON object stringified.");let f=k();o.setAttribute("id",f),e.init(C(C({kind:a,variant:d,appearance:c,containerId:o.id},i),p)).render();},n=()=>{let o=document.querySelectorAll("[data-footprint]");o.length&&o.forEach(a=>{t(a);});};document.addEventListener("DOMContentLoaded",()=>Te(n));},me=$e;var fe=e=>m(void 0,null,function*(){let r=yield fetch("https://api.onefootprint.com/hosted/identify",{method:"POST",body:JSON.stringify(e)});if(!r.ok)throw Error(r.statusText);return (yield r.json()).user_found}),Ue=e=>m(void 0,null,function*(){if(!e)throw new Error("User data must be passed in order to identify an user");let r=e["id.email"],t=e["id.phone_number"];return r&&(yield fe({identifier:{email:r}}))?!0:t?yield fe({identifier:{phone_number:t}}):!1}),ue=Ue;var Mt=T;me(T);/*! Bundled license information:
var ve=Object.defineProperty,ge=Object.defineProperties;var he=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var $=(e,t,r)=>t in e?ve(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,w=(e,t)=>{for(var r in t||(t={}))U.call(t,r)&&$(e,r,t[r]);if(V)for(var r of V(t))j.call(t,r)&&$(e,r,t[r]);return e},F=(e,t)=>ge(e,he(t));var x=(e,t)=>{var r={};for(var n in e)U.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&V)for(var n of V(e))t.indexOf(n)<0&&j.call(e,n)&&(r[n]=e[n]);return r};var m=(e,t,r)=>new Promise((n,o)=>{var a=i=>{try{c(r.next(i));}catch(s){o(s);}},d=i=>{try{c(r.throw(i));}catch(s){o(s);}},c=i=>i.done?n(i.value):Promise.resolve(i.value).then(a,d);c((r=r.apply(e,t)).next());});var E="application/x-postmate-v1+json",Pe=5,Ee=0,Ce=function(){return ++Ee};var we=function(t){var r=document.createElement("a");r.href=t;var n=r.protocol.length>4?r.protocol:window.location.protocol,o=r.host.length?r.port==="80"||r.port==="443"?r.hostname:r.host:window.location.host;return r.origin||n+"//"+o},Ie={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},L=function(t,r){return !(typeof r=="string"&&t.origin!==r||!t.data||typeof t.data=="object"&&!("postmate"in t.data)||t.data.type!==E||!Ie[t.data.postmate])},be=function(t,r){var n=typeof t[r]=="function"?t[r]():t[r];return C.Promise.resolve(n)},Oe=function(){function e(r){var n=this;this.parent=r.parent,this.frame=r.frame,this.child=r.child,this.childOrigin=r.childOrigin,this.events={},this.listener=function(o){if(!L(o,n.childOrigin))return !1;var a=((o||{}).data||{}).value||{},d=a.data,c=a.name;o.data.postmate==="emit"&&c in n.events&&n.events[c].forEach(function(i){i.call(n,d);});},this.parent.addEventListener("message",this.listener,!1);}var t=e.prototype;return t.get=function(n){var o=this;return new C.Promise(function(a){var d=Ce(),c=function i(s){s.data.uid===d&&s.data.postmate==="reply"&&(o.parent.removeEventListener("message",i,!1),a(s.data.value));};o.parent.addEventListener("message",c,!1),o.child.postMessage({postmate:"request",type:E,property:n,uid:d},o.childOrigin);})},t.call=function(n,o){this.child.postMessage({postmate:"call",type:E,property:n,data:o},this.childOrigin);},t.on=function(n,o){this.events[n]||(this.events[n]=[]),this.events[n].push(o);},t.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame);},e}(),Ve=function(){function e(r){var n=this;this.model=r.model,this.parent=r.parent,this.parentOrigin=r.parentOrigin,this.child=r.child,this.child.addEventListener("message",function(o){if(L(o,n.parentOrigin)){var a=o.data,d=a.property,c=a.uid,i=a.data;if(o.data.postmate==="call"){d in n.model&&typeof n.model[d]=="function"&&n.model[d](i);return}be(n.model,d).then(function(s){return o.source.postMessage({property:d,postmate:"reply",type:E,uid:c,value:s},o.origin)});}});}var t=e.prototype;return t.emit=function(n,o){this.parent.postMessage({postmate:"emit",type:E,value:{name:n,data:o}},this.parentOrigin);},e}(),C=function(){function e(r){var n=r.container,o=n===void 0?typeof o!="undefined"?o:document.body:n,a=r.model,d=r.url,c=r.name,i=c===void 0?"":c,s=r.allow,p=r.classListArray,f=p===void 0?[]:p;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=i||"",this.frame.classList.add.apply(this.frame.classList,f),s&&(this.frame.allow=s),o.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=a||{},this.sendHandshake(d)}var t=e.prototype;return t.sendHandshake=function(n){var o=this,a=we(n),d=0,c;return new e.Promise(function(i,s){var p=function u(P){return L(P,a)?P.data.postmate==="handshake-reply"?(clearInterval(c),o.parent.removeEventListener("message",u,!1),o.childOrigin=P.origin,i(new Oe(o))):s("Failed handshake"):!1};o.parent.addEventListener("message",p,!1);var f=function(){d++,o.child.postMessage({postmate:"handshake",type:E,model:o.model},a),d===Pe&&clearInterval(c);},y=function(){f(),c=setInterval(f,500);};o.frame.attachEvent?o.frame.attachEvent("onload",y):o.frame.addEventListener("load",y),o.frame.src=n;})},e}();C.debug=!1;C.Promise=function(){try{return window?window.Promise:Promise}catch(e){return null}}();C.Model=function(){function e(r){return this.child=window,this.model=r,this.parent=this.child.parent,this.sendHandshakeReply()}var t=e.prototype;return t.sendHandshakeReply=function(){var n=this;return new C.Promise(function(o,a){var d=function c(i){if(i.data.postmate){if(i.data.postmate==="handshake"){n.child.removeEventListener("message",c,!1),i.source.postMessage({postmate:"handshake-reply",type:E},i.origin),n.parentOrigin=i.origin;var s=i.data.model;return s&&Object.keys(s).forEach(function(p){n.model[p]=s[p];}),o(new Ve(n))}return a("Handshake Reply Failed")}};n.child.addEventListener("message",d,!1);})},e}();var q=C;var b=(o=>(o.Verify="verify",o.Form="form",o.Render="render",o.VerifyButton="verify-button",o))(b||{}),H=(o=>(o.cardOnly="cardOnly",o.cardAndName="cardAndName",o.cardAndNameAndAddress="cardAndNameAndAddress",o.cardAndZip="cardAndZip",o))(H||{});var R=(o=>(o.closed="closed",o.canceled="canceled",o.completed="completed",o.clicked="clicked",o))(R||{}),z=(n=>(n.propsReceived="propsReceived",n.started="started",n.formSaved="formSaved",n))(z||{});var J="footprint-inline-container",X="footprint-body-locked",Y="footprint-overlay",Z="footprint-overlay-container",W=J,G=Y,Q="footprint-loading-indicator",g=(e,t)=>`${e}-${t}`,ee=e=>m(void 0,null,function*(){N(e),ke(e),yield Re(e);}),te=e=>{let t=g(Z,e),r=document.getElementById(t);if(r)return r;let n=document.createElement("div");return n.setAttribute("id",t),document.body.appendChild(n),n},Re=e=>m(void 0,null,function*(){let t=g(Z,e),r=document.getElementById(t);if(!r)return;let n=r.querySelector("iframe.footprint-drawer");n&&(n==null||n.classList.add("footprint-drawer-closing"),yield new Promise(c=>{setTimeout(c,300);}));let o=r.querySelector("iframe.footprint-modal");o&&(o==null||o.classList.add("footprint-modal-closing"),yield new Promise(c=>{setTimeout(c,100);}));let a=g(G,e),d=document.getElementById(a);d&&(d.classList.add("footprint-overlay-fading"),yield new Promise(c=>{setTimeout(c,200);}),r.remove(),d.remove(),document.body.classList.remove(X));}),re=(e,t)=>{let r=g(W,e),n=document.createElement("div");return n.classList.add(J),n.setAttribute("id",r),t.appendChild(n),n},ke=e=>{let t=g(W,e),r=document.getElementById(t);r&&r.remove();},N=e=>{let t=g(Q,e),r=document.getElementById(t);r&&r.remove();},S=(e,t)=>{let r=g(Q,t),n=Ae(r);e.appendChild(n);},ne=(e,t)=>{document.body.classList.add(X);let r=document.createElement("div"),n=g(G,t);return r.setAttribute("id",n),r.classList.add(Y),e.appendChild(r),r},Ae=e=>{let t=document.createElement("div");t.setAttribute("id",e),t.classList.add("footprint-loading-indicator");let r=document.createElement("div");r.classList.add("footprint-loading-spin");let n=document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("width","24px"),n.setAttribute("height","24px"),n.setAttribute("fill","none"),n.setAttribute("aria-hidden","true");let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d","M12 2a10 10 0 0 1 10 10h-2a7.999 7.999 0 0 0-8-8V2Z"),n.appendChild(o),r.appendChild(n),t.appendChild(r),t};var Fe=()=>`${Math.floor(Math.random()*1e3)}`,k=Fe;var _={["form"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify-button"]:{["clicked"]:"onClick"},["render"]:{}},oe={["form"]:[],["verify"]:[],["render"]:[],["verify-button"]:[]};var xe={["form"]:["getRef"],["verify"]:[],["verify-button"]:[],["render"]:[]},ae=xe;var ie={["verify"]:["modal","drawer"],["verify-button"]:["inline"],["form"]:["inline","modal","drawer"],["render"]:["inline"]},D=(e,t)=>{var o;if(!t)return;let r=(o=ie[e])!=null?o:[];if(!r.includes(t))throw new Error(`Invalid variant: ${JSON.stringify(t)}. Valid variants for ${e} are ${r.join(", ")}`)},I=e=>{var r;let t=(r=ie[e])!=null?r:[];if(!t.length)throw new Error(`Invalid kind: ${e}`);return t[0]},B=e=>{if(!e)throw new Error("Kind is required");if(!Object.values(b).includes(e))throw new Error(`Invalid kind: ${e}. Valid kinds are: ${Object.values(b).join(", ")}}`)},Le=(e,t)=>{if(e==="inline"&&!t)throw new Error(`Inline component requires a containerId. Received ${t}`)},Ne=e=>{let{kind:t}=e;if(t==="verify-button"){let r=e,{kind:n,appearance:o,variant:a,dialogVariant:d,onClick:c,label:i,containerId:s}=r,p=x(r,["kind","appearance","variant","dialogVariant","onClick","label","containerId"]);return F(w({},p),{variant:d,kind:"verify"})}},Se=e=>{var n;let{kind:t}=e;return (n=ae[t])!=null?n:[]},se=(e,t,r)=>{var d;let{kind:n}=e,o=(d=_[n])!=null?d:{},a={};return Object.entries(o).forEach(([c,i])=>{let s=c;if(!Object.values(R).includes(s))return;let p=e[i];(!p||typeof p!="function")&&(p=()=>{});let f=s==="closed"||s==="canceled",y=n==="verify-button"&&s==="clicked";a[s]=()=>{p(),f&&(t==null||t());let u=Ne(e);y&&u&&(r==null||r(u));};}),a},de=e=>{var f;let p=e,{kind:t,appearance:r,containerId:n}=p,o=x(p,["kind","appearance","containerId"]),a=(f=_[t])!=null?f:{},d=Object.values(a),c=Se(e),i=Object.values(c);return Object.fromEntries(Object.entries(o).filter(([y])=>!d.includes(y)&&!i.includes(y)))},A=e=>{let{kind:t,variant:r,containerId:n}=e;B(t),D(t,r);let o=r||I(t);return Le(o,n),F(w({},e),{variant:o})};var _e=e=>typeof e=="object"&&!!e,K=({fontSrc:e,variables:t={},rules:r={},variant:n}={})=>{let o=()=>Object.keys(t).length?encodeURIComponent(JSON.stringify(t)):void 0,a=()=>Object.keys(r).length?encodeURIComponent(JSON.stringify(r)):void 0;return {fontSrc:e,variables:o(),rules:a(),variant:n}},ce=()=>{let e=window.footprintAppearance;return !e||!_e(e)?{}:{fontSrc:e.fontSrc,rules:e.rules,theme:e.theme,variables:e.variables}};var De=e=>{let{kind:t}=e;return t==="verify"?Be(e):Ke(e)},Be=e=>{let{appearance:t,publicKey:r,variant:n,kind:o}=e,{fontSrc:a,rules:d,variables:c}=K(t),i="https://id.onefootprint.com",s=new URLSearchParams;r&&s.append("public_key",r),c&&s.append("variables",c),d&&s.append("rules",d),a&&s.append("font_src",a),s.append("variant",n!=null?n:I(o));let p=s.toString();return `${i}?${p}`},Ke=e=>{let{appearance:t,kind:r,variant:n}=e,{fontSrc:o,rules:a,variables:d}=K(t),c="https://components.onefootprint.com",i=new URLSearchParams;d&&i.append("variables",d),a&&i.append("rules",a),o&&i.append("font_src",o),i.append("variant",n!=null?n:I(r));let s=i.toString();return `${c}/${r}?${s}`},pe=De;var Me=e=>{let t=null,r=!1,n=A(e),{variant:o,containerId:a}=n,d=o==="modal"||o==="drawer",c,i,s=k(),p=()=>{if(!t)throw new Error("Footprint should be initialized in order to listen events");let l=se(n,c,i);Object.entries(l).forEach(([v,O])=>{t==null||t.on(v,O);});},f=()=>{if(!t)throw new Error("Footprint should be initialized in order to set up refs");let{kind:l}=n;if(l!=="form")return;let{getRef:v}=n;if(!v)return;v({save:()=>{if(!t)throw new Error("Footprint should be initialized to call ref methods");t==null||t.call("formSaved");}});},y=()=>{if(!t)throw new Error("Footprint should be initialized in order to receive props");t.call("propsReceived",de(n));},u=()=>{if(d)return te(s);if(!a)throw new Error("containerId is required when rendering inline");let l=document.getElementById(a);if(!l)throw new Error(`Could not find container with id ${a} while rendering footprint`);return re(s,l)},P=(l,v)=>{if(!v){N(s),t==null||t.frame.classList.remove(`footprint-${o}-loading`),t==null||t.frame.classList.add(`footprint-${o}-loaded`);return}if(d){let O=ne(l,s);S(O,s);}else S(l,s);};return {props:n,isRendered:r,render:()=>m(void 0,null,function*(){if(r)return;let l=u();l&&(l.hasChildNodes()&&(l.innerHTML=""),r=!0,P(l,!0),t=yield new q({classListArray:[`footprint-${o}`,`footprint-${o}-loading`],container:l,name:`footprint-iframe-${s}`,url:pe(n),allow:"otp-credentials; publickey-credentials-get *; camera *; clipboard-write;"}),p(),P(l,!1),t.on("started",()=>{y(),f();}));}),destroy:()=>m(void 0,null,function*(){r&&(r=!1,yield ee(s),t&&(t.destroy(),t=null));}),registerEvent:(l,v)=>{l==="renderSecondary"&&(i=v),l==="destroy"&&(c=v);}}},M=Me;var h=e=>{let t=A(e);return JSON.stringify(t)},Te=()=>{let e={};return {getOrCreate:a=>{let d=h(a.props),c=Object.values(e).find(i=>h(i.iframe.props)===d);return c?c.iframe:(e[d]={iframe:a,secondaryIframes:{}},a)},remove:a=>{let d=h(a.props),c=e[d];c&&(Object.keys(c.secondaryIframes).forEach(i=>{c.secondaryIframes[i].destroy();}),delete e[d]);},getOrCreateSecondary:(a,d)=>{let c=h(a.props),i=h(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while adding secondary");let{secondaryIframes:s}=e[c],p=Object.values(s).find(f=>h(f.props)===i);return p||(s[i]=d,d)},removeSecondary:(a,d)=>{let c=h(a.props),i=h(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while removing secondary");let{secondaryIframes:s}=e[c],p=s[i];p&&(p.destroy(),delete s[i]);}}},le=Te;var $e=()=>{let e=le();return {init:r=>{let n=M(r),o=()=>m(void 0,null,function*(){e.remove(n),yield n.destroy();}),a=i=>m(void 0,null,function*(){e.removeSecondary(n,i),yield i.destroy();}),d=i=>m(void 0,null,function*(){let s=M(i);s=e.getOrCreateSecondary(n,s),s.registerEvent("destroy",()=>{a(s);}),s.render();});return {render:()=>m(void 0,null,function*(){n=e.getOrCreate(n),n.registerEvent("destroy",o),n.registerEvent("renderSecondary",d),yield n.render();}),destroy:o}}}},Ue=$e(),T=Ue;var je=e=>{window.setTimeout(e,0);},fe=e=>typeof e=="object"&&!!e,qe=e=>{if(typeof window=="undefined")return;let t=o=>{var c;let a=(c=window.footprintCallbacks)!=null?c:{};if(!fe(a))throw Error("`window.footprintCallbacks` must be a valid mapping from callback names to functions.");return oe[o].forEach(i=>{if(!a[i])throw Error(`Callback '${i}' must be defined in window.footprintCallbacks`)}),a},r=o=>{var u;let a=o.getAttribute("data-kind");B(a);let d=(u=o.getAttribute("data-variant"))!=null?u:I(a);D(a,d);let c=ce(),i=t(a),s=o.getAttribute("data-props")||"",p;try{p=JSON.parse(s);}catch(P){throw Error("Could not parse `data-props` for footprint.")}if(!fe(p))throw Error("`data-props` on the footprint element has to be a valid JSON object stringified.");let f=k();o.setAttribute("id",f),e.init(w(w({kind:a,variant:d,appearance:c,containerId:o.id},i),p)).render();},n=()=>{let o=document.querySelectorAll("[data-footprint]");o.length&&o.forEach(a=>{r(a);});};document.addEventListener("DOMContentLoaded",()=>je(n));},me=qe;var ue=e=>m(void 0,null,function*(){let t=yield fetch("https://api.onefootprint.com/hosted/identify",{method:"POST",body:JSON.stringify(e)});if(!t.ok)throw Error(t.statusText);return (yield t.json()).user_found}),He=e=>m(void 0,null,function*(){if(!e)throw new Error("User data must be passed in order to identify an user");let t=e["id.email"],r=e["id.phone_number"];return t&&(yield ue({identifier:{email:t}}))?!0:r?yield ue({identifier:{phone_number:r}}):!1}),ye=He;var Ht=T;me(T);/*! Bundled license information:

@@ -13,2 +13,2 @@ @onefootprint/postmate/build/postmate.es.js:

export { b as FootprintComponentKind, ne as FootprintFormType, H as FootprintPrivateEvent, V as FootprintPublicEvent, Mt as default, ue as identifyFootprintUser };
export { b as FootprintComponentKind, H as FootprintFormType, z as FootprintPrivateEvent, R as FootprintPublicEvent, Ht as default, ye as identifyFootprintUser };
(function (exports) {
'use strict';
var ye=Object.defineProperty,ve=Object.defineProperties;var ge=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var $=(e,r,t)=>r in e?ye(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,C=(e,r)=>{for(var t in r||(r={}))U.call(r,t)&&$(e,t,r[t]);if(O)for(var t of O(r))j.call(r,t)&&$(e,t,r[t]);return e},x=(e,r)=>ve(e,ge(r));var L=(e,r)=>{var t={};for(var n in e)U.call(e,n)&&r.indexOf(n)<0&&(t[n]=e[n]);if(e!=null&&O)for(var n of O(e))r.indexOf(n)<0&&j.call(e,n)&&(t[n]=e[n]);return t};var m=(e,r,t)=>new Promise((n,o)=>{var a=i=>{try{c(t.next(i));}catch(s){o(s);}},d=i=>{try{c(t.throw(i));}catch(s){o(s);}},c=i=>i.done?n(i.value):Promise.resolve(i.value).then(a,d);c((t=t.apply(e,r)).next());});var h="application/x-postmate-v1+json",he=5,Pe=0,Ee=function(){return ++Pe};var Ce=function(r){var t=document.createElement("a");t.href=r;var n=t.protocol.length>4?t.protocol:window.location.protocol,o=t.host.length?t.port==="80"||t.port==="443"?t.hostname:t.host:window.location.host;return t.origin||n+"//"+o},we={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},N=function(r,t){return !(typeof t=="string"&&r.origin!==t||!r.data||typeof r.data=="object"&&!("postmate"in r.data)||r.data.type!==h||!we[r.data.postmate])},Ie=function(r,t){var n=typeof r[t]=="function"?r[t]():r[t];return P.Promise.resolve(n)},be=function(){function e(t){var n=this;this.parent=t.parent,this.frame=t.frame,this.child=t.child,this.childOrigin=t.childOrigin,this.events={},this.listener=function(o){if(!N(o,n.childOrigin))return !1;var a=((o||{}).data||{}).value||{},d=a.data,c=a.name;o.data.postmate==="emit"&&c in n.events&&n.events[c].forEach(function(i){i.call(n,d);});},this.parent.addEventListener("message",this.listener,!1);}var r=e.prototype;return r.get=function(n){var o=this;return new P.Promise(function(a){var d=Ee(),c=function i(s){s.data.uid===d&&s.data.postmate==="reply"&&(o.parent.removeEventListener("message",i,!1),a(s.data.value));};o.parent.addEventListener("message",c,!1),o.child.postMessage({postmate:"request",type:h,property:n,uid:d},o.childOrigin);})},r.call=function(n,o){this.child.postMessage({postmate:"call",type:h,property:n,data:o},this.childOrigin);},r.on=function(n,o){this.events[n]||(this.events[n]=[]),this.events[n].push(o);},r.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame);},e}(),Oe=function(){function e(t){var n=this;this.model=t.model,this.parent=t.parent,this.parentOrigin=t.parentOrigin,this.child=t.child,this.child.addEventListener("message",function(o){if(N(o,n.parentOrigin)){var a=o.data,d=a.property,c=a.uid,i=a.data;if(o.data.postmate==="call"){d in n.model&&typeof n.model[d]=="function"&&n.model[d](i);return}Ie(n.model,d).then(function(s){return o.source.postMessage({property:d,postmate:"reply",type:h,uid:c,value:s},o.origin)});}});}var r=e.prototype;return r.emit=function(n,o){this.parent.postMessage({postmate:"emit",type:h,value:{name:n,data:o}},this.parentOrigin);},e}(),P=function(){function e(t){var n=t.container,o=n===void 0?typeof o!="undefined"?o:document.body:n,a=t.model,d=t.url,c=t.name,i=c===void 0?"":c,s=t.allow,p=t.classListArray,f=p===void 0?[]:p;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=i||"",this.frame.classList.add.apply(this.frame.classList,f),s&&(this.frame.allow=s),o.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=a||{},this.sendHandshake(d)}var r=e.prototype;return r.sendHandshake=function(n){var o=this,a=Ce(n),d=0,c;return new e.Promise(function(i,s){var p=function u(I){return N(I,a)?I.data.postmate==="handshake-reply"?(clearInterval(c),o.parent.removeEventListener("message",u,!1),o.childOrigin=I.origin,i(new be(o))):s("Failed handshake"):!1};o.parent.addEventListener("message",p,!1);var f=function(){d++,o.child.postMessage({postmate:"handshake",type:h,model:o.model},a),d===he&&clearInterval(c);},g=function(){f(),c=setInterval(f,500);};o.frame.attachEvent?o.frame.attachEvent("onload",g):o.frame.addEventListener("load",g),o.frame.src=n;})},e}();P.debug=!1;P.Promise=function(){try{return window?window.Promise:Promise}catch(e){return null}}();P.Model=function(){function e(t){return this.child=window,this.model=t,this.parent=this.child.parent,this.sendHandshakeReply()}var r=e.prototype;return r.sendHandshakeReply=function(){var n=this;return new P.Promise(function(o,a){var d=function c(i){if(i.data.postmate){if(i.data.postmate==="handshake"){n.child.removeEventListener("message",c,!1),i.source.postMessage({postmate:"handshake-reply",type:h},i.origin),n.parentOrigin=i.origin;var s=i.data.model;return s&&Object.keys(s).forEach(function(p){n.model[p]=s[p];}),o(new Oe(n))}return a("Handshake Reply Failed")}};n.child.addEventListener("message",d,!1);})},e}();var q=P;var V=(o=>(o.closed="closed",o.canceled="canceled",o.completed="completed",o.clicked="clicked",o))(V||{}),H=(t=>(t.propsReceived="propsReceived",t.started="started",t))(H||{});var z="footprint-inline-container",J="footprint-body-locked",X="footprint-overlay",Y="footprint-overlay-container",Z=z,W=X,G="footprint-loading-indicator",y=(e,r)=>`${e}-${r}`,Q=e=>m(void 0,null,function*(){F(e),ke(e),yield Ve(e);}),ee=e=>{let r=y(Y,e),t=document.getElementById(r);if(t)return t;let n=document.createElement("div");return n.setAttribute("id",r),document.body.appendChild(n),n},Ve=e=>m(void 0,null,function*(){let r=y(Y,e),t=document.getElementById(r);if(!t)return;let n=t.querySelector("iframe.footprint-drawer");n&&(n==null||n.classList.add("footprint-drawer-closing"),yield new Promise(c=>{setTimeout(c,300);}));let o=t.querySelector("iframe.footprint-modal");o&&(o==null||o.classList.add("footprint-modal-closing"),yield new Promise(c=>{setTimeout(c,100);}));let a=y(W,e),d=document.getElementById(a);d&&(d.classList.add("footprint-overlay-fading"),yield new Promise(c=>{setTimeout(c,200);}),t.remove(),d.remove(),document.body.classList.remove(J));}),te=(e,r)=>{let t=y(Z,e),n=document.createElement("div");return n.classList.add(z),n.setAttribute("id",t),r.appendChild(n),n},ke=e=>{let r=y(Z,e),t=document.getElementById(r);t&&t.remove();},F=e=>{let r=y(G,e),t=document.getElementById(r);t&&t.remove();},S=(e,r)=>{let t=y(G,r),n=Ae(t);e.appendChild(n);},re=(e,r)=>{document.body.classList.add(J);let t=document.createElement("div"),n=y(W,r);return t.setAttribute("id",n),t.classList.add(X),e.appendChild(t),t},Ae=e=>{let r=document.createElement("div");r.setAttribute("id",e),r.classList.add("footprint-loading-indicator");let t=document.createElement("div");t.classList.add("footprint-loading-spin");let n=document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("width","24px"),n.setAttribute("height","24px"),n.setAttribute("fill","none"),n.setAttribute("aria-hidden","true");let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d","M12 2a10 10 0 0 1 10 10h-2a7.999 7.999 0 0 0-8-8V2Z"),n.appendChild(o),t.appendChild(n),r.appendChild(t),r};var Re=()=>`${Math.floor(Math.random()*1e3)}`,k=Re;var b=(o=>(o.Verify="verify",o.Form="form",o.Render="render",o.VerifyButton="verify-button",o))(b||{}),ne=(o=>(o.cardOnly="cardOnly",o.cardAndName="cardAndName",o.cardAndNameAndAddress="cardAndNameAndAddress",o.cardAndZip="cardAndZip",o))(ne||{});var _={["form"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify-button"]:{["clicked"]:"onClick"},["render"]:{}},oe={["form"]:[],["verify"]:[],["render"]:[],["verify-button"]:[]};var ae={["verify"]:["modal","drawer"],["verify-button"]:["inline"],["form"]:["inline","modal","drawer"],["render"]:["inline"]},D=(e,r)=>{var o;if(!r)return;let t=(o=ae[e])!=null?o:[];if(!t.includes(r))throw new Error(`Invalid variant: ${JSON.stringify(r)}. Valid variants for ${e} are ${t.join(", ")}`)},w=e=>{var t;let r=(t=ae[e])!=null?t:[];if(!r.length)throw new Error(`Invalid kind: ${e}`);return r[0]},B=e=>{if(!e)throw new Error("Kind is required");if(!Object.values(b).includes(e))throw new Error(`Invalid kind: ${e}. Valid kinds are: ${Object.values(b).join(", ")}}`)},xe=(e,r)=>{if(e==="inline"&&!r)throw new Error(`Inline component requires a containerId. Received ${r}`)},Le=e=>{let{kind:r}=e;if(r==="verify-button"){let t=e,{kind:n,appearance:o,variant:a,dialogVariant:d,onClick:c,label:i,containerId:s}=t,p=L(t,["kind","appearance","variant","dialogVariant","onClick","label","containerId"]);return x(C({},p),{variant:d,kind:"verify"})}},ie=(e,r,t)=>{var d;let{kind:n}=e,o=(d=_[n])!=null?d:{},a={};return Object.entries(o).forEach(([c,i])=>{let s=c;if(!Object.values(V).includes(s))return;let p=e[i];(!p||typeof p!="function")&&(p=()=>{});let f=s==="closed"||s==="canceled",g=n==="verify-button"&&s==="clicked";a[s]=()=>{p(),f&&(r==null||r());let u=Le(e);g&&u&&(t==null||t(u));};}),a},se=e=>{var s;let i=e,{kind:r,appearance:t,containerId:n}=i,o=L(i,["kind","appearance","containerId"]),a=(s=_[r])!=null?s:{},d=Object.values(a);return Object.fromEntries(Object.entries(o).filter(([p])=>!d.includes(p)))},A=e=>{let{kind:r,variant:t,containerId:n}=e;B(r),D(r,t);let o=t||w(r);return xe(o,n),x(C({},e),{variant:o})};var Ne=e=>typeof e=="object"&&!!e,K=({fontSrc:e,variables:r={},rules:t={},variant:n}={})=>{let o=()=>Object.keys(r).length?encodeURIComponent(JSON.stringify(r)):void 0,a=()=>Object.keys(t).length?encodeURIComponent(JSON.stringify(t)):void 0;return {fontSrc:e,variables:o(),rules:a(),variant:n}},de=()=>{let e=window.footprintAppearance;return !e||!Ne(e)?{}:{fontSrc:e.fontSrc,rules:e.rules,theme:e.theme,variables:e.variables}};var Fe=e=>{let{kind:r}=e;return r==="verify"?Se(e):_e(e)},Se=e=>{let{appearance:r,publicKey:t,variant:n,kind:o}=e,{fontSrc:a,rules:d,variables:c}=K(r),i="https://id.onefootprint.com",s=new URLSearchParams;t&&s.append("public_key",t),c&&s.append("variables",c),d&&s.append("rules",d),a&&s.append("font_src",a),s.append("variant",n!=null?n:w(o));let p=s.toString();return `${i}?${p}`},_e=e=>{let{appearance:r,kind:t,variant:n}=e,{fontSrc:o,rules:a,variables:d}=K(r),c="https://components.onefootprint.com",i=new URLSearchParams;d&&i.append("variables",d),a&&i.append("rules",a),o&&i.append("font_src",o),i.append("variant",n!=null?n:w(t));let s=i.toString();return `${c}/${t}?${s}`},ce=Fe;var De=e=>{let r=null,t=!1,n=A(e),{variant:o,containerId:a}=n,d=o==="modal"||o==="drawer",c,i,s=k(),p=()=>{if(!r)throw new Error("Footprint should be initialized in order to listen events");let l=ie(n,c,i);Object.entries(l).forEach(([E,R])=>{r==null||r.on(E,R);});},f=()=>{if(!r)throw new Error("Footprint should be initialized in order to receive props");r.call("propsReceived",se(n));},g=()=>{if(d)return ee(s);if(!a)throw new Error("containerId is required when rendering inline");let l=document.getElementById(a);if(!l)throw new Error(`Could not find container with id ${a} while rendering footprint`);return te(s,l)},u=(l,E)=>{if(!E){F(s),r==null||r.frame.classList.remove(`footprint-${o}-loading`),r==null||r.frame.classList.add(`footprint-${o}-loaded`);return}if(d){let R=re(l,s);S(R,s);}else S(l,s);};return {props:n,isRendered:t,render:()=>m(void 0,null,function*(){if(t)return;let l=g();l&&(l.hasChildNodes()&&(l.innerHTML=""),t=!0,u(l,!0),r=yield new q({classListArray:[`footprint-${o}`,`footprint-${o}-loading`],container:l,name:`footprint-iframe-${s}`,url:ce(n),allow:"otp-credentials; publickey-credentials-get *; camera *; clipboard-write;"}),p(),u(l,!1),r.on("started",()=>{f();}));}),destroy:()=>m(void 0,null,function*(){t&&(t=!1,yield Q(s),r&&(r.destroy(),r=null));}),registerEvent:(l,E)=>{l==="renderSecondary"&&(i=E),l==="destroy"&&(c=E);}}},M=De;var v=e=>{let r=A(e);return JSON.stringify(r)},Be=()=>{let e={};return {getOrCreate:a=>{let d=v(a.props),c=Object.values(e).find(i=>v(i.iframe.props)===d);return c?c.iframe:(e[d]={iframe:a,secondaryIframes:{}},a)},remove:a=>{let d=v(a.props),c=e[d];c&&(Object.keys(c.secondaryIframes).forEach(i=>{c.secondaryIframes[i].destroy();}),delete e[d]);},getOrCreateSecondary:(a,d)=>{let c=v(a.props),i=v(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while adding secondary");let{secondaryIframes:s}=e[c],p=Object.values(s).find(f=>v(f.props)===i);return p||(s[i]=d,d)},removeSecondary:(a,d)=>{let c=v(a.props),i=v(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while removing secondary");let{secondaryIframes:s}=e[c],p=s[i];p&&(p.destroy(),delete s[i]);}}},pe=Be;var Ke=()=>{let e=pe();return {init:t=>{let n=M(t),o=()=>m(void 0,null,function*(){e.remove(n),yield n.destroy();}),a=i=>m(void 0,null,function*(){e.removeSecondary(n,i),yield i.destroy();}),d=i=>m(void 0,null,function*(){let s=M(i);s=e.getOrCreateSecondary(n,s),s.registerEvent("destroy",()=>{a(s);}),s.render();});return {render:()=>m(void 0,null,function*(){n=e.getOrCreate(n),n.registerEvent("destroy",o),n.registerEvent("renderSecondary",d),yield n.render();}),destroy:o}}}},Me=Ke(),T=Me;var Te=e=>{window.setTimeout(e,0);},le=e=>typeof e=="object"&&!!e,$e=e=>{if(typeof window=="undefined")return;let r=o=>{var c;let a=(c=window.footprintCallbacks)!=null?c:{};if(!le(a))throw Error("`window.footprintCallbacks` must be a valid mapping from callback names to functions.");return oe[o].forEach(i=>{if(!a[i])throw Error(`Callback '${i}' must be defined in window.footprintCallbacks`)}),a},t=o=>{var u;let a=o.getAttribute("data-kind");B(a);let d=(u=o.getAttribute("data-variant"))!=null?u:w(a);D(a,d);let c=de(),i=r(a),s=o.getAttribute("data-props")||"",p;try{p=JSON.parse(s);}catch(I){throw Error("Could not parse `data-props` for footprint.")}if(!le(p))throw Error("`data-props` on the footprint element has to be a valid JSON object stringified.");let f=k();o.setAttribute("id",f),e.init(C(C({kind:a,variant:d,appearance:c,containerId:o.id},i),p)).render();},n=()=>{let o=document.querySelectorAll("[data-footprint]");o.length&&o.forEach(a=>{t(a);});};document.addEventListener("DOMContentLoaded",()=>Te(n));},me=$e;var fe=e=>m(void 0,null,function*(){let r=yield fetch("https://api.onefootprint.com/hosted/identify",{method:"POST",body:JSON.stringify(e)});if(!r.ok)throw Error(r.statusText);return (yield r.json()).user_found}),Ue=e=>m(void 0,null,function*(){if(!e)throw new Error("User data must be passed in order to identify an user");let r=e["id.email"],t=e["id.phone_number"];return r&&(yield fe({identifier:{email:r}}))?!0:t?yield fe({identifier:{phone_number:t}}):!1}),ue=Ue;var Mt=T;me(T);/*! Bundled license information:
var ve=Object.defineProperty,ge=Object.defineProperties;var he=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var U=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable;var $=(e,t,r)=>t in e?ve(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,w=(e,t)=>{for(var r in t||(t={}))U.call(t,r)&&$(e,r,t[r]);if(V)for(var r of V(t))j.call(t,r)&&$(e,r,t[r]);return e},F=(e,t)=>ge(e,he(t));var x=(e,t)=>{var r={};for(var n in e)U.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&V)for(var n of V(e))t.indexOf(n)<0&&j.call(e,n)&&(r[n]=e[n]);return r};var m=(e,t,r)=>new Promise((n,o)=>{var a=i=>{try{c(r.next(i));}catch(s){o(s);}},d=i=>{try{c(r.throw(i));}catch(s){o(s);}},c=i=>i.done?n(i.value):Promise.resolve(i.value).then(a,d);c((r=r.apply(e,t)).next());});var E="application/x-postmate-v1+json",Pe=5,Ee=0,Ce=function(){return ++Ee};var we=function(t){var r=document.createElement("a");r.href=t;var n=r.protocol.length>4?r.protocol:window.location.protocol,o=r.host.length?r.port==="80"||r.port==="443"?r.hostname:r.host:window.location.host;return r.origin||n+"//"+o},Ie={handshake:1,"handshake-reply":1,call:1,emit:1,reply:1,request:1},L=function(t,r){return !(typeof r=="string"&&t.origin!==r||!t.data||typeof t.data=="object"&&!("postmate"in t.data)||t.data.type!==E||!Ie[t.data.postmate])},be=function(t,r){var n=typeof t[r]=="function"?t[r]():t[r];return C.Promise.resolve(n)},Oe=function(){function e(r){var n=this;this.parent=r.parent,this.frame=r.frame,this.child=r.child,this.childOrigin=r.childOrigin,this.events={},this.listener=function(o){if(!L(o,n.childOrigin))return !1;var a=((o||{}).data||{}).value||{},d=a.data,c=a.name;o.data.postmate==="emit"&&c in n.events&&n.events[c].forEach(function(i){i.call(n,d);});},this.parent.addEventListener("message",this.listener,!1);}var t=e.prototype;return t.get=function(n){var o=this;return new C.Promise(function(a){var d=Ce(),c=function i(s){s.data.uid===d&&s.data.postmate==="reply"&&(o.parent.removeEventListener("message",i,!1),a(s.data.value));};o.parent.addEventListener("message",c,!1),o.child.postMessage({postmate:"request",type:E,property:n,uid:d},o.childOrigin);})},t.call=function(n,o){this.child.postMessage({postmate:"call",type:E,property:n,data:o},this.childOrigin);},t.on=function(n,o){this.events[n]||(this.events[n]=[]),this.events[n].push(o);},t.destroy=function(){window.removeEventListener("message",this.listener,!1),this.frame.parentNode.removeChild(this.frame);},e}(),Ve=function(){function e(r){var n=this;this.model=r.model,this.parent=r.parent,this.parentOrigin=r.parentOrigin,this.child=r.child,this.child.addEventListener("message",function(o){if(L(o,n.parentOrigin)){var a=o.data,d=a.property,c=a.uid,i=a.data;if(o.data.postmate==="call"){d in n.model&&typeof n.model[d]=="function"&&n.model[d](i);return}be(n.model,d).then(function(s){return o.source.postMessage({property:d,postmate:"reply",type:E,uid:c,value:s},o.origin)});}});}var t=e.prototype;return t.emit=function(n,o){this.parent.postMessage({postmate:"emit",type:E,value:{name:n,data:o}},this.parentOrigin);},e}(),C=function(){function e(r){var n=r.container,o=n===void 0?typeof o!="undefined"?o:document.body:n,a=r.model,d=r.url,c=r.name,i=c===void 0?"":c,s=r.allow,p=r.classListArray,f=p===void 0?[]:p;return this.parent=window,this.frame=document.createElement("iframe"),this.frame.name=i||"",this.frame.classList.add.apply(this.frame.classList,f),s&&(this.frame.allow=s),o.appendChild(this.frame),this.child=this.frame.contentWindow||this.frame.contentDocument.parentWindow,this.model=a||{},this.sendHandshake(d)}var t=e.prototype;return t.sendHandshake=function(n){var o=this,a=we(n),d=0,c;return new e.Promise(function(i,s){var p=function u(P){return L(P,a)?P.data.postmate==="handshake-reply"?(clearInterval(c),o.parent.removeEventListener("message",u,!1),o.childOrigin=P.origin,i(new Oe(o))):s("Failed handshake"):!1};o.parent.addEventListener("message",p,!1);var f=function(){d++,o.child.postMessage({postmate:"handshake",type:E,model:o.model},a),d===Pe&&clearInterval(c);},y=function(){f(),c=setInterval(f,500);};o.frame.attachEvent?o.frame.attachEvent("onload",y):o.frame.addEventListener("load",y),o.frame.src=n;})},e}();C.debug=!1;C.Promise=function(){try{return window?window.Promise:Promise}catch(e){return null}}();C.Model=function(){function e(r){return this.child=window,this.model=r,this.parent=this.child.parent,this.sendHandshakeReply()}var t=e.prototype;return t.sendHandshakeReply=function(){var n=this;return new C.Promise(function(o,a){var d=function c(i){if(i.data.postmate){if(i.data.postmate==="handshake"){n.child.removeEventListener("message",c,!1),i.source.postMessage({postmate:"handshake-reply",type:E},i.origin),n.parentOrigin=i.origin;var s=i.data.model;return s&&Object.keys(s).forEach(function(p){n.model[p]=s[p];}),o(new Ve(n))}return a("Handshake Reply Failed")}};n.child.addEventListener("message",d,!1);})},e}();var q=C;var b=(o=>(o.Verify="verify",o.Form="form",o.Render="render",o.VerifyButton="verify-button",o))(b||{}),H=(o=>(o.cardOnly="cardOnly",o.cardAndName="cardAndName",o.cardAndNameAndAddress="cardAndNameAndAddress",o.cardAndZip="cardAndZip",o))(H||{});var R=(o=>(o.closed="closed",o.canceled="canceled",o.completed="completed",o.clicked="clicked",o))(R||{}),z=(n=>(n.propsReceived="propsReceived",n.started="started",n.formSaved="formSaved",n))(z||{});var J="footprint-inline-container",X="footprint-body-locked",Y="footprint-overlay",Z="footprint-overlay-container",W=J,G=Y,Q="footprint-loading-indicator",g=(e,t)=>`${e}-${t}`,ee=e=>m(void 0,null,function*(){N(e),ke(e),yield Re(e);}),te=e=>{let t=g(Z,e),r=document.getElementById(t);if(r)return r;let n=document.createElement("div");return n.setAttribute("id",t),document.body.appendChild(n),n},Re=e=>m(void 0,null,function*(){let t=g(Z,e),r=document.getElementById(t);if(!r)return;let n=r.querySelector("iframe.footprint-drawer");n&&(n==null||n.classList.add("footprint-drawer-closing"),yield new Promise(c=>{setTimeout(c,300);}));let o=r.querySelector("iframe.footprint-modal");o&&(o==null||o.classList.add("footprint-modal-closing"),yield new Promise(c=>{setTimeout(c,100);}));let a=g(G,e),d=document.getElementById(a);d&&(d.classList.add("footprint-overlay-fading"),yield new Promise(c=>{setTimeout(c,200);}),r.remove(),d.remove(),document.body.classList.remove(X));}),re=(e,t)=>{let r=g(W,e),n=document.createElement("div");return n.classList.add(J),n.setAttribute("id",r),t.appendChild(n),n},ke=e=>{let t=g(W,e),r=document.getElementById(t);r&&r.remove();},N=e=>{let t=g(Q,e),r=document.getElementById(t);r&&r.remove();},S=(e,t)=>{let r=g(Q,t),n=Ae(r);e.appendChild(n);},ne=(e,t)=>{document.body.classList.add(X);let r=document.createElement("div"),n=g(G,t);return r.setAttribute("id",n),r.classList.add(Y),e.appendChild(r),r},Ae=e=>{let t=document.createElement("div");t.setAttribute("id",e),t.classList.add("footprint-loading-indicator");let r=document.createElement("div");r.classList.add("footprint-loading-spin");let n=document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("width","24px"),n.setAttribute("height","24px"),n.setAttribute("fill","none"),n.setAttribute("aria-hidden","true");let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d","M12 2a10 10 0 0 1 10 10h-2a7.999 7.999 0 0 0-8-8V2Z"),n.appendChild(o),r.appendChild(n),t.appendChild(r),t};var Fe=()=>`${Math.floor(Math.random()*1e3)}`,k=Fe;var _={["form"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify"]:{["closed"]:"onClose",["canceled"]:"onCancel",["completed"]:"onComplete"},["verify-button"]:{["clicked"]:"onClick"},["render"]:{}},oe={["form"]:[],["verify"]:[],["render"]:[],["verify-button"]:[]};var xe={["form"]:["getRef"],["verify"]:[],["verify-button"]:[],["render"]:[]},ae=xe;var ie={["verify"]:["modal","drawer"],["verify-button"]:["inline"],["form"]:["inline","modal","drawer"],["render"]:["inline"]},D=(e,t)=>{var o;if(!t)return;let r=(o=ie[e])!=null?o:[];if(!r.includes(t))throw new Error(`Invalid variant: ${JSON.stringify(t)}. Valid variants for ${e} are ${r.join(", ")}`)},I=e=>{var r;let t=(r=ie[e])!=null?r:[];if(!t.length)throw new Error(`Invalid kind: ${e}`);return t[0]},B=e=>{if(!e)throw new Error("Kind is required");if(!Object.values(b).includes(e))throw new Error(`Invalid kind: ${e}. Valid kinds are: ${Object.values(b).join(", ")}}`)},Le=(e,t)=>{if(e==="inline"&&!t)throw new Error(`Inline component requires a containerId. Received ${t}`)},Ne=e=>{let{kind:t}=e;if(t==="verify-button"){let r=e,{kind:n,appearance:o,variant:a,dialogVariant:d,onClick:c,label:i,containerId:s}=r,p=x(r,["kind","appearance","variant","dialogVariant","onClick","label","containerId"]);return F(w({},p),{variant:d,kind:"verify"})}},Se=e=>{var n;let{kind:t}=e;return (n=ae[t])!=null?n:[]},se=(e,t,r)=>{var d;let{kind:n}=e,o=(d=_[n])!=null?d:{},a={};return Object.entries(o).forEach(([c,i])=>{let s=c;if(!Object.values(R).includes(s))return;let p=e[i];(!p||typeof p!="function")&&(p=()=>{});let f=s==="closed"||s==="canceled",y=n==="verify-button"&&s==="clicked";a[s]=()=>{p(),f&&(t==null||t());let u=Ne(e);y&&u&&(r==null||r(u));};}),a},de=e=>{var f;let p=e,{kind:t,appearance:r,containerId:n}=p,o=x(p,["kind","appearance","containerId"]),a=(f=_[t])!=null?f:{},d=Object.values(a),c=Se(e),i=Object.values(c);return Object.fromEntries(Object.entries(o).filter(([y])=>!d.includes(y)&&!i.includes(y)))},A=e=>{let{kind:t,variant:r,containerId:n}=e;B(t),D(t,r);let o=r||I(t);return Le(o,n),F(w({},e),{variant:o})};var _e=e=>typeof e=="object"&&!!e,K=({fontSrc:e,variables:t={},rules:r={},variant:n}={})=>{let o=()=>Object.keys(t).length?encodeURIComponent(JSON.stringify(t)):void 0,a=()=>Object.keys(r).length?encodeURIComponent(JSON.stringify(r)):void 0;return {fontSrc:e,variables:o(),rules:a(),variant:n}},ce=()=>{let e=window.footprintAppearance;return !e||!_e(e)?{}:{fontSrc:e.fontSrc,rules:e.rules,theme:e.theme,variables:e.variables}};var De=e=>{let{kind:t}=e;return t==="verify"?Be(e):Ke(e)},Be=e=>{let{appearance:t,publicKey:r,variant:n,kind:o}=e,{fontSrc:a,rules:d,variables:c}=K(t),i="https://id.onefootprint.com",s=new URLSearchParams;r&&s.append("public_key",r),c&&s.append("variables",c),d&&s.append("rules",d),a&&s.append("font_src",a),s.append("variant",n!=null?n:I(o));let p=s.toString();return `${i}?${p}`},Ke=e=>{let{appearance:t,kind:r,variant:n}=e,{fontSrc:o,rules:a,variables:d}=K(t),c="https://components.onefootprint.com",i=new URLSearchParams;d&&i.append("variables",d),a&&i.append("rules",a),o&&i.append("font_src",o),i.append("variant",n!=null?n:I(r));let s=i.toString();return `${c}/${r}?${s}`},pe=De;var Me=e=>{let t=null,r=!1,n=A(e),{variant:o,containerId:a}=n,d=o==="modal"||o==="drawer",c,i,s=k(),p=()=>{if(!t)throw new Error("Footprint should be initialized in order to listen events");let l=se(n,c,i);Object.entries(l).forEach(([v,O])=>{t==null||t.on(v,O);});},f=()=>{if(!t)throw new Error("Footprint should be initialized in order to set up refs");let{kind:l}=n;if(l!=="form")return;let{getRef:v}=n;if(!v)return;v({save:()=>{if(!t)throw new Error("Footprint should be initialized to call ref methods");t==null||t.call("formSaved");}});},y=()=>{if(!t)throw new Error("Footprint should be initialized in order to receive props");t.call("propsReceived",de(n));},u=()=>{if(d)return te(s);if(!a)throw new Error("containerId is required when rendering inline");let l=document.getElementById(a);if(!l)throw new Error(`Could not find container with id ${a} while rendering footprint`);return re(s,l)},P=(l,v)=>{if(!v){N(s),t==null||t.frame.classList.remove(`footprint-${o}-loading`),t==null||t.frame.classList.add(`footprint-${o}-loaded`);return}if(d){let O=ne(l,s);S(O,s);}else S(l,s);};return {props:n,isRendered:r,render:()=>m(void 0,null,function*(){if(r)return;let l=u();l&&(l.hasChildNodes()&&(l.innerHTML=""),r=!0,P(l,!0),t=yield new q({classListArray:[`footprint-${o}`,`footprint-${o}-loading`],container:l,name:`footprint-iframe-${s}`,url:pe(n),allow:"otp-credentials; publickey-credentials-get *; camera *; clipboard-write;"}),p(),P(l,!1),t.on("started",()=>{y(),f();}));}),destroy:()=>m(void 0,null,function*(){r&&(r=!1,yield ee(s),t&&(t.destroy(),t=null));}),registerEvent:(l,v)=>{l==="renderSecondary"&&(i=v),l==="destroy"&&(c=v);}}},M=Me;var h=e=>{let t=A(e);return JSON.stringify(t)},Te=()=>{let e={};return {getOrCreate:a=>{let d=h(a.props),c=Object.values(e).find(i=>h(i.iframe.props)===d);return c?c.iframe:(e[d]={iframe:a,secondaryIframes:{}},a)},remove:a=>{let d=h(a.props),c=e[d];c&&(Object.keys(c.secondaryIframes).forEach(i=>{c.secondaryIframes[i].destroy();}),delete e[d]);},getOrCreateSecondary:(a,d)=>{let c=h(a.props),i=h(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while adding secondary");let{secondaryIframes:s}=e[c],p=Object.values(s).find(f=>h(f.props)===i);return p||(s[i]=d,d)},removeSecondary:(a,d)=>{let c=h(a.props),i=h(d.props);if(!e[c])throw new Error("iframe manager: primary iframe does not exist while removing secondary");let{secondaryIframes:s}=e[c],p=s[i];p&&(p.destroy(),delete s[i]);}}},le=Te;var $e=()=>{let e=le();return {init:r=>{let n=M(r),o=()=>m(void 0,null,function*(){e.remove(n),yield n.destroy();}),a=i=>m(void 0,null,function*(){e.removeSecondary(n,i),yield i.destroy();}),d=i=>m(void 0,null,function*(){let s=M(i);s=e.getOrCreateSecondary(n,s),s.registerEvent("destroy",()=>{a(s);}),s.render();});return {render:()=>m(void 0,null,function*(){n=e.getOrCreate(n),n.registerEvent("destroy",o),n.registerEvent("renderSecondary",d),yield n.render();}),destroy:o}}}},Ue=$e(),T=Ue;var je=e=>{window.setTimeout(e,0);},fe=e=>typeof e=="object"&&!!e,qe=e=>{if(typeof window=="undefined")return;let t=o=>{var c;let a=(c=window.footprintCallbacks)!=null?c:{};if(!fe(a))throw Error("`window.footprintCallbacks` must be a valid mapping from callback names to functions.");return oe[o].forEach(i=>{if(!a[i])throw Error(`Callback '${i}' must be defined in window.footprintCallbacks`)}),a},r=o=>{var u;let a=o.getAttribute("data-kind");B(a);let d=(u=o.getAttribute("data-variant"))!=null?u:I(a);D(a,d);let c=ce(),i=t(a),s=o.getAttribute("data-props")||"",p;try{p=JSON.parse(s);}catch(P){throw Error("Could not parse `data-props` for footprint.")}if(!fe(p))throw Error("`data-props` on the footprint element has to be a valid JSON object stringified.");let f=k();o.setAttribute("id",f),e.init(w(w({kind:a,variant:d,appearance:c,containerId:o.id},i),p)).render();},n=()=>{let o=document.querySelectorAll("[data-footprint]");o.length&&o.forEach(a=>{r(a);});};document.addEventListener("DOMContentLoaded",()=>je(n));},me=qe;var ue=e=>m(void 0,null,function*(){let t=yield fetch("https://api.onefootprint.com/hosted/identify",{method:"POST",body:JSON.stringify(e)});if(!t.ok)throw Error(t.statusText);return (yield t.json()).user_found}),He=e=>m(void 0,null,function*(){if(!e)throw new Error("User data must be passed in order to identify an user");let t=e["id.email"],r=e["id.phone_number"];return t&&(yield ue({identifier:{email:t}}))?!0:r?yield ue({identifier:{phone_number:r}}):!1}),ye=He;var Ht=T;me(T);/*! Bundled license information:

@@ -17,7 +17,7 @@ @onefootprint/postmate/build/postmate.es.js:

exports.FootprintComponentKind = b;
exports.FootprintFormType = ne;
exports.FootprintPrivateEvent = H;
exports.FootprintPublicEvent = V;
exports.default = Mt;
exports.identifyFootprintUser = ue;
exports.FootprintFormType = H;
exports.FootprintPrivateEvent = z;
exports.FootprintPublicEvent = R;
exports.default = Ht;
exports.identifyFootprintUser = ye;

@@ -24,0 +24,0 @@ Object.defineProperty(exports, '__esModule', { value: true });

@@ -5,3 +5,3 @@ {

"type": "module",
"version": "3.0.0",
"version": "3.1.0",
"main": "./dist/footprint-js.umd.js",

@@ -8,0 +8,0 @@ "module": "./dist/footprint-js.js",

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc