1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7813],{1187:(e,t,a)=>{"use strict";a.d(t,{default:()=>tT});var n=a(72683),s=a(96465),r=a(60990),i=a(75419);function o(){let{resolvedTheme:e}=(0,r.D)(),[t,a]=(0,i.useState)(!1);(0,i.useEffect)(()=>{a(!0)},[]);let s=t&&"dark"===e?"dark":"neutral";return(0,n.jsx)("div",{className:"flex flex-col items-center justify-center",children:(0,n.jsx)("div",{className:"w-full max-w-[1000px] mx-auto space-y-8",children:(0,n.jsxs)("div",{className:"flex flex-col sm:flex-row gap-5 justify-center items-center pt-2",children:[(0,n.jsx)("a",{href:"https://www.producthunt.com/products/ada-2/launches?embed=true&utm_source=badge-top-post-badge&utm_medium=badge&utm_source=badge-ada-88e6deed-fbc7-45b5-9483-9ec8c1ba7971",target:"_blank",children:(0,n.jsx)("img",{src:"https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1011869&theme=".concat(s,"&period=weekly"),alt:"Ada - Your own AI data analyst | Product Hunt",style:{width:"250px",height:"54px"},width:"250",height:"54",suppressHydrationWarning:!0})}),(0,n.jsx)("a",{href:"https://www.producthunt.com/products/ada-2/launches?embed=true&utm_source=badge-top-post-badge&utm_medium=badge&utm_source=badge-ada-88e6deed-fbc7-45b5-9483-9ec8c1ba7971",target:"_blank",children:(0,n.jsx)("img",{src:"https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=1011869&theme=".concat(s,"&period=weekly"),alt:"Ada - Your own AI data analyst | Product Hunt",style:{width:"250px",height:"54px"},width:"250",height:"54",suppressHydrationWarning:!0})}),(0,n.jsx)("a",{href:"https://www.producthunt.com/products/ada-2/launches?embed=true&utm_source=badge-top-post-badge&utm_medium=badge&utm_source=badge-ada-88e6deed-fbc7-45b5-9483-9ec8c1ba7971",target:"_blank",children:(0,n.jsx)("img",{src:"https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=1011869&theme=".concat(s,"&period=daily"),alt:"Ada - Your own AI data analyst | Product Hunt",style:{width:"250px",height:"54px"},width:"250",height:"54",suppressHydrationWarning:!0})}),(0,n.jsx)("a",{href:"https://www.producthunt.com/products/ada-2/launches?embed=true&utm_source=badge-top-post-badge&utm_medium=badge&utm_source=badge-ada-88e6deed-fbc7-45b5-9483-9ec8c1ba7971",target:"_blank",children:(0,n.jsx)("img",{src:"https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=1011869&theme=".concat(s,"&period=monthly"),alt:"Ada - Your own AI data analyst | Product Hunt",style:{width:"250px",height:"54px"},width:"250",height:"54",suppressHydrationWarning:!0})})]})})})}let l={src:"https://static.ada.im/_next/static/media/clawteams-logo.36bb1cf0.png"},d={src:"https://static.ada.im/_next/static/media/owl-goodbye.8376782f.webp"},c="https://clawteams.ai",m="[email protected]",u="December 14, 2026";function h(e){let{onViewDetails:t,triggerRef:a}=e;return(0,n.jsx)("div",{className:"adsd-wrap",children:(0,n.jsxs)("aside",{className:"adsd-banner","aria-label":"Ada service shutdown notice",children:[(0,n.jsxs)("div",{className:"adsd-main",children:[(0,n.jsx)("button",{ref:a,className:"adsd-details-trigger",type:"button",onClick:t,"aria-haspopup":"dialog",children:"View details"}),(0,n.jsx)("img",{className:"adsd-owl",src:d.src,alt:"Ada owl saying goodbye",width:268,height:208,loading:"eager"}),(0,n.jsxs)("div",{className:"adsd-notice-copy",children:[(0,n.jsxs)("div",{className:"adsd-notice-label",children:["Service ends \xb7 ",u]}),(0,n.jsx)("h2",{children:"Ada is saying goodbye"}),(0,n.jsx)("p",{children:"Thank you for being part of our journey. Existing users have 90 days to use remaining credits and export their data."})]})]}),(0,n.jsxs)("div",{className:"adsd-migration",children:[(0,n.jsxs)("div",{className:"adsd-migration-brand",children:[(0,n.jsx)("img",{src:l.src,alt:"",width:42,he
1ight:42,"aria-hidden":"true"}),(0,n.jsx)("strong",{children:"ClawTeams"})]}),(0,n.jsx)("p",{children:"Keep creating with Ada capabilities and proactive AI agents for e-commerce."}),(0,n.jsxs)("a",{className:"adsd-cta-link",href:c,target:"_blank",rel:"noopener noreferrer",children:["Try ClawTeams",(0,n.jsx)("span",{className:"adsd-cta-arrow","aria-hidden":"true",children:"â"})]})]})]})})}var p=a(68678),g=a(56748),x=a(17193);function f(e){let{...t}=e;return(0,n.jsx)(p.bL,{"data-slot":"dialog",...t})}function b(e){let{...t}=e;return(0,n.jsx)(p.ZL,{"data-slot":"dialog-portal",...t})}function v(e){let{...t}=e;return(0,n.jsx)(p.bm,{"data-slot":"dialog-close",...t})}function y(e){let{className:t,...a}=e;return(0,n.jsx)(p.hJ,{"data-slot":"dialog-overlay",className:(0,x.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...a})}function w(e){let{className:t,children:a,showCloseButton:s=!0,...r}=e;return(0,n.jsxs)(b,{"data-slot":"dialog-portal",children:[(0,n.jsx)(y,{}),(0,n.jsxs)(p.UC,{"data-slot":"dialog-content",className:(0,x.cn)("bg-white data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t),...r,children:[a,s&&(0,n.jsxs)(p.bm,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,n.jsx)(g.A,{className:"dark:text-gray-700"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function j(e){let{className:t,...a}=e;return(0,n.jsx)(p.hE,{"data-slot":"dialog-title",className:(0,x.cn)("text-lg leading-none font-semibold",t),...a})}function N(e){let{className:t,...a}=e;return(0,n.jsx)(p.VY,{"data-slot":"dialog-description",className:(0,x.cn)("text-muted-foreground text-sm",t),...a})}var A=a(38804);function k(){return(0,n.jsxs)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,n.jsx)("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),(0,n.jsx)("path",{d:"m4 7 8 6 8-6"})]})}function S(){return(0,n.jsxs)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,n.jsx)("rect",{x:"9",y:"9",width:"11",height:"11",rx:"2"}),(0,n.jsx)("path",{d:"M15 5H6a2 2 0 0 0-2 2v9"})]})}function C(){return(0,n.jsx)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:(0,n.jsx)("path",{d:"m5 13 4 4L19 7"})})}let E=[{key:"subscription",Icon:function(){return(0,n.jsxs)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,n.jsx)("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),(0,n.jsx)("path",{d:"M3 10h18M7 15h4"})]})},question:"What happens to my subscription?",answer:"Your recurring subscription will be canceled automatically next month. New subscriptions, renewals and credit purchases have stopped. No action is needed on your part, and you wonât be charged again."},{key:"credits",Icon:function(){return(0,n.jsxs)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,n.jsx)("path",{d:"M12 7v5l3 2"})]})},question:"What happens to my credits?",answer:"Your remaining credits stay valid for 90 days from when they were issued."},{key:"export",Icon:function(){return(0,n.jsxs)("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,n.jsx)("path",{d:"M12 3v12m0 0 4-4m-4 4-4-4"}),(0,n.jsx)("path",{d:"M5 17v3h14v-3"})]})},question:"How do I export my data?",answer:"Open your profile menu, go to Account Settings â Privacy Setting, and select âExport data.â Please complete your export before Ada closes on ".concat(u,". After shutdown, you will no longer be able to log in and your stored data will be deleted.")}];function D(e){let{open:t,onOpenChange:a,triggerRef:s}=e,[r,o]=(0,i.useState)(!1),h=(0,i.useRef)(void 0);(0,i.useEffect)(()=>()=>clearTimeout(h.current),[]);let p=(0,i.useCallback)(()=>{var e;null==(e=navigator.clipboard)||e.writeText(m).then(()=>{o(!0),clearTimeout(h.current),h.current=setTimeout(()=>
1o(!1),2400)}).catch(()=>{})},[]);return(0,n.jsx)(f,{open:t,onOpenChange:a,children:(0,n.jsxs)(w,{className:"adsd-dialog max-h-[90vh] gap-0 overflow-y-auto rounded-[14px] p-0 sm:max-w-160",showCloseButton:!1,onCloseAutoFocus:e=>{(null==s?void 0:s.current)&&(e.preventDefault(),s.current.focus())},children:[(0,n.jsxs)("div",{className:"adsd-dialog-intro",children:[(0,n.jsx)("div",{className:"adsd-eyebrow",children:"A heartfelt update from Ada"}),(0,n.jsx)(j,{className:"adsd-dialog-title",children:"Ada is saying goodbye"}),(0,n.jsxs)("div",{className:"adsd-service-date",children:["Service ends ",u]}),(0,n.jsx)("div",{className:"adsd-dialog-mascot",children:(0,n.jsx)("img",{src:d.src,alt:"",width:286,height:222,"aria-hidden":"true"})}),(0,n.jsx)(N,{className:"adsd-dialog-intro-text",children:"Thank you for being part of Ada. Youâll have 90 days to use your remaining credits and export your data. Weâre here to help make the transition as smooth as possible."})]}),(0,n.jsx)("div",{className:"adsd-section-label",children:"Your account arrangements"}),(0,n.jsx)("div",{className:"adsd-info-list",children:E.map(e=>{let{key:t,Icon:a,question:s,answer:r}=e;return(0,n.jsxs)("div",{className:"adsd-info-row",children:[(0,n.jsx)("span",{className:"adsd-line-icon",children:(0,n.jsx)(a,{})}),(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:s}),(0,n.jsx)("p",{children:r})]})]},t)})}),(0,n.jsxs)("div",{className:"adsd-migration-card",children:[(0,n.jsxs)("div",{className:"adsd-migration-card-copy",children:[(0,n.jsx)("img",{src:l.src,alt:"",width:50,height:50,"aria-hidden":"true"}),(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Your work can continue with ClawTeams"}),(0,n.jsx)("p",{children:"Keep the Ada capabilities you know, with proactive AI agents that help e-commerce teams analyze, monitor and act."})]})]}),(0,n.jsx)("a",{className:"adsd-migration-card-action",href:c,target:"_blank",rel:"noopener noreferrer",children:"Explore ClawTeams"})]}),(0,n.jsxs)("p",{className:"adsd-account-link",children:["Already use Ada?"," ",(0,n.jsx)("button",{type:"button",onClick:()=>{var e;(null==(e=window.__user_info)?void 0:e.userAccount)?window.location.href="/chat":(0,A.m)()},children:"Log in to export your data"}),"."]}),(0,n.jsxs)("div",{className:"adsd-dialog-footer",children:[(0,n.jsxs)("div",{className:"adsd-support",children:[(0,n.jsxs)("a",{className:"adsd-support-link",href:"mailto:".concat(m),children:[(0,n.jsx)(k,{}),(0,n.jsxs)("span",{children:["Questions? Weâre here to help at ",(0,n.jsx)("u",{children:m}),"."]})]}),(0,n.jsx)("button",{className:"adsd-copy-email",type:"button",onClick:p,"data-copied":r||void 0,"aria-label":"Copy email address",title:"Copy email address",children:r?(0,n.jsx)(C,{}):(0,n.jsx)(S,{})}),(0,n.jsx)("span",{className:"adsd-sr-only",role:"status","aria-live":"polite",children:r?"Email address copied":null})]}),(0,n.jsx)(v,{className:"adsd-back-button",children:"Back"})]})]})})}function z(){return(0,n.jsx)("style",{children:"\n .adsd-wrap {\n box-sizing: border-box;\n position: relative;\n z-index: 1;\n width: min(1152px, 100%);\n /* 让å¼åºå®å®ä½ç Headerï¼h-24ï¼ï¼ä¿è¯å¡çé¡¶é¨å¯è§ */\n margin: 112px auto 28px;\n }\n\n .adsd-wrap *,\n .adsd-dialog * {\n box-sizing: border-box;\n }\n\n /* ---------- Banner ---------- */\n\n .adsd-banner {\n --adsd-navy: #111c33;\n --adsd-claw: #5740df;\n --adsd-claw-soft: #eeebff;\n --adsd-blue: #0875d5;\n\n position: relative;\n display: grid;\n grid-template-columns: minmax(0, 1fr) 33%;\n min-height: 228px;\n overflow: hidden;\n border-radius: 14px;\n background: var(--adsd-navy);\n box-shadow: 0 12px 24px rgba(11, 25, 49, 0.24);\n text-align: start;\n overflow-wrap: break-word;\n }\n\n .adsd-main {\n position: relative;\n display: flex;\n align-items: center;\n min-width: 0;\n padding-block: 28px;\n padding-inline: 238px 28px;\n }\n\n .adsd-owl {\n position: absolute;
1\n inset-inline-start: -16px;\n bottom: -40px;\n width: 268px;\n height: auto;\n transform: rotate(5deg);\n filter: drop-shadow(0 10px 14px rgba(0, 0, 0, 0.28));\n pointer-events: none;\n }\n\n .adsd-details-trigger {\n position: absolute;\n z-index: 3;\n inset-inline-start: 20px;\n top: 20px;\n min-height: 34px;\n padding: 0 13px;\n border: 1px solid rgba(255, 255, 255, 0.48);\n border-radius: 7px;\n background: rgba(255, 255, 255, 0.08);\n color: #fff;\n font-size: 12px;\n font-weight: 700;\n cursor: pointer;\n }\n\n @media (hover: hover) and (pointer: fine) {\n .adsd-details-trigger:hover {\n background: rgba(255, 255, 255, 0.16);\n }\n }\n\n .adsd-notice-copy {\n position: relative;\n z-index: 1;\n min-width: 0;\n }\n\n .adsd-notice-label {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 10px;\n color: #a7d7ff;\n font-size: 13px;\n font-weight: 700;\n letter-spacing: 0.04em;\n text-transform: uppercase;\n }\n\n .adsd-notice-label::before {\n content: \"\";\n flex: 0 0 auto;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #ff8a8a;\n box-shadow: 0 0 0 5px rgba(255, 138, 138, 0.16);\n }\n\n .adsd-banner h2 {\n margin: 0;\n color: #fff;\n font-size: 32px;\n font-weight: 700;\n line-height: 1.12;\n }\n\n .adsd-banner p {\n max-width: 55ch;\n margin: 11px 0 0;\n color: #d3deeb;\n font-size: 15px;\n line-height: 1.5;\n }\n\n .adsd-migration {\n display: flex;\n min-width: 0;\n flex-direction: column;\n justify-content: center;\n padding: 22px 22px;\n background: #eae7ff;\n }\n\n .adsd-migration-brand {\n display: flex;\n align-items: center;\n gap: 11px;\n min-width: 0;\n }\n\n .adsd-migration-brand img {\n flex: 0 0 auto;\n width: 42px;\n height: 42px;\n object-fit: contain;\n }\n\n .adsd-migration-brand strong {\n min-width: 0;\n color: #31219f;\n font-size: 21px;\n font-weight: 700;\n }\n\n .adsd-migration p {\n margin: 11px 0 15px;\n color: #554e78;\n font-size: 13px;\n line-height: 1.5;\n }\n\n .adsd-cta-link {\n display: block;\n padding: 12px 10px;\n border-radius: 8px;\n background: var(--adsd-claw);\n color: #fff;\n font-size: 13px;\n font-weight: 700;\n text-align: center;\n text-decoration: none;\n }\n\n @media (hover: hover) and (pointer: fine) {\n .adsd-cta-link:hover {\n background: #4630c9;\n }\n }\n\n .adsd-cta-arrow {\n display: inline-block;\n margin-inline-start: 5px;\n }\n\n /* ---------- å¼¹çª ---------- */\n\n .adsd-dialog {\n --adsd-claw: #5740df;\n --adsd-claw-soft: #eeebff;\n --adsd-blue: #0875d5;\n\n color: #101827;\n text-align: start;\n overflow-wrap: break-word;\n }\n\n .adsd-dialog-intro {\n position: relative;\n min-height: 190px;\n overflow: hidden;\n padding-block: 26px 24px;\n padding-inline: 30px 158px;\n border-bottom: 1px solid #cfe3f5;\n background: #dff1ff;\n }\n\n .adsd-eyebrow {\n margin-bottom: 8px;\n color: var(--adsd-blue);\n font-size: 12px;\n font-weight: 700;\n }\n\n .adsd-dialog-title {\n max-width: 520px;\n margin: 0;\n color: #101827;\n font-size: 25px;\n font-weight: 700;\n line-height: 1.18;\n text-wrap: balance;\n }\n\n .adsd-service-date {\n margin-top: 8px;\n color: #334155;\n font-size: 15px;\n font-weight: 700;\n }\n\n .adsd-dialog-mascot {\n position: absolute;\n inset-inline-end: 18px;\n bottom: 0;\n width: 128px;\n height: 142px;\n overflow: hidden;\n pointer-events: none;\n }\n\n .adsd-dialog-mascot img {\n position: absolute;\n left: -78px;\n top: -51px;\n width: 286px;\n height: auto;\n max-width: none;\n filter: drop-shadow(0 7px 8px rgba(40, 91, 130, 0.18));\n }\n\n .adsd-dialog-intro > p,\n .adsd-dialog-intro-text {\n max-width: 68ch;\n margin: 12px 0 0;\n color: #526176;\n font-size: 13px;\n line-height: 1.55;\n }\n\n .adsd-section-label {\n margin: 20px 30px 8px;\n color: #334155;\n font-size: 12px;\n font-weight: 700;\n }\n\n .adsd-info-list {\n margin: 0 30px;\n border-top: 1px solid #e2e8ef;\n }\n\n .adsd-info-row {\n display: grid;\n grid-template-columns: 34px minmax(0, 1fr);\n gap: 12px;\n padding: 14px 0;\n border-bottom: 1px solid #e2e8ef;\n }\n\n .adsd-line-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border-radius: 8px;\n background: #edf6ff;\n color: var(--adsd-blue);\n }\n\n .adsd-line-icon svg {\n width: 18px;\n height: 18px;\n }\n\n .adsd-line-icon svg,\n .adsd-support-link svg,\n .adsd-copy-email svg {\n fill: none;\n stroke: currentColor;\n stroke-width: 1.8;\n stroke-linecap: round;\n stroke-linejoin: round;\n }\n\n .adsd-info-row strong {\n display: block;\n color: #172338;\n font-size: 12px;\n font-weight: 700;\n line-height: 1.4;\n }\n\n .adsd-info-row p {\n margin: 4px 0 0;\n color: #5b6879;\n font-size: 11px;\n line-height: 1.5;\n }\n\n .adsd-migration-card {\n margin: 20px 30px 0;\n padding: 16px;\n border-radius: 10px;\n background: var(--adsd-claw-soft);\n }\n\n .adsd-migration-card-copy {\n display: grid;\n grid-template-columns: 52px minmax(0, 1fr);\n gap: 14px;\n align-items: center;\n }\n\n .adsd-migration-card-copy img {\n width: 50px;\n height: 50px;\n object-fit: contain;\n }\n\n .adsd-migration-card-copy strong {\n display: block;\n color: #31219f;\n font-size: 16px;\n font-weight: 700;\n line-height: 1.25;\n }\n\n .adsd-migration-card-copy p {\n margin: 5px 0 0;\n color: #554e78;\n font-size: 12px;\n line-height: 1.45;\n }\n\n .adsd-migration-card-action {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 42px;\n margin-top: 14px;\n padding: 9px 14px;\n border-radius: 8px;\n background: var(--adsd-claw);\n color: #fff;\n font-size: 12px;\n font-weight: 700;\n text-align: center;\n text-decoration: none;\n }\n\n @media (hover: hover) and (pointer: fine) {\n .adsd-migration-card-action:hover {\n background: #4630c9;\n }\n }\n\n .adsd-account-link {\n margin: 12px 30px 0;\n color: #5c697b;\n font-size: 11px;\n text-align: center;\n }\n\n .adsd-account-link button {\n padding: 0;\n border: 0;\n background: none;\n color: var(--adsd-blue);\n font: inherit;\n font-weight: 700;\n text-decoration: underline;\n cursor: pointer;\n }\n\n .adsd-dialog-footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 14px;\n margin: 16px 30px 24px;\n }\n\n /* 容å¨å¸æ¶å©ä½ç©ºé´ï¼å¤å¶æç¤ºåºç°æ¶ä¸ä¼æ Back æé®é¡¶èµ° */\n .adsd-support {\n display: flex;\n flex: 1 1 auto;\n min-width: 0;\n align-items: center;\n gap: 8px;\n }\n\n .adsd-support-link {\n display: flex;\n min-width: 0;\n align-items: center;\n gap: 8px;\n color: #55657a;\n font-size: 11px;\n line-height: 1.4;\n text-decoration: none;\n }\n\n .adsd-support-link span {\n min-width: 0;\n }
1\n\n /* é®ç®±æ¬ä½å¸¦ä¸åçº¿ï¼æç¡®å®å¯ç¹å»ï¼è®¾è®¡ç¨¿å³å¦æ¤ï¼ */\n .adsd-support-link u {\n text-decoration-thickness: 1px;\n text-underline-offset: 0.15em;\n }\n\n @media (hover: hover) and (pointer: fine) {\n .adsd-support-link:hover {\n color: var(--adsd-blue);\n }\n }\n\n /* å¤å¶æé®ï¼mailto ä¾èµæ¬æºé®ä»¶å®¢æ·ç«¯ï¼è¿éç»ä¸ä¸ªä¸ä¾èµå®çå
åºå
¥å£ */\n .adsd-copy-email {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: 1px solid #d2dbe5;\n border-radius: 5px;\n background: #fff;\n color: #55657a;\n cursor: pointer;\n transition:\n color 150ms ease,\n border-color 150ms ease;\n }\n\n .adsd-copy-email svg {\n width: 14px;\n height: 14px;\n }\n\n .adsd-copy-email[data-copied='true'] {\n border-color: #9ed7b8;\n color: #1a7f4b;\n }\n\n /* :not([data-copied]) æ¯å¿
éçï¼ç¹å®é¼ æ 仿¬å卿é®ä¸ï¼\n å¦å hover çèè²ä¼çæååçç»¿è²æåæ */\n @media (hover: hover) and (pointer: fine) {\n .adsd-copy-email:hover:not([data-copied]) {\n border-color: #a9cdea;\n color: var(--adsd-blue);\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .adsd-copy-email {\n transition: none;\n }\n }\n\n /* å¤å¶ç»æåªç»è¯»å±è½¯ä»¶ææ¥ï¼è§è§ä¸ç±å¾æ å对å¾è¡¨è¾¾ */\n .adsd-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .adsd-support-link svg {\n flex: 0 0 auto;\n width: 16px;\n height: 16px;\n color: var(--adsd-blue);\n }\n\n .adsd-back-button {\n flex: 0 0 auto;\n min-height: 34px;\n padding: 0 14px;\n border: 1px solid #d2dbe5;\n border-radius: 7px;\n background: #fff;\n color: #39485d;\n font-size: 11px;\n font-weight: 700;\n cursor: pointer;\n }\n\n .adsd-banner a:focus-visible,\n .adsd-banner button:focus-visible,\n .adsd-dialog a:focus-visible,\n .adsd-dialog button:focus-visible {\n outline: 3px solid #77bfff;\n outline-offset: 2px;\n }\n\n /* ---------- çªå± ---------- */\n\n @media (max-width: 800px) {\n .adsd-wrap {\n margin: 104px auto 20px;\n }\n\n .adsd-banner {\n grid-template-columns: minmax(0, 1fr);\n }\n\n .adsd-main {\n min-height: 300px;\n padding-block: 24px;\n padding-inline: 47% 18px;\n }\n\n .adsd-owl {\n inset-inline-start: -16px;\n bottom: -22px;\n width: 58%;\n }\n\n .adsd-details-trigger {\n inset-inline-start: 16px;\n top: 16px;\n }\n\n .adsd-notice-label {\n align-items: flex-start;\n font-size: 12px;\n line-height: 1.25;\n }\n\n .adsd-notice-label::before {\n margin-top: 4px;\n }\n\n .adsd-banner h2 {\n font-size: 27px;\n }\n\n .adsd-banner p {\n font-size: 14px;\n }\n\n .adsd-migration {\n flex-direction: row;\n align-items: center;\n gap: 12px;\n padding: 18px;\n }\n\n .adsd-migration-brand strong {\n font-size: 18px;\n }\n\n .adsd-migration p {\n display: none;\n }\n\n .adsd-cta-link {\n margin-inline-start: auto;\n padding-inline: 16px;\n }\n\n .adsd-dialog-intro {\n min-height: 218px;\n padding-block: 22px 20px;\n padding-inline: 20px 112px;\n }\n\n .adsd-dialog-title {\n font-size: 22px;\n }\n\n .adsd-dialog-mascot {\n inset-inline-end: 8px;\n width: 104px;\n height: 110px;\n }\n\n .adsd-dialog-mascot img {\n left: -61px;\n top: -39px;\n width: 223px;\n }\n\n .adsd-section-label,\n .adsd-info-list,\n .adsd-migration-card,\n .adsd-account-link {\n margin-inline: 20px;\n }\n\n .adsd-migration-card {\n padding: 14px;\n }\n\n /* 䏿²¿ç¨è®¾è®¡ç¨¿çªå±ç align-items:flex-start ââ å®ä¼è®© 28px é«ç\n support ç»å Back æé®ä¸å¿ç¸å·®å åç´ ï¼ççæ²¡å¯¹é½ */\n .adsd-dialog-footer {\n margin: 16px 20px 20px;\n }\n\n .adsd-support-link {\n flex: 1 1 auto;\n }\n }\n "})}function T(){let[e,t]=(0,i.useState)(!1),a=(0,i.useRef)(null);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(z,{}),(0,n.jsx)(h,{triggerRef:a,onViewDetails:()=>t(!0)}),(0,n.jsx)(D,{open:e,onOpenChange:t,triggerRef:a})]})}let M={src:"https://static.ada.im/_next/static/media/ExcelPain.662a49a0.svg"},I={src:"https://static.ada.im/_next/static/media/computer.33645a0d.png"};var B=a(39189),P=a(14737),R=a(52726);let L={src:"https://static.ada.im/_next/static/media/JustAdaIt.19b5eb61.png"};function _(){let{triggerRestriction:e,showRestrictionAlert:t,hideRestrictionAlert:a}=(0,R.Q)();return(0,n.jsxs)("main",{className:"flex flex-col items-center justify-center px-6 text-center",children:[(0,n.jsxs)("div",{className:"container mx-auto
1sm:px-13",children:[(0,n.jsx)(T,{}),(0,n.jsxs)("section",{className:"mt-8 sm:mt-12 flex justify-between flex-col sm:flex-row",children:[(0,n.jsxs)("div",{className:"text-left flex flex-col sm:block",children:[(0,n.jsx)("ul",{className:"mt-1",children:(0,n.jsx)("li",{children:(0,n.jsx)("img",{src:M.src,alt:"Excel pain? Research pain?",title:"Excel pain? Research pain?",className:"max-w-full h-auto"})})}),(0,n.jsxs)("hgroup",{children:[(0,n.jsx)("img",{src:L.src,alt:"Just Ada it!",title:"Just Ada it!",className:"sm:w-[55%] w-[60%] h-auto"}),(0,n.jsx)("p",{className:"text-3xl text-[#1E1F22] mt-6",children:"Ada.im, your own AI Data Analyst."})]}),(0,n.jsx)("button",{className:"text-white bg-[#1E1F22] text-lg rounded-[56px] py-4 px-10 mt-8 sm:mt-15 cursor-pointer",onClick:t=>{var a;if((0,B.Mh)(t,"start_free_beta"),e())return void t.preventDefault();(null==(a=window.__user_info)?void 0:a.userAccount)?window.location.href="/chat":(0,A.m)()},children:"Get Started"})]}),(0,n.jsx)("div",{className:"md:w-[57%] md:mr-[-90px] min-w-0",children:(0,n.jsx)("img",{src:I.src,alt:"World's First AI Data Agent Ada.im",className:"max-w-full h-auto"})})]}),(0,n.jsx)(o,{})]}),(0,n.jsx)(P.q,{open:t,onClose:a})]})}var W=a(49293),H=a.n(W);let F={src:"https://static.ada.im/_next/static/media/ada-video-cover.550005e9.jpg"};function G(e){let{videoId:t,width:a="100%",height:s="auto",autoplay:r=!1,muted:o=!1,loop:l=!1,controls:d=!0,showInfo:c=!0,rel:m=!1,modestbranding:u=!0,start:h,end:p,className:g="",title:x="YouTube video player",quality:f="hd1080",playsinline:b=!0,customThumbnail:v,showCustomThumbnail:y=!1}=e,[w,j]=(0,i.useState)(!1),[N,A]=(0,i.useState)(r||!y),[k,S]=(0,i.useState)(o),[C,E]=(0,i.useState)(!1),D=(0,i.useRef)(null),z=()=>{let e=new URLSearchParams;return r&&e.append("autoplay","1"),k&&e.append("mute","1"),l&&(e.append("loop","1"),e.append("playlist",t)),d||e.append("controls","0"),c||e.append("showinfo","0"),m||e.append("rel","0"),u&&e.append("modestbranding","1"),h&&e.append("start",h.toString()),p&&e.append("end",p.toString()),b&&e.append("playsinline","1"),f&&"default"!==f&&e.append("vq",f),e.append("hd","1"),e.append("enablejsapi","1"),e.append("iv_load_policy","3"),e.append("cc_load_policy","0"),e.append("fs","1"),e.append("quality","hd1080"),e.append("fmt","18"),"https://www.youtube.com/embed/".concat(t,"?").concat(e.toString())},[T,M]=(0,i.useState)(z());return(0,i.useEffect)(()=>{M(z())},[k,r,l,d,c,m,u,h,p,b,f,t]),(0,i.useEffect)(()=>{w&&k&&r&&E(!0)},[w,k,r]),(0,n.jsx)("div",{className:"youtube-video-container ".concat(g),children:(0,n.jsxs)("div",{className:"video-wrapper relative",style:{width:"number"==typeof a?"".concat(a,"px"):a,aspectRatio:"16/9"},children:[N?(0,n.jsx)("div",{className:"relative w-full h-full",children:(0,n.jsx)("iframe",{ref:D,className:"w-full h-full transition-opacity duration-300 ".concat(w?"opacity-100":"opacity-0"),src:T,title:x,frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0,onLoad:()=>j(!0),style:{imageRendering:"-webkit-optimize-contrast"}})}):(0,n.jsxs)("div",{className:"relative w-full h-full rounded-lg shadow-lg cursor-pointer overflow-hidden",onClick:()=>{A(!0)},children:[v?(0,n.jsx)("img",{src:v,alt:x,className:"w-full h-full object-cover"}):(0,n.jsx)("img",{src:"https://img.youtube.com/vi/".concat(t,"/maxresdefault.jpg"),alt:x,className:"w-full h-full object-cover",onError:e=>{e.currentTarget.src="https://img.youtube.com/vi/".concat(t,"/hqdefault.jpg")}}),(0,n.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black bg-opacity-20 hover:bg-opacity-30 transition-all duration-300",children:(0,n.jsx)("div",{className:"w-16 h-16 bg-red-600 rounded-full flex items-center justify-center shadow-lg hover:scale-110 transition-transform duration-300",children:(0,n.jsx)("svg",{className:"w-6 h-6 text-white ml-1",fill:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{d:"M8 5v14l11-7z"})})})})]}),N&&!w&&(0,n.jsx)("div",{style:{backgroundImage:"url(".concat(F.src,")")},className:"w-full absolute inset-0 bg-no-repeat bg-center bg-cover rounded-lg flex items-center justify-center"})]})})}function O(e){let{videoSrc:t,width:a="100%",height:s="auto",auto
1play:r=!1,muted:o=!1,loop:l=!1,controls:d=!0,className:c="",title:m="Video player",playsinline:u=!0}=e,[h,p]=(0,i.useState)(!1),[g,x]=(0,i.useState)(!1),f=(0,i.useRef)(null);return(0,n.jsx)("div",{className:"".concat(c),children:(0,n.jsxs)("div",{className:"relative group",style:{width:"number"==typeof a?"".concat(a,"px"):a,aspectRatio:"16/9"},children:[(0,n.jsx)("video",{ref:f,className:"w-full h-full rounded-lg shadow-lg transition-all duration-300 ".concat(h?"opacity-100":"opacity-0"," group-hover:shadow-xl"),src:t,title:m,autoPlay:r,muted:o,loop:l,controls:d,playsInline:u,onPlay:()=>{x(!0)},onPause:()=>{x(!1)},onLoadedData:()=>{p(!0)},style:{minHeight:"number"==typeof s?"".concat(s,"px"):"auto"===s?"315px":s}}),!h&&(0,n.jsx)("div",{className:"absolute inset-0 bg-gradient-to-br from-gray-100 to-gray-200 rounded-lg flex items-center justify-center",children:(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-blue-500 mx-auto mb-2"}),(0,n.jsx)("div",{className:"text-gray-500 text-sm",children:"Loading..."})]})})]})})}async function U(){try{let e=new AbortController,t=setTimeout(()=>e.abort(),5e3),a=await fetch("https://ipapi.co/json/",{method:"GET",headers:{Accept:"application/json"},signal:e.signal});if(clearTimeout(t),a.ok){let e=(await a.json()).country_code;if("CN"===e)return"CN";if(e)return"OTHER"}}catch(e){e instanceof Error&&"AbortError"!==e.name&&console.warn("Failed to detect region via ipapi.co:",e)}try{let e=new AbortController,t=setTimeout(()=>e.abort(),5e3),a=await fetch("https://get.geojs.io/v1/ip/country.json",{method:"GET",signal:e.signal});if(clearTimeout(t),a.ok){let e=(await a.json()).country;if("CN"===e)return"CN";if(e)return"OTHER"}}catch(e){e instanceof Error&&"AbortError"!==e.name&&console.warn("Failed to detect region via geojs.io:",e)}{let e=Intl.DateTimeFormat().resolvedOptions().timeZone,t=navigator.language;if(e.includes("Shanghai")||e.includes("Beijing")||e.includes("Chongqing")||t.startsWith("zh-CN"))return"CN"}return"OTHER"}let V=null,K=null;async function Y(){if(null!==V)return"CN"===V;if(K)return"CN"===await K;K=U();let e=await K;return V=e,K=null,"CN"===e}function J(){let[e,t]=(0,i.useState)(null),[a,s]=(0,i.useState)(!0),r=(0,i.useMemo)(()=>(function(e){if(e.startsWith("http://")||e.startsWith("https://"))return e;let t=e.startsWith("/")?e:"/".concat(e);return"https://static.ada.im".concat(t)})("/home_videos/IntroduceAda.mp4"),[]);return(0,i.useEffect)(()=>{(async()=>{try{let e=await Y();t(e)}catch(e){console.error("Failed to detect region:",e),t(!1)}finally{s(!1)}})()},[]),(0,n.jsxs)("div",{className:"jsx-300f267de9a6f2cc w-[100%] max-w-[790px] mx-auto video-container",children:[(0,n.jsx)("div",{className:"jsx-300f267de9a6f2cc w-full mt-10 shadow-lg rounded-lg overflow-hidden",children:a?(0,n.jsx)("div",{className:"jsx-300f267de9a6f2cc w-full aspect-video bg-gradient-to-br from-gray-100 to-gray-200 rounded-lg flex items-center justify-center",children:(0,n.jsxs)("div",{className:"jsx-300f267de9a6f2cc text-center",children:[(0,n.jsx)("div",{className:"jsx-300f267de9a6f2cc animate-spin rounded-full h-8 w-8 border-b-2 border-blue-500 mx-auto mb-2"}),(0,n.jsx)("div",{className:"jsx-300f267de9a6f2cc text-gray-500 text-sm",children:"Loading..."})]})}):e?(0,n.jsx)(O,{videoSrc:r,autoplay:!0,muted:!0,loop:!0,controls:!0,playsinline:!0,className:"w-full rounded-lg overflow-hidden",title:"Introduce Ada"}):(0,n.jsx)(G,{videoId:"FdmLGE0SKw0",autoplay:!0,muted:!0,rel:!1,loop:!0,controls:!0,quality:"hd1080",playsinline:!0,className:"w-full rounded-lg overflow-hidden"})}),(0,n.jsx)(H(),{id:"300f267de9a6f2cc",children:".video-container.jsx-300f267de9a6f2cc{height:auto;box-sizing:border-box;overflow:visible;position:relative;border-radius:10px}.video-container.jsx-300f267de9a6f2cc iframe.jsx-300f267de9a6f2cc{image-rendering:high-quality;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.video-container.jsx-300f267de9a6f2cc .video-wrapper.jsx-300f267de9a6f2cc{transform:translatez(0);backface-visibility:hidden;perspective:1e3px}"})]})}var q=a(9939),X=a(3975),Q=a(4412);function Z(e){let{initialReports:t}=e,[a,s]=(0,i.useState)(!1),[r,o]=(0,i.useState)(),[l,d]=(0,i.useState)(""),c=async e=>{o(e),s(!0),d("".concat("https://ada.im","/share/").concat(e.sessionId))};return(0,n.jsxs)("div",{className:"min-h-screen bg-white dark:bg-gray-900 py-6 sm:py-16 px-4 sm:px-12 lg:px-12",children:[(0,n.jsxs)("div",{className:"max-w-7xl mx-auto",children:[(0,n.jsxs)("div",{className:"text-center mb-8 sm:mb-12",children:[(0,n.jsx)("h2",{className:"text-2xl sm:text-3xl lg:text-4xl font-bold text-gray-900 dark:text-white mb-3 sm:mb-4",children:"Showcase in Ada"}),(0,n.jsx)("p",{className:"text-base sm:text-lg lg:text-xl text-gray-600 dark:text-gray-300 max-w-2xl mx-auto px-4",children:"Visualizing your data through versatile charts, detailed reports, and dynamic dashboards."})]}),(0,n.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4 sm:gap-6 lg:gap-8 px-15",children:(0,n.jsx)(X.N,{children:t.map(e=>(0,n.jsxs)(Q.P.div,{initial:{opacity:0,x:20}
1,animate:{opacity:1,x:0},exit:{opacity:0,x:-20},transition:{duration:.3},onClick:()=>{(0,B.Wx)(e.sessionId),c(e)},className:"bg-white dark:bg-gray-800 rounded-xl sm:rounded-2xl shadow-lg overflow-hidden group cursor-pointer hover:shadow-xl transition-shadow duration-300",children:[(0,n.jsxs)("figure",{className:"h-48 sm:h-56 lg:h-64 flex items-center justify-center relative",children:[(0,n.jsx)(q.default,{src:e.imageUrls[0],alt:"".concat(e.title,".").concat(e.content),title:"".concat(e.title,".").concat(e.content),width:500,height:500,className:"w-full h-full object-cover"}),(0,n.jsx)("div",{className:"absolute inset-0 bg-black opacity-0 group-hover:opacity-20 transition-opacity duration-300"}),(0,n.jsx)("figcaption",{className:"absolute text-white text-sm sm:text-lg font-semibold opacity-0 sm:group-hover:opacity-100 transition-opacity duration-300 z-10 bg-opacity-50 px-3 py-1 rounded-lg",children:"View Report"})]}),(0,n.jsxs)("hgroup",{className:"p-4 sm:p-6",children:[(0,n.jsx)("h3",{className:"text-lg sm:text-xl font-semibold text-gray-900 dark:text-white mb-2 line-clamp-2",children:e.title}),(0,n.jsx)("p",{className:"text-gray-600 dark:text-white text-xs sm:text-sm line-clamp-3",children:e.content})]})]},e.id))})})]}),(0,n.jsx)(f,{open:a,onOpenChange:s,children:(0,n.jsxs)(w,{className:" w-[100vw] !max-w-[100vw] h-[80vh] max-h-[90vh] p-0 md:w-[65vw] overflow-hidden",children:[(0,n.jsx)(j,{className:"hidden",children:null==r?void 0:r.title}),(0,n.jsx)("iframe",{src:l,className:"w-full h-full",sandbox:"allow-scripts allow-same-origin"})]})})]})}var $=a(91494),ee=a.n($);a(45441);var et=a(29300),ea=a.n(et),en=a(76810),es=a(20311),er=a.n(es);let ei={src:"https://static.ada.im/_next/static/media/[email protected]",height:2400,width:4e3,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAMAAABPT11nAAAASFBMVEXSxrX6//+cbF6jkYPDvLvx7N6np6nb0MKynovi3tbj0Lfo2cLev5LVt5G8oX6YfVTPuamBeHqKd3TQxbuyrq6/sp/f29atn5uYXAAAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAMklEQVR4nAXBCQLAEAwAwUVIUq0eqP//1AwoqOdKsv67nhdmHkK+G0tHKTJBJH5vfI4NHLEBYqNnF3gAAAAASUVORK5CYII=",blurWidth:8,blurHeight:5},eo={src:"https://static.ada.im/_next/static/media/[email protected]",height:2400,width:4e3,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAMAAABPT11nAAAAJ1BMVEXp8PXg7/zN6PzIz8S84/7K1N/5/P7y9fjg5OnY4N/w+v/e6e7KztLi/30hAAAABnRSTlP++fz+9v5vEyMxAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAKklEQVR4nAXBgQEAIAjDsIK6Afr/vSYgTWRuKA99k34lVge2VOcGkozNBxK9ANk7ZmpXAAAAAElFTkSuQmCC",blurWidth:8,blurHeight:5},el={src:"https://static.ada.im/_next/static/media/[email protected]",height:2400,width:4e3,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAMAAABPT11nAAAAOVBMVEX19/vn5O7p8Pi/3u+jwP37/Pz////i6fnd4PrE0vvH5/i/0v7w8P61yP/E1t++y9TE4P/Y2OLY6f9NDN3XAAAACnRSTlP+////9v///Pb2/VtEAAAAAAlwSFlzAAALEwAACxMBAJqcGAAAAC9JREFUeJwdwYkNACAIBLADBVTAb/9hTWxRxnbPrBjlGlF0zGV8KBoYn0FVRUTwABx6AQqJi3n2AAAAAElFTkSuQmCC",blurWidth:8,blurHeight:5},ed={src:"https://static.ada.im/_next/static/media/[email protected]",height:2400,width:4e3,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAMAAABPT11nAAAAKlBMVEXo8vrv+P7f5erp7O7N1dzd3+PL3/fb6/nS3ejZ4uu/2PLy8PPZ4/n29PMn+BHkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAK0lEQVR4nAXBhwEAMAjDMBNm1//vVmLXvQ2w3DURC52TcjdGGfkwdlWD2QcTWQDF8C7/NQAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:5},ec={src:"https://static.ada.im/_next/static/media/[email protected]",height:2400,width:4e3,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAMAAABPT11nAAAAJFBMVEXq7/br8vrR4fbs7/To6vD3+fnW5/3g7Pzb5PC6ydzD2vm8zOJGUwGtAAAAAXRSTlP2FDiPTwAAAAlwSFlzAAALEwAACxMBAJqcGAAAACpJREFUeJwFwYkBADAIArED0X7779sEe0kSzKiTgO2dKnjn7K6G61kV8QEMJACZnA1SeAAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:5},em={src:"https://static.ada.im/_next/static/media/producthunt.1f3118b0.jpg"};var eu=a(73169);let eh=[{id:1,comment:'"This looks awesome! As an entry-level analyst, it can be pretty intimidating to handle complicated or unorganized, huge datasets. A tool like Ada means I donât have to spend ages learning SQL just to get the basics done. It would save me tons of time and lets me focus on the insights. Excited to see how it complements tools like Power BI and Tableau!"',href:"https://www.producthunt.com/@coco_xiong",picture:"https://ph-avatars.imgix.net/8956323/original.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Coco Xiong",docs:"Innovator.",star:5},{id:2,comment:'"Decent tool with some genuinely useful features. The quick data query saves time on routine analysis. Visualization is automatic which is convenient when you\'re not design-savvy. The Memory feature is still "coming soon" which was one of the things I was excited about."',href:"https://www.producthunt.com/@new_user___2502025581679ec73b3fd5e",picture:"https://ph-avatars.imgix.net/8955479/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"æ½é¦è±ª",docs:"ibd",star:5},{id:3,comment:"\"This is exactly what our marketing team needed. The interpretation feature is GOLD - it doesn't just show numbers, it explains what they mean and what I should pay attention to. Export options are comprehensive (HTML, PPT, Word, PDF). The only downside is the learning curve for setting up the glossary feature properly. Took me a few tries to get our industry terms configured right. But once set up, it's magic! \uD83D\uDE80\"",href:"https://www.producthunt.com/@yayako_ye",picture:"https://ph-avatars.imgix.net/8957298/6aba5bf0-757d-4ac0-b31d-98034528d12f.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Yayako Ye",docs:"Brand Storyteller in digital / AI age.",star:5},{id:4,comment:'"Skip manual work in one click, the dream \uD83D\uDE02 Would love to see how it performs with chaotic student data though, like survey forms and CSVs from random sources."',href:"https://www.producthunt.com/@pravin_meh66451",picture:"https://ph-avatars.imgix.net/8399329/57a7e097-e370-4032-8fb9-4b7ad061f116.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Pravin Mehta",docs:"Techie student, coder, meme lover",star:5},{id:5,comment:'"This looks neat, automating reports with just a click could save so much time. Curious how it handles messy datasets in real-world scenarios."',href:"https://www.producthunt.com/@chen95138
11",picture:"https://ph-avatars.imgix.net/8358765/f25ce273-c949-4761-ab65-07306b99813c.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Chen",docs:"Strategy in my veins.",star:5},{id:6,comment:'"I tested Ada with a large CSV export from our CRM. It handled the size without breaking a sweat and even spotted trends I hadn\'t noticed."',href:"https://www.producthunt.com/@quinn_hann",picture:"https://ph-avatars.imgix.net/8941773/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Quinn Hann",docs:"Young hunter",star:5},{id:7,comment:"\"This is what startup analytics should be! No need for dedicated data engineers when you're bootstrapped. Revenue tracking, user behavior analysis, growth metrics - all accessible without SQL knowledge. The prediction feature helps with runway planning and investor presentations. External data integration provides market context we couldn't afford before. Small gripe: mobile responsiveness could be better for checking metrics on the go. But seriously, this levels the playing field for small teams! \uD83D\uDE4C\"",href:"https://www.producthunt.com/@brendax_zhu",picture:"https://ph-avatars.imgix.net/8958820/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"BrendaX Zhu",docs:"Data storyteller",star:5},{id:8,comment:'"Nice product, as a mobile dev Iâm always drowning in CSVs when testing or tracking side projects. Love how Ada just skips the manual grind and spits out clean reports. Curious how it handles messy, real-world data tho."',href:"https://www.producthunt.com/@rabinder_hooda",picture:"https://ph-avatars.imgix.net/8349700/9fe7f3e3-3734-499b-bfe7-1b1726a19253.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Rabinder Hooda",docs:"UI is my second language.",star:4},{id:9,comment:'"easy to use, work well with dify"',href:"https://www.producthunt.com/@yingzhou",picture:"https://ph-avatars.imgix.net/9023671/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"yingzhou jiang",docs:"lab digitalizer",star:5},{id:10,comment:'"I have been using ada.im to analyse and generate reports using anonymized student and teacher learing results at schools in out district."',href:"https://www.producthunt.com/@liebermanlarry",picture:"https://ph-avatars.imgix.net/78541/original.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Larry Lieberman",docs:"COO, Viddui",star:5},{id:11,comment:'"Perfect for financial analysis without the technical overhead. YoY/MoM comparisons work flawlessly, and the system understands business quarters and fiscal years properly. The external financial data (@financial market data) is comprehensive and accurate. However, I\'m concerned about data security - would love more details about encryption and compliance certifications. Also, the glossary setup requires more finance-specific templates out of the box."',href:"https://www.producthunt.com/@fu_richard",picture:"https://ph-avatars.imgix.net/8955925/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Fu Richard",docs:"Co founder of optera",star:5}
1,{id:12,comment:'"OMG finally something that makes sense! \uD83D\uDE0D Day 1 user here and I can already see this replacing our monthly "please analyze this data" requests to our tech team. The prediction feature gave us insights into Q4 planning that would\'ve taken weeks before. Small bug: copy function didn\'t work on my first try, but worked fine after. Love the direction this is going! â¨"',href:"https://www.producthunt.com/@yuzhu_peng",picture:"https://ph-avatars.imgix.net/8955416/original.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Yuzhu Peng",docs:"just a normal user",star:5},{id:13,comment:'"As a computer grad, this tool is lot of help and is very unique given its use"',href:"https://www.producthunt.com/@konala_venkata_rama_manohar",picture:"https://ph-avatars.imgix.net/9016284/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Konala Venkata Rama Manohar",docs:"Future Enthusiast",star:4},{id:14,comment:'"Jumped on this as soon as I saw the launch! Been testing for 2 days now. The data interpretation feature is genuinely impressive - it\'s like having a data analyst explain everything. Export to PDF works flawlessly for client meetings. Minor complaint: the glossary setup could use more guided onboarding. Had to figure out the business terms configuration myself. Still, very promising start!"',href:"https://www.producthunt.com/@christine_li7",picture:"https://ph-avatars.imgix.net/8947368/115e1472-3799-4ca2-9c05-bb05caa7b8ce.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Christine",docs:"11111",star:5},{id:15,comment:'"Mixed feelings about this one. The core functionality is impressive - being able to ask questions in plain English and get actual insights is cool! The prediction feature using historical data works reasonably well. But the pricing is confusing and seems high for what you get. Also experienced some bugs with the copy feature not working properly... Customer support was responsive though. Has potential but needs refinement."',href:"https://www.producthunt.com/@sylv11",picture:"https://ph-avatars.imgix.net/8946435/840035ae-7a78-4a81-9c8f-f63fbaf38a30.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Sylvia",docs:"",star:5},{id:16,comment:'"Finally! A tool that actually understands what I\'m asking for. The natural language query is incredibly intuitive. I can ask "show me top products by revenue last month" and it just works. The automatic chart selection is spot-on most of the time. My only gripe is that the deep reports take 10-15 minutes, which feels a bit slow when you\'re in a rush. But honestly, the quality makes up for it. This is going to save our team hours every week."',href:"https://www.producthunt.com/@a_ho10",picture:"https://ph-avatars.imgix.net/8955481/c5bf9282-f025-41e5-8ee3-2942a5dfcb4d.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"A Ho",docs:"marketer",star:5},{id:17,comment:"\"Trying this out after seeing the launch buzz. The core idea is solid and when it works, it's impressive. Asked about our customer segments and got useful insights. But I've hit a few edge cases where the AI seemed confused by my phrasing. Had to rephrase questions 2-3 times sometimes. It's clearly early days but the potential is there! Looking forward to updates\"",href:"https://www.producthunt.com/@trancy_wu",picture:"https://ph-avatars.imgix.net/8957161/original.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Trancy Wu",docs:"VC investor",star:5},{id:18,comment:'"One-click data analysis sounds promising. Could be game-changing for non-technical business users."',href:"https://www.producthunt.com/@charles_wan",picture:"https://ph-avatars.imgix.net/8872186/ab75dcdb-4930-4086-9817-ff3b95b19bbb.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Charles",docs:"AI Agent for influencer",star:4},{id:19,comment:'"SaaS metrics tracking has never been this intuitive. Churn anal
1ysis, MRR trends, cohort behavior - all accessible through simple questions. The prediction feature helps with capacity planning. Love how it handles subscription data nuances automatically. The attribution analysis helped us identify which marketing channels actually drive long-term value. Minor complaint: wish it had Stripe/payment processor integrations. Currently need to export and upload manually."',href:"https://www.producthunt.com/@daisy_sun4",picture:"https://ph-avatars.imgix.net/8978892/original.jpeg?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Daisy Sun",docs:"PM",star:5},{id:20,comment:'"3 days in and this is already changing how I work The semantic layer concept is brilliant - once I set up our business context, queries became so much more accurate. Love the professional report formatting for stakeholder presentations. Had one small hiccup with CSV upload yesterday but support was super responsive. This team is clearly listening to early feedback!"',href:"https://www.producthunt.com/@yiyang_yang1",picture:"https://ph-avatars.imgix.net/8983322/original.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Yiyang Yang",docs:"hello world",star:5},{id:21,comment:"\"I like how this positions itself as an 'AI analyst' rather than just another dashboard tool. The challenge will be trust, do users feel confident enough in the outputs to make real decisions? Thatâs where adoption usually sticks or breaks.\"",href:"https://www.producthunt.com/@naomi_haya404",picture:"https://ph-avatars.imgix.net/8399257/57334bea-32d8-49fa-9833-1d5ed011bca2.png?auto=compress&codec=mozjpeg&cs=strip&auto=format&w=120&h=120&fit=crop&frame=1&dpr=1",name:"Naomi Hayato",docs:"Code. Create. Debate. Repeat.",star:5}];function ep(){return(0,i.useEffect)(()=>{ee().init({duration:800,easing:"ease-in-out",once:!0,mirror:!1});let e=()=>{document.querySelectorAll(".text-reveal").forEach(e=>{e.getBoundingClientRect().top<window.innerHeight-100&&e.classList.add("active")})};return window.addEventListener("scroll",e),e(),()=>{window.removeEventListener("scroll",e)}},[]),(0,n.jsxs)("div",{children:[(0,n.jsxs)("div",{className:"mx-auto max-w-[1200px] px-5",children:[(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:(0,n.jsxs)("figure",{className:"flex flex-col md:flex-row items-center ",children:[(0,n.jsx)("div",{className:"w-full md:w-2/5 md:pr-12 flex flex-col justify-center h-full mb-8 md:mb-0","data-aos":"fade-right","data-aos-duration":"800",children:(0,n.jsxs)("hgroup",{children:[(0,n.jsx)("h2",{className:"text-2xl font-bold text-gray-800 mb-6 dark:text-white",children:"Data Analysis, Reinvented"}),(0,n.jsx)("p",{className:"text-gray-600 mb-6 dark:text-gray-300",children:"Meet Ada.im, the world's first AI analyst. The platform leverages a cutting-edge LLM and an intelligent agent architecture to tackle the slow and tedious processes of data cleaning, SQL writing, and data report generation â all of which consume valuable analyst time. By transforming raw, disorganized data into actionable insights within minutes, it minimizes manual effort and empowers professionals across industries to make faster, smarter decisions."})]})}),(0,n.jsx)("div",{className:"w-full md:w-3/5 h-full flex items-center justify-center relative","data-aos":"fade-left","data-aos-duration":"800",children:(0,n.jsx)("div",{className:"w-full aspect-video relative",style:{aspectRatio:"660/408"},children:(0,n.jsx)("div",{style:{margin:"6.36% auto",width:"87.27%",height:"79.41%",objectFit:"cover"},children:(0,n.jsx)(q.default,{src:ei,alt:"Meet Ada.im, the world's first AI analyst. The platform leverages a cutting-edge LLM and an intelligent agent architecture to tackle the slow and tedious processes of data cleaning, SQL writing, and data report generation â all of which consume valuable analyst time. By transforming raw, disorganized data into actionable insights within minutes, it minimizes manual effort and empowers professionals across industries to make faster, smarter decisions.",title:"Meet Ada.im, the world's first AI analyst. The platform leverages a cutting-edge LLM and an intelligent agent ar
1chitecture to tackle the slow and tedious processes of data cleaning, SQL writing, and data report generation â all of which consume valuable analyst time. By transforming raw, disorganized data into actionable insights within minutes, it minimizes manual effort and empowers professionals across industries to make faster, smarter decisions.",className:"absolute inset-0 w-full h-full object-cover rounded-lg"})})})})]})})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:(0,n.jsxs)("figure",{className:"flex flex-col md:grid md:grid-cols-[3fr_2fr] gap-8 md:gap-12 items-center ",children:[(0,n.jsx)("div",{"data-aos":"fade-right",className:"w-full h-full flex items-center justify-center order-2 md:order-1 relative",children:(0,n.jsx)("div",{className:"w-full aspect-video relative",style:{aspectRatio:"660/408"},children:(0,n.jsx)("div",{style:{margin:"6.36% auto",width:"87.27%",height:"79.41%",objectFit:"cover"},children:(0,n.jsx)(q.default,{src:eo,alt:"It effortlessly handles vast sales figures, complex user behavior logs, and multi-dimensional market data. Built-in AI algorithms simultaneously perform data cleaning, intelligent analysis, and extract core findings. The report includes key metric trends, comparative charts, and automatically highlights anomalies with root causes, pinpointing both business opportunities and potential risks.",title:"It effortlessly handles vast sales figures, complex user behavior logs, and multi-dimensional market data. Built-in AI algorithms simultaneously perform data cleaning, intelligent analysis, and extract core findings. The report includes key metric trends, comparative charts, and automatically highlights anomalies with root causes, pinpointing both business opportunities and potential risks.",className:"absolute inset-0 w-full h-full object-cover rounded-lg"})})})}),(0,n.jsx)("div",{"data-aos":"fade-left",className:"flex flex-col justify-center h-full order-1 md:order-2 mb-8 md:mb-0 ",children:(0,n.jsxs)("hgroup",{className:"text-left","data-aos":"fade-up",style:{marginBottom:"24px"},children:[(0,n.jsx)("h2",{className:"text-2xl font-bold text-gray-800 mb-4 dark:text-white",style:{marginBottom:"24px"},children:"Professional Data Report in 5 Minutes"}),(0,n.jsx)("p",{className:"text-xl text-gray-600 max-w-3xl mx-auto dark:text-gray-300",style:{fontSize:"16px"},children:"It effortlessly handles vast sales figures, complex user behavior logs, and multi-dimensional market data. Built-in AI algorithms simultaneously perform data cleaning, intelligent analysis, and extract core findings. The report includes key metric trends, comparative charts, and automatically highlights anomalies with root causes, pinpointing both business opportunities and potential risks."})]})})]})})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:(0,n.jsxs)("figure",{className:"flex flex-col md:flex-row items-center ",children:[(0,n.jsx)("div",{className:"w-full md:w-2/5 md:pr-12 flex flex-col justify-center h-full mb-8 md:mb-0","data-aos":"fade-right","data-aos-duration":"800",children:(0,n.jsxs)("hgroup",{children:[(0,n.jsx)("h2",{className:"text-2xl font-bold text-gray-800 dark:text-white mb-6",children:"Your Flexible Analysis Editor"}),(0,n.jsx)("p",{className:"text-gray-600 dark:text-gray-300 mb-6",children:'During the automated report generation, you can actively review, edit, and adjust the content. This enables a "human-in-the-loop" process, allowing for real-time collaboration and refinement to ensure the final document\'s accuracy and relevance. This approach seamlessly integrates human oversight with AI efficiency.'})]})}),(0,n.jsx)("div",{className:"w-full md:w-3/5 h-full flex items-center justify-center relative","data-aos":"fade-left","data-aos-duration":"800",children:(0,n.jsx)("div",{className:"w-full aspect-video relative",style:{aspectRatio:"660/408"},children:(0,n.jsx)("div",{style:{margin:"6.36% auto",width:"87.27%",height:"79.41%",objectFit:"cover"},children:(0,n.jsx)(q.default,{src:el,alt:"During the automated report generation, you can actively review, edit, and adjust the content. This enables a human-in-the-loop process, allowing for real-time collaboration and refinement to ensure the final document's accuracy and relevance. This approach seamlessly integrates human oversight with AI efficie
1ncy.",title:"During the automated report generation, you can actively review, edit, and adjust the content. This enables a human-in-the-loop process, allowing for real-time collaboration and refinement to ensure the final document's accuracy and relevance. This approach seamlessly integrates human oversight with AI efficiency.",className:"absolute inset-0 w-full h-full object-cover rounded-lg"})})})})]})})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:(0,n.jsxs)("figure",{className:"flex flex-col md:grid md:grid-cols-[3fr_2fr] gap-8 md:gap-12 items-center ",children:[(0,n.jsx)("div",{"data-aos":"fade-right",className:"w-full h-full flex items-center justify-center order-2 md:order-1 relative",children:(0,n.jsx)("div",{className:"w-full aspect-video relative",style:{aspectRatio:"660/408"},children:(0,n.jsx)("div",{style:{margin:"6.36% auto",width:"87.27%",height:"79.41%",objectFit:"cover"},children:(0,n.jsx)(q.default,{src:ed,alt:"Unify all your data sources seamlessly in a single, powerful platform. Consolidate information from your secure internal databases, connect effortlessly with diverse external APIs, and stream live information from real-time web data feeds. Break down data silos, simplify your workflow, and gain a holistic, unified view of all your information assets to drive smarter, faster decisions.",title:"Unify all your data sources seamlessly in a single, powerful platform. Consolidate information from your secure internal databases, connect effortlessly with diverse external APIs, and stream live information from real-time web data feeds. Break down data silos, simplify your workflow, and gain a holistic, unified view of all your information assets to drive smarter, faster decisions.",className:"absolute inset-0 w-full h-full object-cover rounded-lg"})})})}),(0,n.jsx)("div",{"data-aos":"fade-left",className:"flex flex-col justify-center h-full order-1 md:order-2 mb-8 md:mb-0 ",children:(0,n.jsxs)("hgroup",{className:"text-left","data-aos":"fade-up",style:{marginBottom:"24px"},children:[(0,n.jsx)("h2",{className:"text-2xl font-bold text-gray-800 mb-4 dark:text-white",style:{marginBottom:"24px"},children:"Unify All Your Data Sources"}),(0,n.jsx)("p",{className:"text-xl text-gray-600 max-w-3xl mx-auto dark:text-gray-300",style:{fontSize:"16px"},children:"Unify all your data sources seamlessly in a single, powerful platform. Consolidate information from your secure internal databases, connect effortlessly with diverse external APIs, and stream live information from real-time web data feeds. Break down data silos, simplify your workflow, and gain a holistic, unified view of all your information assets to drive smarter, faster decisions."})]})})]})})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:(0,n.jsxs)("figure",{className:"flex flex-col md:flex-row items-center ",children:[(0,n.jsx)("div",{className:"w-full md:w-2/5 md:pr-12 flex flex-col justify-center h-full mb-8 md:mb-0","data-aos":"fade-right","data-aos-duration":"800",children:(0,n.jsxs)("hgroup",{children:[(0,n.jsx)("h2",{className:"text-2xl font-bold text-gray-800 mb-6 dark:text-white",children:"Beyond Your Internal Data"}),(0,n.jsx)("p",{className:"text-gray-600 mb-6 dark:text-gray-300",children:"Move beyond the limitations of your internal data. Unlock a broader, more objective perspective by integrating verified professional APIs. This access provides trusted, external data streams for deeper, more comprehensive analysis, enabling you to gain superior insights into market trends, consumer sentiment, and competitive landscapes."})]})}),(0,n.jsx)("div",{className:"w-full md:w-3/5 h-full flex items-center justify-center relative","data-aos":"fade-left","data-aos-duration":"800",children:(0,n.jsx)("div",{className:"w-full aspect-video relative",style:{aspectRatio:"660/408"},children:(0,n.jsx)("div",{style:{margin:"6.36% auto",width:"87.27%",height:"79.41%",objectFit:"cover"},children:(0,n.jsx)(q.default,{src:ec,alt:"Move beyond the limitations of your internal data. Unlock a broader, more objective perspective by integrating verified professional APIs. This access provides trusted, external data streams for deeper, more comprehensive analysis, enabling you to gain superior insights into market trends, consumer sentiment, and competitive landscapes.",title:"Move beyond the limitations of your internal data. Unlock a broader, more objective perspective by integrating verified professional APIs. This access provides trusted, external data streams for deeper, more comprehensive analysis, enabling you to gain superior insights into market trends, consumer sentiment, and competitive landscapes.",className:"absolute inset-0 w-full h-full object-cover rounded-lg"})})})})]})})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsxs)("div",{className:"container mx-auto px-4 md:px-6 lg:px-8",children:[(0,n.jsx)("h2",{className:"text-2xl text-center sm:text-3xl lg:text-4xl font-bold text-gray-900 dark:text-white mb-3 sm:mb-4",children:"Loved by Data Professionals Around the World"}),(0,n.jsx)("div",{className:"flex flex-col md:flex-row items-center mt-12",children:(0,n.jsx)("div",{className:"w-full ".concat(ea().scrollContainer),children:(0,n.jsxs)("ul",{className:"w-full ".concat(ea().scrollContent),children:[(0,n.jsx)("li",{className:"w-full h-full flex justify-between flex-wrap gap-2 mb-2",children:eh.map(e=>(0,n.jsx)("div",{className:"md:w-1/4 sm:w-full h-90 flex-auto",children:(0,n.jsxs)("main",{className:"bg-white border border-[#d9e1ec] rounded flex flex-col text-sm w-full h-full p-5",children:[(0,n.jsxs)(er(),{href:"https://www.producthunt.com/products/ada-2/reviews",className:"text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("div",{className:"flex items-center gap-2",children:Array.from({length:e.star||0}).map((e,t)=>(0,n.jsx)("i",{className:"w-5 h-5 bg-blue-600 block",style:{clipPath:"pol
1ygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)"}},t))}),(0,n.jsx)("p",{className:"mt-4 line-clamp-5 text-base leading-6 mb-6 overflow-hidden",children:e.comment})]}),(0,n.jsx)("div",{className:"mt-auto",children:(0,n.jsxs)(er(),{href:e.href,className:"flex items-center flex-row text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("img",{className:"h-10 w-10 rounded-full mr-2.5",src:e.picture,alt:"".concat(e.name," is photo"),title:"".concat(e.name," is photo")}),(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{children:(0,n.jsx)("strong",{className:"text-[#21293c] font-bold",children:e.name})}),(0,n.jsx)("p",{className:"text-[#4b587c]",children:e.docs})]})]})}),(0,n.jsx)(er(),{href:"https://www.producthunt.com/products/ada-2/reviews",className:"text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:(0,n.jsxs)("div",{className:"flex items-center justify-between self-end border-t border-[#d9e1ec] mt-5 pt-5 w-full",children:[(0,n.jsx)("p",{className:"text-[#4b587c] opacity-50",children:"Review of Ada.im"}),(0,n.jsx)("img",{className:"w-8 h-8 object-cover rounded-full",src:em.src,alt:"producthunt",title:"producthunt"})]})})]})},e.id))}),(0,n.jsx)("li",{className:"w-full h-full flex justify-between flex-wrap gap-2 mb-2",children:eh.map(e=>(0,n.jsx)("div",{className:"md:w-1/4 sm:w-full h-90 flex-auto",children:(0,n.jsxs)("main",{className:"bg-white border border-[#d9e1ec] rounded flex flex-col text-sm w-full h-full p-5",children:[(0,n.jsxs)(er(),{href:"https://www.producthunt.com/products/ada-2/reviews",className:"text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("div",{className:"flex items-center gap-2",children:Array.from({length:e.star||0}).map((e,t)=>(0,n.jsx)("i",{className:"w-5 h-5 bg-blue-600 block",style:{clipPath:"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)"}},t))}),(0,n.jsx)("p",{className:"mt-4 line-clamp-5 text-base leading-6 mb-6 overflow-hidden",children:e.comment})]}),(0,n.jsx)("div",{className:"mt-auto",children:(0,n.jsxs)(er(),{href:e.href,className:"flex items-center flex-row text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("img",{className:"h-10 w-10 rounded-full mr-2.5",src:e.picture,alt:"".concat(e.name," is photo"),title:"".concat(e.name," is photo")}),(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{children:(0,n.jsx)("strong",{className:"text-[#21293c] font-bold",children:e.name})}),(0,n.jsx)("p",{className:"text-[#4b587c]",children:e.docs})]})]})}),(0,n.jsx)(er(),{href:"https://www.producthunt.com/products/ada-2/reviews",className:"text-[#333333]",target:"_blank",rel:"noopener noreferrer",children:(0,n.jsxs)("div",{className:"flex items-center justify-between self-end border-t border-[#d9e1ec] mt-5 pt-5 w-full",children:[(0,n.jsx)("p",{className:"text-[#4b587c] opacity-50",children:"Review of Ada.im"}),(0,n.jsx)("img",{className:"w-8 h-8 object-cover rounded-full",src:em.src,alt:"producthunt",title:"producthunt"})]})})]})},e.id))})]})})})]})}),(0,n.jsx)("section",{className:"py-10",children:(0,n.jsx)(eu.A,{})})]}),(0,n.jsx)(en.A,{})]})}
1var eg=a(74823);function ex(){let[e,t]=(0,i.useState)(!1),[a,s]=(0,i.useState)(!1);return((0,i.useEffect)(()=>{let e=setTimeout(()=>{t(!0)},1e4);return()=>clearTimeout(e)},[]),e&&e&&!a)?(0,n.jsx)(n.Fragment,{}):null}var ef=a(10721),eb=a(11098),ev=a(77037),ey=a(39400),ew=a(25830),ej=a(415),eN=a(97537),eA=a(47726),ek=a(50673),eS=a(8408),eC=a(30230),eE=a(67845),eD=a(38320),ez=a(78757);let eT=[{id:"ecommerce",name:"E-commerce",description:"Sales, revenue, and customer metrics",data:[{date:"2024-01-01",category:"Electronics",sales:12500,revenue:45e3,customers:325,returns:45},{date:"2024-01-02",category:"Electronics",sales:13200,revenue:48500,customers:342,returns:38},{date:"2024-01-03",category:"Electronics",sales:11800,revenue:42e3,customers:298,returns:42},{date:"2024-01-04",category:"Clothing",sales:8500,revenue:22e3,customers:215,returns:28},{date:"2024-01-05",category:"Clothing",sales:9200,revenue:24500,customers:242,returns:32},{date:"2024-01-06",category:"Clothing",sales:8900,revenue:23e3,customers:228,returns:25},{date:"2024-01-07",category:"Home & Garden",sales:6500,revenue:18e3,customers:156,returns:18},{date:"2024-01-08",category:"Home & Garden",sales:7200,revenue:19500,customers:168,returns:22},{date:"2024-01-09",category:"Home & Garden",sales:6800,revenue:18500,customers:162,returns:20},{date:"2024-01-10",category:"Sports",sales:5800,revenue:16e3,customers:142,returns:15},{date:"2024-01-11",category:"Sports",sales:6500,revenue:17500,customers:158,returns:18},{date:"2024-01-12",category:"Sports",sales:6200,revenue:17e3,customers:152,returns:16},{date:"2024-01-13",category:"Beauty",sales:4200,revenue:12e3,customers:98,returns:12},{date:"2024-01-14",category:"Beauty",sales:4800,revenue:13500,customers:115,returns:14},{date:"2024-01-15",category:"Beauty",sales:4500,revenue:12800,customers:108,returns:11},{date:"2024-01-16",category:"Electronics",sales:14200,revenue:52e3,customers:358,returns:48},{date:"2024-01-17",category:"Electronics",sales:13800,revenue:5e4,customers:348,returns:40},{date:"2024-01-18",category:"Clothing",sales:9800,revenue:26e3,customers:265,returns:35},{date:"2024-01-19",category:"Clothing",sales:10200,revenue:27500,customers:285,returns:38},{date:"2024-01-20",category:"Home & Garden",sales:7800,revenue:21e3,customers:185,returns:24},{date:"2024-01-21",category:"Sports",sales:7200,revenue:19500,customers:172,returns:20},{date:"2024-01-22",category:"Beauty",sales:5500,revenue:15500,customers:135,returns:16},{date:"2024-01-23",category:"Electronics",sales:12800,revenue:46500,customers:335,returns:44},{date:"2024-01-24",category:"Clothing",sales:9100,revenue:23500,customers:248,returns:30},{date:"2024-01-25",category:"Home & Garden",sales:7100,revenue:19500,customers:170,returns:21},{date:"2024-01-26",category:"Sports",sales:6500,revenue:17500,customers:155,returns:17},{date:"2024-01-27",category:"Beauty",sales:4900,revenue:14e3,customers:120,returns:13},{date:"2024-01-28",category:"Electronics",sales:15200,revenue:55e3,customers:375,returns:50},{date:"2024-01-29",category:"Clothing",sales:10500,revenue:28e3,customers:295,returns:40},{date:"2024-01-30",category:"Home & Garden",sales:8200,revenue:22e3,customers:195,returns:25}],columns:["date","category","sales","revenue","customers","returns"]},{id:"saas",name:"SaaS",description:"MRR, users, churn, and signups",data:[{date:"2024-01-01",product:"Basic Plan",mrr:15e3,users:150,churn:5,signups:25},{date:"2024-01-02",product:"Basic Plan",mrr:15500,users:155,churn:3,signups:28},{date:"2024-01-03",product:"Pro Plan",mrr:28e3,users:140,churn:2,signups:18},{date:"2024-01-04",product:"Pro Plan",mrr:29200,users:146,churn:4,signups:22},{date:"2024-01-05",product:"Enterprise",mrr:45e3,users:45,churn:0,signups:3},{date:"2024-01-06",product:"Enterprise",mrr:48e3,users:48,churn:1,signups:4},{date:"2024-01-07",product:"Basic Plan",mrr:16200,users:162,churn:6,signups:30},{date:"2024-01-08",product:"Pro Plan",mrr:30500,users:152,churn:3,signups:20},{date:"2024-01-09",product:"Enterprise",mrr:51e3,users:51,churn:0,signups:5},{date:"2024-01-10",product:"Basic Plan",mrr:17e3,users:170,churn:4,signups:32}
1],columns:["date","product","mrr","users","churn","signups"]},{id:"payment",name:"Payment",description:"Transaction volume, fees, and chargebacks",data:[{date:"2024-01-01",method:"Credit Card",transactions:1250,volume:125e3,fees:3125,chargebacks:12},{date:"2024-01-02",method:"Credit Card",transactions:1320,volume:132e3,fees:3300,chargebacks:15},{date:"2024-01-03",method:"PayPal",transactions:850,volume:68e3,fees:2380,chargebacks:8},{date:"2024-01-04",method:"PayPal",transactions:920,volume:73600,fees:2577,chargebacks:10},{date:"2024-01-05",method:"Bank Transfer",transactions:450,volume:18e4,fees:900,chargebacks:2},{date:"2024-01-06",method:"Bank Transfer",transactions:480,volume:192e3,fees:960,chargebacks:3},{date:"2024-01-07",method:"Digital Wallet",transactions:680,volume:54400,fees:1632,chargebacks:6},{date:"2024-01-08",method:"Digital Wallet",transactions:720,volume:57600,fees:1728,chargebacks:7},{date:"2024-01-09",method:"Credit Card",transactions:1400,volume:14e4,fees:3500,chargebacks:18},{date:"2024-01-10",method:"PayPal",transactions:950,volume:76e3,fees:2660,chargebacks:9}],columns:["date","method","transactions","volume","fees","chargebacks"]},{id:"ads",name:"Ads Analytics",description:"Impressions, clicks, spend, and conversions",data:[{date:"2024-01-01",platform:"Google Ads",impressions:125e3,clicks:3750,spend:4500,conversions:225},{date:"2024-01-02",platform:"Google Ads",impressions:132e3,clicks:3960,spend:4800,conversions:240},{date:"2024-01-03",platform:"Facebook",impressions:185e3,clicks:5550,spend:3700,conversions:333},{date:"2024-01-04",platform:"Facebook",impressions:195e3,clicks:5850,spend:3900,conversions:351},{date:"2024-01-05",platform:"LinkedIn",impressions:45e3,clicks:1350,spend:2700,conversions:108},{date:"2024-01-06",platform:"LinkedIn",impressions:48e3,clicks:1440,spend:2880,conversions:115},{date:"2024-01-07",platform:"Twitter",impressions:95e3,clicks:2850,spend:1900,conversions:171},{date:"2024-01-08",platform:"Twitter",impressions:102e3,clicks:3060,spend:2040,conversions:184},{date:"2024-01-09",platform:"Google Ads",impressions:14e4,clicks:4200,spend:5100,conversions:252},{date:"2024-01-10",platform:"Facebook",impressions:205e3,clicks:6150,spend:4100,conversions:369}],columns:["date","platform","impressions","clicks","spend","conversions"]},{id:"finance",name:"Finance",description:"Account balances, deposits, and withdrawals",data:[{date:"2024-01-01",account:"Checking",deposits:125e3,withdrawals:85e3,balance:34e4,transactions:245},{date:"2024-01-02",account:"Checking",deposits:132e3,withdrawals:92e3,balance:38e4,transactions:268},{date:"2024-01-03",account:"Savings",deposits:85e3,withdrawals:25e3,balance:52e4,transactions:85},{date:"2024-01-04",account:"Savings",deposits:92e3,withdrawals:28e3,balance:584e3,transactions:92},{date:"2024-01-05",account:"Investment",deposits:25e4,withdrawals:0,balance:185e4,transactions:12},{date:"2024-01-06",account:"Investment",deposits:28e4,withdrawals:5e4,balance:208e4,transactions:15},{date:"2024-01-07",account:"Credit Line",deposits:0,withdrawals:45e3,balance:-45e3,transactions:32},{date:"2024-01-08",account:"Credit Line",deposits:25e3,withdrawals:52e3,balance:-72e3,transactions:38},{date:"2024-01-09",account:"Checking",deposits:145e3,withdrawals:98e3,balance:427e3,transactions:285},{date:"2024-01-10",account:"Savings",deposits:98e3,withdrawals:32e3,balance:65e4,transactions:98}],columns:["date","account","deposits","withdrawals","balance","transactions"]},{id:"market",name:"Market Research",description:"Survey responses, satisfaction, and NPS",data:[{date:"2024-01-01",segment:"Gen Z",responses:450,satisfaction:4.2,nps:65,engagement:78},{date:"2024-01-02",segment:"Gen Z",responses:480,satisfaction:4.3,nps:68,engagement:82},{date:"2024-01-03",segment:"Millennials",responses:680,satisfaction:4.5,nps:72,engagement:85},{date:"2024-01-04",segment:"Millennials",responses:720,satisfaction:4.6,nps:75,engagement:88},{date:"2024-01-05",segment:"Gen X",responses:520,satisfaction:4.1,nps:58,engagement:70},{date:"2024-01-06",segment:"Gen X",responses:550,satisfaction:4.2,nps:62,engagement:73},{date:"2024-01-07",segment:"Boomers",responses:380,satisfaction:3.8,nps:45,engagement:55},{date:"2024-01-08",segment:"Boomers",responses:410,satisfaction:3.9,nps:48,engagement:58},{date:"2024-01-09",segment:"Gen Z",responses:520,satisfaction:4.4,nps:70,engagement:85},{date:"2024-01-10",segment:"Millennials",responses:750,satisfaction:4.7,nps:78,engagement:90}],columns:["date","segment","responses","satisfaction","nps","engagement"]}];function eM(e){let{onSelect:t,onClose:a}=e;return(0,n.jsx)("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50 p-4",children:(0,n.jsxs)("div",{className:"bg-white rounded-2xl shadow-2xl max-w-4xl w-full max-h-[90vh] overflow-y-auto",children:[(0,n.jsxs)("div",{className:"sticky top-0 bg-background border-b border-border p-6 flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{className:"text-2xl font-bold",children:"Choose a Template"}),(0,n.jsx)("p",{className:"text-muted-foreground text-sm mt-1",children:"Select an industry template to get started"})]}),(0,n.jsx)(eb.$,{variant:"ghost",size:"icon",onClick:a,children:(0,n.jsx)(g.A,{className:"w-5 h-5"})})]}),(0,n.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 p-6",children:eT.map(e=>(0,n.jsxs)("button",{onClick:()=>t(e.id),className:"group bg-card rounded-xl p-6 border-2 border-border hover:border-primary transition-all duration-300 hover:shadow-lg text-left",children:[(0,n.jsx)("div",{className:"bg-primary/10 rounded-xl w-14 h-14 flex items-center justify-center mb-4 text-primary group-hover:scale-110 transition-transform",children:(e=>{switch(e){case"ecommerce":default:return(0,n.jsx)(ek.A,{className:"w-8 h-8"});case"saas":return(0,n.jsx)(eS.A,{className:"w-8 h-8"});case"payment":return(0,n.jsx)(eC.A,{className:"w-8 h-8"});case"ads":return(0,n.jsx)(eE.A,{className:"w-8 h-8"});case"finance":return(0,n.jsx)(eD.A,{className:"w-8 h-8"});case"market":return(0,n.jsx)(ez.A,{className:"w-8 h-8"})}})(e.id)}),(0,n.jsx)("h3",{className:"text-lg font-semibold mb-2",children:e.name}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e.description})]},e.id))})]})})}function eI(e){let{onUploadFile:t,onPasteData:a,onTemplateSelected:s}=e,r=(0,i.useRef)(null),[o,l]=(0,i.useState)(!1),[d,c]=(0,i.useState)(!1),{triggerRestriction:m,showRestrictionAlert:u,hideRestrictionAlert:h}=(0,R.Q)();return(0,n.jsxs)("div",{className:"bg-transparent from-background via-background to-muted/20 flex items-center justify-center p-4 md:px-8 pt-3",children:[(0,n.jsx)("input",{ref:r,type:"file",accept:".xlsx,.xls,.csv",onChange:e=>{var a;let n=null==(a=e.target.files)?void 0:a[0];n&&t(n)},className:"hidden"}),(0,n.jsxs)("div",{className:"max-w-6xl w-full",children:[(0,n.jsx)("p",{className:"text-lg md:text-xl text-muted-foreground px-4 text-center mb-3",children:"Experience AI-Powered Dashboard Generation in Seconds"}),(0,n.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4 md:gap-6",children:[(0,n.jsxs)("button",{onClick:e=>{if(m())return void e.preventDefault();c(!0)},className:"group bg-background rounded-2xl p-8 border-2 border-border hover:border-primary transition-all duration-300 hover:shadow-xl hover:-translate-y-1",children:[(0,n.jsx)("div",{className:"bg-primary rounded-2xl w-16 h-16 flex items-center justify-center mb-6 mx-auto group-hover:scale-110 transition-transform duration-300",children:(0,n.jsx)(ej.A,{className:"w-8 h-8 text-primary-foreground"})}),(0,n.jsx)("h3",{className:"text-xl font-semibold mb-3 text-foreground",children:"Use Sample Data"}),(0,n.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:"Choose from 6 industry templates with sample metrics"})]}),(0,n.jsxs)("button",{onClick:e=>{var t;if(m())return void e.preventDefault();null==(t=r.current)||t.click()},onDragOver:e=>{e.preventDefault(),e.stopPropagation(),l(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),l(!1)},onDrop:e=>{var a;e.preventDefault(),e.stopPropagation(),l(!1);let n=null==(a=e.dataTransfer.files)?void 0:a[0];n&&(n.name.endsWith(".xlsx")||n.name.endsWith(".xls")||n.name.endsWith(".csv"))&&t(n)},className:"group bg-background rounded-2xl p-8 border-2 transition-all duration-300 hover:shadow-xl hover:-translate-y-1 ".concat(o?"border-primary bg-primary/5 scale-105":"border-border hover:border-primary"),children:[(0,n.jsx)("div",{className:"bg-primary rounded-2xl w-16 h-16 flex items-center justify-center mb-6 mx-auto transition-transform duration-300 ".concat(o?"scale-125":"group-hover:scale-110"),children:(0,n.jsx)(eN.A,{className:"w-8 h-8 text-primary-foreground"})}),(0,n.jsx)("h3",{className:"text-xl font-semibold mb-3 text-foreground",children:"Upload Your Data"}),(0,n.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:o?"Drop your file here":"Drag & drop or click to upload Excel/CSV file"})]}),(0,n.jsxs)("button",{onClick:e=>{if(m())return void e.preventDefault();a()},className:"group bg-background rounded-2xl p-8 border-2 border-border hover:border-primary transition-all duration-300 hover:shadow-xl hover:-translate-y-1",children:[(0,n.jsx)("div",{className:"bg-primary rounded-2xl w-16 h-16 flex items-center justify-center mb-6 mx-auto group-hover:scale-110 transition-transform duration-300",children:(0,n.jsx)(eA.A,{className:"w-8 h-8 text-primary-foreground"})}),(0,n.jsx)("h3",{className:"text-xl font-semibold mb-3 text-foreground",children:"Copy & Paste Your Data"}),(0,n.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:"Paste data directly from Excel into our editor"})]})]})]}),(0,n.jsx)(P.q,{open:u,onClose:h}),d&&(0,n.jsx)(eM,{onSelect:e=>{c(!1),s(e)},onClose:()=>c(!1)})]})}var eB=a(17401),eP=a(1612);function eR(e){var t,a;let{onGenerate:s,onBack:r}=e,[o,l]=(0,i.useState)([["Date","Category","Sales","Revenue"],["2024-01-01","Electronics","100","5000"],["2024-01-02","Clothing","150","3000"]]),[d,c]=(0,i.useState)(null),[m,u]=(0,i.useState)(!1),[h,p]=(0,i.useState)(null),[g,x]=(0,i.useState)(null),f=(0,i.useRef)({});return(0,i.useEffect)(()=>{let e=()=>{u(!1)};return document.addEventListener("mouseup",e),()=>document.removeEventListener("mouseup",e)},[]),(0,n.jsx)("div",{className:"min-h-screen bg-transparent from-background via-background to-muted/20 flex items-center justify-center p-4 md:p-8",children:(0,n.jsxs)("div",{className:"max-w-6xl w-full",children:[(0,n.jsxs)(eb.$,{variant:"ghost",onClick:r,className:"mb-6",children:[(0,n.jsx)(ev.A,{className:"w-4 h-4 mr-2"}),"Back to Options"]}),(0,n.jsxs)("div",{className:"bg-card rounded-3xl shadow-2xl p-6 md:p-12 border border-border",children:[(0,n.jsx)("h2",{className:"text-3xl md:text-4xl font-bold text-center mb-3",children:"Copy & Paste Your Data"}),(0,n.jsx)("p",{className:"text-center text-muted-foreground text-base md:text-lg mb-8",children:"Copy data from Excel and paste it directly into the spreadsheet below"}),(0,n.jsx)("div",{className:"mb-8 border-2 border-border rounded-2xl overflow-hidden bg-background",children:(0,n.jsx)("div",{className:"overflow-x-auto",children:(0,n.jsxs)("table",{className:"w-full border-collapse",children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{className:"bg-muted/50",children:[(0,n.jsx)("th",{className:"w-12 border-r border-border"}),null==(t=o[0])?void 0:t.map((e,t)=>(0,n.jsx)("th",{className:"border-r border-border p-2 text-sm font-semibold relative group",children:(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"flex-1",children:String.fromCharCode(65+t)}),(0,n.jsx)("button",{onClick:()=>{o[0].length>1&&l(o.map(e=>e.filter((e,a)=>a!==t)))},className:"opacity-0 group-hover:opacity-100 transition-opacity p-1 hover:bg-destructive/10 rounded",children:(0,n.jsx)(eB.A,{className:"w-3 h-3 text-destructive"})})]})},t)),(0,n.jsx)("th",{className:"w-12 p-2",children:(0,n.jsx)("button",{onClick:()=>{l(o.map(e=>[...e,""]))},className:"w-full h-full flex items-center justify-center hover:bg-muted rounded transition-colors",children:(0,n.jsx)(eP.A,{className:"w-4 h-4"})})})]})}),(0,n.jsxs)("tbody",{children:[o.map((e,t)=>(0,n.jsxs)("tr",{className:0===t?"bg-muted/30 font-semibold":"",children:[(0,n.jsx)("td",{className:"border-r border-t border-border p-2 text-center text-sm text-muted-foreground bg-muted/20 relative group",children:(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"flex-1",children:t+1}),t>0&&(0,n.jsx)("button",{onClick:()=>{o.length>1&&l(o.filter((e,a)=>a!==t))},className:"opacity-0 group-hover:opacity-100 transition-opacity p-1 hover:bg-destructive/10 rounded",children:(0,n.jsx)(eB.A,{className:"w-3 h-3 text-destructive"})})]})}),e.map((e,a)=>{let s="".concat(t,"-").concat(a),r=((e,t)=>{if(!d)return!1;let a=Math.min(d.startRow,d.endRow),n=Math.max(d.startRow,d.endRow),s=Math.min(d.startCol,d.endCol),r=Math.max(d.startCol,d.endCol);return e>=a&&e<=n&&t>=s&&t<=r})(t,a),i=(null==h?void 0:h.row)===t&&(null==h?void 0:h.col)===a,b=(null==g?void 0:g.row)===t&&(null==g?void 0:g.col)===a;return(0,n.jsx)("td",{className:"border-r border-t border-border p-0 relative ".concat(r?"bg-primary/10":""," ").concat(i?"ring-2 ring-primary ring-inset":""),onClick:e=>{p({row:t,col:a}),e.shiftKey?d&&c({...d,endRow:t,endCol:a}):c({startRow:t,startCol:a,endRow:t,endCol:a})},onDoubleClick:()=>{x({row:t,col:a}),setTimeout(()=>{var e,n;let s="".concat(t,"-").concat(a);null==(e=f.current[s])||e.focus(),null==(n=f.current[s])||n.select()},0)},onMouseDown:()=>{u(!0),c({startRow:t,startCol:a,endRow:t,endCol:a}),p({row:t,col:a})},onMouseEnter:()=>{m&&d&&c({...d,endRow:t,endCol:a})},children:(0,n.jsx)("input",{ref:e=>{f.current[s]=e}
1,type:"text",value:e,onChange:e=>((e,t,a)=>{let n=[...o];n[e][t]=a,l(n)})(t,a,e.target.value),onPaste:e=>((e,t,a)=>{e.preventDefault();let n=e.clipboardData.getData("text").trim().split("\n").map(e=>e.split(" ")),s=[...o];n.forEach((e,n)=>{let r=t+n;r>=s.length&&s.push(Array(o[0].length).fill("")),e.forEach((e,t)=>{let n=a+t;n<s[r].length?s[r][n]=e:s[r].push(e)})}),l(s)})(e,t,a),onKeyDown:e=>((e,t,a)=>{if((e.ctrlKey||e.metaKey)&&"c"===e.key&&d&&!g){e.preventDefault();let t=Math.min(d.startRow,d.endRow),a=Math.max(d.startRow,d.endRow),n=Math.min(d.startCol,d.endCol),s=Math.max(d.startCol,d.endCol),r=[];for(let e=t;e<=a;e++){let t=[];for(let a=n;a<=s;a++)t.push(o[e][a]);r.push(t)}let i=r.map(e=>e.join(" ")).join("\n");navigator.clipboard.writeText(i);return}if(g&&("Enter"===e.key||"Escape"===e.key)){e.preventDefault(),x(null);return}if(!g){var n;let s=t,r=a;switch(e.key){case"ArrowUp":e.preventDefault(),s=Math.max(0,t-1);break;case"ArrowDown":e.preventDefault(),s=Math.min(o.length-1,t+1);break;case"ArrowLeft":e.preventDefault(),r=Math.max(0,a-1);break;case"ArrowRight":e.preventDefault(),r=Math.min(o[0].length-1,a+1);break;case"Enter":e.preventDefault(),x({row:t,col:a});return;case"Tab":e.preventDefault(),r=e.shiftKey?Math.max(0,a-1):Math.min(o[0].length-1,a+1);break;default:return}p({row:s,col:r}),c({startRow:s,startCol:r,endRow:s,endCol:r});let i="".concat(s,"-").concat(r);null==(n=f.current[i])||n.focus()}})(e,t,a),onFocus:()=>p({row:t,col:a}),readOnly:!b,className:"w-full h-full px-3 py-2 bg-transparent focus:outline-none ".concat(b?"focus:bg-white focus:ring-2 focus:ring-primary":"cursor-cell")})},a)}),(0,n.jsx)("td",{className:"border-t border-border"})]},t)),(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{className:"border-r border-t border-border p-2 bg-muted/20"}),null==(a=o[0])?void 0:a.map((e,t)=>(0,n.jsx)("td",{className:"border-r border-t border-border"},t)),(0,n.jsx)("td",{className:"border-t border-border w-12 p-2",children:(0,n.jsx)("button",{onClick:()=>{l([...o,Array(o[0].length).fill("")])},className:"w-full h-full flex items-center justify-center hover:bg-muted rounded transition-colors",children:(0,n.jsx)(eP.A,{className:"w-4 h-4"})})})]})]})]})})}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mb-6 text-center",children:"Tip: Click to select, drag to select multiple cells, double-click to edit, use arrow keys to navigate, Ctrl+C/Cmd+C to copy"}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(eb.$,{size:"lg",onClick:()=>{s(o)},className:"px-12 py-6 text-lg rounded-xl",children:"Generate Dashboard"})})]})]})})}var eL=a(54969),e_=a(16401),eW=a(33251),eH=a(81881),eF=a(49850),eG=a(63),eO=a(77548),eU=a(20519),eV=a(97300),eK=a(78391),eY=a(96286);function eJ(e){let{data:t,dimension:a,metrics:s,metricAggregations:r,dimensionSort:i,metricSort:o}=e,l=s[0],d=(function(e,t,a,n,s,r){let i=new Map;e.forEach(e=>{var n;let s=String(null!=(n=e[t])?n:"").substring(0,15);i.has(s)||i.set(s,{}),a.forEach(t=>{let a=Number(e[t])||0;i.get(s)[t]||(i.get(s)[t]=[]),i.get(s)[t].push(a)})});let o=Array.from(i.entries()).map(e=>{let[t,s]=e,r={name:t};return a.forEach(e=>{let t=s[e]||[];switch((null==n?void 0:n[e])||"sum"){case"sum":default:r[e]=t.reduce((e,t)=>e+t,0);break;case"avg":r[e]=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0;break;case"min":r[e]=t.length>0?Math.min(...t):0;break;case"max":r[e]=t.length>0?Math.max(...t):0;break;case"count":r[e]=t.length}}),r});if(s&&"none"!==s&&o.sort((e,t)=>"asc"===s?String(e.name).localeCompare(String(t.name)):String(t.name).localeCompare(String(e.name))),r){let e=a.find(e=>r[e]&&"none"!==r[e]);e&&o.sort((t,a)=>{var n,s,i,o;return"asc"===r[e]?Number(null!=(n=t[e])?n:0)-Number(null!=(s=a[e])?s:0):Number(null!=(i=a[e])?i:0)-Number(null!=(o=t[e])?o:0)})}return o})(t,a,s,r,i,o).slice(0,20);return(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(eG.E,{data:d,children:[(0,n.jsx)(eO.d,{strokeDasharray:"3 3",stroke:"var(--border)"}),(0,n.jsx)(eU.W,{dataKey:"name",tick:{fill:"var(--muted-foreground)",fontSize:12},angle:-45,textAnchor:"end",height:80}
1),(0,n.jsx)(eV.h,{tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eK.m,{contentStyle:{background:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"}}),(0,n.jsx)(eY.y,{dataKey:l,fill:"var(--chart-1)",radius:[8,8,0,0]})]})})}var eq=a(62038),eX=a(12934),eQ=a(16722);let eZ=["var(--chart-1)","var(--chart-2)","var(--chart-3)","var(--chart-4)"];function e$(e){let{data:t,dimension:a,metrics:s,metricAggregations:r,dimensionSort:i,metricSort:o}=e,l=(function(e,t,a,n,s,r){let i=new Map;e.forEach(e=>{var n;let s=String(null!=(n=e[t])?n:"").substring(0,10);i.has(s)||i.set(s,{}),a.forEach(t=>{let a=Number(e[t])||0;i.get(s)[t]||(i.get(s)[t]=[]),i.get(s)[t].push(a)})});let o=Array.from(i.entries()).map(e=>{let[t,s]=e,r={name:t};return a.forEach(e=>{let t=s[e]||[];switch((null==n?void 0:n[e])||"sum"){case"sum":default:r[e]=t.reduce((e,t)=>e+t,0);break;case"avg":r[e]=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0;break;case"min":r[e]=t.length>0?Math.min(...t):0;break;case"max":r[e]=t.length>0?Math.max(...t):0;break;case"count":r[e]=t.length}}),r});if(s&&"none"!==s&&o.sort((e,t)=>"asc"===s?String(e.name).localeCompare(String(t.name)):String(t.name).localeCompare(String(e.name))),r){let e=a.find(e=>r[e]&&"none"!==r[e]);e&&o.sort((t,a)=>{var n,s,i,o;return"asc"===r[e]?Number(null!=(n=t[e])?n:0)-Number(null!=(s=a[e])?s:0):Number(null!=(i=a[e])?i:0)-Number(null!=(o=t[e])?o:0)})}return o})(t,a,s,r,i,o).slice(0,50);return(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(eq.b,{data:l,children:[(0,n.jsx)(eO.d,{strokeDasharray:"3 3",stroke:"var(--border)"}),(0,n.jsx)(eU.W,{dataKey:"name",tick:{fill:"var(--muted-foreground)",fontSize:12},angle:-45,textAnchor:"end",height:80}),(0,n.jsx)(eV.h,{tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eK.m,{contentStyle:{background:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"}}),(0,n.jsx)(eX.s,{wrapperStyle:{paddingTop:"16px"}}),s.map((e,t)=>(0,n.jsx)(eQ.N,{type:"monotone",dataKey:e,stroke:eZ[t%eZ.length],dot:!1,strokeWidth:2},e))]})})}let e0=["var(--chart-1)","var(--chart-2)","var(--chart-3)","var(--chart-4)","var(--chart-5)"];function e1(e){let{data:t,dimension:a,metrics:s,metricAggregations:r,dimensionSort:i,metricSort:o}=e,l=(function(e,t,a,n,s,r){let i=new Map;e.forEach(e=>{var n;let s=String(null!=(n=e[t])?n:"");i.has(s)||i.set(s,{}),a.forEach(t=>{let a=Number(e[t])||0;i.get(s)[t]||(i.get(s)[t]=[]),i.get(s)[t].push(a)})});let o=Array.from(i.entries()).map(e=>{let[t,s]=e,r={name:t};return a.forEach(e=>{let t=s[e]||[];switch((null==n?void 0:n[e])||"sum"){case"sum":default:r[e]=t.reduce((e,t)=>e+t,0);break;case"avg":r[e]=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0;break;case"min":r[e]=t.length>0?Math.min(...t):0;break;case"max":r[e]=t.length>0?Math.max(...t):0;break;case"count":r[e]=t.length}}),r});if(s&&"none"!==s&&o.sort((e,t)=>"asc"===s?String(e.name).localeCompare(String(t.name)):String(t.name).localeCompare(String(e.name))),r){let e=a.find(e=>r[e]&&"none"!==r[e]);e&&o.sort((t,a)=>{var n,s,i,o;return"asc"===r[e]?Number(null!=(n=t[e])?n:0)-Number(null!=(s=a[e])?s:0):Number(null!=(i=a[e])?i:0)-Number(null!=(o=t[e])?o:0)})}return o})(t,a,s,r,i,o).slice(0,20);return(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(eG.E,{data:l,children:[(0,n.jsx)(eO.d,{strokeDasharray:"3 3",stroke:"var(--border)"}),(0,n.jsx)(eU.W,{dataKey:"name",tick:{fill:"var(--muted-foreground)",fontSize:12},angle:-45,textAnchor:"end",height:80}),(0,n.jsx)(eV.h,{tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eK.m,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"}}),(0,n.jsx)(eX.s,{}),s.map((e,t)=>(0,n.jsx)(eY.y,{dataKey:e,stackId:"a",fill:e0[t%e0.length]},e))]})})}var e2=a(79723),e4=a(746);function e5(e){let{data:t,dimension:a,metrics:s,metricAggregations:r,dimensionSort:i="none",metricSort:o={}}=e,l=["var(--chart-1)","var(--chart-2)","var(--chart-3)","var(--chart-4)"],d=(function(e,t,a,n,s,r){let i=new Map;e.forEach(e=>{var n;let s=String(null!=(n=e[t])?n:"").substring(0,15);i.has(s)||i.set(s,{}),a.forEach(t=>{let a=Number(e[t])||0;i.get(s)[t]||(i.get(s)[t]=[]),i.get(s)[t].push(a)})});let o=Array.from(i.entries()).map(e=>{let[t,s]=e,r={name:t};
1return a.forEach(e=>{let t=s[e]||[];switch((null==n?void 0:n[e])||"sum"){case"sum":default:r[e]=t.reduce((e,t)=>e+t,0);break;case"avg":r[e]=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0;break;case"min":r[e]=t.length>0?Math.min(...t):0;break;case"max":r[e]=t.length>0?Math.max(...t):0;break;case"count":r[e]=t.length}}),r}),l=a[0],d=null==r?void 0:r[l];return d&&"none"!==d?o.sort((e,t)=>{var a,n;let s=Number(null!=(a=e[l])?a:0)-Number(null!=(n=t[l])?n:0);return"asc"===d?s:-s}):s&&"none"!==s&&o.sort((e,t)=>{let a=String(e.name).localeCompare(String(t.name));return"asc"===s?a:-a}),o})(t,a,s,r,i,o).slice(0,20);return(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(e2.Q,{data:d,children:[(0,n.jsx)("defs",{children:s.map((e,t)=>(0,n.jsxs)("linearGradient",{id:"grad".concat(t),x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,n.jsx)("stop",{offset:"5%",stopColor:l[t%l.length],stopOpacity:.8}),(0,n.jsx)("stop",{offset:"95%",stopColor:l[t%l.length],stopOpacity:0})]},"grad-".concat(t)))}),(0,n.jsx)(eO.d,{strokeDasharray:"3 3",stroke:"var(--border)"}),(0,n.jsx)(eU.W,{dataKey:"name",tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eV.h,{tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eK.m,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"}}),(0,n.jsx)(eX.s,{}),s.map((e,t)=>(0,n.jsx)(e4.Gk,{type:"monotone",dataKey:e,stroke:l[t%l.length],fillOpacity:1,fill:"url(#grad".concat(t,")")},e))]})})}var e3=a(38982),e8=a(86485);function e6(e){let{data:t,dimension:a,metrics:s,dimensionSort:r="none",metricSort:i={}}=e,o=s[0],l=s[1]||s[0],d=t.map(e=>{var t;return{x:Number(e[o])||0,y:Number(e[l])||0,name:String(null!=(t=e[a])?t:"")}}),c=null==i?void 0:i[o];return c&&"none"!==c?d=d.sort((e,t)=>{let a=e.x-t.x;return"asc"===c?a:-a}):r&&"none"!==r&&(d=d.sort((e,t)=>{let a=String(e.name).localeCompare(String(t.name));return"asc"===r?a:-a})),(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(e3.t,{margin:{top:20,right:20,bottom:20,left:20},children:[(0,n.jsx)(eO.d,{strokeDasharray:"3 3",stroke:"var(--border)"}),(0,n.jsx)(eU.W,{type:"number",dataKey:"x",name:o,tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eV.h,{type:"number",dataKey:"y",name:l,tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(eK.m,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"},cursor:{strokeDasharray:"3 3"}}),(0,n.jsx)(e8.X,{name:"Data",data:d,fill:"var(--chart-1)"})]})})}var e7=a(42224),e9=a(24325),te=a(7282),tt=a(31367),ta=a(50047);function tn(e){let{data:t,dimension:a,metrics:s,metricAggregations:r,dimensionSort:i="none",metricSort:o={}}=e,l=s[0],d=(function(e,t,a,n,s,r){let i=new Map;e.forEach(e=>{var n;let s=String(null!=(n=e[t])?n:"").substring(0,12);i.has(s)||i.set(s,{}),a.forEach(t=>{let a=Number(e[t])||0;i.get(s)[t]||(i.get(s)[t]=[]),i.get(s)[t].push(a)})});let o=Array.from(i.entries()).map(e=>{let[t,s]=e,r={name:t};return a.forEach(e=>{let t=s[e]||[];switch((null==n?void 0:n[e])||"sum"){case"sum":default:r[e]=t.reduce((e,t)=>e+t,0);break;case"avg":r[e]=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0;break;case"min":r[e]=t.length>0?Math.min(...t):0;break;case"max":r[e]=t.length>0?Math.max(...t):0;break;case"count":r[e]=t.length}}),r}),l=a[0],d=null==r?void 0:r[l];return d&&"none"!==d?o.sort((e,t)=>{var a,n;let s=Number(null!=(a=e[l])?a:0)-Number(null!=(n=t[l])?n:0);return"asc"===d?s:-s}):s&&"none"!==s&&o.sort((e,t)=>{let a=String(e.name).localeCompare(String(t.name));return"asc"===s?a:-a}),o})(t,a,s,r,i,o).slice(0,12);return(0,n.jsx)(eF.u,{width:"100%",height:300,children:(0,n.jsxs)(e7.V,{data:d,children:[(0,n.jsx)(e9.z,{stroke:"var(--border)"}),(0,n.jsx)(te.r,{dataKey:"name",tick:{fill:"var(--muted-foreground)",fontSize:11}}),(0,n.jsx)(tt.E,{tick:{fill:"var(--muted-foreground)",fontSize:12}}),(0,n.jsx)(ta.V,{name:l,dataKey:l,stroke:"var(--chart-1)",fill:"var(--chart-1)",fillOpacity:.6}),(0,n.jsx)(eK.m,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"8px"}}),(0,n.jsx)(eX.s,{})]})})}
1function ts(e){let{config:t,data:a}=e,{type:s,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d}=t;if(!r||!i||0===i.length)return(0,n.jsx)("div",{className:"text-center text-muted-foreground",children:"Unable to render chart"});switch(s){case"bar":return(0,n.jsx)(eJ,{data:a,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d});case"line":return(0,n.jsx)(e$,{data:a,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d});case"stackedBar":return(0,n.jsx)(e1,{data:a,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d});case"area":return(0,n.jsx)(e5,{data:a,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d});case"scatter":return(0,n.jsx)(e6,{data:a,dimension:r,metrics:i,dimensionSort:l,metricSort:d});case"radar":return(0,n.jsx)(tn,{data:a,dimension:r,metrics:i,metricAggregations:o,dimensionSort:l,metricSort:d});default:return(0,n.jsx)("div",{className:"text-center text-muted-foreground",children:"Unknown chart type"})}}var tr=a(43129);function ti(e){let{id:t,title:a,content:s,isLoading:r=!1,onDelete:i,onDragStart:o,onDragOver:l,onDrop:d,animationDelay:c=0}=e;return(0,n.jsxs)("div",{draggable:!0,onDragStart:o,onDragOver:l,onDrop:d,"data-widget-id":t,style:{animation:"slideInUp 0.5s ease-out ".concat(c,"ms forwards"),opacity:0},className:"bg-card rounded-2xl p-4 md:p-6 shadow-sm border border-border hover:border-primary/20 transition-all duration-200 hover:shadow-md group cursor-grab active:cursor-grabbing",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between mb-4",children:[(0,n.jsxs)("div",{className:"flex items-start gap-2 flex-1 min-w-0",children:[(0,n.jsx)(e_.A,{className:"w-4 h-4 text-muted-foreground mt-1 opacity-0 group-hover:opacity-100 transition-opacity flex-shrink-0"}),(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("svg",{className:"w-4 h-4 text-primary flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"})}),(0,n.jsx)("h3",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide truncate",children:a})]}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground/70 mt-1",children:"AI-Generated Insight"})]})]}),(0,n.jsx)("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity flex-shrink-0",children:(0,n.jsx)("button",{onClick:i,className:"p-2 hover:bg-destructive/10 rounded-lg transition-colors group/delete",title:"Delete widget",children:(0,n.jsx)(eB.A,{className:"w-4 h-4 text-destructive group-hover/delete:scale-110 transition-transform"})})})]}),r?(0,n.jsxs)("div",{className:"rounded-lg bg-gradient-to-br from-primary/5 via-primary/10 to-primary/5 p-4 md:p-6 min-h-[320px] relative overflow-hidden animate-pulse",children:[(0,n.jsx)("div",{className:"absolute inset-0 bg-gradient-to-r from-transparent via-primary/20 to-transparent animate-shimmer"}),(0,n.jsxs)("div",{className:"space-y-3 relative z-10",children:[(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-full"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-11/12"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-full"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-10/12"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-full"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-9/12"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-full"}),(0,n.jsx)("div",{className:"h-4 bg-muted/40 rounded w-11/12"})]}),(0,n.jsxs)("div",{className:"absolute bottom-4 right-4 flex items-center gap-2 bg-card/80 backdrop-blur-sm px-3 py-2 rounded-lg",children:[(0,n.jsxs)("div",{className:"flex gap-1",children:[(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0s"}}),(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0.1s"}}),(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0.2s"}})]}),(0,n.jsx)("span",{className:"text-xs font-medium text-primary",children:"AI Generating..."})]}),(0,n.jsx)("style",{children:"\n @keyframes shimmer {\n 0% {\n transform: translateX(-100%);\n }\n 100% {\n transform: translateX(100%);\n }\n }\n .animate-shimmer {\n animation: shimmer 2s infinite;\n }\n "})]}):(0,n.jsxs)("div",{className:"relative rounded-lg bg-gradient-to-br from-primary/5 to-primary/10 p-4 md:p-6 min-h-[200px]",children:[(0,n.jsx)("div",{className:"prose prose-sm max-w-none overflow-hidden",style:{maxHeight:"320px"},children:(0,n.jsx)("p",{className:"text-foreground leading-relaxed whitespace-pre-wrap",children:s.split(/(\*\*.*?\*\*)/g).map((e,t)=>e.startsWith("**")&&e.endsWith("**")?(0,n.jsx)("strong",{className:"text-primary font-semibold",children:e.slice(2,-2)},t):(0,n.jsx)("span",{children:e},t))})}),(0,n.jsx)("div",{className:"absolute inset-x-0 bottom-0 h-[80px] bg-gradient-to-b from-transparent via-card/80 to-card flex items-end justify-center pb-6 rounded-b-lg",children:(0,n.jsxs)(tr.A,{className:"gap-2 bg-primary hover:bg-primary/90 text-primary-foreground shadow-lg hover:shadow-xl hover:scale-105 transition-all",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 11V7a4 4 0 118 0m-4 8v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2z"})}),"Unlock Insights"]})})]})]})}var to=a(54557),tl=a(10332),td=a(93384);let tc=[{value:"sum",label:"Sum"},{value:"avg",label:"Average"},{value:"min",label:"Minimum"},{value:"max",label:"Maximum"},{value:"count",label:"Count"}];function tm(e){let{chart:t,allColumns:a,columnTypes:s,onUpdate:r,onClose:o}=e,[l,d]=(0,i.useState)(t.dimension||""),[c,m]=(0,i.useState)(t.metrics||[]),[u,h]=(0,i.useState)(t.metricAggregations||{}),[p,x]=(0,i.useState)(t.dimensionSort||"none"),[f,b]=(0,i.useState)(t.metricSort||{}),v=a.filter(e=>"categorical"===s[e]||"date"===s[e]),y=a.filter(e=>"numeric"===s[e]),w=e=>"asc"===e?(0,n.jsx)(to.A,{className:"w-4 h-4"}):"desc"===e?(0,n.jsx)(tl.A,{className:"w-4 h-4"}):(0,n.jsx)(td.A,{className:"w-4 h-4"});return(0,n.jsx)("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:(0,n.jsxs)("div",{className:"bg-card rounded-2xl p-6 max-w-md w-full mx-4 shadow-lg border border-border",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,n.jsx)("h3",{className:"text-lg font-semibold text-foreground",children:"Edit Chart Configuration"}),(0,n.jsx)("button",{onClick:o,className:"p-1 hover:bg-muted rounded-lg transition-colors",children:(0,n.jsx)(g.A,{className:"w-5 h-5 text-muted-foreground"})})]}),(0,n.jsx)("div",{className:"mb-4",children:(0,n.jsxs)(tr.A,{className:"w-full gap-2 bg-primary hover:bg-primary/90 text-primary-foreground",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M18 9v3m0 0v3m0-3h3m-3 0h-3m-2-5a4 4 0 11-8 0 4 4 0 018 0zM3 20a6 6 0 0112 0v1H3v-1z"})}),"Sign Up for Full Features"]})}),(0,n.jsxs)("div",{className:"space-y-5",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("label",{className:"text-sm font-semibold text-foreground mb-2 block",children:"Category (Dimension)"}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsxs)("select",{value:l,onCh
1ange:e=>d(e.target.value),className:"flex-1 px-3 py-2 bg-muted border border-border rounded-lg text-foreground text-sm focus:outline-none focus:ring-2 focus:ring-primary/50",children:[(0,n.jsx)("option",{value:"",children:"Select dimension"}),v.map(e=>(0,n.jsx)("option",{value:e,children:e},e))]}),(0,n.jsx)("button",{onClick:()=>{x(e=>"none"===e?"asc":"asc"===e?"desc":"none")},className:"px-3 py-2 bg-muted border border-border rounded-lg hover:bg-muted/80 transition-colors",title:"Sort: ".concat("none"===p?"None":"asc"===p?"Ascending":"Descending"),children:w(p)})]})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("label",{className:"text-sm font-semibold text-foreground mb-3 block",children:"Metrics (Series)"}),(0,n.jsx)("div",{className:"space-y-3 max-h-60 overflow-y-auto",children:y.map(e=>(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsxs)("label",{className:"flex items-center gap-3 cursor-pointer group",children:[(0,n.jsx)("input",{type:"checkbox",checked:c.includes(e),onChange:()=>{m(t=>{if(!t.includes(e))return h(t=>({...t,[e]:"sum"})),b(t=>({...t,[e]:"none"})),[...t,e];{let a={...u};delete a[e],h(a);let n={...f};return delete n[e],b(n),t.filter(t=>t!==e)}})},className:"w-4 h-4 rounded border-border bg-muted checked:bg-primary checked:border-primary cursor-pointer"}),(0,n.jsx)("span",{className:"text-sm text-foreground group-hover:text-primary transition-colors flex-1",children:e}),c.includes(e)&&(0,n.jsx)("button",{onClick:t=>{t.preventDefault(),b(t=>{let a=t[e]||"none";return"none"===a?{...t,[e]:"asc"}:"asc"===a?{...t,[e]:"desc"}:{...t,[e]:"none"}})},className:"px-2 py-1 bg-muted border border-border rounded hover:bg-muted/80 transition-colors",title:"Sort: ".concat("none"!==f[e]&&f[e]?"asc"===f[e]?"Ascending":"Descending":"None"),children:w(f[e]||"none")})]}),c.includes(e)&&(0,n.jsx)("div",{className:"ml-7 pl-3 border-l-2 border-border",children:(0,n.jsx)("select",{value:u[e]||"sum",onChange:t=>{var a;return a=t.target.value,void h(t=>({...t,[e]:a}))},className:"w-full px-2 py-1.5 bg-muted border border-border rounded-lg text-foreground text-xs focus:outline-none focus:ring-2 focus:ring-primary/50",children:tc.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))})})]},e))})]})]}),(0,n.jsxs)("div",{className:"flex gap-3 mt-6",children:[(0,n.jsx)(eb.$,{onClick:o,variant:"outline",className:"flex-1 bg-transparent",children:"Cancel"}),(0,n.jsx)(eb.$,{onClick:()=>{r({...t,dimension:l,metrics:c,metricAggregations:u,dimensionSort:p,metricSort:f,aggregation:c.length>0?u[c[0]]:"sum"}),o()},className:"flex-1 bg-primary hover:bg-primary/90 text-primary-foreground",children:"Apply Changes"})]})]})})}function tu(e){let{charts:t,data:a,columns:s,columnTypes:r,onRegenerate:o,onChartsChange:l}=e,[d,c]=(0,i.useState)([]),[m,u]=(0,i.useState)(null),[h,p]=(0,i.useState)(null),g=e=>e.map(e=>{let{animationDelay:t,...a}=e;return a});(0,i.useEffect)(()=>{c(t.map((e,t)=>({...e,animationDelay:150*t})))},[t]);let x=e=>{let t=d.filter(t=>t.id!==e);c(t),l(g(t))},f=(e,t)=>{u(t),e.dataTransfer.effectAllowed="move"},b=e=>{e.preventDefault(),e.dataTransfer.dropEffect="move"},v=(e,t)=>{if(e.preventDefault(),!m||m===t)return;let a=d.findIndex(e=>e.id===m),n=d.findIndex(e=>e.id===t);if(-1===a||-1===n)return;let s=[...d];[s[a],s[n]]=[s[n],s[a]],c(s),l(g(s)),u(null)},y=async e=>{let t=d.findIndex(t=>t.id===e.id),n="text-".concat(Date.now()),s={id:n,type:"bar",widgetType:"text",title:"Insights: ".concat(e.title),description:"AI-Generated Analysis",textContent:"",isLoading:!0},i=[...d];i.splice(t+1,0,{...s,animationDelay:0}),c(i),l(g(i));try{var o;let t=await fetch("/homeapi/generate-widget-insight",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chartConfig:e,data:a,columnTypes:r})});if(!t.ok)throw Error("Failed to generate insight");let s=null==(o=t.body)?void 0:o.getReader(),i=new TextDecoder,d="";if(s)for(;;){let{done:e,value:t}=await s.read();if(e)break;d+=i.decode(t,{stream:!0})}c(e=>{let t=e.map(e=>e.id===n?{...e,textContent:d,isLoading:!1}:e);return l(g(t)),t})}catch(e){console.error("Error generating text widget:",e),c(e=>{let t=e.filter(e=>e.id!==n);return l(g(t)),t})}};return 0===d.length?(0,n.jsx)("div",{className:"flex-1 bg-background flex items-center justify-center",children:(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)("div",{className:"text-6xl mb-4",children:"\uD83D\uDCCA"}),(0,n.jsx)("h3",{className:"text-xl font-semibold text-foreground mb-2",children:"No visualizations yet"}),(0,n.jsx)("p",{className:"text-muted-foreground",children:"Upload a file or use sample data to auto-generate charts"})]})}):(0,n.jsxs)("div",{className:"flex-1 bg-background overflow-auto",children:[(0,n.jsxs)("div",{className:"p-4 md:p-8",children:[(0,n.jsxs)("div",{className:"flex flex-col md:flex-row md:items-center justify-between mb-6 md:mb-8 gap-4",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{className:"text-xl md:text-2xl font-semibold text-foreground",children:"Dashboard"}),(0,n.jsx)("p",{className:"text-xs md:text-sm text-muted-foreground mt-1",children:"Drag to reorder, edit fields, or delete charts"})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 md:gap-3 flex-wrap",children:[(0,n.jsxs)(tr.A,{className:"gap-2 bg-primary hover:bg-primary/90 text-primary-foreground text-xs md:text-sm",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M18 9v3m0 0v3m0-3h3m-3 0h-3m-2-5a4 4 0 11-8 0 4 4 0 018 0zM3 20a6 6 0 0112 0v1H3v-1z"})}),"Sign Up for Full Features"]}),(0,n.jsxs)(eb.$,{onClick:o,variant:"outline",size:"sm",className:"gap-2 bg-transparent text-xs md:text-sm",children:[(0,n.jsx)(eL.A,{className:"w-4 h-4"}),(0,n.jsx)("span",{className:"hidden sm:inline",children:"Regenerate Charts"}),(0,n.jsx)("span",{className:"sm:hidden",children:"Regenerate"})]})]})]}),(0,n.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4 md:gap-6",children:d.map(e=>"text"===e.widgetType?(0,n.jsx)(ti,{id:e.id,title:e.title,content:e.textContent||"",isLoading:e.isLoading,onDelete:()=>x(e.id),onDragStart:t=>f(t,e.id),onDragOver:b,onDrop:t=>v(t,e.id),animationDelay:e.animationDelay},e.id):(0,n.jsxs)("div",{draggable:!0,onDragStart:t=>f(t,e.id),onDragOver:b,onDrop:t=>v(t,e.id),style:{animation:"slideInUp 0.5s ease-out ".concat(e.animationDelay,"ms forwards"),opacity:0}
1,className:"bg-card rounded-2xl p-6 shadow-sm border border-border hover:border-primary/20 transition-all duration-200 hover:shadow-md group cursor-grab active:cursor-grabbing",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between mb-4",children:[(0,n.jsxs)("div",{className:"flex items-start gap-2 flex-1",children:[(0,n.jsx)(e_.A,{className:"w-4 h-4 text-muted-foreground mt-1 opacity-0 group-hover:opacity-100 transition-opacity"}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("h3",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wide",children:e.title}),(0,n.jsxs)("p",{className:"text-xs text-muted-foreground/70 mt-1",children:[e.description,e.aggregation&&(0,n.jsxs)("span",{className:"ml-2 text-primary",children:["(",e.aggregation,")"]})]})]})]}),(0,n.jsxs)("div",{className:"flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,n.jsx)("button",{onClick:()=>y(e),className:"p-2 hover:bg-yellow-500/10 rounded-lg transition-all hover:scale-110 active:scale-95",title:"Generate AI insights",children:(0,n.jsx)(eW.A,{className:"w-4 h-4 text-yellow-500 transition-all"})}),(0,n.jsx)("button",{onClick:()=>p(e),className:"p-2 hover:bg-primary/10 rounded-lg transition-colors",title:"Edit chart",children:(0,n.jsx)(eH.A,{className:"w-4 h-4 text-primary"})}),(0,n.jsx)("button",{onClick:()=>x(e.id),className:"p-2 hover:bg-destructive/10 rounded-lg transition-colors group/delete",title:"Delete chart",children:(0,n.jsx)(eB.A,{className:"w-4 h-4 text-destructive group-hover/delete:scale-110 transition-transform"})})]})]}),(0,n.jsx)("div",{className:"rounded-lg bg-muted/30 p-4",children:(0,n.jsx)(ts,{config:e,data:a})}),(0,n.jsx)("div",{className:"mt-4 pt-4 border-t border-border",children:(0,n.jsxs)(tr.A,{className:"w-full inline-flex items-center justify-center gap-2 px-3 py-2 bg-primary hover:bg-primary/90 text-primary-foreground text-xs font-medium rounded-lg transition-all hover:scale-[1.02] active:scale-[0.98] opacity-100 group-hover:opacity-100",children:[(0,n.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})}),"Deep Analysis"]})})]},e.id))})]}),h&&(0,n.jsx)(tm,{chart:h,allColumns:s,columnTypes:r,onUpdate:e=>{let t=d.map(t=>t.id===e.id?{...t,...e}:t);c(t),l(g(t)),p(null)},onClose:()=>p(null)}),(0,n.jsx)("style",{children:"\n @keyframes slideInUp {\n from {\n opacity: 0;\n transform: translateY(20px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n "})]})}function th(e){let{insights:t}=e,[a,s]=(0,i.useState)([]),[r,o]=(0,i.useState)(new Set);return((0,i.useEffect)(()=>{t.slice(0,4).forEach((e,t)=>{setTimeout(()=>{s(t=>[...t,e]),o(t=>new Set(t).add(e.id)),setTimeout(()=>{o(t=>{let a=new Set(t);return a.delete(e.id),a})},500)},150*t)})},[t]),0===a.length)?null:(0,n.jsxs)("div",{className:"mb-6",children:[(0,n.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:a.map((e,t)=>(0,n.jsx)("div",{style:{animation:r.has(e.id)?"slideInUp 0.5s ease-out forwards":"none"},className:"bg-gradient-to-br rounded-xl p-4 border border-border/50 hover:border-primary/20 transition-all duration-200 ".concat("trend"===e.type?"from-blue-50 to-blue-50/50 dark:from-blue-950/30 dark:to-blue-950/10":"alert"===e.type?"from-orange-50 to-orange-50/50 dark:from-orange-950/30 dark:to-orange-950/10":"from-emerald-50 to-emerald-50/50 dark:from-emerald-950/30 dark:to-emerald-950/10"),children:(0,n.jsxs)("div",{className:"flex items-start gap-3",children:[(0,n.jsx)("span",{className:"text-2xl",children:e.icon}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("p",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wide",children:e.title}),(0,n.jsx)("p",{className:"text-2xl font-bold text-foreground mt-1",children:e.value}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:e.description})]})]})},"".concat(e.id,"-").concat(t)))}),(0,n.jsx)("style",{children:"\n @keyframes slideInUp {\n from {\n opacity: 0;\n transform: translateY(20px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n "})]})}function tp(e){let{insights:t,columns:a}
1=e,[s,r]=(0,i.useState)(""),[o,l]=(0,i.useState)(!0);return(0,i.useEffect)(()=>{t&&0!==t.length&&(r(""),l(!0),(async()=>{try{var e,n,s,i;let o=await fetch("/homeapi/generate-summary",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({insights:t,columns:a})});if(!o.ok)throw Error("Failed to generate summary");let d=null==(e=o.body)?void 0:e.getReader(),c=new TextDecoder;if(!d)return;let m="";for(;;){let{done:e,value:t}=await d.read();if(e)break;for(let e of c.decode(t).split("\n"))if(e.startsWith("data: ")){let t=e.slice(6);if("[DONE]"===t)continue;try{let e=(null==(i=JSON.parse(t).choices)||null==(s=i[0])||null==(n=s.delta)?void 0:n.content)||"";e&&(m+=e,r(m))}catch(e){}}}l(!1)}catch(e){console.error("Error streaming summary:",e),r("Unable to generate AI summary at this time."),l(!1)}})())},[t,a]),(0,n.jsx)("div",{className:"mb-8",children:(0,n.jsx)("div",{className:"bg-gradient-to-r from-primary/5 to-primary/10 rounded-xl p-6 border border-primary/20 backdrop-blur-sm",children:(0,n.jsxs)("div",{className:"flex items-start gap-3",children:[(0,n.jsx)("div",{className:"text-2xl",children:"â¨"}),(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("h3",{className:"text-sm font-semibold text-primary uppercase tracking-wide mb-3",children:"AI Insights Summary"}),(0,n.jsxs)("p",{className:"text-sm text-foreground leading-relaxed min-h-[60px]",children:[s.split(/(\*\*.*?\*\*)/).map((e,t)=>e.startsWith("**")&&e.endsWith("**")?(0,n.jsx)("strong",{className:"font-bold text-primary",children:e.slice(2,-2)},t):(0,n.jsx)("span",{children:e},t)),o&&(0,n.jsx)("span",{className:"animate-pulse",children:"|"})]}),(0,n.jsx)("div",{className:"mt-4 pt-4 border-t border-primary/10",children:(0,n.jsxs)(tr.A,{className:"inline-flex items-center gap-2 px-4 py-2 bg-primary hover:bg-primary/90 text-primary-foreground text-sm font-medium rounded-lg transition-all hover:scale-105 active:scale-95",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"})}),"Get Deep Analysis"]})})]})]})})})}function tg(){return(0,n.jsxs)("div",{className:"bg-card rounded-2xl p-6 shadow-sm border border-border animate-pulse",children:[(0,n.jsx)("div",{className:"flex items-start justify-between mb-4",children:(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsx)("div",{className:"h-4 bg-muted rounded w-1/3 mb-2"}),(0,n.jsx)("div",{className:"h-3 bg-muted/70 rounded w-1/2"})]})}),(0,n.jsxs)("div",{className:"rounded-lg bg-gradient-to-br from-primary/5 via-primary/10 to-primary/5 p-4 h-[300px] relative overflow-hidden",children:[(0,n.jsx)("div",{className:"absolute inset-0 bg-gradient-to-r from-transparent via-primary/20 to-transparent animate-shimmer"}),(0,n.jsx)("div",{className:"flex items-end justify-around h-full gap-2 px-4",children:[40,70,55,85,60].map((e,t)=>(0,n.jsx)("div",{className:"flex-1 bg-primary/20 rounded-t-lg animate-pulse",style:{height:"".concat(e,"%"),animationDelay:"".concat(.1*t,"s")}},t))}),(0,n.jsxs)("div",{className:"absolute top-4 right-4 flex items-center gap-2",children:[(0,n.jsxs)("div",{className:"flex gap-1",children:[(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0s"}}),(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0.1s"}}),(0,n.jsx)("span",{className:"w-2 h-2 bg-primary rounded-full animate-bounce",style:{animationDelay:"0.2s"}})]}),(0,n.jsx)("span",{className:"text-xs font-medium text-primary",children:"AI Generating..."})]})]}),(0,n.jsx)("style",{children:"\n @keyframes shimmer {\n 0% {\n transform: translateX(-100%);\n }\n 100% {\n transform: translateX(100%);\n }\n }\n .animate-shimmer {\n animation: shimmer 2s infinite;\n }\n "})]})}var tx=a(36371);let tf=["Sarah Chen","Michael Rodriguez","Emma Watson","James Park","Olivia Martinez","William Zhang","Sophia Johnson","Daniel Kim","Isabella Lee","Ethan Brown","Ava Garcia","Alexander Singh","Mia Taylor","Benjamin Davis","Charlotte Wilson","Lucas Anderson","Amelia Thomas","Henry Moore","Emily White","Jackson Harris","Abigail Martin","Sebastian Thompson","Harper Garcia","Matthew Martinez","Evelyn Robinson","David Clark","Elizabeth Rodriguez","Joseph Lewis","Sofia Walker","Samuel Hall","Victoria Allen","Christopher Young","Grace King","Andrew Wright","Chloe Lopez","Joshua Hill","Zoey Scott","Ryan Green","Lily Adams","Nathan Baker","Hannah Nelson","Jack Carter","Ella Mitchell","Luke Perez","Scarlett Roberts","Owen Turner","Aria Phillips","Dylan Campbell","Layla Parker","Isaac Evans","Nora Edwards","Gabriel Collins","Penelope Stewart","Carter Sanchez","Mila Morris","Jayden Rogers","Riley Reed","Julian Cook","Ellie Morgan","Levi Bell","Hazel Murphy","Wyatt Bailey","Aurora Rivera","John Cooper","Savannah Richardson","Leo Cox","Audrey Howard","Lincoln Ward","Brooklyn Torres","Jaxon Peterson","Bella Gray","Grayson Ramirez","Claire James","Maverick Watson","Skylar Brooks","Ezra Kelly","Lucy Sanders","Asher Price","Paisley Bennett","Carson Wood","Anna Barnes","Axel Ross","Aaliyah Henderson","Easton Coleman","Kennedy Jenkins","Cooper Perry","Valentina Powell","Hudson Long","Natalie Patterson","Kai Hughes","Madelyn Flores","Adrian Washington","Willow Butler","Miles Simmons","Naomi Foster","Colton Gonzalez","Elena Bryant","Elias Alexander","Maya Russell"];function tb(){let[e,t]=(0,i.useState)(!1),[a,s]=(0,i.useState)("");return((0,i.useEffect)(()=>{let e=()=>{s(tf[Math.floor(Math.random()*tf.length)]),t(!0),setTimeout(()=>{t(!1)},4e3)},a=setTimeout(e,3e3+5e3*Math.random()),n=setInterval(()=>{setTimeout(e,1e4+1e4*Math.random())},2e4);return()=>{clearTimeout(a),clearInterval(n)}},[]),e)?(0,n.jsx)("div",{className:"fixed bottom-6 right-6 z-50 animate-in slide-in-from-bottom-4 fade-in duration-500",children:(0,n.jsxs)("div",{className:"bg-card border border-border rounded-lg shadow-lg p-4 flex items-center gap-3 max-w-sm",children:[(0,n.jsx)("div",{className:"bg-primary/10 rounded-full p-2",children:(0,n.jsx)(tx.A,{className:"w-5 h-5 text-primary"})}),(0,n.jsx)("div",{className:"flex-1",children:(0,n.jsxs)("p",{className:"text-sm font-medium",children:[(0,n.jsx)("span",{className:"font-semibold",children:a})," just created a dashboard on"," ",(0,n.jsx)("span",{className:"text-primary",children:"ada.im"})]})})]})}):null}var tv=a(14161),ty=a(98342),tw=a(74056);let tj=[{label:"Analyzing data structure",duration:2e3},{label:"Selecting chart types",duration:2500},{label:"Generating insights",duration:3e3}];function tN(e){let{isGenerating:t}=e,[a,s]=(0,i.useState)(0),[r,o]=(0,i.useState)(0),[l,d]=(0,i.useState)(8);return((0,i.useEffect)(()=>
1{if(!t){s(0),o(0),d(8);return}let e=0,a=0,n=tj.reduce((e,t)=>e+t.duration,0),r=setInterval(()=>{o(Math.min(a+=1,95));let e=a/100*n;d(Math.ceil(Math.max(0,(n-e)/1e3)))},n/100),i=()=>{if(e<tj.length){var t;s(e),setTimeout(i,(null==(t=tj[++e-1])?void 0:t.duration)||0)}};return i(),()=>{clearInterval(r)}},[t]),t)?(0,n.jsxs)("div",{className:"bg-card border border-border rounded-xl p-6 mb-6",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,n.jsx)("h3",{className:"text-lg font-semibold",children:"Generating Your Dashboard"}),(0,n.jsxs)("span",{className:"text-sm text-muted-foreground",children:["~",l,"s remaining"]})]}),(0,n.jsx)("div",{className:"space-y-4",children:tj.map((e,t)=>(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[t<a?(0,n.jsx)(tv.A,{className:"w-5 h-5 text-primary flex-shrink-0"}):t===a?(0,n.jsx)(ty.A,{className:"w-5 h-5 text-primary animate-spin flex-shrink-0"}):(0,n.jsx)(tw.A,{className:"w-5 h-5 text-muted-foreground/50 flex-shrink-0"}),(0,n.jsx)("span",{className:"text-sm ".concat(t<=a?"text-foreground font-medium":"text-muted-foreground"),children:e.label})]},t))}),(0,n.jsxs)("div",{className:"mt-4",children:[(0,n.jsx)("div",{className:"h-2 bg-muted rounded-full overflow-hidden",children:(0,n.jsx)("div",{className:"h-full bg-primary transition-all duration-300 ease-out",style:{width:"".concat(r,"%")}})}),(0,n.jsxs)("p",{className:"text-xs text-muted-foreground text-center mt-2",children:[r,"% complete"]})]})]}):null}var tA=a(16578);function tk(){let[e,t]=(0,i.useState)("");return(0,n.jsxs)("div",{className:"mt-8 bg-card border border-border rounded-xl p-6",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,n.jsx)(tx.A,{className:"w-5 h-5 text-primary"}),(0,n.jsx)("h3",{className:"text-lg font-semibold",children:"Ask Ada.im anything about your data"})]}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:'Get instant insights and answers powered by AI. Try asking questions like "What\'s the trend?" or "Which category performs best?"'}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)("input",{type:"text",value:e,onChange:e=>t(e.target.value),onKeyDown:t=>"Enter"===t.key&&void(e.trim()&&window.open("https://ada.im","_blank")),placeholder:"Ask a question about your data...",className:"flex-1 px-4 py-3 bg-background border border-border rounded-lg focus:outline-none focus:ring-2 focus:ring-primary/50"}),(0,n.jsxs)(tr.A,{className:"gap-2 px-6",children:[(0,n.jsx)(tA.A,{className:"w-4 h-4"}),"Send"]})]})]})}async function tS(e){var t;return"csv"===(null==(t=e.name.split(".").pop())?void 0:t.toLowerCase())?tC(e):tE(e)}async function tC(e){let t=(await e.text()).split("\n").filter(e=>e.trim());if(t.length<2)throw Error("CSV file is empty");let a=t[0].split(",").map(e=>e.trim());return{data:t.slice(1).map(e=>{let t=e.split(",").map(e=>e.trim());return Object.fromEntries(a.map((e,a)=>[e,t[a]]))}),columns:a}}async function tE(e){var t;let n=await Promise.all([a.e(8430),a.e(3914)]).then(a.bind(a,12401)),s=await e.arrayBuffer(),r=n.read(new Uint8Array(s),{type:"array"}),i=r.SheetNames[0],o=r.Sheets[i],l=n.utils.sheet_to_json(o);if(0===l.length)throw Error("Excel file has no data");let d=Object.keys(null!=(t=l[0])?t:{});return{data:l,columns:d}}var tD=a(91377);function tz(){let[e,t]=(0,i.useState)("landing"),[a,s]=(0,i.useState)({data:[],columns:[],fileName:""}),[r,o]=(0,i.useState)([]),[l,d]=(0,i.useState)([]),[c,m]=(0,i.useState)({}),[u,h]=(0,i.useState)(!1),p=async(e,t,a)=>{h(!0);try{let n=await fetch("/homeapi/generate-charts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({columns:t,columnTypes:a,sampleData:e.slice(0,5)})});if(!n.ok)throw Error("Failed to generate charts");let s=(await n.json()).charts||[];for(let e=0;e<s.length;e++)await new Promise(e=>setTimeout(e,300)),o(t=>[...t,s[e]])}catch(e){console.error("Error generating charts with LLM:",e)}finally{h(!1)}},g=async(e,a,n)=>{s({data:e,columns:a,fileName:n}),o([]);let r=function(e,t){let a=t.map(t=>{let a=e.slice(0,100).map(e=>
1e[t]),n=new Set(a).size;return{name:t,type:function(e){let t=e.filter(e=>null!=e&&""!==e);if(0===t.length)return"categorical";let a=t.filter(e=>!isNaN(Number(e))&&""!==String(e).trim()).length,n=t.filter(e=>{let t=new Date(String(e));return t instanceof Date&&!isNaN(t.getTime())}).length;return a/t.length>.8?"numeric":n/t.length>.8?"date":"categorical"}(a),uniqueValues:n,sampleValues:a}}),n=a.filter(e=>"categorical"===e.type||"date"===e.type),s=a.filter(e=>"numeric"===e.type);return{dimensions:n.length>0?n:a.slice(0,1),metrics:s.length>0?s:a.slice(1,2),allColumns:a}}(e,a),i={};r.allColumns.forEach(e=>{i[e.name]=e.type}),m(i),d(function(e,t){let a=[],n=t.filter(t=>e.slice(0,10).map(e=>e[t]).some(e=>"number"==typeof e&&!isNaN(e)));if(0===n.length)return a;let s=n[0],r=(e.reduce((e,t)=>e+(Number(t[s])||0),0)/e.length).toFixed(2);a.push({id:"avg-1",title:"Average ".concat(s),value:r,description:"Across all records in dataset",icon:"\uD83D\uDCCA",type:"stat"});let i=n[1]||n[0],o=Math.max(...e.map(e=>Number(e[i])||0));a.push({id:"max-1",title:"Peak ".concat(i),value:o.toFixed(0),description:"Highest value detected",icon:"\uD83D\uDCC8",type:"trend"});let l=n[2]||n[0],d=e.reduce((e,t)=>e+(Number(t[l])||0),0).toFixed(0);a.push({id:"sum-1",title:"Total ".concat(l),value:d,description:"Sum of all values",icon:"\uD83D\uDCB0",type:"stat"});let c=function(e){let t=e.reduce((e,t)=>e+t,0)/e.length;return Math.sqrt(e.reduce((e,a)=>e+Math.pow(a-t,2),0)/e.length)}(e.map(e=>Number(e[n[0]])||0));return a.push({id:"var-1",title:"Data Variability",value:c<1e3?"Low":c<5e3?"Moderate":"High",description:"Consistency across metrics",icon:"\uD83C\uDFAF",type:"alert"}),a.slice(0,4)}(e,a)),t("dashboard"),await p(e,a,i)},x=async e=>{try{let t=await tS(e);g(t.data,t.columns,e.name)}catch(e){console.error("Failed to parse Excel file:",e)}};return"landing"===e?(0,n.jsx)(eI,{onUploadFile:x,onPasteData:()=>t("paste"),onTemplateSelected:e=>{let t=eT.find(t=>t.id===e);t&&g(t.data,t.columns,"".concat(t.name.toLowerCase(),"_sample.xlsx"))}}):"paste"===e?(0,n.jsx)(eR,{onGenerate:e=>{if(e.length<2)return;let t=e[0];g(e.slice(1).map(e=>{let a={};return t.forEach((t,n)=>{let s=e[n],r=Number.parseFloat(s);a[t]=isNaN(r)?s:r}),a}),t,"pasted_data.xlsx")},onBack:()=>t("landing")}):(0,n.jsxs)("main",{className:"min-h-screen bg-transparent",children:[(0,n.jsx)(tb,{}),(0,n.jsx)("div",{className:"min-h-screen bg-transparent",children:(0,n.jsxs)("div",{className:"container mx-auto px-4 md:px-8 py-4 md:py-8",children:[(0,n.jsxs)("div",{className:"flex flex-col md:flex-row md:items-center justify-between mb-4 md:mb-6 gap-4",children:[(0,n.jsxs)(eb.$,{variant:"ghost",onClick:()=>{t("landing"),o([]),d([])},size:"sm",children:[(0,n.jsx)(ev.A,{className:"w-4 h-4 mr-2"}),(0,n.jsx)("span",{className:"hidden sm:inline",children:"Back to Home"}),(0,n.jsx)("span",{className:"sm:hidden",children:"Back"})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 md:gap-4",children:[(0,n.jsxs)(tr.A,{className:"gap-2 text-xs md:text-sm hidden md:flex bg-transparent",children:[(0,n.jsx)(ey.A,{className:"w-4 h-4"}),"Export"]}),(0,n.jsxs)(tr.A,{className:"gap-2 text-xs md:text-sm hidden md:flex bg-transparent",children:[(0,n.jsx)(ew.A,{className:"w-4 h-4"}),"Schedule"]}),(0,n.jsxs)(tr.A,{className:"gap-2 bg-primary hover:bg-primary/90 text-primary-foreground text-xs md:text-sm",children:[(0,n.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M18 9v3m0 0v3m0-3h3m-3 0h-3m-2-5a4 4 0 11-8 0 4 4 0 018 0zM3 20a6 6 0 0112 0v1H3v-1z"})}),(0,n.jsx)("span",{className:"hidden sm:inline",children:"Sign Up for Full Features"}),(0,n.jsx)("span",{className:"sm:hidden",children:"Sign Up"})]}),(0,n.jsx)("img",{src:tD.A.src,alt:"ada.im",className:"h-6 md:h-8"})]})]}),(0,n.jsxs)("div",{className:"mb-6 md:mb-8",children:[(0,n.jsxs)("h1",{className:"text-2xl md:text-3xl font-bold mb-2",children:[(0,n.jsx)("span",{className:"text-primary",children:"AI-Generated"})," Dashboard"]}),(0,n.jsxs)("p",{className:"text-sm md:text-base text-muted-foreground",children:["Analyzing: ",(0,n.jsx)("span",{className:"font-semibold",children:a.fileName})]})]}),l.length>0&&(0,n.jsx)(tp,{insights:l,columns:a.columns}),(0,n.jsx)(th,{insights:l}),(0,n.jsx)(tN,{isGenerating:u}),u&&r.length<4&&(0,n.jsxs)("div",{className:"p-8",children:[(0,n.jsx)("div",{className:"flex items-center justify-between mb-8",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("h2",{className:"text-2xl font-semibold text-foreground",children:"Dashboard"}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"AI is generating visualizations..."})]})}),(0,n.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:Array.from({length:4-r.length}).map((e,t)=>(0,n.jsx)(tg,{},"skeleton-".concat(t)))})]}),(0,n.jsx)(tu,{charts:r,data:a.data,columns:a.columns,columnTypes:c,onRegenerate:()=>{o([]),p(a.data,a.columns,c)},onChartsChange:o}),(0,n.jsx)(tk,{})]})})]})}function tT(e){let{replays:t}=e;return(0,n.jsxs)("main",{className:"bg-white dark:bg-gray-900",style:{backgroundImage:"radial-gradient(23% 50vh at 5% 8%,rgb(212, 223, 249) 0%, transparent 100%),radial-gradient(20% 40vh at 0 10%,rgb(250, 208, 240) 0%, transparent 100%)"},children:[(0,n.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@type":"WebPage",name:"Ada.im | Your Own AI Data Analyst",headline:"Ada | Your Own AI Data Analyst",description:"Ada.im, your own AI Data Analyst, helping you create professional reports from any dataset. Automate data tasks, speed up analysis, and skip manual work in one click â no code or expertise needed. Effortless reporting for analysts and business pros.",url:"https://ada.im",inLanguage:"en-US",isPartOf:{"@type":"WebSite",name:"Ada.im",url:"https://ada.im"},mainEntity:{"@type":"SoftwareApplication",name:"Ada.im",applicationCategory:"BusinessApplication",operatingSystem:"Web Browser",offers:{"@type":"Offer",price:"0",priceCurrency:"USD"},description:"AI-powered data analyst that creates professional reports from any dataset. Automate data tasks, speed up analysis, and skip manual work in one click.",featureList:["AI Data Analysis","Automated Report Generation","Data Visualization","Business Intelligence","No-Code Data Analytics"]},author:{"@type":"Organization",name:"Ada.im",url:"https://ada.im"},publisher:{"@type":"Organization",name:"Ada.im",url:"https://ada.im",logo:{"@type":"ImageObject",url:"https://d2ov6ihaltx3hn.
1cloudfront.net/_next/static/media/logo.ba520258.png",width:512,height:512}},datePublished:"2025-10-28T08:00:00+08:00",dateModified:"2025-10-29T09:00:00+08:00",breadcrumb:{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Home",item:"https://ada.im"}]}})}}),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.default,{}),(0,n.jsx)(_,{}),(0,n.jsx)(tz,{}),(0,n.jsx)(J,{}),(0,n.jsx)(Z,{initialReports:t}),(0,n.jsx)(ep,{}),(0,n.jsx)(ef.A,{}),(0,n.jsx)(eg.A,{}),(0,n.jsx)(ex,{})]})]})}},85896:(e,t,a)=>{Promise.resolve().then(a.bind(a,1187))}},e=>{e.O(0,[9668,7869,7044,311,3362,611,3851,252,5894,1703,6465,4823,7260,7332,5605,7358],()=>e(e.s=85896)),_N_E=e.O()}]);
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.