1import{u as g,f as h,c as p,r as c,j as r,L as a}from"./index-CMCUKuwR.js";function b(){g({title:"Signup Success â IsThisClickbait",description:"Your account is being created. You will be redirected shortly.",canonical:"/signup-success",image:"/android-chrome-512x512.png"});const[d]=h(),{showToast:i}=p(),[o,s]=c.useState("processing"),[t,m]=c.useState(null),e=d.get("session_id");c.useEffect(()=>{if(!e){s("error");return}u()},[e]);const u=async()=>{try{const n=await(await fetch("/api/subscription/process-signup-success",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:e})})).json();if(n.success)m(n.accountInfo),s("success"),i("Account created successfully! You can now log in.","success");else throw new Error(n.message||"Failed to create account")}catch(l){console.error("Account creation error:",l),s("error"),i("There was an issue creating your account. Please contact support.","error")}};if(o==="processing")return r.jsxs(r.Fragment,{children:[r.jsxs("header",{className:"app-header",children:[r.jsxs("h1",{children:[r.jsx("span",{className:"title-first",children:"Creating"}),r.jsx("span",{className:"title-second",children:"Account"})]}),r.jsx("p",{className:"subtitle",children:"Please wait while we set up your account..."})]}),r.jsx("main",{className:"success-container",children:r.jsxs("div",{className:"processing-card",children:[r.jsx("div",{className:"spinner"}),r.jsx("h2",{children:"Processing Payment"}),r.jsx("p",{children:"Your payment was successful! We're now creating your account with full access."})]})}),r.jsx("style",{jsx:!0,children:` 2 .success-container { 3 max-width: 500px; 4 margin: 3rem auto; 5 padding: 2rem; 6 } 7 8 .processing-card { 9 background: var(--color-surface); 10 border-radius: 12px; 11 padding: 3rem 2rem; 12 text-align: center; 13 border: 1px solid rgba(var(--color-border-rgb), 0.3); 14 } 15 16 .spinner { 17 width: 40px; 18 height: 40px; 19 border: 4px solid rgba(var(--color-primary-rgb), 0.3);
20 border-top: 4px solid var(--color-primary); 21 border-radius: 50%; 22 animation: spin 1s linear infinite; 23 margin: 0 auto 1.5rem; 24 } 25 26 @keyframes spin { 27 0% { transform: rotate(0deg); } 28 100% { transform: rotate(360deg); } 29 } 30 31 .processing-card h2 { 32 color: var(--color-text); 33 margin-bottom: 1rem; 34 } 35 36 .processing-card p { 37 color: var(--color-text-secondary); 38 line-height: 1.6; 39 } 40 `})]});if(o==="success")return r.jsxs(r.Fragment,{children:[r.jsxs("header",{className:"app-header",children:[r.jsxs("h1",{children:[r.jsx("span",{className:"title-first",children:"Welcome"}),r.jsx("span",{className:"title-second",children:"Aboard"})]}),r.jsx("p",{className:"subtitle",children:"Your account has been created successfully!"})]}),r.jsx("main",{className:"success-container",children:r.jsxs("div",{className:"success-card",children:[r.jsx("div",{className:"success-icon",children:"â "}),r.jsx("h2",{children:"Account Created Successfully!"}),r.jsx("p",{children:"Your payment was processed and your account is now active."}),t&&r.jsxs("div",{className:"account-details",children:[r.jsx("h3",{children:"Account Details:"}),r.jsxs("p",{children:[r.jsx("strong",{children:"Email:"})," ",t.email]}),r.jsxs("p",{children:[r.jsx("strong",{children:"Plan:"})," ",t.plan]}),r.jsxs("p",{children:[r.jsx("strong",{children:"Status:"})," Active"]})]}),r.jsxs("div",{className:"next-steps",children:[r.jsx("h3",{children:"What's Next?"}),r.jsx("p",{children:"You can now log in to your account and start using IsThisClickbait with your paid plan benefits."}),r.jsxs("div",{className:"action-buttons",children:[r.jsx(a,{to:"/login",className:"login-btn",children:"Log In to Your Account"}),r.jsx(a,{to:"/",className:"home-btn",children:"Go to Homepage"})]})]})]})}),r.jsx("style",{jsx:!0,children:` 41 .success-container { 42 max-width: 500px; 43 margin: 3rem auto; 44 padding: 2rem; 45 } 46 47 .success-card { 48 background: var(--color-surface); 49 border-radius: 12px; 50 padding: 3rem 2rem; 51 text-align: center; 52 border: 1px solid rgba(var(--color-border-rgb), 0.3); 53 } 54 55 .success-icon { 56 font-size: 4rem; 57 margin-bottom: 1.5rem; 58 } 59 60 .success-card h2 { 61 color: var(--color-text); 62 margin-bottom: 1rem; 63 } 64 65 .success-card > p { 66 color: var(--color-text-secondary); 67 line-height: 1.6; 68 margin-bottom: 2rem; 69 } 70 71 .account-details { 72 background: rgba(var(--color-primary-rgb), 0.1); 73 padding: 1.5rem; 74 border-radius: 8px; 75 margin: 2rem 0; 76 text-align: left; 77 } 78 79 .account-details h3 { 80 color: var(--color-text); 81 margin-bottom: 1rem; 82 text-align: center; 83 } 84 85 .account-details p { 86 color: var(--color-text); 87 margin-bottom: 0.5rem; 88 } 89 90 .next-steps { 91 margin-top: 2rem; 92 } 93 94 .next-steps h3 { 95 color: var(--color-text); 96 margin-bottom: 1rem; 97 } 98 99 .next-steps p { 100 color: var(--color-text-secondary); 101 line-height: 1.6; 102 margin-bottom: 2rem; 103 } 104 105 .action-buttons { 106 display: flex; 107 gap: 1rem; 108 justify-content: center; 109 flex-wrap: wrap; 110 } 111 112 .login-btn, .home-btn { 113 padding: 0.875rem 1.5rem; 114 border-radius: 8px; 115 text-decoration: none; 116 font-weight: 600; 117 transition: all 0.2s ease; 118 } 119 120 /* Make the âLog In to Your Accountâ button match the Login page primary button */ 121 .login-btn { 122 background: #242424; 123 color: #FFFFFF; 124 border-color: rgba(0,0,0,0.08); 125 } 126 [data-theme="dark"] .login-btn { 127 background: #96F0F0; 128 color: #242424; 129 border-color: rgba(36,36,36,0.20); 130 } 131 [data-theme="light"] .login-btn { 132 background: 133 radial-gradient(140% 120% at 50% 100%, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0) 55%), 134 #242424; 135 color: #FFFFFF; 136 border-color: rgba(0,0,0,0.08); 137 } 138 .login-btn:hover { transform: translateY(-1px); } 139 [data-theme="dark"] .login-btn:hover { box-shadow: 0 6px 16px rgba(150,240,240,0.35); } 140 [data-theme="light"] .login-btn:hover { box-shadow: 0 6px 16px rgba(0,0,0,0.25); } 141 142 .home-btn { 143 background: transparent; 144 color: var(--color-text); 145 border: 1px solid rgba(var(--color-border-rgb), 0.3); 146 } 147 148 .home-btn:hover { 149 background: rgba(var(--color-surface-rgb), 0.5); 150 transform: translateY(-1px); 151 } 152 `})]});if(o==="error")return r.jsxs(r.Fragment,{children:[r.jsxs("header",{className:"app-header",children:[r.jsxs("h1",{children:[r.jsx("span",{className:"title-first",children:"Account"}),r.jsx("span",{className:"title-second",children:"Error"})]}),r.jsx("p",{className:"subtitle",children:"There was an issue creating your account"})]}),r.jsx("main",{className:"success-container",children:r.jsxs("div",{className:"error-card",children:[r.jsx("div",{className:"error-icon",children:"â"}),r.jsx("h2",{children:"Account Creation Failed"}),r.jsx("p",{children:"Your payment was successful, but there was an issue creating your account."}),r.jsxs("div",{className:"next-steps",children:[r.jsx("h3",{children:"What to do next:"}),r.jsxs("ul",{children:[r.jsxs("li",{children:["Contact our support team with your session ID: ",r.jsx("code",{children:e})]}),r.jsx("li",{children:"We'll manually create your account and notify you via email"}),r.jsx("li",{children:"Your payment is safe and will be honored"})]}),r.jsxs("div",{className:"action-buttons",children:[r.jsx(a,{to:"/contact",className:"contact-btn",children:"Contact Support"}),r.jsx(a,{to:"/",className:"home-btn",children:"Go to Homepage"})]})]})]})}),r.jsx("style",{jsx:!0,children:` 153 .success-container { 154 max-width: 500px; 155 margin: 3rem auto; 156 padding: 2rem; 157 } 158 159 .error-card { 160 background: var(--color-surface); 161 border-radius: 12px; 162 padding: 3rem 2rem; 163 text-align: center; 164 border: 1px solid rgba(var(--color-error-rgb), 0.3); 165 } 166 167 .error-icon { 168 font-size: 4rem; 169 margin-bottom: 1.5rem; 170 } 171 172 .error-card h2 { 173 color: var(--color-error); 174 margin-bottom: 1rem; 175 } 176 177 .error-card > p { 178 color: var(--color-text-secondary); 179 line-height: 1.6; 180 margin-bottom: 2rem; 181 } 182 183 .next-steps { 184 text-align: left; 185 margin-top: 2rem; 186 } 187 188 .next-steps h3 { 189 color: var(--color-text); 190 margin-bottom: 1rem; 191 text-align: center; 192 } 193 194 .next-steps ul { 195 color: var(--color-text-secondary); 196 line-height: 1.6; 197 margin-bottom: 2rem; 198 text-align: left; 199 } 200 201 .next-steps li { 202 margin-bottom: 0.5rem; 203 } 204 205 code { 206 background: rgba(var(--color-border-rgb), 0.2); 207 padding: 0.25rem 0.5rem; 208 border-radius: 4px; 209 font-family: monospace; 210 font-size: 0.9rem; 211 } 212 213 .action-buttons { 214 display: flex; 215 gap: 1rem; 216 justify-content: center; 217 flex-wrap: wrap; 218 } 219 220 .contact-btn, .home-btn { 221 padding: 0.875rem 1.5rem; 222 border-radius: 8px; 223 text-decoration: none; 224 font-weight: 600; 225 transition: all 0.2s ease; 226 } 227 228 /* Make âContact Supportâ match Login page primary button styling */ 229 .contact-btn { 230 background: #242424; 231 color: #FFFFFF; 232 border-color: rgba(0,0,0,0.08); 233 } 234 [data-theme="dark"] .contact-btn { 235 background: #96F0F0; 236 color: #242424; 237 border-color: rgba(36,36,36,0.20); 238 } 239 [data-theme="light"] .contact-btn { 240 background: 241 radial-gradient(140% 120% at 50% 100%, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0) 55%), 242 #242424; 243 color: #FFFFFF; 244 border-color: rgba(0,0,0,0.08); 245 } 246 .contact-btn:hover { transform: translateY(-1px); } 247 [data-theme="dark"] .contact-btn:hover { box-shadow: 0 6px 16px rgba(150,240,240,0.35); } 248 [data-theme="light"] .contact-btn:hover { box-shadow: 0 6px 16px rgba(0,0,0,0.25); } 249 250 .home-btn { 251 background: transparent; 252 color: var(--color-text); 253 border: 1px solid rgba(var(--color-border-rgb), 0.3); 254 } 255 256 .home-btn:hover { 257 background: rgba(var(--color-surface-rgb), 0.5); 258 transform: translateY(-1px); 259 } 260 `})]})}
260export{b as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.