@sudobility/email-components
Version:
Email marketing and management UI components for React
9 lines (7 loc) • 39.4 kB
JavaScript
(function(C,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("react/jsx-runtime"),require("@sudobility/components"),require("react"),require("@heroicons/react/24/outline"),require("@sudobility/design")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","@sudobility/components","react","@heroicons/react/24/outline","@sudobility/design"],h):(C=typeof globalThis<"u"?globalThis:C||self,h(C.EmailComponents={},C.ReactJSXRuntime,C.SudobilityComponents,C.React,C.HeroiconsOutline,C.SudobilityDesign))})(this,(function(C,h,E,B,G,ce){"use strict";function De(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const u=De(B),Ue=({className:e,children:r,disabled:t})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"SubscriberList",children:r||"SubscriberList Component"}),Oe=({className:e,children:r,disabled:t})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"AbTestEmail",children:r||"AbTestEmail Component"}),Me=({className:e,children:r,disabled:t})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"ContactCard",children:r||"ContactCard Component"}),Be=e=>e?e.length<=10?e:`${e.slice(0,6)}...${e.slice(-4)}`:"",de=({type:e,addressType:r})=>{if(e==="primary")return h.jsx(E.ChainBadge,{chainType:r==="solana"?"solana":"evm",size:"sm"});const t=()=>e.toUpperCase(),n=()=>{switch(e){case"ens":return"bg-green-50 text-green-700 border-green-200 dark:bg-green-900/10 dark:text-green-300 dark:border-green-800";case"sns":return"bg-orange-50 text-orange-700 border-orange-200 dark:bg-orange-900/10 dark:text-orange-300 dark:border-orange-800";default:return"bg-gray-50 text-gray-700 border-gray-200 dark:bg-gray-900/10 dark:text-gray-300 dark:border-gray-800"}};return h.jsx("span",{className:E.cn("inline-flex items-center px-2.5 py-0.5 rounded-md text-xs font-medium border",n()),children:t()})},je=({domainEmails:e,isExpanded:r,selectedAccount:t,onAccountSelect:n,onAccountSettings:a})=>{const l=B.useRef(null),[o,s]=B.useState(void 0);return B.useEffect(()=>{if(l.current){const i=l.current.scrollHeight;s(r?i+8:0)}},[r,e]),h.jsx("div",{className:"overflow-hidden transition-all duration-300 ease-in-out",style:{height:o!==void 0?`${o}px`:"auto"},children:h.jsx("div",{ref:l,className:"ml-6 mt-2 space-y-1",children:e.map(i=>h.jsxs("button",{onClick:()=>n(i.address),className:E.cn("w-full flex items-center justify-between text-left px-3 py-2 rounded-lg transition-colors h-[44px]",ce.textVariants.body.sm(),t===i.address?"bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300":"hover:bg-gray-100 dark:hover:bg-gray-700"),children:[h.jsx("span",{className:"truncate flex-1",children:i.name}),h.jsx(de,{type:i.type,addressType:i.addressType})]},i.address))})})},We=({walletGroups:e,selectedAccount:r,expandedWallets:t,onAccountSelect:n,onToggleWallet:a,onAccountSettings:l,className:o=""})=>h.jsx("nav",{className:E.cn("space-y-1",o),children:e.map(s=>h.jsxs("div",{children:[h.jsxs("button",{onClick:()=>n(s.primaryEmail.address),className:E.cn("w-full flex items-center justify-between text-left px-3 py-2 rounded-lg transition-colors h-[44px]",ce.textVariants.body.sm(),r===s.primaryEmail.address&&s.domainEmails.length===0?"bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300":"hover:bg-gray-100 dark:hover:bg-gray-700"),style:s.customColor?{backgroundColor:s.customColor}:void 0,children:[h.jsxs("div",{className:"flex items-center flex-1 min-w-0",children:[h.jsx("span",{className:"truncate flex-1",children:Be(s.walletAddress)}),h.jsx(de,{type:s.primaryEmail.type,addressType:s.addressType})]}),s.domainEmails.length>0&&h.jsx("div",{onClick:i=>{i.stopPropagation(),a(s.walletAddress)},className:"p-1 rounded-lg hover:bg-gray-200 dark:hover:bg-gray-600 transition-colors cursor-pointer",role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),i.stopPropagation(),a(s.walletAddress))},children:h.jsx(G.ChevronRightIcon,{className:E.cn("h-4 w-4 text-gray-500 transition-transform duration-300 ease-in-out",t.includes(s.walletAddress)?"rotate-90":"rotate-0")})})]}),s.domainEmails.length>0&&h.jsx(je,{domainEmails:s.domainEmails,isExpanded:t.includes(s.walletAddress),selectedAccount:r,onAccountSelect:n,onAccountSettings:l})]},s.walletAddress))}),Ve=({className:e,children:r,disabled:t})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"EmailAnalytics",children:r||"EmailAnalytics Component"}),_e=({className:e,children:r,disabled:t})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed",e),role:"region","aria-label":"EmailCampaign",children:r||"EmailCampaign Component"}),Y=({label:e,value:r,onChange:t,placeholder:n,required:a=!1,error:l,className:o=""})=>h.jsxs("div",{className:o,children:[h.jsxs(E.Label,{htmlFor:e.toLowerCase(),className:"text-sm font-medium text-gray-700 dark:text-gray-300",children:[e," ",a&&h.jsx("span",{className:"text-red-500",children:"*"})]}),h.jsx("input",{id:e.toLowerCase(),type:"email",value:r,onChange:s=>t(s.target.value),placeholder:n,className:`
mt-1 block w-full px-3 py-2 border rounded-md shadow-sm
focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500
dark:bg-gray-800 dark:border-gray-600 dark:text-white
${l?"border-red-300 focus:ring-red-500 focus:border-red-500":"border-gray-300 dark:border-gray-600"}
`}),l&&h.jsx("p",{className:"mt-1 text-sm text-red-600 dark:text-red-400",children:l})]}),X=({isVisible:e,onToggle:r,showLabel:t,hideLabel:n,...a})=>{const l=e?n:t;return h.jsxs("div",{children:[h.jsxs("button",{type:"button",onClick:r,className:"flex items-center text-sm text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 mb-2",children:[e?h.jsx(G.ChevronUpIcon,{className:"h-4 w-4 mr-1"}):h.jsx(G.ChevronDownIcon,{className:"h-4 w-4 mr-1"}),l]}),e&&h.jsx(Y,{...a})]})},He=({to:e,onToChange:r,cc:t="",onCcChange:n,bcc:a="",onBccChange:l,showCc:o=!1,showBcc:s=!1,onToggleCc:i,onToggleBcc:c,errors:d={},className:f="",labels:m={},placeholders:g={}})=>{const y={to:"To",cc:"CC",bcc:"BCC",addCc:"Add CC",removeCc:"Remove CC",addBcc:"Add BCC",removeBcc:"Remove BCC"},x={to:"recipient@example.com",cc:"cc@example.com",bcc:"bcc@example.com"},p={...y,...m},b={...x,...g};return h.jsxs("div",{className:`space-y-4 ${f}`,children:[h.jsx(Y,{label:p.to,value:e,onChange:r,placeholder:b.to,required:!0,error:d.to}),i&&n&&h.jsx(X,{label:p.cc,value:t,onChange:n,placeholder:b.cc,error:d.cc,isVisible:o,onToggle:i,showLabel:p.addCc,hideLabel:p.removeCc}),c&&l&&h.jsx(X,{label:p.bcc,value:a,onChange:l,placeholder:b.bcc,error:d.bcc,isVisible:s,onToggle:c,showLabel:p.addBcc,hideLabel:p.removeBcc})]})},ze=({className:e,children:r,disabled:t=!1,onClick:n})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:t?void 0:n,role:"region","aria-label":"UemailUtemplate",children:r||"UemailUtemplate Component"});function k(e,r){if(e===!1||e===null||typeof e>"u")throw new Error(r)}function P(e,r){if(!e){typeof console<"u"&&console.warn(r);try{throw new Error(r)}catch{}}}function Q({pathname:e="/",search:r="",hash:t=""}){return r&&r!=="?"&&(e+=r.charAt(0)==="?"?r:"?"+r),t&&t!=="#"&&(e+=t.charAt(0)==="#"?t:"#"+t),e}function Z(e){let r={};if(e){let t=e.indexOf("#");t>=0&&(r.hash=e.substring(t),e=e.substring(0,t));let n=e.indexOf("?");n>=0&&(r.search=e.substring(n),e=e.substring(0,n)),e&&(r.pathname=e)}return r}function fe(e,r,t="/"){return Ke(e,r,t,!1)}function Ke(e,r,t,n){let a=typeof r=="string"?Z(r):r,l=R(a.pathname||"/",t);if(l==null)return null;let o=he(e);Je(o);let s=null;for(let i=0;s==null&&i<o.length;++i){let c=at(l);s=rt(o[i],c,n)}return s}function he(e,r=[],t=[],n="",a=!1){let l=(o,s,i=a,c)=>{let d={relativePath:c===void 0?o.path||"":c,caseSensitive:o.caseSensitive===!0,childrenIndex:s,route:o};if(d.relativePath.startsWith("/")){if(!d.relativePath.startsWith(n)&&i)return;k(d.relativePath.startsWith(n),`Absolute route path "${d.relativePath}" nested under path "${n}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),d.relativePath=d.relativePath.slice(n.length)}let f=S([n,d.relativePath]),m=t.concat(d);o.children&&o.children.length>0&&(k(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${f}".`),he(o.children,r,m,f,i)),!(o.path==null&&!o.index)&&r.push({path:f,score:et(f,o.index),routesMeta:m})};return e.forEach((o,s)=>{if(o.path===""||!o.path?.includes("?"))l(o,s);else for(let i of me(o.path))l(o,s,!0,i)}),r}function me(e){let r=e.split("/");if(r.length===0)return[];let[t,...n]=r,a=t.endsWith("?"),l=t.replace(/\?$/,"");if(n.length===0)return a?[l,""]:[l];let o=me(n.join("/")),s=[];return s.push(...o.map(i=>i===""?l:[l,i].join("/"))),a&&s.push(...o),s.map(i=>e.startsWith("/")&&i===""?"/":i)}function Je(e){e.sort((r,t)=>r.score!==t.score?t.score-r.score:tt(r.routesMeta.map(n=>n.childrenIndex),t.routesMeta.map(n=>n.childrenIndex)))}var qe=/^:[\w-]+$/,Ge=3,Ye=2,Xe=1,Qe=10,Ze=-2,pe=e=>e==="*";function et(e,r){let t=e.split("/"),n=t.length;return t.some(pe)&&(n+=Ze),r&&(n+=Ye),t.filter(a=>!pe(a)).reduce((a,l)=>a+(qe.test(l)?Ge:l===""?Xe:Qe),n)}function tt(e,r){return e.length===r.length&&e.slice(0,-1).every((n,a)=>n===r[a])?e[e.length-1]-r[r.length-1]:0}function rt(e,r,t=!1){let{routesMeta:n}=e,a={},l="/",o=[];for(let s=0;s<n.length;++s){let i=n[s],c=s===n.length-1,d=l==="/"?r:r.slice(l.length)||"/",f=j({path:i.relativePath,caseSensitive:i.caseSensitive,end:c},d),m=i.route;if(!f&&c&&t&&!n[n.length-1].route.index&&(f=j({path:i.relativePath,caseSensitive:i.caseSensitive,end:!1},d)),!f)return null;Object.assign(a,f.params),o.push({params:a,pathname:S([l,f.pathname]),pathnameBase:ut(S([l,f.pathnameBase])),route:m}),f.pathnameBase!=="/"&&(l=S([l,f.pathnameBase]))}return o}function j(e,r){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[t,n]=nt(e.path,e.caseSensitive,e.end),a=r.match(t);if(!a)return null;let l=a[0],o=l.replace(/(.)\/+$/,"$1"),s=a.slice(1);return{params:n.reduce((c,{paramName:d,isOptional:f},m)=>{if(d==="*"){let y=s[m]||"";o=l.slice(0,l.length-y.length).replace(/(.)\/+$/,"$1")}const g=s[m];return f&&!g?c[d]=void 0:c[d]=(g||"").replace(/%2F/g,"/"),c},{}),pathname:l,pathnameBase:o,pattern:e}}function nt(e,r=!1,t=!0){P(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,s,i)=>(n.push({paramName:s,isOptional:i!=null}),i?"/?([^\\/]+)?":"/([^\\/]+)")).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(n.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):t?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,r?void 0:"i"),n]}function at(e){try{return e.split("/").map(r=>decodeURIComponent(r).replace(/\//g,"%2F")).join("/")}catch(r){return P(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${r}).`),e}}function R(e,r){if(r==="/")return e;if(!e.toLowerCase().startsWith(r.toLowerCase()))return null;let t=r.endsWith("/")?r.length-1:r.length,n=e.charAt(t);return n&&n!=="/"?null:e.slice(t)||"/"}var lt=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ot=e=>lt.test(e);function it(e,r="/"){let{pathname:t,search:n="",hash:a=""}=typeof e=="string"?Z(e):e,l;if(t)if(ot(t))l=t;else{if(t.includes("//")){let o=t;t=t.replace(/\/\/+/g,"/"),P(!1,`Pathnames cannot have embedded double slashes - normalizing ${o} -> ${t}`)}t.startsWith("/")?l=ge(t.substring(1),"/"):l=ge(t,r)}else l=r;return{pathname:l,search:ct(n),hash:dt(a)}}function ge(e,r){let t=r.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?t.length>1&&t.pop():a!=="."&&t.push(a)}),t.length>1?t.join("/"):"/"}function ee(e,r,t,n){return`Cannot include a '${e}' character in a manually specified \`to.${r}\` field [${JSON.stringify(n)}]. Please separate it out to the \`to.${t}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function st(e){return e.filter((r,t)=>t===0||r.route.path&&r.route.path.length>0)}function ye(e){let r=st(e);return r.map((t,n)=>n===r.length-1?t.pathname:t.pathnameBase)}function be(e,r,t,n=!1){let a;typeof e=="string"?a=Z(e):(a={...e},k(!a.pathname||!a.pathname.includes("?"),ee("?","pathname","search",a)),k(!a.pathname||!a.pathname.includes("#"),ee("#","pathname","hash",a)),k(!a.search||!a.search.includes("#"),ee("#","search","hash",a)));let l=e===""||a.pathname==="",o=l?"/":a.pathname,s;if(o==null)s=t;else{let f=r.length-1;if(!n&&o.startsWith("..")){let m=o.split("/");for(;m[0]==="..";)m.shift(),f-=1;a.pathname=m.join("/")}s=f>=0?r[f]:"/"}let i=it(a,s),c=o&&o!=="/"&&o.endsWith("/"),d=(l||o===".")&&t.endsWith("/");return!i.pathname.endsWith("/")&&(c||d)&&(i.pathname+="/"),i}var S=e=>e.join("/").replace(/\/\/+/g,"/"),ut=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),ct=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,dt=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function ft(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var ve=["POST","PUT","PATCH","DELETE"];new Set(ve);var ht=["GET",...ve];new Set(ht);var T=u.createContext(null);T.displayName="DataRouter";var W=u.createContext(null);W.displayName="DataRouterState",u.createContext(!1);var xe=u.createContext({isTransitioning:!1});xe.displayName="ViewTransition";var mt=u.createContext(new Map);mt.displayName="Fetchers";var pt=u.createContext(null);pt.displayName="Await";var N=u.createContext(null);N.displayName="Navigation";var te=u.createContext(null);te.displayName="Location";var $=u.createContext({outlet:null,matches:[],isDataRoute:!1});$.displayName="Route";var re=u.createContext(null);re.displayName="RouteError";function gt(e,{relative:r}={}){k(V(),"useHref() may be used only in the context of a <Router> component.");let{basename:t,navigator:n}=u.useContext(N),{hash:a,pathname:l,search:o}=U(e,{relative:r}),s=l;return t!=="/"&&(s=l==="/"?t:S([t,l])),n.createHref({pathname:s,search:o,hash:a})}function V(){return u.useContext(te)!=null}function A(){return k(V(),"useLocation() may be used only in the context of a <Router> component."),u.useContext(te).location}var we="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Ce(e){u.useContext(N).static||u.useLayoutEffect(e)}function yt(){let{isDataRoute:e}=u.useContext($);return e?Rt():bt()}function bt(){k(V(),"useNavigate() may be used only in the context of a <Router> component.");let e=u.useContext(T),{basename:r,navigator:t}=u.useContext(N),{matches:n}=u.useContext($),{pathname:a}=A(),l=JSON.stringify(ye(n)),o=u.useRef(!1);return Ce(()=>{o.current=!0}),u.useCallback((i,c={})=>{if(P(o.current,we),!o.current)return;if(typeof i=="number"){t.go(i);return}let d=be(i,JSON.parse(l),a,c.relative==="path");e==null&&r!=="/"&&(d.pathname=d.pathname==="/"?r:S([r,d.pathname])),(c.replace?t.replace:t.push)(d,c.state,c)},[r,t,l,a,e])}u.createContext(null);function U(e,{relative:r}={}){let{matches:t}=u.useContext($),{pathname:n}=A(),a=JSON.stringify(ye(t));return u.useMemo(()=>be(e,JSON.parse(a),n,r==="path"),[e,a,n,r])}function vt(e,r,t,n,a){k(V(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:l}=u.useContext(N),{matches:o}=u.useContext($),s=o[o.length-1],i=s?s.params:{},c=s?s.pathname:"/",d=s?s.pathnameBase:"/",f=s&&s.route;{let v=f&&f.path||"";ke(c,!f||v.endsWith("*")||v.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${v}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
Please change the parent <Route path="${v}"> to <Route path="${v==="/"?"*":`${v}/*`}">.`)}let m=A(),g;g=m;let y=g.pathname||"/",x=y;if(d!=="/"){let v=d.replace(/^\//,"").split("/");x="/"+y.replace(/^\//,"").split("/").slice(v.length).join("/")}let p=fe(e,{pathname:x});return P(f||p!=null,`No routes matched location "${g.pathname}${g.search}${g.hash}" `),P(p==null||p[p.length-1].route.element!==void 0||p[p.length-1].route.Component!==void 0||p[p.length-1].route.lazy!==void 0,`Matched leaf route at location "${g.pathname}${g.search}${g.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`),kt(p&&p.map(v=>Object.assign({},v,{params:Object.assign({},i,v.params),pathname:S([d,l.encodeLocation?l.encodeLocation(v.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?d:S([d,l.encodeLocation?l.encodeLocation(v.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:v.pathnameBase])})),o,t,n,a)}function xt(){let e=$t(),r=ft(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),t=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:n},l={padding:"2px 4px",backgroundColor:n},o=null;return console.error("Error handled by React Router default ErrorBoundary:",e),o=u.createElement(u.Fragment,null,u.createElement("p",null,"💿 Hey developer 👋"),u.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",u.createElement("code",{style:l},"ErrorBoundary")," or"," ",u.createElement("code",{style:l},"errorElement")," prop on your route.")),u.createElement(u.Fragment,null,u.createElement("h2",null,"Unexpected Application Error!"),u.createElement("h3",{style:{fontStyle:"italic"}},r),t?u.createElement("pre",{style:a},t):null,o)}var wt=u.createElement(xt,null),Ct=class extends u.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,r){return r.location!==e.location||r.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:r.error,location:r.location,revalidation:e.revalidation||r.revalidation}}componentDidCatch(e,r){this.props.onError?this.props.onError(e,r):console.error("React Router caught the following error during render",e)}render(){return this.state.error!==void 0?u.createElement($.Provider,{value:this.props.routeContext},u.createElement(re.Provider,{value:this.state.error,children:this.props.component})):this.props.children}};function Et({routeContext:e,match:r,children:t}){let n=u.useContext(T);return n&&n.static&&n.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(n.staticContext._deepestRenderedBoundaryId=r.route.id),u.createElement($.Provider,{value:e},t)}function kt(e,r=[],t=null,n=null,a=null){if(e==null){if(!t)return null;if(t.errors)e=t.matches;else if(r.length===0&&!t.initialized&&t.matches.length>0)e=t.matches;else return null}let l=e,o=t?.errors;if(o!=null){let d=l.findIndex(f=>f.route.id&&o?.[f.route.id]!==void 0);k(d>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),l=l.slice(0,Math.min(l.length,d+1))}let s=!1,i=-1;if(t)for(let d=0;d<l.length;d++){let f=l[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(i=d),f.route.id){let{loaderData:m,errors:g}=t,y=f.route.loader&&!m.hasOwnProperty(f.route.id)&&(!g||g[f.route.id]===void 0);if(f.route.lazy||y){s=!0,i>=0?l=l.slice(0,i+1):l=[l[0]];break}}}let c=t&&n?(d,f)=>{n(d,{location:t.location,params:t.matches?.[0]?.params??{},errorInfo:f})}:void 0;return l.reduceRight((d,f,m)=>{let g,y=!1,x=null,p=null;t&&(g=o&&f.route.id?o[f.route.id]:void 0,x=f.route.errorElement||wt,s&&(i<0&&m===0?(ke("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),y=!0,p=null):i===m&&(y=!0,p=f.route.hydrateFallbackElement||null)));let b=r.concat(l.slice(0,m+1)),v=()=>{let w;return g?w=x:y?w=p:f.route.Component?w=u.createElement(f.route.Component,null):f.route.element?w=f.route.element:w=d,u.createElement(Et,{match:f,routeContext:{outlet:d,matches:b,isDataRoute:t!=null},children:w})};return t&&(f.route.ErrorBoundary||f.route.errorElement||m===0)?u.createElement(Ct,{location:t.location,revalidation:t.revalidation,component:x,error:g,children:v(),routeContext:{outlet:null,matches:b,isDataRoute:!0},onError:c}):v()},null)}function ne(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Lt(e){let r=u.useContext(T);return k(r,ne(e)),r}function Pt(e){let r=u.useContext(W);return k(r,ne(e)),r}function St(e){let r=u.useContext($);return k(r,ne(e)),r}function ae(e){let r=St(e),t=r.matches[r.matches.length-1];return k(t.route.id,`${e} can only be used on routes that contain a unique "id"`),t.route.id}function Nt(){return ae("useRouteId")}function $t(){let e=u.useContext(re),r=Pt("useRouteError"),t=ae("useRouteError");return e!==void 0?e:r.errors?.[t]}function Rt(){let{router:e}=Lt("useNavigate"),r=ae("useNavigate"),t=u.useRef(!1);return Ce(()=>{t.current=!0}),u.useCallback(async(a,l={})=>{P(t.current,we),t.current&&(typeof a=="number"?e.navigate(a):await e.navigate(a,{fromRouteId:r,...l}))},[e,r])}var Ee={};function ke(e,r,t){!r&&!Ee[e]&&(Ee[e]=!0,P(!1,t))}u.memo(At);function At({routes:e,future:r,state:t,unstable_onError:n}){return vt(e,void 0,t,n,r)}var _="get",H="application/x-www-form-urlencoded";function z(e){return e!=null&&typeof e.tagName=="string"}function Ft(e){return z(e)&&e.tagName.toLowerCase()==="button"}function Tt(e){return z(e)&&e.tagName.toLowerCase()==="form"}function It(e){return z(e)&&e.tagName.toLowerCase()==="input"}function Dt(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Ut(e,r){return e.button===0&&(!r||r==="_self")&&!Dt(e)}var K=null;function Ot(){if(K===null)try{new FormData(document.createElement("form"),0),K=!1}catch{K=!0}return K}var Mt=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function le(e){return e!=null&&!Mt.has(e)?(P(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${H}"`),null):e}function Bt(e,r){let t,n,a,l,o;if(Tt(e)){let s=e.getAttribute("action");n=s?R(s,r):null,t=e.getAttribute("method")||_,a=le(e.getAttribute("enctype"))||H,l=new FormData(e)}else if(Ft(e)||It(e)&&(e.type==="submit"||e.type==="image")){let s=e.form;if(s==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let i=e.getAttribute("formaction")||s.getAttribute("action");if(n=i?R(i,r):null,t=e.getAttribute("formmethod")||s.getAttribute("method")||_,a=le(e.getAttribute("formenctype"))||le(s.getAttribute("enctype"))||H,l=new FormData(s,e),!Ot()){let{name:c,type:d,value:f}=e;if(d==="image"){let m=c?`${c}.`:"";l.append(`${m}x`,"0"),l.append(`${m}y`,"0")}else c&&l.append(c,f)}}else{if(z(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');t=_,n=null,a=H,o=e}return l&&a==="text/plain"&&(o=l,l=void 0),{action:n,method:t.toLowerCase(),encType:a,formData:l,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function oe(e,r){if(e===!1||e===null||typeof e>"u")throw new Error(r)}function jt(e,r,t){let n=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return n.pathname==="/"?n.pathname=`_root.${t}`:r&&R(n.pathname,r)==="/"?n.pathname=`${r.replace(/\/$/,"")}/_root.${t}`:n.pathname=`${n.pathname.replace(/\/$/,"")}.${t}`,n}async function Wt(e,r){if(e.id in r)return r[e.id];try{let t=await import(e.module);return r[e.id]=t,t}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Vt(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function _t(e,r,t){let n=await Promise.all(e.map(async a=>{let l=r.routes[a.route.id];if(l){let o=await Wt(l,t);return o.links?o.links():[]}return[]}));return Jt(n.flat(1).filter(Vt).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function Le(e,r,t,n,a,l){let o=(i,c)=>t[c]?i.route.id!==t[c].route.id:!0,s=(i,c)=>t[c].pathname!==i.pathname||t[c].route.path?.endsWith("*")&&t[c].params["*"]!==i.params["*"];return l==="assets"?r.filter((i,c)=>o(i,c)||s(i,c)):l==="data"?r.filter((i,c)=>{let d=n.routes[i.route.id];if(!d||!d.hasLoader)return!1;if(o(i,c)||s(i,c))return!0;if(i.route.shouldRevalidate){let f=i.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:t[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:i.params,defaultShouldRevalidate:!0});if(typeof f=="boolean")return f}return!0}):[]}function Ht(e,r,{includeHydrateFallback:t}={}){return zt(e.map(n=>{let a=r.routes[n.route.id];if(!a)return[];let l=[a.module];return a.clientActionModule&&(l=l.concat(a.clientActionModule)),a.clientLoaderModule&&(l=l.concat(a.clientLoaderModule)),t&&a.hydrateFallbackModule&&(l=l.concat(a.hydrateFallbackModule)),a.imports&&(l=l.concat(a.imports)),l}).flat(1))}function zt(e){return[...new Set(e)]}function Kt(e){let r={},t=Object.keys(e).sort();for(let n of t)r[n]=e[n];return r}function Jt(e,r){let t=new Set;return new Set(r),e.reduce((n,a)=>{let l=JSON.stringify(Kt(a));return t.has(l)||(t.add(l),n.push({key:l,link:a})),n},[])}function Pe(){let e=u.useContext(T);return oe(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function qt(){let e=u.useContext(W);return oe(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var ie=u.createContext(void 0);ie.displayName="FrameworkContext";function Se(){let e=u.useContext(ie);return oe(e,"You must render this element inside a <HydratedRouter> element"),e}function Gt(e,r){let t=u.useContext(ie),[n,a]=u.useState(!1),[l,o]=u.useState(!1),{onFocus:s,onBlur:i,onMouseEnter:c,onMouseLeave:d,onTouchStart:f}=r,m=u.useRef(null);u.useEffect(()=>{if(e==="render"&&o(!0),e==="viewport"){let x=b=>{b.forEach(v=>{o(v.isIntersecting)})},p=new IntersectionObserver(x,{threshold:.5});return m.current&&p.observe(m.current),()=>{p.disconnect()}}},[e]),u.useEffect(()=>{if(n){let x=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(x)}}},[n]);let g=()=>{a(!0)},y=()=>{a(!1),o(!1)};return t?e!=="intent"?[l,m,{}]:[l,m,{onFocus:O(s,g),onBlur:O(i,y),onMouseEnter:O(c,g),onMouseLeave:O(d,y),onTouchStart:O(f,g)}]:[!1,m,{}]}function O(e,r){return t=>{e&&e(t),t.defaultPrevented||r(t)}}function Yt({page:e,...r}){let{router:t}=Pe(),n=u.useMemo(()=>fe(t.routes,e,t.basename),[t.routes,e,t.basename]);return n?u.createElement(Qt,{page:e,matches:n,...r}):null}function Xt(e){let{manifest:r,routeModules:t}=Se(),[n,a]=u.useState([]);return u.useEffect(()=>{let l=!1;return _t(e,r,t).then(o=>{l||a(o)}),()=>{l=!0}},[e,r,t]),n}function Qt({page:e,matches:r,...t}){let n=A(),{manifest:a,routeModules:l}=Se(),{basename:o}=Pe(),{loaderData:s,matches:i}=qt(),c=u.useMemo(()=>Le(e,r,i,a,n,"data"),[e,r,i,a,n]),d=u.useMemo(()=>Le(e,r,i,a,n,"assets"),[e,r,i,a,n]),f=u.useMemo(()=>{if(e===n.pathname+n.search+n.hash)return[];let y=new Set,x=!1;if(r.forEach(b=>{let v=a.routes[b.route.id];!v||!v.hasLoader||(!c.some(w=>w.route.id===b.route.id)&&b.route.id in s&&l[b.route.id]?.shouldRevalidate||v.hasClientLoader?x=!0:y.add(b.route.id))}),y.size===0)return[];let p=jt(e,o,"data");return x&&y.size>0&&p.searchParams.set("_routes",r.filter(b=>y.has(b.route.id)).map(b=>b.route.id).join(",")),[p.pathname+p.search]},[o,s,n,a,c,r,e,l]),m=u.useMemo(()=>Ht(d,a),[d,a]),g=Xt(d);return u.createElement(u.Fragment,null,f.map(y=>u.createElement("link",{key:y,rel:"prefetch",as:"fetch",href:y,...t})),m.map(y=>u.createElement("link",{key:y,rel:"modulepreload",href:y,...t})),g.map(({key:y,link:x})=>u.createElement("link",{key:y,nonce:t.nonce,...x})))}function Zt(...e){return r=>{e.forEach(t=>{typeof t=="function"?t(r):t!=null&&(t.current=r)})}}var Ne=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{Ne&&(window.__reactRouterVersion="7.9.6")}catch{}var $e=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,se=u.forwardRef(function({onClick:r,discover:t="render",prefetch:n="none",relative:a,reloadDocument:l,replace:o,state:s,target:i,to:c,preventScrollReset:d,viewTransition:f,...m},g){let{basename:y}=u.useContext(N),x=typeof c=="string"&&$e.test(c),p,b=!1;if(typeof c=="string"&&x&&(p=c,Ne))try{let L=new URL(window.location.href),D=c.startsWith("//")?new URL(L.protocol+c):new URL(c),Ie=R(D.pathname,y);D.origin===L.origin&&Ie!=null?c=Ie+D.search+D.hash:b=!0}catch{P(!1,`<Link to="${c}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}let v=gt(c,{relative:a}),[w,I,F]=Gt(n,m),J=nr(c,{replace:o,state:s,target:i,preventScrollReset:d,relative:a,viewTransition:f});function M(L){r&&r(L),L.defaultPrevented||J(L)}let q=u.createElement("a",{...m,...F,href:p||v,onClick:b||l?r:M,ref:Zt(g,I),target:i,"data-discover":!x&&t==="render"?"true":void 0});return w&&!x?u.createElement(u.Fragment,null,q,u.createElement(Yt,{page:v})):q});se.displayName="Link";var er=u.forwardRef(function({"aria-current":r="page",caseSensitive:t=!1,className:n="",end:a=!1,style:l,to:o,viewTransition:s,children:i,...c},d){let f=U(o,{relative:c.relative}),m=A(),g=u.useContext(W),{navigator:y,basename:x}=u.useContext(N),p=g!=null&&sr(f)&&s===!0,b=y.encodeLocation?y.encodeLocation(f).pathname:f.pathname,v=m.pathname,w=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;t||(v=v.toLowerCase(),w=w?w.toLowerCase():null,b=b.toLowerCase()),w&&x&&(w=R(w,x)||w);const I=b!=="/"&&b.endsWith("/")?b.length-1:b.length;let F=v===b||!a&&v.startsWith(b)&&v.charAt(I)==="/",J=w!=null&&(w===b||!a&&w.startsWith(b)&&w.charAt(b.length)==="/"),M={isActive:F,isPending:J,isTransitioning:p},q=F?r:void 0,L;typeof n=="function"?L=n(M):L=[n,F?"active":null,J?"pending":null,p?"transitioning":null].filter(Boolean).join(" ");let D=typeof l=="function"?l(M):l;return u.createElement(se,{...c,"aria-current":q,className:L,ref:d,style:D,to:o,viewTransition:s},typeof i=="function"?i(M):i)});er.displayName="NavLink";var tr=u.forwardRef(({discover:e="render",fetcherKey:r,navigate:t,reloadDocument:n,replace:a,state:l,method:o=_,action:s,onSubmit:i,relative:c,preventScrollReset:d,viewTransition:f,...m},g)=>{let y=or(),x=ir(s,{relative:c}),p=o.toLowerCase()==="get"?"get":"post",b=typeof s=="string"&&$e.test(s),v=w=>{if(i&&i(w),w.defaultPrevented)return;w.preventDefault();let I=w.nativeEvent.submitter,F=I?.getAttribute("formmethod")||o;y(I||w.currentTarget,{fetcherKey:r,method:F,navigate:t,replace:a,state:l,relative:c,preventScrollReset:d,viewTransition:f})};return u.createElement("form",{ref:g,method:p,action:x,onSubmit:n?i:v,...m,"data-discover":!b&&e==="render"?"true":void 0})});tr.displayName="Form";function rr(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Re(e){let r=u.useContext(T);return k(r,rr(e)),r}function nr(e,{target:r,replace:t,state:n,preventScrollReset:a,relative:l,viewTransition:o}={}){let s=yt(),i=A(),c=U(e,{relative:l});return u.useCallback(d=>{if(Ut(d,r)){d.preventDefault();let f=t!==void 0?t:Q(i)===Q(c);s(e,{replace:f,state:n,preventScrollReset:a,relative:l,viewTransition:o})}},[i,s,c,t,n,r,e,a,l,o])}var ar=0,lr=()=>`__${String(++ar)}__`;function or(){let{router:e}=Re("useSubmit"),{basename:r}=u.useContext(N),t=Nt();return u.useCallback(async(n,a={})=>{let{action:l,method:o,encType:s,formData:i,body:c}=Bt(n,r);if(a.navigate===!1){let d=a.fetcherKey||lr();await e.fetch(d,t,a.action||l,{preventScrollReset:a.preventScrollReset,formData:i,body:c,formMethod:a.method||o,formEncType:a.encType||s,flushSync:a.flushSync})}else await e.navigate(a.action||l,{preventScrollReset:a.preventScrollReset,formData:i,body:c,formMethod:a.method||o,formEncType:a.encType||s,replace:a.replace,state:a.state,fromRouteId:t,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,r,t])}function ir(e,{relative:r}={}){let{basename:t}=u.useContext(N),n=u.useContext($);k(n,"useFormAction must be used inside a RouteContext");let[a]=n.matches.slice(-1),l={...U(e||".",{relative:r})},o=A();if(e==null){l.search=o.search;let s=new URLSearchParams(l.search),i=s.getAll("index");if(i.some(d=>d==="")){s.delete("index"),i.filter(f=>f).forEach(f=>s.append("index",f));let d=s.toString();l.search=d?`?${d}`:""}}return(!e||e===".")&&a.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),t!=="/"&&(l.pathname=l.pathname==="/"?t:S([t,l.pathname])),Q(l)}function sr(e,{relative:r}={}){let t=u.useContext(xe);k(t!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:n}=Re("useViewTransitionState"),a=U(e,{relative:r});if(!t.isTransitioning)return!1;let l=R(t.currentLocation.pathname,n)||t.currentLocation.pathname,o=R(t.nextLocation.pathname,n)||t.nextLocation.pathname;return j(a.pathname,o)!=null||j(a.pathname,l)!=null}function Ae(e){var r,t,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(r=0;r<a;r++)e[r]&&(t=Ae(e[r]))&&(n&&(n+=" "),n+=t)}else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function ur(){for(var e,r,t=0,n="",a=arguments.length;t<a;t++)(e=arguments[t])&&(r=Ae(e))&&(n&&(n+=" "),n+=r);return n}const Fe=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Te=ur,ue=(e,r)=>t=>{var n;if(r?.variants==null)return Te(e,t?.class,t?.className);const{variants:a,defaultVariants:l}=r,o=Object.keys(a).map(c=>{const d=t?.[c],f=l?.[c];if(d===null)return null;const m=Fe(d)||Fe(f);return a[c][m]}),s=t&&Object.entries(t).reduce((c,d)=>{let[f,m]=d;return m===void 0||(c[f]=m),c},{}),i=r==null||(n=r.compoundVariants)===null||n===void 0?void 0:n.reduce((c,d)=>{let{class:f,className:m,...g}=d;return Object.entries(g).every(y=>{let[x,p]=y;return Array.isArray(p)?p.includes({...l,...s}[x]):{...l,...s}[x]===p})?[...c,f,m]:c},[]);return Te(e,o,i,t?.class,t?.className)},cr=ue("border-b transition-all duration-200",{variants:{variant:{default:"bg-gradient-to-r from-green-100 to-blue-100 dark:from-green-900/20 dark:to-blue-900/20 border-green-200 dark:border-green-700",compact:"bg-green-50 dark:bg-green-900/10 border-green-200 dark:border-green-800",minimal:"bg-gray-50 dark:bg-gray-900/50 border-gray-200 dark:border-gray-700",vibrant:"bg-gradient-to-r from-blue-600 to-purple-600 border-blue-700"},size:{default:"py-4",compact:"py-3",large:"py-6"}},defaultVariants:{variant:"default",size:"default"}}),dr=ue("font-semibold",{variants:{variant:{default:"text-green-800 dark:text-green-200",compact:"text-green-700 dark:text-green-300",minimal:"text-gray-700 dark:text-gray-300",vibrant:"text-white"}},defaultVariants:{variant:"default"}}),fr=ue("inline-flex items-center justify-center px-6 py-2 rounded-lg font-medium transition-all duration-200 hover:transform hover:scale-105 focus:outline-none focus:ring-2 focus:ring-offset-2",{variants:{variant:{default:"bg-gradient-to-r from-green-600 to-blue-600 hover:from-green-700 hover:to-blue-700 text-white focus:ring-green-500",compact:"bg-green-600 hover:bg-green-700 text-white focus:ring-green-500",minimal:"bg-blue-600 hover:bg-blue-700 text-white focus:ring-blue-500",vibrant:"bg-white hover:bg-gray-100 text-blue-600 hover:text-blue-700 focus:ring-white"}},defaultVariants:{variant:"default"}}),hr=({className:e,variant:r="default",size:t="default",message:n="Get Your Free Email Address - Start Using Web3 Email Today",ctaText:a="Get Free Email",ctaLink:l="/connect",showBadge:o=!0,badgeText:s="FREE",onDismiss:i,isDismissible:c=!1,dismissAriaLabel:d="Dismiss banner"})=>h.jsx("div",{className:E.cn(cr({variant:r,size:t}),e),children:h.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:h.jsxs("div",{className:"flex flex-col sm:flex-row items-center justify-center gap-4 text-center relative",children:[c&&i&&h.jsx("button",{onClick:i,className:"absolute right-0 top-1/2 -translate-y-1/2 p-1 rounded-full hover:bg-black/10 dark:hover:bg-white/10 transition-colors","aria-label":d,children:h.jsx("svg",{className:"w-4 h-4 text-current opacity-60",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),h.jsxs("div",{className:"flex items-center",children:[o&&h.jsx("div",{className:E.cn("text-xs font-bold px-3 py-1 rounded-full mr-3 transition-colors",r==="vibrant"?"bg-white text-blue-600":"bg-green-500 text-white"),children:s}),h.jsx("span",{className:E.cn(dr({variant:r})),children:n})]}),h.jsx(se,{to:l,className:E.cn(fr({variant:r})),children:a})]})})}),mr=({className:e,children:r,disabled:t=!1,onClick:n})=>h.jsx("div",{className:E.cn("p-4 rounded-lg border transition-colors","bg-white dark:bg-gray-900","border-gray-200 dark:border-gray-700","text-gray-900 dark:text-white",t&&"opacity-50 cursor-not-allowed","hover:bg-gray-50 dark:hover:bg-gray-800",e),onClick:t?void 0:n,role:"region","aria-label":"UsubscriptionUplan",children:r||"UsubscriptionUplan Component"});C.AbTestEmail=Oe,C.CollapsibleEmailField=X,C.ContactCard=Me,C.EmailAccountsList=We,C.EmailAnalytics=Ve,C.EmailCampaign=_e,C.EmailInputField=Y,C.EmailInputGroup=He,C.FreeEmailBanner=hr,C.SubscriberList=Ue,C.UemailUtemplate=ze,C.UsubscriptionUplan=mr,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})}));