1import{r as m,j as t,B as N,b as f}from"./index-CyV9aJqm.js";import{N as S}from"./Navbar-DU3DU4qC.js";import{F as E}from"./Footer-DsVXgoJT.js";import{S as R}from"./SEO-CgzsEJIw.js";import{K as k}from"./KanvoBubble-DN4_1ywD.js";import{L as T}from"./lock-BPlhYtD9.js";import{A as D}from"./arrow-right-Xptv4sgg.js";import"./ThemeToggle-CnYh-pZy.js";import"./KanvoLogo-BZGpIwui.js";import"./chevron-down-oEEberIu.js";import"./smartphone-C-2MjbOg.js";import"./download-JnTex1-4.js";import"./mail-CVvil2_Q.js";import"./switch-cwLWlGKS.js";import"./index-Ci1vdtiW.js";import"./label-BPmy7-1x.js";import"./contactEmail-CLY1sg0F.js";import"./input-CWgB7KLx.js";import"./linkedin-BKB9Pnne.js";import"./icon-button-BHc1TM2G.js";import"./attachments-Du6IWzHv.js";import"./uploadWithProgress-BZZAoW3S.js";import"./waveform-CSmBslBa.js";import"./transcribe-rr4vosSJ.js";import"./edge-f8nxATZP.js";import"./file-text-BRVgH8rj.js";import"./play-BGVR_eaJ.js";import"./x-DdN-xT1D.js";import"./image-Dfh3fS13.js";import"./messages-DlBQOM4D.js";import"./entity-avatar-BrgVSttN.js";import"./initials-CzgIzgz6.js";import"./useSignedAvatar-ByLKyVk1.js";import"./platform-mark-Bz2DJS-b.js";import"./ChannelIcons-B8LdIkIo.js";import"./message-circle-BVj0jLOC.js";import"./zap-DdC9etQP.js";import"./at-sign-D9DdXkgm.js";import"./hash-C4KFzcgW.js";import"./dropdown-menu-DK9YJd9_.js";import"./index-DVqKCrim.js";import"./index-BA7E567d.js";import"./component-C_jfQAm5.js";import"./index-DBqDUzce.js";import"./chevron-right-BWPdaLPy.js";import"./check-DhJPFTEW.js";import"./circle-DuTmMPzJ.js";import"./clock-BPLxBkzI.js";import"./circle-alert-qwh0dx-j.js";import"./RichText-DC3R0j-M.js";import"./ellipsis-BC5lyHz9.js";import"./format-CyFEjeMq.js";import"./en-US-4RaJY4CL.js";import"./bell-ring-CRqymd1e.js";import"./pen-line-EmKNn9zU.js";import"./copy-Bh5FPe4j.js";import"./shield-alert-CfqsHYHB.js";import"./check-check-Cbc1MLq8.js";const M="demo-thread-0000-0000-000000000001",c="demo-user-0000-0000-000000000001",s="demo-user-0000-0000-000000000002",i=d=>new Date(Date.now()-d*6e4).toISOString();function a(d){return{ack_requested:!1,attachment:null,attestation_id:null,edited_at:null,expires_at:null,metadata:null,priority:"normal",reply_to:null,revision:1,search_tsv:null,thread_id:M,...d}}const v=[a({id:"demo-m1",sender_id:s,created_at:i(184),body:"Morning â is the Tuesday delivery still on? I asked on Instagram last week and never heard back."}),a({id:"demo-m2",sender_id:c,created_at:i(180),body:"It is, 2pm. Sorry about Instagram â everything lands here now, so you will not have to chase.",reply_to:"demo-m1"}),a({id:"demo-m3",sender_id:s,created_at:i(96),body:"Perfect. Can you put @sam on it? They know where the loading bay is."}),a({id:"demo-m4",sender_id:c,created_at:i(94),body:"Done â Sam is on it and has the gate code.",edited_at:i(93),revision:2}),a({id:"demo-m5",sender_id:s,created_at:i(31),body:"One more thing: the invoice from March is still showing unpaid on our side.",priority:"urgent"}),a({id:"demo-m6",sender_id:c,created_at:i(29),body:`March invoice #4471 was settled on the 3rd â I have sent the receipt to your billing address. 2 3(AI-generated, sent for Northgate Supply)`,reply_to:"demo-m5"}),a({id:"demo-m7",sender_id:s,created_at:i(27),body:"Found it, thank you. That was quick."})],h={[c]:{name:"You",avatar:null},[s]:{name:"Priya Raman",avatar:null}},O={"demo-m6":[{emoji:"ð",count:1,mine:!1,names:["Priya Raman"],delivery:null}]};function Be(){const[d,w]=m.useState(O),[x,b]=m.useState(null),g=m.useMemo(()=>new Map(v.map(e=>[e.id,e])),[]),y=m.useCallback((e,o,n)=>{w(l=>{const p=l[e]??[],_=p.find(r=>r.emoji===o)?p.map(r=>r.emoji===o?{...r,mine:n,count:r.count+(n?1:-1)}:r).filter(r=>r.count>0):n?[...p,{emoji:o,count:1,mine:!0,names:["You"],delivery:null}]:p;return{...l,[e]:_}})},[]),j=m.useMemo(()=>{const e=()=>{};return{threadId:"demo",threadKind:"direct",viewerHandle:null,canPin:!1,privateThread:!1,onPin:e,onUnpin:e,onForward:e,onReport:e,onToggleSave:e,onShowHistory:e,onOpenBranch:e,selecting:!1,onBeginSelect:e,onToggleSelect:e,onEdit:e,onEditSave:e,onWithdraw:e,onPurge:e,onHide:e,onReply:o=>b(o.id),onToggleReaction:y,onJump:e,onReadAloud:e,narrationSpeedLabel:"1Ã",onCycleNarrationSpeed:e,registerBubble:e,onRetry:e,onDiscard:e,onAcknowledge:e,renderSignAcknowledgement:()=>
3null,audience:1}},[y]),u=x?g.get(x)??null:null;return t.jsxs("div",{className:"min-h-screen",children:[t.jsx(R,{title:"See Kanvo without signing up | Kanvo",description:"A real Kanvo conversation, rendered by the product's own components. Read it before you make an account.",url:"https://kanvo.ai/demo"}),t.jsx(S,{}),t.jsx("main",{className:"page-container section-y",children:t.jsxs("div",{className:"mx-auto max-w-3xl",children:[t.jsx("span",{className:"eyebrow mb-4",children:"Live demo"}),t.jsx("h1",{className:"heading-section mb-4 text-foreground",children:"A real conversation, before you sign up"}),t.jsx("p",{className:"mb-8 max-w-2xl text-lg text-muted-foreground",children:"This is not a screenshot. Every bubble below is drawn by the same component the inbox uses, so what you are reading is what the product does â including the notice Kanvo puts on anything its assistant wrote."}),t.jsxs("div",{className:"overflow-hidden rounded-lg border border-border bg-card",children:[t.jsxs("header",{className:"flex items-center justify-between gap-3 border-b border-border px-4 py-3",children:[t.jsxs("div",{className:"min-w-0",children:[t.jsx("p",{className:"truncate text-sm font-semibold text-foreground",children:h[s].name}),t.jsx("p",{className:"truncate text-xs text-muted-foreground",children:"Northgate Supply · Direct"})]}),t.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1.5 rounded-full border border-border bg-muted px-2.5 py-1 text-2xs font-semibold text-muted-foreground",children:[t.jsx(T,{className:"h-3 w-3","aria-hidden":"true"}),"Read-only"]})]}),t.jsx("div",{className:"flex flex-col gap-1 px-3 py-4",children:v.map(e=>{var l;const o=e.sender_id===c,n=e.reply_to?g.get(e.reply_to)??null:null;return t.jsx(k,{message:e,mine:o,quoted:n,quotedInWindow:n!==null,quotedWho:n?((l=h[n.sender_id])==null?void 0:l.name)??"":"",sender:o?null:h[e.sender_id]??null,reactions:d[e.id]??[],editing:!1,jumpedTo:!1,pinned:!1,saved:!1,selected:!1,delivery:"read",acknowledgement:void 0,acknowledgementSigned:!1,actions:j},e.id)})}),t.jsxs("footer",{className:"border-t border-border bg-muted/40 px-4 py-3",children:[u?t.jsxs("p",{className:"mb-2 truncate text-xs text-muted-foreground",children:["Replying to â",u.body.slice(0,60),u.body.length>60?"â¦":"","â",t.jsx("button",{type:"button",onClick:()=>b(null),className:"ms-2 underline underline-offset-2 hover:text-foreground",children:"cancel"})]}):null,t.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[t.jsx("p",{className:"text-sm text-muted-foreground",children:"Replies and reactions work here and go nowhere. Kanvo is invite-only for now."}),t.jsx(N,{asChild:!0,size:"sm",children:t.jsxs(f,{to:"/request-access",children:["Request access",t.jsx(D,{className:"ms-1.5 h-4 w-4","aria-hidden":"true"})]})})]})]})]}),t.jsxs("p",{className:"mt-6 text-sm text-muted-foreground",children:["Want the rest? The inbox, channels, calls and the assistant are all behind a free account â ",t.jsx(f,{to:"/features",className:"underline underline-offset-2",children:"see what is in it"}),"."]})]})}),t.jsx(E,{})]})}export{Be 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.