1import{r as d,j as e}from"./vendor-react-O1HtssjF.js";import{u as $,d as G,e as A,a9 as H}from"./index-BdhET6SP.js";import{a as J,u as K,b as T}from"./vendor-query-C57Ujfuk.js";import{g as U}from"./error-messages-DvyZ16QK.js";import{o as V,a as B,e as u,s as I}from"./types-CB-dyNGY.js";import{L as Z}from"./vendor-icons-qfsiYizf.js";import"./vendor-radix-AQo14B1u.js";import"./vendor-datefns-RsZNnTnu.js";import"./vendor-openai-PX4_LG7y.js";(function(){try{var o=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new o.Error().stack;t&&(o._sentryDebugIds=o._sentryDebugIds||{},o._sentryDebugIds[t]="bf1bf304-e280-416e-a6b9-6b457c2d358e",o._sentryDebugIdIdentifier="sentry-dbid-bf1bf304-e280-416e-a6b9-6b457c2d358e")}catch{}})();const X=["PM","Tech Lead","PO","Scrum Master","Outro"],Y=["consultoria","agencia","interno","outro"],ee=["scrum","kanban","waterfall","hybrid"],oe=["1","2-5","6-10","11-50","50+"],D=["jira","azure"],O=120,te=o=>I().transform(t=>t.replace(/[\u0000-\u001F\u007F-\u009F\u2028\u2029]+/g," ").replace(/\s+/g," ").trim()).pipe(I().max(o,`Use no máximo ${o} caracteres`));V({role:u(X).optional(),organization_name:te(O).optional(),organization_type:u(Y).optional(),primary_methodology:u(ee).optional(),team_size:u(oe).optional(),integrations_planned:B(u(D)).max(D.length).refine(o=>new Set(o).size===o.length,"Integração repetida").optional()}).strict();const h=[{id:1,label:"Sobre você"},{id:2,label:"Sua organização"},{id:3,label:"Por onde começar"}],c={projeto:{titulo:"Criar meu primeiro projeto",descricao:"Cadastre o projeto uma vez e use em reuniões, documentos e no Assistente.",rota:"/projetos?abrir=novo",botao:"Criar meu primeiro projeto"},jira:{titulo:"Conectar o Jira",descricao:"Traga o backlog que você já tem, sem digitar de novo.",rota:"/integracoes?abrir=jira",botao:"Conectar o Jira"},azure:{titulo:"Conectar o Azure DevOps",descricao:"Traga o backlog que você já tem, sem digitar de novo.",rota:"/integracoes?abrir=azure",botao:"Conectar o Azure DevOps"}},E=["Em Novo documento, uma transcrição, suas notas ou um arquivo viram documento pronto.","Pergunte ao Assistente sobre o andamento dos seus projetos, em português, como numa conversa.","Em Integrações você conecta o Jira ou o Azure DevOps a qualquer momento."];function ne(o){return o.charAt(0).toLocaleLowerCase("pt-BR")+o.slice(1)}function ie(o,t){var s;const n={};o.role&&(n.role=o.role);const i=(s=o.organization_name)==null?void 0:s.trim();return i&&(n.organization_name=i),o.organization_type&&(n.organization_type=o.organization_type),o.primary_methodology&&(n.primary_methodology=o.primary_methodology),o.team_size&&(n.team_size=o.team_size),(t==="jira"||t==="azure")&&(n.integrations_planned=[t]),n}function be(){const[,o]=$(),t=J(),{toast:n}
1=G(),[i,s]=d.useState(1),[m,j]=d.useState({}),[l,P]=d.useState(null),[w,M]=d.useState(!1),[N,R]=d.useState(!1),S=d.useRef(null),z=d.useRef(!0);d.useEffect(()=>{var a,v;if(z.current){z.current=!1;return}(v=(a=S.current)==null?void 0:a.querySelector("h2"))==null||v.focus()},[i]);const{data:x,isLoading:q,isError:L}=K({queryKey:["/api/onboarding/status"]}),_=T({mutationFn:async a=>(await A("POST","/api/onboarding/complete",a)).json(),onSuccess:()=>{M(!0),t.invalidateQueries({queryKey:["/api/onboarding/status"]})},onError:a=>{n({title:"Não deu para salvar suas respostas",description:U(a),variant:"destructive"})}}),C=T({mutationFn:async()=>(await A("POST","/api/onboarding/skip")).json(),onSuccess:()=>{t.invalidateQueries({queryKey:["/api/onboarding/status"]}),n({title:"Tudo bem, você pode configurar isso quando quiser"}),o("/painel")}});if(w&&l)return e.jsx(de,{destino:l,dicasAbertas:N,onAlternarDicas:()=>R(a=>!a),onIr:()=>o(c[l].rota)});if(q)return e.jsx("div",{style:y,"data-testid":"onboarding-carregando",children:e.jsx(Z,{className:"h-8 w-8 animate-spin","aria-label":"Carregando"})});if(L||!(x!=null&&x.primeiraVisita))return e.jsx(H,{to:"/painel"});function W(){i<h.length&&s(i+1)}function F(){i>1&&s(i-1)}function Q(){l&&_.mutate(ie(m,l))}const r=_.isPending||C.isPending;return e.jsx("div",{style:y,"data-testid":"onboarding-wizard",children:e.jsxs("div",{className:"v2-card",style:k,children:[e.jsx(re,{currentStep:i}),e.jsxs("div",{ref:S,"data-testid":`onboarding-step-${i}`,children:[i===1&&e.jsx(ae,{data:m,onChange:j}),i===2&&e.jsx(se,{data:m,onChange:j}),i===3&&e.jsx(le,{destino:l,onChange:P})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",marginTop:12},children:[e.jsx("button",{onClick:()=>C.mutate(),disabled:r,"data-testid":"onboarding-skip",style:b(r),children:"Pular"}),e.jsxs("div",{style:{display:"flex",gap:8},children:[i>1&&e.jsx("button",{onClick:F,disabled:r,"data-testid":"onboarding-back",style:b(r),children:"Voltar"}),i<h.length?e.jsx("button",{onClick:W,disabled:r,"data-testid":"onboarding-next",style:f(r),children:"Próximo"}):e.jsx("button",{onClick:Q,disabled:r||!l,"data-testid":"onboarding-complete",style:f(r||!l),children:r?"Concluindo...":"Concluir"})]})]})]})})}function re({currentStep:o}){return e.jsx("div",{style:{display:"flex",gap:8},children:h.map(t=>e.jsxs("div",{style:{flex:1,textAlign:"left"},"data-testid":`onboarding-progress-${t.id}`,"aria-current":t.id===o?"step":void 0,children:[e.jsx("div",{style:{height:4,borderRadius:2,background:t.id<=o?"var(--v2-color-primary-500)":"var(--v2-border)"}}
1),e.jsxs("div",{style:{fontSize:"var(--v2-text-xs)",marginTop:6,fontWeight:t.id===o?600:400,color:t.id<=o?"var(--v2-text-strong)":"var(--v2-text-muted)"},children:[t.id,". ",t.label]})]},t.id))})}function ae({data:o,onChange:t}){return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx("h2",{tabIndex:-1,style:{margin:0,fontSize:22,fontWeight:600,outline:"none"},children:"Conte sobre você"}),e.jsx("p",{className:"v2-dim",style:{margin:0,fontSize:14},children:"Com isso o Assistente responde no seu contexto. Tudo aqui é opcional."}),e.jsxs("label",{style:p,children:[e.jsx("span",{children:"Qual seu papel principal?"}),e.jsxs("select",{value:o.role??"",onChange:n=>t({...o,role:n.target.value||void 0}),"data-testid":"onboarding-role",style:g,children:[e.jsx("option",{value:"",children:"Selecione..."}),e.jsx("option",{value:"PM",children:"Project Manager"}),e.jsx("option",{value:"Tech Lead",children:"Tech Lead"}),e.jsx("option",{value:"PO",children:"Product Owner"}),e.jsx("option",{value:"Scrum Master",children:"Scrum Master"}),e.jsx("option",{value:"Outro",children:"Outro"})]})]})]})}function se({data:o,onChange:t}){return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx("h2",{tabIndex:-1,style:{margin:0,fontSize:22,fontWeight:600,outline:"none"},children:"Sobre sua organização"}),e.jsxs("label",{style:p,children:[e.jsx("span",{children:"Nome da empresa ou do cliente"}),e.jsx("input",{type:"text",value:o.organization_name??"",onChange:n=>t({...o,organization_name:n.target.value}),"data-testid":"onboarding-org-name",placeholder:"Ex: Acme Inc.",maxLength:O,style:g})]}),e.jsxs("label",{style:p,children:[e.jsx("span",{children:"Tipo de organização"}),e.jsxs("select",{value:o.organization_type??"",onChange:n=>t({...o,organization_type:n.target.value||void 0}),"data-testid":"onboarding-org-type",style:g,children:[e.jsx("option",{value:"",children:"Selecione..."}),e.jsx("option",{value:"consultoria",children:"Consultoria"}),e.jsx("option",{value:"agencia",children:"Agência"}),e.jsx("option",{value:"interno",children:"Time interno"}),e.jsx("option",{value:"outro",children:"Outro"})]})]}),e.jsxs("label",{style:p,children:[e.jsx("span",{children:"Metodologia principal"}),e.jsxs("select",{value:o.primary_methodology??"",onChange:n=>t({...o,primary_methodology:n.target.value||void 0}),"data-testid":"onboarding-methodology",style:g,children:[e.jsx("option",{value:"",children:"Selecione..."}),e.jsx("option",{value:"scrum",children:"Scrum"}),e.jsx("option",{value:"kanban",children:"Kanban"}),e.jsx("option",{value:"waterfall",children:"Waterfall"}),e.jsx("option",{value:"hybrid",children:"HÃbrido"})]})]}),e.jsxs("label",{style:p,children:[e.jsx("span",{children:"Tamanho da equipe"}),e.jsxs("select",{value:o.team_size??"",onChange:n=>t({...o,team_size:n.target.value||void 0}),"data-testid":"onboarding-team-size",style:g,children:[e.jsx("option",{value:"",children:"Selecione..."}),e.jsx("option",{value:"1",children:"Eu mesmo (1)"}),e.jsx("option",{value:"2-5",children:"2 a 5 pessoas"}),e.jsx("option",{value:"6-10",children:"6 a 10 pessoas"}),e.jsx("option",{value:"11-50",children:"11 a 50 pessoas"}),e.jsx("option",{value:"50+",children:"Mais de 50"})]})]})]})}function le({destino:o,onChange:t}){return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx("h2",{tabIndex:-1,style:{margin:0,fontSize:22,fontWeight:600,outline:"none"},children:"Por onde começar?"}),e.jsx("p",{className:"v2-dim",style:{margin:0,fontSize:14},children:"Escolha um caminho. Ao concluir, levamos você direto para ele."}),e.jsx("div",{role:"radiogroup",style:{display:"flex",flexDirection:"column",gap:8},children:Object.keys(c).map(n=>e.jsxs("button",{type:"button",role:"radio","aria-checked":o===n,onClick:()=>t(n),"data-testid":`onboarding-destino-${n}`,style:ce(o===n),children:[e.jsx("span",{style:{fontWeight:600,color:"var(--v2-text-strong)"},children:c[n].titulo}),e.jsx("span",{style:{fontSize:13,color:"var(--v2-text-muted)"},children:c[n].descricao})]},n))})]})}function de({destino:o,dicasAbertas:t,onAlternarDicas:n,onIr:i}){return e.jsx("div",{style:y,"data-testid":"onboarding-final",children:e.jsxs("div",{className:"v2-card",style:k,children:[e.jsx("h2",{style:{margin:0,fontSize:22,fontWeight:600},children:"Tudo pronto"}),e.jsxs("p",{className:"v2-dim",style:{margin:0,fontSize:14},children:["Suas respostas foram salvas. O próximo passo: ",ne(c[o].titulo),"."]}),e.jsxs("div",{children:[e.jsx("button",{type:"button",onClick:n,"aria-expanded":t,"data-testid":"onboarding-dicas-toggle",style:b(!1),children:t?"Esconder as dicas":`Ver ${E.length} dicas rápidas`}),t&&e.jsx("ul",{"data-testid":"onboarding-dicas",style:{margin:"12px 0 0",paddingLeft:20,fontSize:14,lineHeight:1.6},children:E.map(s=>e.jsx("li",{children:s},s))})]}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end"},children:e.jsx("button",{onClick:i,"data-testid":"onboarding-ir",style:f(!1),children:c[o].botao})})]})})}const y={minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",padding:16,background:"var(--v2-surface-sunken)"},k={width:"100%",maxWidth:640,padding:32,display:"flex",flexDirection:"column",gap:24},p={display:"flex",flexDirection:"column",gap:6,fontSize:13,color:"var(--v2-text-muted)"},g={fontSize:14,padding:"8px 12px",border:"1px solid var(--v2-border)",borderRadius:6,background:"var(--v2-surface)",color:"var(--v2-text-strong)"};function f(o){return{padding:"10px 20px",fontSize:14,fontWeight:500,border:"1px solid var(--v2-color-primary-500)",borderRadius:6,background:o?"var(--v2-surface)":"var(--v2-color-primary-500)",color:o?"var(--v2-text-muted)":"white",cursor:o?"not-allowed":"pointer",opacity:o?.6:1}}function b(o){return{padding:"10px 20px",fontSize:14,fontWeight:500,border:"1px solid var(--v2-border)",borderRadius:6,background:"var(--v2-surface)",color:"var(--v2-text-muted)",cursor:o?"not-allowed":"pointer",opacity:o?.6:1}}function ce(o){return{display:"flex",flexDirection:"column",alignItems:"flex-start",ga
1p:4,textAlign:"left",padding:"12px 16px",fontSize:14,border:`1px solid ${o?"var(--v2-color-primary-500)":"var(--v2-border)"}`,borderRadius:8,background:o?"var(--v2-color-primary-100)":"var(--v2-surface)",cursor:"pointer"}}export{E as DICAS_DA_PRIMEIRA_VISITA,be as default}; 2//# sourceMappingURL=OnboardingWizard-Dx0y9WlW.js.map
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.