PageSourceSearch

https://app.guardianpro.cloud/assets/WizardResults-D4FM7MFW.js

js guardianpro.cloud collected 2026-10-03 21:16:30 UTC 22,375 bytes, 1 lines download raw bytes

1import{r as t,k as me,g as xe,q as ue,e as j,j as e}from"./vendor-BFXU7DOE.js";import{p as he,c as L,B as d,Z as ge,e as o,s as M,C as fe,Y as G,W as K,g as pe,A as Y,d as be,a2 as je,aG as Ne,M as ye,I as ve,a_ as we,S as Ce}from"./index-0a0uir_3.js";import{I as Se}from"./input-tkUwFhSJ.js";import{W as ke}from"./WizardStepIndicator-Bpr7xVrn.js";import{A as Re}from"./AwsServiceIcon-D1M-dpPY.js";import{w as Ae}from"./wizardService-COZKYIun.js";import{m as Ie}from"./GitBranch.es-BasBAbFe.js";import"./ui-B_QsM55A.js";import"./radix-BmG-mZpu.js";const Ze=new Map([["bold",t.createElement(t.Fragment,null,t.createElement("path",{d:"M180.49,143.51a12,12,0,0,1,0,17l-24,24a12,12,0,0,1-17-17L155,152l-15.52-15.51a12,12,0,1,1,17-17Zm-64-24a12,12,0,0,0-17,0l-24,24a12,12,0,0,0,0,17l24,24a12,12,0,0,0,17-17L101,152l15.52-15.51A12,12,0,0,0,116.49,119.51ZM220,88V216a20,20,0,0,1-20,20H56a20,20,0,0,1-20-20V40A20,20,0,0,1,56,20h96a12,12,0,0,1,8.49,3.52l56,56A12,12,0,0,1,220,88ZM160,57V80h23Zm36,155V104H148a12,12,0,0,1-12-12V44H60V212Z"}))],["duotone",t.createElement(t.Fragment,null,t.createElement("path",{d:"M208,88H152V32Z",opacity:"0.2"}),t.createElement("path",{d:"M181.66,146.34a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32Zm-72-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,0,11.32l24,24a8,8,0,0,0,11.32-11.32L91.31,152l18.35-18.34A8,8,0,0,0,109.66,122.34ZM216,88V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Zm40,136V96H152a8,8,0,0,1-8-8V40H56V216H200Z"}))],["fill",t.createElement(t.Fragment,null,t.createElement("path",{d:"M213.66,82.34l-56-56A8,8,0,0,0,152,24H56A16,16,0,0,0,40,40V216a16,16,0,0,0,16,16H200a16,16,0,0,0,16-16V88A8,8,0,0,0,213.66,82.34Zm-104,88a8,8,0,0,1-11.32,11.32l-24-24a8,8,0,0,1,0-11.32l24-24a8,8,0,0,1,11.32,11.32L91.31,152Zm72-12.68-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32l24,24A8,8,0,0,1,181.66,157.66ZM152,88V44l44,44Z"}))],["light",t.createElement(t.Fragment,null,t.createElement("path",{d:"M180.24,147.76a6,6,0,0,1,0,8.48l-24,24a6,6,0,0,1-8.48-8.48L167.51,152l-19.75-19.76a6,6,0,1,1,8.48-8.48Zm-72-24a6,6,0,0,0-8.48,0l-24,24a6,6,0,0,0,0,8.48l24,24a6,6,0,1,0,8.48-8.48L88.49,152l19.75-19.76A6,6,0,0,0,108.24,123.76ZM214,88V216a14,14,0,0,1-14,14H56a14,14,0,0,1-14-14V40A14,14,0,0,1,56,26h96a6,6,0,0,1,4.25,1.76l56,56A6,6,0,0,1,214,88Zm-56-6h35.52L158,46.48Zm44,134V94H152a6,6,0,0,1-6-6V38H56a2,2,0,0,0-2,2V216a2,2,0,0,0,2,2H200A2,2,0,0,0,202,216Z"}))],["regular",t.createElement(t.Fragment,null,t.createElement("path",{d:"M181.66,146.34a8,8,0,0,1,0,11.32l-24,24a8,8,0,0,1-11.32-11.32L164.69,152l-18.35-18.34a8,8,0,0,1,11.32-11.32Zm-72-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,0,11.32l24,24a8,8,0,0,0,11.32-11.32L91.31,152l18.35-18.34A8,8,0,0,0,109.66,122.34ZM216,88V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V40A16,16,0,0,1,56,24h96a8,8,0,0,1,5.66,2.34l56,56A8,8,0,0,1,216,88Zm-56-8h28.69L160,51.31Zm40,136V96H152a8,8,0,0,1-8-8V40H56V216H200Z"}))],["thin",t.createElement(t.Fragment,null,t.createElement("path",{d:"M178.83,149.17a4,4,0,0,1,0,5.66l-24,24a4,4,0,0,1-5.66-5.66L170.34,152l-21.17-21.17a4,4,0,1,1,5.66-5.66Zm-72-24a4,4,0,0,0-5.66,0l-24,24a4,4,0,0,0,0,5.66l24,24a4,4,0,1,0,5.66-5.66L85.66,152l21.17-21.17A4,4,0,0,0,106.83,125.17ZM212,88V216a12,12,0,0,1-12,12H56a12,12,0,0,1-12-12V40A12,12,0,0,1,56,28h96a4,4,0,0,1,2.83,1.17l56,56A4,4,0,0,1,212,88Zm-56-4h42.34L156,41.65Zm48,132V92H152a4,4,0,0,1-4-4V36H56a4,4,0,0,0-4,4V216a4,4,0,0,0,4,4H200A4,4,0,0,0,204,216Z"}))]]),Q=t.forwardRef((p,S)=>t.createElement(he,{ref:S,...p,weights:Ze}));Q.displayName="FileCodeIcon";const Ve=Q,Pe=()=>{const p=me(),S=xe(),[X]=ue(),k=X.get("accountId")||"",c=S.state,R=(c==null?void 0:c.fromScan)||!1,N=(c==null?void 0:c.scanSummary)||null,y=j.useMemo(()=>{var s;if((s=c==null?void 0:c.options)!=null&&s.length)return sessionStorage.setItem("wizard_results",JSON.stringify(c.options)),R&&N&&(sessionStorage.setItem("wizard_scan_summary",JSON.stringify(N)),sessionStorage.setItem("wizard_from_scan","true")),c.existingResources&&sessionStorage.setItem("wizard_existing_resources",JSON.stringify(c.existingResources)),c.options;try{const r=sessionStorage.getItem("wizard_results");return r?JSON.parse(r):[]}catch{return[]}},[c,R,N]);j.useEffect(()=>{if(!i)try{const s=sessionStorage.getItem("wizard_existing_resources");
1s&&re(JSON.parse(s))}catch{}},[]);const[x,H]=t.useState(y),[v,ee]=t.useState("recommended"),[A,se]=t.useState(null),[te,z]=t.useState(null),[I,ae]=t.useState(!0),[Z,T]=t.useState({}),[w,_]=t.useState(""),[b,F]=t.useState(!1),[$,P]=t.useState(null),[O,V]=t.useState(null),[i,re]=t.useState((c==null?void 0:c.existingResources)||null),[l,ne]=t.useState({});j.useEffect(()=>{y.length&&H(y)},[y]);const le=j.useMemo(()=>i?i.route53.length>0||i.acm.length>0||i.vpc.length>0||i.s3.length>0||i.kms.length>0||i.elasticache.length>0:!1,[i]),W=j.useMemo(()=>{const s=new Set;return x.forEach(r=>{var m;return(m=r.warnings)==null?void 0:m.forEach(n=>s.add(n))}),Array.from(s)},[x]),D=async()=>{var s,r,m,n;if(!(!w.trim()||b)){F(!0),V(null),P(null);try{const a=await Ae.refine(w.trim(),x);a.success&&((r=(s=a.data)==null?void 0:s.options)!=null&&r.length)?(H(a.data.options),sessionStorage.setItem("wizard_results",JSON.stringify(a.data.options)),P(a.data.refinementNote||"Architecture updated."),_("")):V(a.error||"Refinement failed. Try a different instruction.")}catch(a){const u=a instanceof Error&&"response"in a?a:null;V(((n=(m=u==null?void 0:u.response)==null?void 0:m.data)==null?void 0:n.error)||(a instanceof Error?a.message:"Refinement failed."))}finally{F(!1)}}};if(!x.length)return e.jsx("div",{className:"flex items-center justify-center py-16",children:e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx(L,{className:"w-12 h-12 text-status-yellow mx-auto"}),e.jsx("h2",{className:"text-xl font-semibold text-fg",children:"No architecture options available"}),e.jsx("p",{className:"text-fg-subtle",children:"Please go back and complete the wizard questions first."}),e.jsx(d,{onClick:()=>p(`/wizard/conversation?accountId=${k}`),children:"Back to Wizard"})]})});const C=x.find(s=>s.tier===v)||x[1],B=(C==null?void 0:C.comparison)||[],h=(s,r)=>{ne(m=>({...m,[s]:m[s]?null:r}))},J=Object.values(l).some(s=>s!=null),ce={starter:e.jsx(Ce,{className:"w-6 h-6"}),recommended:e.jsx(we,{className:"w-6 h-6"}),production:e.jsx(ve,{className:"w-6 h-6"})},ie={starter:"border-green-500/30 bg-green-500/5",recommended:"border-brand/30 bg-brand/5",production:"border-blue-500/30 bg-blue-500/5"},U={starter:"text-status-green",recommended:"text-brand",production:"text-status-blue"},de=async s=>{const r=x.find(m=>m.tier===s);r!=null&&r.template&&(await navigator.clipboard.writeText(r.template),z(s),setTimeout(()=>z(null),2e3))},g=R||sessionStorage.getItem("wizard_from_scan")==="true",f=N||(()=>{try{const s=sessionStorage.getItem("wizard_scan_summary");return s?JSON.parse(s):null}catch{return null}})(),oe=()=>{const s=x.find(m=>m.tier===v);if(!s)return;const r=J?l:void 0;p(`/wizard/cicd?accountId=${k}`,{state:{tier:v,template:s.template,option:s,reuseResources:r,scanSummary:g?f:void 0,prebuiltCicdTemplate:g?s.cicdTemplate:void 0,prebuiltCicdConfig:g?s.cicdConfig:void 0}})};return e.jsx("div",{className:"py-8 px-4",children:e.jsxs("div",{className:"max-w-7xl mx-auto space-y-8",children:[e.jsx(ke,{currentStep:2}),e.jsxs("div",{className:"text-center space-y-3",children:[e.jsx("h1",{className:"text-3xl font-bold text-fg",children:"Choose Your Architecture"}),e.jsx("p",{className:"text-fg-subtle text-lg",children:g?"Tailored to your scanned repository. CI/CD pipeline available for review.":"We've designed 3 options based on your requirements. Pick the one that fits."})]}),g&&f&&e.jsxs("div",{className:"bg-linear-to-r from-blue-500/10 to-brand/10 border border-blue-400/20 rounded-xl p-4",children:[e.jsxs("div",{className:"flex items-center space-x-2 mb-3",children:[e.jsx(Ie,{className:"w-5 h-5 text-status-blue"}),e.jsx("span",{className:"text-sm font-medium text-status-blue",children:"Scanned from your repository"})]}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.detectedServices.map((s,r)=>e.jsx("span",{className:"px-2.5 py-1 bg-surface-inset-strong text-fg text-xs rounded-full",children:s},r)),f.hasDocker&&e.jsx("span",{className:"px-2.5 py-1 bg-blue-500/20 text-status-blue text-xs rounded-full",children:"Docker"}),f.existingIac&&e.jsxs("span",{className:"px-2.5 py-1 bg-amber-500/20 text-status-amber text-xs rounded-full",children:["IaC: ",f.existingIac]})]})]}),le&&i&&e.jsxs("div",{className:"bg-linear-to-r from-cyan-500/10 to-blue-500/10 border border-cyan-500/20 rounded-xl p-5",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(ge,{className:"w-5 h-5 text-status-cyan"}),e.jsx("span",{className:"text-sm font-medium text-status-cyan",children:"Existing resources found in your account"})]}),e.jsx("span",{className:"text-xs text-gray-500",children:"Toggle resources to reuse instead of creating new ones"})]}),e.jsxs("div",{className:"space-y-2",children:[i.vpc.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>h("vpc",{vpcId:s.vpcId,publicSubnets:s.publicSubnets,privateSubnets:s.privateSubnets}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.vpc?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsxs("div",{children:[e.jsxs("span",{className:"text-sm text-fg font-medium",children:["VPC: ",s.name]}),e.jsxs("span",{className:"text-xs text-fg-subtle ml-2",children:[s.cidr," - ",s.publicSubnets.length," public, ",s.privateSubnets.length," private subnets"]})]}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.vpc?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.vpc?"Reuse":"Create new"})]},s.vpcId)),i.route53.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>h("route53",{hostedZoneId:s.hostedZoneId,domain:s.domain}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.route53?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsxs("div",{children:[e.jsxs("span",{className:"text-sm text-fg font-medium",children:["Route 53: ",s.domain]}),e.jsxs("span",{className:"text-xs text-fg-subtle ml-2",children:[s.recordCount," records"]})]}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.route53?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.route53?"Reuse":"Create new"})]},s.hostedZoneId)),i.acm.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>
1h("acm",{certificateArn:s.certificateArn,domain:s.domain}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.acm?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsxs("div",{children:[e.jsxs("span",{className:"text-sm text-fg font-medium",children:["ACM Certificate: ",s.domain]}),e.jsx("span",{className:"text-xs text-fg-subtle ml-2",children:s.status})]}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.acm?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.acm?"Reuse":"Create new"})]},s.certificateArn)),i.s3.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>h("s3",{bucketName:s.bucketName}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.s3?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsx("div",{children:e.jsxs("span",{className:"text-sm text-fg font-medium",children:["S3 Bucket: ",s.bucketName]})}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.s3?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.s3?"Reuse":"Create new"})]},s.bucketName)),i.kms.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>h("kms",{keyArn:s.keyArn}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.kms?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsx("div",{children:e.jsxs("span",{className:"text-sm text-fg font-medium",children:["KMS Key: ",s.keyAlias||s.keyId]})}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.kms?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.kms?"Reuse":"Create new"})]},s.keyId)),i.elasticache.map(s=>e.jsxs(d,{variant:"ghost",onClick:()=>h("elasticache",{endpoint:s.endpoint}),className:o("w-full flex items-center justify-between p-3 rounded-lg border transition-colors text-left h-auto",l.elasticache?"border-cyan-500/40 bg-cyan-500/10":"border-edge bg-surface-inset hover:border-edge-strong"),children:[e.jsxs("div",{children:[e.jsxs("span",{className:"text-sm text-fg font-medium",children:["Redis: ",s.replicationGroupId]}),s.endpoint&&e.jsx("span",{className:"text-xs text-fg-subtle ml-2",children:s.endpoint})]}),e.jsx("span",{className:o("text-xs font-medium px-2 py-0.5 rounded",l.elasticache?"bg-cyan-500/20 text-status-cyan":"bg-surface-inset-strong text-fg-subtle"),children:l.elasticache?"Reuse":"Create new"})]},s.replicationGroupId))]}),J&&e.jsx("p",{className:"text-xs text-status-cyan/70 mt-3",children:"Selected resources will be referenced by the CloudFormation template instead of creating new ones."})]}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6",children:x.map(s=>{const r=s.tier===v,m=s.tier==="recommended";return e.jsxs("div",{onClick:()=>ee(s.tier),className:o("relative cursor-pointer rounded-xl border-2 p-6 transition-all",r?o(ie[s.tier],"ring-2 ring-offset-2 ring-offset-background",s.tier==="starter"?"ring-green-500":s.tier==="recommended"?"ring-brand":"ring-blue-500"):"border-edge bg-surface-inset hover:border-edge-strong"),children:[m&&e.jsx("div",{className:"absolute -top-3 left-1/2 -translate-x-1/2 px-3 py-1 bg-brand-hover text-white text-xs font-semibold rounded-full",children:"Recommended"}),g&&s.cicdTemplate&&e.jsx("div",{className:"absolute -top-3 right-4 px-2.5 py-0.5 bg-blue-600 text-white text-xs font-semibold rounded-full",children:"CI/CD Included"}),e.jsxs("div",{className:"flex items-center justify-between mb-4 mt-1",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:U[s.tier],children:ce[s.tier]}),e.jsx("h3",{className:"text-xl font-bold text-fg",children:s.name})]}),r&&e.jsx(M,{className:o("w-5 h-5",U[s.tier])})]}),e.jsxs("div",{className:"mb-4",children:[e.jsxs("span",{className:"text-3xl font-bold text-fg",children:["$",s.estimatedMonthlyCost]}),e.jsx("span",{className:"text-fg-subtle text-sm",children:"/month"})]}),e.jsx("p",{className:"text-fg-subtle text-sm mb-4",children:s.description}),e.jsxs("div",{className:"space-y-2 mb-4",children:[e.jsx("h4",{className:"text-sm font-medium text-fg-muted",children:"Services included:"}),s.services.slice(0,Z[s.tier]?void 0:8).map((n,a)=>e.jsxs("div",{className:"flex items-start space-x-2",children:[e.jsx(fe,{className:"w-4 h-4 text-status-green shrink-0 mt-0.5"}),e.jsxs("div",{children:[e.jsxs("span",{className:"flex items-center gap-1.5 text-sm text-fg",children:[e.jsx(Re,{service:n.service,size:16}),n.service]}),e.jsx("span",{className:"text-xs text-gray-500 ml-1",children:n.monthlyCost>0?`$${n.monthlyCost}/mo`:"Free"})]})]},a)),s.services.length>8&&!Z[s.tier]&&e.jsxs(d,{variant:"link",size:"sm",onClick:n=>{n.stopPropagation(),T(a=>({...a,[s.tier]:!0}))},className:"text-xs text-brand hover:text-brand-light ml-6 p-0 h-auto",children:["+",s.services.length-8," more services"]}),s.services.length>8&&Z[s.tier]&&e.jsx(d,{variant:"link",size:"sm",onClick:n=>{n.stopPropagation(),T(a=>({...a,[s.tier]:!1}))},className:"text-xs text-brand hover:text-brand-light ml-6 p-0 h-auto",children:"Show less"})]}),e.jsxs("div",{className:"border-t border-edge pt-4 space-y-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-status-green mb-1",children:"Pros"}),s.tradeoffs.pros.slice(0,3).map((n,a)=>e.jsxs("p",{className:"text-xs text-fg-subtle",children:["+ ",n]},a))]}),e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-medium text-status-yellow mb
1-1",children:"Considerations"}),s.tradeoffs.cons.slice(0,2).map((n,a)=>e.jsxs("p",{className:"text-xs text-fg-subtle",children:["- ",n]},a))]}),e.jsxs("p",{className:"text-xs text-gray-500 italic",children:["Best for: ",s.tradeoffs.bestFor]})]}),s.template&&e.jsxs("div",{className:"mt-4 border-t border-edge pt-4",children:[e.jsxs(d,{variant:"ghost",onClick:n=>{n.stopPropagation(),se(A===s.tier?null:s.tier)},className:"flex items-center space-x-2 text-xs text-fg-subtle hover:text-fg p-0 h-auto",children:[e.jsx(Ve,{className:"w-3.5 h-3.5"}),e.jsx("span",{children:"View CloudFormation Template"}),A===s.tier?e.jsx(G,{className:"w-3.5 h-3.5"}):e.jsx(K,{className:"w-3.5 h-3.5"})]}),A===s.tier&&e.jsxs("div",{className:"mt-3 relative",children:[e.jsxs("div",{className:"absolute top-2 right-2 flex items-center space-x-1",children:[e.jsx(d,{variant:"ghost",size:"icon",onClick:n=>{n.stopPropagation(),de(s.tier)},"aria-label":"Copy template",className:"h-7 w-7 bg-surface-inset-strong hover:bg-surface-inset-strong",children:te===s.tier?e.jsx(M,{className:"w-3.5 h-3.5 text-status-green"}):e.jsx(pe,{className:"w-3.5 h-3.5 text-fg-subtle"})}),e.jsx(d,{variant:"ghost",size:"icon",onClick:n=>{n.stopPropagation();const a=x.find(u=>u.tier===s.tier);if(a!=null&&a.template){const u=new Blob([a.template],{type:"text/yaml"}),q=URL.createObjectURL(u),E=document.createElement("a");E.href=q,E.download=`guardian-pro-${s.tier}.yaml`,E.click(),URL.revokeObjectURL(q)}},"aria-label":"Download YAML",className:"h-7 w-7 bg-surface-inset-strong hover:bg-surface-inset-strong",children:e.jsx(Y,{className:"w-3.5 h-3.5 text-fg-subtle rotate-90"})})]}),e.jsx("pre",{className:"bg-black/50 rounded-lg p-3 text-xs text-fg-muted overflow-x-auto max-h-96 overflow-y-auto font-mono",children:s.template})]})]})]},s.tier)})}),W.length>0&&e.jsx("div",{className:"bg-amber-500/10 border border-amber-500/30 rounded-xl p-4",children:e.jsxs("div",{className:"flex items-start space-x-3",children:[e.jsx(L,{className:"w-5 h-5 text-status-amber shrink-0 mt-0.5"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-status-amber text-sm font-medium mb-1",children:"Some services are not yet available for automated CloudFormation deployment"}),e.jsx("ul",{className:"text-status-amber/70 text-xs space-y-0.5",children:W.map((s,r)=>e.jsxs("li",{children:["- ",s]},r))})]})]})}),e.jsxs("div",{className:"bg-surface-inset border border-edge rounded-xl overflow-hidden",children:[e.jsxs(d,{variant:"ghost",onClick:()=>ae(!I),className:"w-full flex items-center justify-between p-4 hover:bg-surface-inset h-auto rounded-none",children:[e.jsx("span",{className:"text-lg font-semibold text-fg",children:"Detailed Comparison"}),I?e.jsx(G,{className:"w-5 h-5 text-fg-subtle"}):e.jsx(K,{className:"w-5 h-5 text-fg-subtle"})]}),I&&B.length>0&&e.jsx("div",{className:"px-4 pb-4",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-edge",children:[e.jsx("th",{className:"text-left py-2 px-3 text-fg-subtle font-medium",children:"Category"}),e.jsx("th",{className:"text-left py-2 px-3 text-fg-subtle font-medium",children:"Feature"}),e.jsx("th",{className:"text-center py-2 px-3 text-status-green font-medium",children:"Starter"}),e.jsx("th",{className:"text-center py-2 px-3 text-brand font-medium",children:"Recommended"}),e.jsx("th",{className:"text-center py-2 px-3 text-status-blue font-medium",children:"Production"})]})}),e.jsx("tbody",{children:B.map((s,r)=>e.jsxs("tr",{className:"border-b border-edge-subtle",children:[e.jsx("td",{className:"py-2 px-3 text-gray-500",children:s.category}),e.jsx("td",{className:"py-2 px-3 text-fg",children:s.feature}),e.jsx("td",{className:"py-2 px-3 text-center text-fg-muted",children:s.starter}),e.jsx("td",{className:"py-2 px-3 text-center text-fg-muted",children:s.recommended}),e.jsx("td",{className:"py-2 px-3 text-center text-fg-muted",children:s.production})]},r))})]})})]}),e.jsxs("div",{className:"bg-surface-inset border border-edge rounded-xl p-4 space-y-3",children:[e.jsx("label",{htmlFor:"wizard-refine-input",className:"text-sm font-medium text-fg-muted",children:"Want to tweak something?"}),e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(Se,{id:"wizard-refine-input",type:"text",value:w,onChange:s=>_(s.target.value),onKeyDown:s=>s.key==="Enter"&&D(),placeholder:"e.g., 'Add Redis caching' or 'Remove database from starter'",disabled:b,className:"flex-1 bg-surface-inset px-4 py-2.5 text-fg"}),e.jsxs(d,{onClick:D,disabled:b||!w.trim(),className:"flex items-center space-x-2 px-5 py-2.5",children:[b?e.jsx(be,{className:"w-4 h-4 animate-spin"}):e.jsx(je,{className:"w-4 h-4"}),e.jsx("span",{children:b?"Refining...":"Refine"})]})]}),$&&e.jsxs("div",{className:"flex items-start space-x-2 text-sm",children:[e.jsx(M,{className:"w-4 h-4 text-status-green mt-0.5 shrink-0"}),e.jsx("span",{className:"text-status-green",children:$})]}),O&&e.jsxs("div",{className:"flex items-start space-x-2 text-sm",children:[e.jsx(L,{className:"w-4 h-4 text-status-red mt-0.5 shrink-0"}),e.jsx("span",{className:"text-status-red",children:O})]})]}),e.jsxs("div",{className:"flex items-center justify-between pt-4",children:[e.jsxs(d,{variant:"ghost",onClick:()=>p(`/wizard/conversation?accountId=${k}`),className:"flex items-center space-x-2 px-6 py-3 text-fg-subtle hover:text-fg",children:[e.jsx(Ne,{className:"w-4 h-4"}),e.jsx("span",{children:"Back to Wizard"})]}),e.jsx("div",{className:"flex items-center space-x-4",children:e.jsxs(d,{onClick:oe,className:"flex items-center space-x-2 px-8 py-3 shadow-lg shadow-brand/25",children:[e.jsx(ye,{className:"w-5 h-5"}),e.jsxs("span",{children:["Continue with ",C.name]}),e.jsx(Y,{className:"w-4 h-4"})]})})]})]})})};export{Pe 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.