PageSourceSearch

https://kannibal.ai/assets/DnaPublicProfile-B8YbJw2E.js

js kannibal.ai collected 2026-10-05 12:16:50 UTC 6,483 bytes, 1 lines download raw bytes

1import{bu as E,p as P,r as g,u as S,D as F,j as e,Z as y,C as x,b as v,e as N,f,g as p,a as h,M as b,x as r,t as k,I as l,P as z,a8 as A}from"./index-B5zFf__L.js";import{D as T}from"./DnaGauge-K_9fXtlA.js";import{B as I}from"./building-2-B8bk9PSw.js";function L(){const[,c]=E("/dna/public/:slug"),d=c==null?void 0:c.slug,{toast:j}=P(),[C,m]=g.useState(!1),[t,i]=g.useState({inquirerName:"",inquirerEmail:"",inquirerPhone:"",inquirerCompany:"",message:""}),{data:o,isLoading:w}=S({queryKey:[`/api/dna/public/${d}`],enabled:!!d}),u=F({mutationFn:async a=>{const n=await fetch(`/api/dna/public/${d}/contact`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!n.ok){const D=await n.json();throw new Error(D.error||"Errore nell'invio")}return n.json()},onSuccess:()=>{j({title:"Richiesta inviata!",description:"Ti contatteremo presto tramite email."}),m(!1),i({inquirerName:"",inquirerEmail:"",inquirerPhone:"",inquirerCompany:"",message:""})},onError:a=>{j({variant:"destructive",title:"Errore",description:a.message})}}),q=a=>{a.preventDefault(),u.mutate(t)};if(w)return e.jsx("div",{className:"flex items-center justify-center min-h-screen",children:e.jsx(y,{className:"h-8 w-8 animate-spin text-primary"})});if(!(o!=null&&o.success))return e.jsxs("div",{className:"container max-w-2xl mx-auto py-16 px-4 text-center",children:[e.jsx("h1",{className:"text-2xl font-bold mb-4",children:"Profilo non trovato"}),e.jsx("p",{className:"text-muted-foreground",children:"Il profilo che stai cercando non esiste o non è pubblico."})]});const s=o.profile;return e.jsx("div",{className:"min-h-screen bg-gradient-to-br from-background via-background to-primary/5 py-12 px-4",children:e.jsxs("div",{className:"container max-w-5xl mx-auto space-y-8",children:[e.jsxs("div",{className:"text-center space-y-2",children:[e.jsx("h1",{className:"text-4xl font-bold","data-testid":"text-company-name",children:s.companyName||"Azienda"}),s.industry&&e.jsx("p",{className:"text-lg text-muted-foreground","data-testid":"text-industry",children:s.industry}),s.businessDescription&&e.jsx("p",{className:"text-muted-foreground max-w-2xl mx-auto","data-testid":"text-description",children:s.businessDescription})]}),e.jsx("div",{className:"flex justify-center",children:e.jsx(T,{businessScore:s.businessScore,genes:{vision:s.vision,ethics:s.ethics,collaboration:s.collaboration,energy:s.energy,innovation:s.innovation,responsibility:s.responsibility,consistency:s.consistency},identityBadge:s.identityBadge,credibilityScore:s.credibilityScore,size:500})}),s.keywords&&s.keywords.length>0&&e.jsxs(x,{children:[e.jsxs(v,{children:[e.jsx(N,{children:"DNA Distintivo"}),e.jsx(f,{children:"Caratteristiche chiave dell'identità aziendale"})]}),e.jsx(p,{children:e.jsx("div",{className:"flex flex-wrap justify-center gap-3",children:s.keywords.map((a,n)=>e.jsx("span",{className:"px-6 py-3 bg-primary/10 text-primary rounded-full text-base font-medium","data-testid":`keyword-${n}`,children:a},n))})})]}),s.contactEnabled&&e.jsxs(x,{className:"border-2 border-primary/20",children:[e.jsxs(v,{children:[e.jsx(N,{className:"text-2xl",children:"Interessato a collaborare?"}),e.jsx(f,{children:"Compila il form per essere ricontattato dal team"})]}),e.jsx(p,{children:C?e.jsxs("form",{onSubmit:q,className:"space-y-4",children:[e.jsxs("div",{className:"grid md:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r,{htmlFor:"name",children:["Nome e Cognome ",e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsxs("div",{className:"relative",children:[e.jsx(k,{className:"absolute left-3 top-3 h-4 w-4 text-muted-foreground"}),e.jsx(l,{id:"name",placeholder:"Mario Rossi",value:t.inquirerName,onChange:a=>i({...t,inquirerName:a.target.value}),required:!0,className:"pl-10","data-testid":"input-name"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r,{htmlFor:"email",children:["Email ",e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsxs("div",{className:"relative",children:[e.jsx(b,{className:"absolute left-3 top-3 h-4 w-4 text-muted-foreground"}),e.jsx(l,{id:"email",type:"email",placeholder:"[email protected]",value:t.inquirerEmail,onChange:a=>i({...t,inquirerEmail:a.target.value}),required:!0,className:"pl-10","data-testid":"input-email"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"phone",children:"Telefono"}),e.jsxs("div",{className:"relative",children:[e.jsx(z,{className:"absolute left-3 top-3 h-4 w-4 text-muted-foreground"}),e.jsx(l,{id:"phone",type:"tel",placeholder:"+39 123 456 7890",value:t.inquirerPhone,onChange:a=>i({...t,inquirerPhone:a.target.value}),className:"pl-10","data-testid":"input-phone"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(r,{htmlFor:"company",children:"Azienda"}),e.jsxs("div",{className:"relative",children:[e.jsx(I,{className:"absolute left-3 top-3 h-4 w-4 text-muted-foreground"}),e.jsx(l,{id:"company",placeholder:"Acme Corp",value:t.inquirerCompany,onChange:a=>i({...t,inquirerCompany:a.target.value}),className:"pl-10","data-testid":"input-company"})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(r,{htmlFor:"message",children:["Messaggio ",e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsx(A,{id:"message",placeholder:"Ciao, sono interessato a...",rows:5,value:t.message,onChange:a=>i({...t,message:a.target.value}),required:!0,"data-testid":"input-message"})]}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx(h,{type:"submit",disabled:u.isPending,"data-testid":"button-submit-contact",children:u.isPending?e.jsxs(e.Fragment,{children:[e.jsx(y,{className:"mr-2 h-4 w-4 animate-spin"}),"Invio..."]}):"Invia Richiesta"}),e.jsx(h,{type:"button",variant:"outline",onClick:()=>m(!1),"data-testid":"button-cancel",children:"Annulla"})]})]}):e.jsx("div",{className:"text-center py-8",children:e.jsxs(h,{size:"lg",onClick:()=>m(!0),"data-testid":"button-show-contact-form",children:[e.jsx(b,{className:"mr-2 h-5 w-5"}),"Contattami"]})})})]}),e.jsx(x,{className:"bg-muted/50",children:e.jsx(p,{className:"pt-6",children:e.jsxs("p",{className:"text-sm text-center text-muted-foreground",children:["🧬 ",e.jsx("strong",{children:"DNA Aziendale"})," è un sistema di identità digitale che rappresenta l'essenza unica di ogni azienda attraverso 7 business genes. Non è un voto, ma un'impronta digitale per trovare affinità e collaborazioni di valore."]})})})]})})}export{L 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.