chordia-ui 3.2.4 → 3.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/FileUploadingState.cjs.js +7 -0
  2. package/dist/FileUploadingState.cjs.js.map +1 -0
  3. package/dist/FileUploadingState.es.js +779 -0
  4. package/dist/FileUploadingState.es.js.map +1 -0
  5. package/dist/IntegrationCard.cjs.js +1 -1
  6. package/dist/IntegrationCard.cjs.js.map +1 -1
  7. package/dist/IntegrationCard.es.js +137 -160
  8. package/dist/IntegrationCard.es.js.map +1 -1
  9. package/dist/UploadInteraction.cjs.js +1 -1
  10. package/dist/UploadInteraction.cjs.js.map +1 -1
  11. package/dist/UploadInteraction.es.js +36 -36
  12. package/dist/UploadInteraction.es.js.map +1 -1
  13. package/dist/components/common.cjs.js +1 -1
  14. package/dist/components/common.es.js +21 -15
  15. package/dist/components/navigation.cjs.js +1 -1
  16. package/dist/components/navigation.cjs.js.map +1 -1
  17. package/dist/components/navigation.es.js +212 -203
  18. package/dist/components/navigation.es.js.map +1 -1
  19. package/dist/index.cjs.js +1 -1
  20. package/dist/index.cjs2.js +1 -1
  21. package/dist/index.cjs2.js.map +1 -1
  22. package/dist/index.es.js +67 -61
  23. package/dist/index.es2.js +2 -2
  24. package/dist/index.es2.js.map +1 -1
  25. package/package.json +1 -1
  26. package/src/components/common/FileUploadingState.jsx +256 -0
  27. package/src/components/common/SideDrawer.jsx +388 -0
  28. package/src/components/common/index.js +2 -0
  29. package/src/components/index.js +1 -1
  30. package/src/components/layout/IntegrationCard.jsx +157 -141
  31. package/src/components/login/LoginPage.jsx +2 -2
  32. package/src/components/navigation/Sidebar.jsx +59 -39
  33. package/src/components/onboarding/UploadInteraction.jsx +3 -3
  34. package/dist/AutoSearch.cjs.js +0 -2
  35. package/dist/AutoSearch.cjs.js.map +0 -1
  36. package/dist/AutoSearch.es.js +0 -190
  37. package/dist/AutoSearch.es.js.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("react/jsx-runtime"),f=require("react"),p=require("lucide-react"),i="var(--font-sans)",b={padding:"40px 48px",fontFamily:i,minHeight:"100vh",background:"var(--grey-white)",boxSizing:"border-box"},j={fontSize:"var(--text-4xl)",fontWeight:"var(--font-bold)",fontFamily:i,color:"var(--text-ink)",margin:0,letterSpacing:"var(--tracking-tight)",lineHeight:"var(--leading-tight)"},S={fontSize:14,fontStyle:"normal",fontWeight:400,lineHeight:"140%",color:"var(--color-text-secondary)",margin:"8px 0 0",fontFamily:i},w={display:"grid",gridTemplateColumns:"1fr 1fr",gap:12,marginTop:"36px"},v={display:"flex",height:160,padding:24,flexDirection:"column",justifyContent:"space-between",alignItems:"flex-start",borderRadius:12,border:"1px solid var(--grey-absent)",background:"var(--grey-white)",boxSizing:"border-box",transition:"var(--transition)",cursor:"default",gap:8},z={...v,boxShadow:"var(--shadow-sm)"},C={width:40,height:40,borderRadius:"var(--radius)",background:"var(--paper-secondary)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-base)"},k={color:"var(--grey-strong)",fontSize:20,fontStyle:"normal",fontWeight:600,lineHeight:"normal",fontFamily:i,margin:0},W={fontSize:13,fontStyle:"normal",fontWeight:400,lineHeight:"140%",color:"var(--text-base)",margin:0,fontFamily:i,flex:"1 0 0"},D={display:"flex",height:28,padding:10,justifyContent:"center",alignItems:"center",gap:10,borderRadius:10,background:"var(--grey-strong)",fontSize:14,fontStyle:"normal",fontWeight:600,lineHeight:1,fontFamily:i,color:"var(--grey-white)",border:"none",cursor:"pointer",transition:"var(--transition-fast)",outline:"none",boxSizing:"border-box"},H={flex:1,height:8,borderRadius:4,background:"var(--border)",overflow:"hidden"},I=n=>({width:`${n}%`,height:"100%",borderRadius:4,background:"var(--color-green)",transition:"width 0.4s ease-out"}),R={display:"inline-flex",alignItems:"center",gap:4,fontSize:"var(--text-xs)",fontWeight:"var(--font-semibold)",color:"var(--rail-compliance)",fontFamily:i,marginLeft:12};function u({icon:n,title:a,description:r,buttonLabel:s,onAction:c,recommended:g,children:h}){const[l,y]=f.useState(!1);return e.jsxs("div",{style:l?z:v,onMouseEnter:()=>y(!0),onMouseLeave:()=>y(!1),children:[e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx("div",{style:C,children:n}),e.jsx("h3",{style:k,children:a})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4,marginLeft:52,marginTop:4},children:[r&&e.jsx("p",{style:W,children:r}),h]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",marginLeft:52},children:[e.jsx("button",{style:D,onClick:c,onMouseEnter:t=>{t.currentTarget.style.opacity="0.85"},onMouseLeave:t=>{t.currentTarget.style.opacity="1"},children:s}),g&&e.jsxs("span",{style:R,children:[e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",children:e.jsx("path",{d:"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"})}),"Recommended"]})]})]})}const T=({userName:n="Will",stepsCompleted:a=4,totalSteps:r=6,onUpload:s,onContinue:c,onExplore:g,onConnect:h})=>{const l=a/r*100;return e.jsxs("div",{style:b,children:[e.jsxs("h1",{style:j,children:["Welcome ",n]}),e.jsx("p",{style:S,children:"Get started with your project or explore new features"}),e.jsxs("div",{style:w,children:[e.jsx(u,{icon:e.jsx(p.Upload,{size:24}),title:"Upload and Evaluate Audio",description:"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)",buttonLabel:"Upload",onAction:s}),e.jsx(u,{icon:e.jsx(p.CircleUser,{size:24}),title:"Getting started with Chordia",description:"Complete these steps to get the most out of Chordia.",buttonLabel:"Continue",onAction:c,children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,width:"100%"},children:[e.jsx("div",{style:H,children:e.jsx("div",{style:I(l)})}),e.jsxs("span",{style:{fontSize:12,color:"var(--text-muted)",fontFamily:i,whiteSpace:"nowrap"},children:[e.jsx("strong",{style:{color:"var(--text-base)",fontWeight:600},children:a})," of ",r," steps completed"]})]})}),e.jsx(u,{icon:e.jsx(p.Compass,{size:24}),title:"Explore Demo Projects",description:"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.",buttonLabel:"Explore",onAction:g,recommended:!0}),e.jsx(u,{icon:e.jsx(p.Link2,{size:24}),title:"Connect Data Source",description:"Connect and integrate third-party tools with your external data sources.",buttonLabel:"Connect",onAction:h})]})]})},d="var(--font-sans)",L={fontFamily:d},A={fontSize:20,fontWeight:600,fontStyle:"normal",fontFamily:d,color:"var(--grey-strong)",margin:0,lineHeight:"normal"},F={fontSize:13,fontWeight:400,fontStyle:"normal",color:"var(--color-text-secondary)",fontFamily:d,margin:"4px 0 0",lineHeight:"140%"},m={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",minHeight:320,borderRadius:16,border:"2px dashed var(--color-input-border)",background:"var(--grey-white)",boxSizing:"border-box",cursor:"pointer",transition:"var(--transition-fast)",marginTop:24,padding:"48px 24px"},M={...m,borderColor:"var(--color-green)",background:"var(--color-green-ring)"},E={width:80,height:80,borderRadius:9999,background:"var(--focus-2)",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,marginBottom:20},U={fontSize:18,fontWeight:600,fontFamily:d,color:"var(--grey-strong)",textAlign:"center",lineHeight:"28px",margin:0},B={display:"flex",height:32,padding:16,justifyContent:"center",alignItems:"center",gap:10,borderRadius:10,border:"1px solid var(--grey-absent)",background:"var(--grey-white)",fontSize:15,fontWeight:400,fontFamily:d,color:"var(--grey-strong)",cursor:"pointer",transition:"var(--transition-fast)",outline:"none",marginTop:16,boxSizing:"border-box"},O={fontSize:14,fontWeight:400,fontFamily:d,color:"var(--grey-muted)",textAlign:"center",marginTop:16,lineHeight:"140%"},P=({onFileSelect:n})=>{const[a,r]=f.useState(!1),s=f.useRef(null),c=t=>{t.preventDefault(),r(!0)},g=()=>{r(!1)},h=t=>{var x;t.preventDefault(),r(!1);const o=(x=t.dataTransfer)==null?void 0:x.files;o!=null&&o.length&&(n==null||n(o))},l=()=>{var t;(t=s.current)==null||t.click()},y=t=>{const o=t.target.files;o!=null&&o.length&&(n==null||n(o)),t.target.value=""};return e.jsxs("div",{style:L,children:[e.jsx("h2",{style:A,children:"Evaluate Interaction"}),e.jsx("p",{style:F,children:"Upload another interaction to compare results and identify patterns across multiple evaluations."}),e.jsx("input",{ref:s,type:"file",accept:".mp3,.wma,.wav",multiple:!0,style:{display:"none"},onChange:y}),e.jsxs("div",{style:a?M:m,onDragOver:c,onDragLeave:g,onDrop:h,onClick:l,children:[e.jsx("div",{style:E,children:e.jsx(p.CloudUpload,{size:32,color:"var(--grey-strong)"})}),e.jsx("p",{style:U,children:"Drop your file here, or"}),e.jsx("button",{type:"button",style:B,onClick:t=>{t.stopPropagation(),l()},onMouseEnter:t=>{t.currentTarget.style.background="var(--hover-warm-subtle)"},onMouseLeave:t=>{t.currentTarget.style.background="var(--grey-white)"},children:"Browse files"}),e.jsx("p",{style:O,children:"Supports: MP3, WMA or WAV"})]})]})};exports.UploadEvaluate=T;exports.UploadInteraction=P;
1
+ "use strict";const e=require("react/jsx-runtime"),f=require("react"),p=require("lucide-react"),i="var(--font-sans)",b={padding:"40px 48px",fontFamily:i,minHeight:"100vh",background:"var(--grey-white)",boxSizing:"border-box"},j={fontSize:"var(--text-4xl)",fontWeight:"var(--font-bold)",fontFamily:i,color:"var(--text-ink)",margin:0,letterSpacing:"var(--tracking-tight)",lineHeight:"var(--leading-tight)"},S={fontSize:14,fontStyle:"normal",fontWeight:400,lineHeight:"140%",color:"var(--color-text-secondary)",margin:"8px 0 0",fontFamily:i},w={display:"grid",gridTemplateColumns:"1fr 1fr",gap:12,marginTop:"36px"},v={display:"flex",height:160,padding:24,flexDirection:"column",justifyContent:"space-between",alignItems:"flex-start",borderRadius:12,border:"1px solid var(--grey-absent)",background:"var(--grey-white)",boxSizing:"border-box",transition:"var(--transition)",cursor:"default",gap:8},z={...v,boxShadow:"var(--shadow-sm)"},C={width:40,height:40,borderRadius:"var(--radius)",background:"var(--paper-secondary)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-base)"},k={color:"var(--grey-strong)",fontSize:20,fontStyle:"normal",fontWeight:600,lineHeight:"normal",fontFamily:i,margin:0},W={fontSize:13,fontStyle:"normal",fontWeight:400,lineHeight:"140%",color:"var(--text-base)",margin:0,fontFamily:i,flex:"1 0 0"},D={display:"flex",height:28,padding:10,justifyContent:"center",alignItems:"center",gap:10,borderRadius:10,background:"var(--grey-strong)",fontSize:14,fontStyle:"normal",fontWeight:600,lineHeight:1,fontFamily:i,color:"var(--grey-white)",border:"none",cursor:"pointer",transition:"var(--transition-fast)",outline:"none",boxSizing:"border-box"},H={flex:1,height:8,borderRadius:4,background:"var(--border)",overflow:"hidden"},I=n=>({width:`${n}%`,height:"100%",borderRadius:4,background:"var(--color-green)",transition:"width 0.4s ease-out"}),R={display:"inline-flex",alignItems:"center",gap:4,fontSize:"var(--text-xs)",fontWeight:"var(--font-semibold)",color:"var(--rail-compliance)",fontFamily:i,marginLeft:12};function y({icon:n,title:a,description:o,buttonLabel:s,onAction:c,recommended:g,children:h}){const[l,u]=f.useState(!1);return e.jsxs("div",{style:l?z:v,onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),children:[e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[e.jsx("div",{style:C,children:n}),e.jsx("h3",{style:k,children:a})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4,marginLeft:52,marginTop:4},children:[o&&e.jsx("p",{style:W,children:o}),h]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",marginLeft:52},children:[e.jsx("button",{style:D,onClick:c,onMouseEnter:t=>{t.currentTarget.style.opacity="0.85"},onMouseLeave:t=>{t.currentTarget.style.opacity="1"},children:s}),g&&e.jsxs("span",{style:R,children:[e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",children:e.jsx("path",{d:"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"})}),"Recommended"]})]})]})}const M=({userName:n="Will",stepsCompleted:a=4,totalSteps:o=6,onUpload:s,onContinue:c,onExplore:g,onConnect:h})=>{const l=a/o*100;return e.jsxs("div",{style:b,children:[e.jsxs("h1",{style:j,children:["Welcome ",n]}),e.jsx("p",{style:S,children:"Get started with your project or explore new features"}),e.jsxs("div",{style:w,children:[e.jsx(y,{icon:e.jsx(p.Upload,{size:24}),title:"Upload and Evaluate Audio",description:"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)",buttonLabel:"Upload",onAction:s}),e.jsx(y,{icon:e.jsx(p.CircleUser,{size:24}),title:"Getting started with Chordia",description:"Complete these steps to get the most out of Chordia.",buttonLabel:"Continue",onAction:c,children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,width:"100%"},children:[e.jsx("div",{style:H,children:e.jsx("div",{style:I(l)})}),e.jsxs("span",{style:{fontSize:12,color:"var(--text-muted)",fontFamily:i,whiteSpace:"nowrap"},children:[e.jsx("strong",{style:{color:"var(--text-base)",fontWeight:600},children:a})," of ",o," steps completed"]})]})}),e.jsx(y,{icon:e.jsx(p.Compass,{size:24}),title:"Explore Demo Projects",description:"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.",buttonLabel:"Explore",onAction:g,recommended:!0}),e.jsx(y,{icon:e.jsx(p.Link2,{size:24}),title:"Connect Data Source",description:"Connect and integrate third-party tools with your external data sources.",buttonLabel:"Connect",onAction:h})]})]})},d="var(--font-sans)",T={fontFamily:d},L={fontSize:20,fontWeight:600,fontStyle:"normal",fontFamily:d,color:"var(--grey-strong)",margin:0,lineHeight:"normal"},A={fontSize:13,fontWeight:400,fontStyle:"normal",color:"var(--color-text-secondary)",fontFamily:d,margin:"4px 0 0",lineHeight:"140%"},m={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",minHeight:320,borderRadius:16,border:"2px dashed var(--color-input-border)",background:"var(--grey-white)",boxSizing:"border-box",cursor:"pointer",transition:"var(--transition-fast)",marginTop:24,padding:"48px 24px"},E={...m,borderColor:"var(--color-green)",background:"var(--color-green-ring)"},F={width:80,height:80,borderRadius:9999,background:"var(--focus-2)",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,marginBottom:20},B={fontSize:18,fontWeight:600,fontFamily:d,color:"var(--grey-strong)",textAlign:"center",lineHeight:"28px",margin:0},U={display:"flex",height:32,padding:16,justifyContent:"center",alignItems:"center",gap:10,borderRadius:10,border:"1px solid var(--grey-absent)",background:"var(--grey-white)",fontSize:15,fontWeight:400,fontFamily:d,color:"var(--grey-strong)",cursor:"pointer",transition:"var(--transition-fast)",outline:"none",marginTop:16,boxSizing:"border-box"},P={fontSize:14,fontWeight:400,fontFamily:d,color:"var(--grey-muted)",textAlign:"center",marginTop:16,lineHeight:"140%"},O=({onFileSelect:n})=>{const[a,o]=f.useState(!1),s=f.useRef(null),c=t=>{t.preventDefault(),o(!0)},g=()=>{o(!1)},h=t=>{var x;t.preventDefault(),o(!1);const r=(x=t.dataTransfer)==null?void 0:x.files;r!=null&&r.length&&(n==null||n(r))},l=()=>{var t;(t=s.current)==null||t.click()},u=t=>{const r=t.target.files;r!=null&&r.length&&(n==null||n(r)),t.target.value=""};return e.jsxs("div",{style:T,children:[e.jsx("h2",{style:L,children:"Evaluate Interaction"}),e.jsx("p",{style:A,children:"Upload interactions to generate insights, explore results, and identify patterns."}),e.jsx("input",{ref:s,type:"file",accept:"audio/mpeg,audio/wav,audio/x-ms-wma,audio/mp4,video/mp4,video/webm",multiple:!0,style:{display:"none"},onChange:u}),e.jsxs("div",{style:a?E:m,onDragOver:c,onDragLeave:g,onDrop:h,onClick:l,children:[e.jsx("div",{style:F,children:e.jsx(p.CloudUpload,{size:32,color:"var(--grey-strong)"})}),e.jsx("p",{style:B,children:"Drop your file here, or"}),e.jsx("button",{type:"button",style:U,onClick:t=>{t.stopPropagation(),l()},onMouseEnter:t=>{t.currentTarget.style.background="var(--hover-warm-subtle)"},onMouseLeave:t=>{t.currentTarget.style.background="var(--grey-white)"},children:"Browse files"}),e.jsx("p",{style:P,children:"Supports: MP3, WAV, WMA, MP4, and WEBM"})]})]})};exports.UploadEvaluate=M;exports.UploadInteraction=O;
2
2
  //# sourceMappingURL=UploadInteraction.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploadInteraction.cjs.js","sources":["../src/components/onboarding/UploadEvaluate.jsx","../src/components/onboarding/UploadInteraction.jsx"],"sourcesContent":["import { useState } from 'react';\nimport { Upload, CircleUser, Compass, Link2 } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n padding: '40px 48px',\n fontFamily: FF,\n minHeight: '100vh',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n};\n\nconst headingStyle = {\n fontSize: 'var(--text-4xl)',\n fontWeight: 'var(--font-bold)',\n fontFamily: FF,\n color: 'var(--text-ink)',\n margin: 0,\n letterSpacing: 'var(--tracking-tight)',\n lineHeight: 'var(--leading-tight)',\n};\n\nconst subtitleStyle = {\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--color-text-secondary)',\n margin: '8px 0 0',\n fontFamily: FF,\n};\n\nconst gridStyle = {\n display: 'grid',\n gridTemplateColumns: '1fr 1fr',\n gap: 12,\n marginTop: '36px',\n};\n\nconst cardStyle = {\n display: 'flex',\n height: 160,\n padding: 24,\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n borderRadius: 12,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n transition: 'var(--transition)',\n cursor: 'default',\n gap: 8\n};\n\nconst cardHoverStyle = {\n ...cardStyle,\n boxShadow: 'var(--shadow-sm)',\n};\n\nconst iconWrapperStyle = {\n width: 40,\n height: 40,\n borderRadius: 'var(--radius)',\n background: 'var(--paper-secondary)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'var(--text-base)',\n};\n\nconst cardTitleStyle = {\n color: 'var(--grey-strong)',\n fontSize: 20,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 'normal',\n fontFamily: FF,\n margin: 0,\n};\n\nconst cardDescStyle = {\n fontSize: 13,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--text-base)',\n margin: 0,\n fontFamily: FF,\n flex: '1 0 0',\n};\n\nconst btnStyle = {\n display: 'flex',\n height: 28,\n padding: 10,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n background: 'var(--grey-strong)',\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 1,\n fontFamily: FF,\n color: 'var(--grey-white)',\n border: 'none',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n boxSizing: 'border-box',\n};\n\nconst progressBarBg = {\n flex: 1,\n height: 8,\n borderRadius: 4,\n background: 'var(--border)',\n overflow: 'hidden',\n};\n\nconst progressBarFill = (pct) => ({\n width: `${pct}%`,\n height: '100%',\n borderRadius: 4,\n background: 'var(--color-green)',\n transition: 'width 0.4s ease-out',\n});\n\nconst recommendedBadge = {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 4,\n fontSize: 'var(--text-xs)',\n fontWeight: 'var(--font-semibold)',\n color: 'var(--rail-compliance)',\n fontFamily: FF,\n marginLeft: 12,\n};\n\n// ─── Card Component ───\n\nfunction OnboardingCard({ icon, title, description, buttonLabel, onAction, recommended, children }) {\n const [hovered, setHovered] = useState(false);\n\n return (\n <div\n style={hovered ? cardHoverStyle : cardStyle}\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n >\n <div>\n <div style={{ display: 'flex', alignItems: 'center', gap: 12 }}>\n <div style={iconWrapperStyle}>{icon}</div>\n <h3 style={cardTitleStyle}>{title}</h3>\n </div>\n <div style={{ display: 'flex', flexDirection: 'column', gap: 4, marginLeft: 52, marginTop: 4 }}>\n {description && <p style={cardDescStyle}>{description}</p>}\n {children}\n </div>\n </div>\n <div style={{ display: 'flex', alignItems: 'center', marginLeft: 52 }}>\n <button\n style={btnStyle}\n onClick={onAction}\n onMouseEnter={(e) => { e.currentTarget.style.opacity = '0.85'; }}\n onMouseLeave={(e) => { e.currentTarget.style.opacity = '1'; }}\n >\n {buttonLabel}\n </button>\n {recommended && (\n <span style={recommendedBadge}>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" /></svg>\n Recommended\n </span>\n )}\n </div>\n </div>\n );\n}\n\n// ─── Main Component ───\n\nconst UploadEvaluate = ({\n userName = 'Will',\n stepsCompleted = 4,\n totalSteps = 6,\n onUpload,\n onContinue,\n onExplore,\n onConnect,\n}) => {\n const progressPct = (stepsCompleted / totalSteps) * 100;\n\n return (\n <div style={containerStyle}>\n <h1 style={headingStyle}>Welcome {userName}</h1>\n <p style={subtitleStyle}>Get started with your project or explore new features</p>\n\n <div style={gridStyle}>\n {/* Upload and Evaluate Audio */}\n <OnboardingCard\n icon={<Upload size={24} />}\n title=\"Upload and Evaluate Audio\"\n description=\"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)\"\n buttonLabel=\"Upload\"\n onAction={onUpload}\n />\n\n {/* Getting started with Chordia */}\n <OnboardingCard\n icon={<CircleUser size={24} />}\n title=\"Getting started with Chordia\"\n description=\"Complete these steps to get the most out of Chordia.\"\n buttonLabel=\"Continue\"\n onAction={onContinue}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, width: '100%' }}>\n <div style={progressBarBg}>\n <div style={progressBarFill(progressPct)} />\n </div>\n <span style={{ fontSize: 12, color: 'var(--text-muted)', fontFamily: FF, whiteSpace: 'nowrap' }}>\n <strong style={{ color: 'var(--text-base)', fontWeight: 600 }}>{stepsCompleted}</strong> of {totalSteps} steps completed\n </span>\n </div>\n </OnboardingCard>\n\n {/* Explore Demo Projects */}\n <OnboardingCard\n icon={<Compass size={24} />}\n title=\"Explore Demo Projects\"\n description=\"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.\"\n buttonLabel=\"Explore\"\n onAction={onExplore}\n recommended\n />\n\n {/* Connect Data Source */}\n <OnboardingCard\n icon={<Link2 size={24} />}\n title=\"Connect Data Source\"\n description=\"Connect and integrate third-party tools with your external data sources.\"\n buttonLabel=\"Connect\"\n onAction={onConnect}\n />\n </div>\n </div>\n );\n};\n\nexport default UploadEvaluate;\n","import { useState, useRef } from 'react';\nimport { CloudUpload } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n fontFamily: FF,\n};\n\nconst sectionTitleStyle = {\n fontSize: 20,\n fontWeight: 600,\n fontStyle: 'normal',\n fontFamily: FF,\n color: 'var(--grey-strong)',\n margin: 0,\n lineHeight: 'normal',\n};\n\nconst sectionSubtitleStyle = {\n fontSize: 13,\n fontWeight: 400,\n fontStyle: 'normal',\n color: 'var(--color-text-secondary)',\n fontFamily: FF,\n margin: '4px 0 0',\n lineHeight: '140%',\n};\n\nconst dropzoneStyle = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minHeight: 320,\n borderRadius: 16,\n border: '2px dashed var(--color-input-border)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n marginTop: 24,\n padding: '48px 24px',\n};\n\nconst dropzoneHoverStyle = {\n ...dropzoneStyle,\n borderColor: 'var(--color-green)',\n background: 'var(--color-green-ring)',\n};\n\nconst dropzoneIconWrap = {\n width: 80,\n height: 80,\n borderRadius: 9999,\n background: 'var(--focus-2)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n marginBottom: 20,\n};\n\nconst dropzoneTextStyle = {\n fontSize: 18,\n fontWeight: 600,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n textAlign: 'center',\n lineHeight: '28px',\n margin: 0,\n};\n\nconst browseButtonStyle = {\n display: 'flex',\n height: 32,\n padding: 16,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n fontSize: 15,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n marginTop: 16,\n boxSizing: 'border-box',\n};\n\nconst dropzoneHintStyle = {\n fontSize: 14,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-muted)',\n textAlign: 'center',\n marginTop: 16,\n lineHeight: '140%',\n};\n\n// ─── Component ───\n\nconst UploadInteraction = ({ onFileSelect }) => {\n const [dragOver, setDragOver] = useState(false);\n const fileInputRef = useRef(null);\n\n const handleDragOver = (e) => {\n e.preventDefault();\n setDragOver(true);\n };\n\n const handleDragLeave = () => {\n setDragOver(false);\n };\n\n const handleDrop = (e) => {\n e.preventDefault();\n setDragOver(false);\n const files = e.dataTransfer?.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n };\n\n const handleBrowseClick = () => {\n fileInputRef.current?.click();\n };\n\n const handleFileChange = (e) => {\n const files = e.target.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n e.target.value = '';\n };\n\n return (\n <div style={containerStyle}>\n <h2 style={sectionTitleStyle}>Evaluate Interaction</h2>\n <p style={sectionSubtitleStyle}>\n Upload another interaction to compare results and identify patterns across multiple evaluations.\n </p>\n\n <input\n ref={fileInputRef}\n type=\"file\"\n accept=\".mp3,.wma,.wav\"\n multiple\n style={{ display: 'none' }}\n onChange={handleFileChange}\n />\n\n <div\n style={dragOver ? dropzoneHoverStyle : dropzoneStyle}\n onDragOver={handleDragOver}\n onDragLeave={handleDragLeave}\n onDrop={handleDrop}\n onClick={handleBrowseClick}\n >\n <div style={dropzoneIconWrap}>\n <CloudUpload size={32} color=\"var(--grey-strong)\" />\n </div>\n <p style={dropzoneTextStyle}>Drop your file here, or</p>\n <button\n type=\"button\"\n style={browseButtonStyle}\n onClick={(e) => { e.stopPropagation(); handleBrowseClick(); }}\n onMouseEnter={(e) => { e.currentTarget.style.background = 'var(--hover-warm-subtle)'; }}\n onMouseLeave={(e) => { e.currentTarget.style.background = 'var(--grey-white)'; }}\n >\n Browse files\n </button>\n <p style={dropzoneHintStyle}>Supports: MP3, WMA or WAV</p>\n </div>\n </div>\n );\n};\n\nexport default UploadInteraction;\n"],"names":["FF","containerStyle","headingStyle","subtitleStyle","gridStyle","cardStyle","cardHoverStyle","iconWrapperStyle","cardTitleStyle","cardDescStyle","btnStyle","progressBarBg","progressBarFill","pct","recommendedBadge","OnboardingCard","icon","title","description","buttonLabel","onAction","recommended","children","hovered","setHovered","useState","jsxs","jsx","e","UploadEvaluate","userName","stepsCompleted","totalSteps","onUpload","onContinue","onExplore","onConnect","progressPct","Upload","CircleUser","Compass","Link2","sectionTitleStyle","sectionSubtitleStyle","dropzoneStyle","dropzoneHoverStyle","dropzoneIconWrap","dropzoneTextStyle","browseButtonStyle","dropzoneHintStyle","UploadInteraction","onFileSelect","dragOver","setDragOver","fileInputRef","useRef","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","handleFileChange","CloudUpload"],"mappings":"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"}
1
+ {"version":3,"file":"UploadInteraction.cjs.js","sources":["../src/components/onboarding/UploadEvaluate.jsx","../src/components/onboarding/UploadInteraction.jsx"],"sourcesContent":["import { useState } from 'react';\nimport { Upload, CircleUser, Compass, Link2 } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n padding: '40px 48px',\n fontFamily: FF,\n minHeight: '100vh',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n};\n\nconst headingStyle = {\n fontSize: 'var(--text-4xl)',\n fontWeight: 'var(--font-bold)',\n fontFamily: FF,\n color: 'var(--text-ink)',\n margin: 0,\n letterSpacing: 'var(--tracking-tight)',\n lineHeight: 'var(--leading-tight)',\n};\n\nconst subtitleStyle = {\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--color-text-secondary)',\n margin: '8px 0 0',\n fontFamily: FF,\n};\n\nconst gridStyle = {\n display: 'grid',\n gridTemplateColumns: '1fr 1fr',\n gap: 12,\n marginTop: '36px',\n};\n\nconst cardStyle = {\n display: 'flex',\n height: 160,\n padding: 24,\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n borderRadius: 12,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n transition: 'var(--transition)',\n cursor: 'default',\n gap: 8\n};\n\nconst cardHoverStyle = {\n ...cardStyle,\n boxShadow: 'var(--shadow-sm)',\n};\n\nconst iconWrapperStyle = {\n width: 40,\n height: 40,\n borderRadius: 'var(--radius)',\n background: 'var(--paper-secondary)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'var(--text-base)',\n};\n\nconst cardTitleStyle = {\n color: 'var(--grey-strong)',\n fontSize: 20,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 'normal',\n fontFamily: FF,\n margin: 0,\n};\n\nconst cardDescStyle = {\n fontSize: 13,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--text-base)',\n margin: 0,\n fontFamily: FF,\n flex: '1 0 0',\n};\n\nconst btnStyle = {\n display: 'flex',\n height: 28,\n padding: 10,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n background: 'var(--grey-strong)',\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 1,\n fontFamily: FF,\n color: 'var(--grey-white)',\n border: 'none',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n boxSizing: 'border-box',\n};\n\nconst progressBarBg = {\n flex: 1,\n height: 8,\n borderRadius: 4,\n background: 'var(--border)',\n overflow: 'hidden',\n};\n\nconst progressBarFill = (pct) => ({\n width: `${pct}%`,\n height: '100%',\n borderRadius: 4,\n background: 'var(--color-green)',\n transition: 'width 0.4s ease-out',\n});\n\nconst recommendedBadge = {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 4,\n fontSize: 'var(--text-xs)',\n fontWeight: 'var(--font-semibold)',\n color: 'var(--rail-compliance)',\n fontFamily: FF,\n marginLeft: 12,\n};\n\n// ─── Card Component ───\n\nfunction OnboardingCard({ icon, title, description, buttonLabel, onAction, recommended, children }) {\n const [hovered, setHovered] = useState(false);\n\n return (\n <div\n style={hovered ? cardHoverStyle : cardStyle}\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n >\n <div>\n <div style={{ display: 'flex', alignItems: 'center', gap: 12 }}>\n <div style={iconWrapperStyle}>{icon}</div>\n <h3 style={cardTitleStyle}>{title}</h3>\n </div>\n <div style={{ display: 'flex', flexDirection: 'column', gap: 4, marginLeft: 52, marginTop: 4 }}>\n {description && <p style={cardDescStyle}>{description}</p>}\n {children}\n </div>\n </div>\n <div style={{ display: 'flex', alignItems: 'center', marginLeft: 52 }}>\n <button\n style={btnStyle}\n onClick={onAction}\n onMouseEnter={(e) => { e.currentTarget.style.opacity = '0.85'; }}\n onMouseLeave={(e) => { e.currentTarget.style.opacity = '1'; }}\n >\n {buttonLabel}\n </button>\n {recommended && (\n <span style={recommendedBadge}>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" /></svg>\n Recommended\n </span>\n )}\n </div>\n </div>\n );\n}\n\n// ─── Main Component ───\n\nconst UploadEvaluate = ({\n userName = 'Will',\n stepsCompleted = 4,\n totalSteps = 6,\n onUpload,\n onContinue,\n onExplore,\n onConnect,\n}) => {\n const progressPct = (stepsCompleted / totalSteps) * 100;\n\n return (\n <div style={containerStyle}>\n <h1 style={headingStyle}>Welcome {userName}</h1>\n <p style={subtitleStyle}>Get started with your project or explore new features</p>\n\n <div style={gridStyle}>\n {/* Upload and Evaluate Audio */}\n <OnboardingCard\n icon={<Upload size={24} />}\n title=\"Upload and Evaluate Audio\"\n description=\"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)\"\n buttonLabel=\"Upload\"\n onAction={onUpload}\n />\n\n {/* Getting started with Chordia */}\n <OnboardingCard\n icon={<CircleUser size={24} />}\n title=\"Getting started with Chordia\"\n description=\"Complete these steps to get the most out of Chordia.\"\n buttonLabel=\"Continue\"\n onAction={onContinue}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, width: '100%' }}>\n <div style={progressBarBg}>\n <div style={progressBarFill(progressPct)} />\n </div>\n <span style={{ fontSize: 12, color: 'var(--text-muted)', fontFamily: FF, whiteSpace: 'nowrap' }}>\n <strong style={{ color: 'var(--text-base)', fontWeight: 600 }}>{stepsCompleted}</strong> of {totalSteps} steps completed\n </span>\n </div>\n </OnboardingCard>\n\n {/* Explore Demo Projects */}\n <OnboardingCard\n icon={<Compass size={24} />}\n title=\"Explore Demo Projects\"\n description=\"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.\"\n buttonLabel=\"Explore\"\n onAction={onExplore}\n recommended\n />\n\n {/* Connect Data Source */}\n <OnboardingCard\n icon={<Link2 size={24} />}\n title=\"Connect Data Source\"\n description=\"Connect and integrate third-party tools with your external data sources.\"\n buttonLabel=\"Connect\"\n onAction={onConnect}\n />\n </div>\n </div>\n );\n};\n\nexport default UploadEvaluate;\n","import { useState, useRef } from 'react';\nimport { CloudUpload } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n fontFamily: FF,\n};\n\nconst sectionTitleStyle = {\n fontSize: 20,\n fontWeight: 600,\n fontStyle: 'normal',\n fontFamily: FF,\n color: 'var(--grey-strong)',\n margin: 0,\n lineHeight: 'normal',\n};\n\nconst sectionSubtitleStyle = {\n fontSize: 13,\n fontWeight: 400,\n fontStyle: 'normal',\n color: 'var(--color-text-secondary)',\n fontFamily: FF,\n margin: '4px 0 0',\n lineHeight: '140%',\n};\n\nconst dropzoneStyle = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minHeight: 320,\n borderRadius: 16,\n border: '2px dashed var(--color-input-border)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n marginTop: 24,\n padding: '48px 24px',\n};\n\nconst dropzoneHoverStyle = {\n ...dropzoneStyle,\n borderColor: 'var(--color-green)',\n background: 'var(--color-green-ring)',\n};\n\nconst dropzoneIconWrap = {\n width: 80,\n height: 80,\n borderRadius: 9999,\n background: 'var(--focus-2)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n marginBottom: 20,\n};\n\nconst dropzoneTextStyle = {\n fontSize: 18,\n fontWeight: 600,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n textAlign: 'center',\n lineHeight: '28px',\n margin: 0,\n};\n\nconst browseButtonStyle = {\n display: 'flex',\n height: 32,\n padding: 16,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n fontSize: 15,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n marginTop: 16,\n boxSizing: 'border-box',\n};\n\nconst dropzoneHintStyle = {\n fontSize: 14,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-muted)',\n textAlign: 'center',\n marginTop: 16,\n lineHeight: '140%',\n};\n\n// ─── Component ───\n\nconst UploadInteraction = ({ onFileSelect }) => {\n const [dragOver, setDragOver] = useState(false);\n const fileInputRef = useRef(null);\n\n const handleDragOver = (e) => {\n e.preventDefault();\n setDragOver(true);\n };\n\n const handleDragLeave = () => {\n setDragOver(false);\n };\n\n const handleDrop = (e) => {\n e.preventDefault();\n setDragOver(false);\n const files = e.dataTransfer?.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n };\n\n const handleBrowseClick = () => {\n fileInputRef.current?.click();\n };\n\n const handleFileChange = (e) => {\n const files = e.target.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n e.target.value = '';\n };\n\n return (\n <div style={containerStyle}>\n <h2 style={sectionTitleStyle}>Evaluate Interaction</h2>\n <p style={sectionSubtitleStyle}>\n Upload interactions to generate insights, explore results, and identify patterns.\n </p>\n\n <input\n ref={fileInputRef}\n type=\"file\"\n accept=\"audio/mpeg,audio/wav,audio/x-ms-wma,audio/mp4,video/mp4,video/webm\"\n multiple\n style={{ display: 'none' }}\n onChange={handleFileChange}\n />\n\n <div\n style={dragOver ? dropzoneHoverStyle : dropzoneStyle}\n onDragOver={handleDragOver}\n onDragLeave={handleDragLeave}\n onDrop={handleDrop}\n onClick={handleBrowseClick}\n >\n <div style={dropzoneIconWrap}>\n <CloudUpload size={32} color=\"var(--grey-strong)\" />\n </div>\n <p style={dropzoneTextStyle}>Drop your file here, or</p>\n <button\n type=\"button\"\n style={browseButtonStyle}\n onClick={(e) => { e.stopPropagation(); handleBrowseClick(); }}\n onMouseEnter={(e) => { e.currentTarget.style.background = 'var(--hover-warm-subtle)'; }}\n onMouseLeave={(e) => { e.currentTarget.style.background = 'var(--grey-white)'; }}\n >\n Browse files\n </button>\n <p style={dropzoneHintStyle}>Supports: MP3, WAV, WMA, MP4, and WEBM</p>\n </div>\n </div>\n );\n};\n\nexport default UploadInteraction;\n"],"names":["FF","containerStyle","headingStyle","subtitleStyle","gridStyle","cardStyle","cardHoverStyle","iconWrapperStyle","cardTitleStyle","cardDescStyle","btnStyle","progressBarBg","progressBarFill","pct","recommendedBadge","OnboardingCard","icon","title","description","buttonLabel","onAction","recommended","children","hovered","setHovered","useState","jsxs","jsx","e","UploadEvaluate","userName","stepsCompleted","totalSteps","onUpload","onContinue","onExplore","onConnect","progressPct","Upload","CircleUser","Compass","Link2","sectionTitleStyle","sectionSubtitleStyle","dropzoneStyle","dropzoneHoverStyle","dropzoneIconWrap","dropzoneTextStyle","browseButtonStyle","dropzoneHintStyle","UploadInteraction","onFileSelect","dragOver","setDragOver","fileInputRef","useRef","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","handleFileChange","CloudUpload"],"mappings":"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"}
@@ -42,10 +42,10 @@ const a = "var(--font-sans)", W = {
42
42
  transition: "var(--transition)",
43
43
  cursor: "default",
44
44
  gap: 8
45
- }, T = {
45
+ }, M = {
46
46
  ...v,
47
47
  boxShadow: "var(--shadow-sm)"
48
- }, F = {
48
+ }, T = {
49
49
  width: 40,
50
50
  height: 40,
51
51
  borderRadius: "var(--radius)",
@@ -54,7 +54,7 @@ const a = "var(--font-sans)", W = {
54
54
  alignItems: "center",
55
55
  justifyContent: "center",
56
56
  color: "var(--text-base)"
57
- }, L = {
57
+ }, F = {
58
58
  color: "var(--grey-strong)",
59
59
  fontSize: 20,
60
60
  fontStyle: "normal",
@@ -62,7 +62,7 @@ const a = "var(--font-sans)", W = {
62
62
  lineHeight: "normal",
63
63
  fontFamily: a,
64
64
  margin: 0
65
- }, A = {
65
+ }, L = {
66
66
  fontSize: 13,
67
67
  fontStyle: "normal",
68
68
  fontWeight: 400,
@@ -71,7 +71,7 @@ const a = "var(--font-sans)", W = {
71
71
  margin: 0,
72
72
  fontFamily: a,
73
73
  flex: "1 0 0"
74
- }, M = {
74
+ }, A = {
75
75
  display: "flex",
76
76
  height: 28,
77
77
  padding: 10,
@@ -97,13 +97,13 @@ const a = "var(--font-sans)", W = {
97
97
  borderRadius: 4,
98
98
  background: "var(--border)",
99
99
  overflow: "hidden"
100
- }, j = (r) => ({
101
- width: `${r}%`,
100
+ }, B = (o) => ({
101
+ width: `${o}%`,
102
102
  height: "100%",
103
103
  borderRadius: 4,
104
104
  background: "var(--color-green)",
105
105
  transition: "width 0.4s ease-out"
106
- }), B = {
106
+ }), E = {
107
107
  display: "inline-flex",
108
108
  alignItems: "center",
109
109
  gap: 4,
@@ -113,22 +113,22 @@ const a = "var(--font-sans)", W = {
113
113
  fontFamily: a,
114
114
  marginLeft: 12
115
115
  };
116
- function y({ icon: r, title: l, description: o, buttonLabel: s, onAction: g, recommended: h, children: p }) {
116
+ function y({ icon: o, title: l, description: r, buttonLabel: s, onAction: g, recommended: h, children: p }) {
117
117
  const [d, f] = m(!1);
118
118
  return /* @__PURE__ */ n(
119
119
  "div",
120
120
  {
121
- style: d ? T : v,
121
+ style: d ? M : v,
122
122
  onMouseEnter: () => f(!0),
123
123
  onMouseLeave: () => f(!1),
124
124
  children: [
125
125
  /* @__PURE__ */ n("div", { children: [
126
126
  /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 12 }, children: [
127
- /* @__PURE__ */ e("div", { style: F, children: r }),
128
- /* @__PURE__ */ e("h3", { style: L, children: l })
127
+ /* @__PURE__ */ e("div", { style: T, children: o }),
128
+ /* @__PURE__ */ e("h3", { style: F, children: l })
129
129
  ] }),
130
130
  /* @__PURE__ */ n("div", { style: { display: "flex", flexDirection: "column", gap: 4, marginLeft: 52, marginTop: 4 }, children: [
131
- o && /* @__PURE__ */ e("p", { style: A, children: o }),
131
+ r && /* @__PURE__ */ e("p", { style: L, children: r }),
132
132
  p
133
133
  ] })
134
134
  ] }),
@@ -136,7 +136,7 @@ function y({ icon: r, title: l, description: o, buttonLabel: s, onAction: g, rec
136
136
  /* @__PURE__ */ e(
137
137
  "button",
138
138
  {
139
- style: M,
139
+ style: A,
140
140
  onClick: g,
141
141
  onMouseEnter: (t) => {
142
142
  t.currentTarget.style.opacity = "0.85";
@@ -147,7 +147,7 @@ function y({ icon: r, title: l, description: o, buttonLabel: s, onAction: g, rec
147
147
  children: s
148
148
  }
149
149
  ),
150
- h && /* @__PURE__ */ n("span", { style: B, children: [
150
+ h && /* @__PURE__ */ n("span", { style: E, children: [
151
151
  /* @__PURE__ */ e("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ e("path", { d: "M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z" }) }),
152
152
  "Recommended"
153
153
  ] })
@@ -157,19 +157,19 @@ function y({ icon: r, title: l, description: o, buttonLabel: s, onAction: g, rec
157
157
  );
158
158
  }
159
159
  const Q = ({
160
- userName: r = "Will",
160
+ userName: o = "Will",
161
161
  stepsCompleted: l = 4,
162
- totalSteps: o = 6,
162
+ totalSteps: r = 6,
163
163
  onUpload: s,
164
164
  onContinue: g,
165
165
  onExplore: h,
166
166
  onConnect: p
167
167
  }) => {
168
- const d = l / o * 100;
168
+ const d = l / r * 100;
169
169
  return /* @__PURE__ */ n("div", { style: W, children: [
170
170
  /* @__PURE__ */ n("h1", { style: D, children: [
171
171
  "Welcome ",
172
- r
172
+ o
173
173
  ] }),
174
174
  /* @__PURE__ */ e("p", { style: H, children: "Get started with your project or explore new features" }),
175
175
  /* @__PURE__ */ n("div", { style: I, children: [
@@ -192,11 +192,11 @@ const Q = ({
192
192
  buttonLabel: "Continue",
193
193
  onAction: g,
194
194
  children: /* @__PURE__ */ n("div", { style: { display: "flex", alignItems: "center", gap: 8, width: "100%" }, children: [
195
- /* @__PURE__ */ e("div", { style: R, children: /* @__PURE__ */ e("div", { style: j(d) }) }),
195
+ /* @__PURE__ */ e("div", { style: R, children: /* @__PURE__ */ e("div", { style: B(d) }) }),
196
196
  /* @__PURE__ */ n("span", { style: { fontSize: 12, color: "var(--text-muted)", fontFamily: a, whiteSpace: "nowrap" }, children: [
197
197
  /* @__PURE__ */ e("strong", { style: { color: "var(--text-base)", fontWeight: 600 }, children: l }),
198
198
  " of ",
199
- o,
199
+ r,
200
200
  " steps completed"
201
201
  ] })
202
202
  ] })
@@ -225,7 +225,7 @@ const Q = ({
225
225
  )
226
226
  ] })
227
227
  ] });
228
- }, c = "var(--font-sans)", E = {
228
+ }, c = "var(--font-sans)", j = {
229
229
  fontFamily: c
230
230
  }, U = {
231
231
  fontSize: 20,
@@ -235,7 +235,7 @@ const Q = ({
235
235
  color: "var(--grey-strong)",
236
236
  margin: 0,
237
237
  lineHeight: "normal"
238
- }, O = {
238
+ }, P = {
239
239
  fontSize: 13,
240
240
  fontWeight: 400,
241
241
  fontStyle: "normal",
@@ -258,7 +258,7 @@ const Q = ({
258
258
  transition: "var(--transition-fast)",
259
259
  marginTop: 24,
260
260
  padding: "48px 24px"
261
- }, P = {
261
+ }, O = {
262
262
  ...b,
263
263
  borderColor: "var(--color-green)",
264
264
  background: "var(--color-green-ring)"
@@ -307,41 +307,41 @@ const Q = ({
307
307
  textAlign: "center",
308
308
  marginTop: 16,
309
309
  lineHeight: "140%"
310
- }, X = ({ onFileSelect: r }) => {
311
- const [l, o] = m(!1), s = x(null), g = (t) => {
312
- t.preventDefault(), o(!0);
310
+ }, X = ({ onFileSelect: o }) => {
311
+ const [l, r] = m(!1), s = x(null), g = (t) => {
312
+ t.preventDefault(), r(!0);
313
313
  }, h = () => {
314
- o(!1);
314
+ r(!1);
315
315
  }, p = (t) => {
316
316
  var u;
317
- t.preventDefault(), o(!1);
317
+ t.preventDefault(), r(!1);
318
318
  const i = (u = t.dataTransfer) == null ? void 0 : u.files;
319
- i != null && i.length && (r == null || r(i));
319
+ i != null && i.length && (o == null || o(i));
320
320
  }, d = () => {
321
321
  var t;
322
322
  (t = s.current) == null || t.click();
323
323
  };
324
- return /* @__PURE__ */ n("div", { style: E, children: [
324
+ return /* @__PURE__ */ n("div", { style: j, children: [
325
325
  /* @__PURE__ */ e("h2", { style: U, children: "Evaluate Interaction" }),
326
- /* @__PURE__ */ e("p", { style: O, children: "Upload another interaction to compare results and identify patterns across multiple evaluations." }),
326
+ /* @__PURE__ */ e("p", { style: P, children: "Upload interactions to generate insights, explore results, and identify patterns." }),
327
327
  /* @__PURE__ */ e(
328
328
  "input",
329
329
  {
330
330
  ref: s,
331
331
  type: "file",
332
- accept: ".mp3,.wma,.wav",
332
+ accept: "audio/mpeg,audio/wav,audio/x-ms-wma,audio/mp4,video/mp4,video/webm",
333
333
  multiple: !0,
334
334
  style: { display: "none" },
335
335
  onChange: (t) => {
336
336
  const i = t.target.files;
337
- i != null && i.length && (r == null || r(i)), t.target.value = "";
337
+ i != null && i.length && (o == null || o(i)), t.target.value = "";
338
338
  }
339
339
  }
340
340
  ),
341
341
  /* @__PURE__ */ n(
342
342
  "div",
343
343
  {
344
- style: l ? P : b,
344
+ style: l ? O : b,
345
345
  onDragOver: g,
346
346
  onDragLeave: h,
347
347
  onDrop: p,
@@ -366,7 +366,7 @@ const Q = ({
366
366
  children: "Browse files"
367
367
  }
368
368
  ),
369
- /* @__PURE__ */ e("p", { style: q, children: "Supports: MP3, WMA or WAV" })
369
+ /* @__PURE__ */ e("p", { style: q, children: "Supports: MP3, WAV, WMA, MP4, and WEBM" })
370
370
  ]
371
371
  }
372
372
  )
@@ -1 +1 @@
1
- {"version":3,"file":"UploadInteraction.es.js","sources":["../src/components/onboarding/UploadEvaluate.jsx","../src/components/onboarding/UploadInteraction.jsx"],"sourcesContent":["import { useState } from 'react';\nimport { Upload, CircleUser, Compass, Link2 } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n padding: '40px 48px',\n fontFamily: FF,\n minHeight: '100vh',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n};\n\nconst headingStyle = {\n fontSize: 'var(--text-4xl)',\n fontWeight: 'var(--font-bold)',\n fontFamily: FF,\n color: 'var(--text-ink)',\n margin: 0,\n letterSpacing: 'var(--tracking-tight)',\n lineHeight: 'var(--leading-tight)',\n};\n\nconst subtitleStyle = {\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--color-text-secondary)',\n margin: '8px 0 0',\n fontFamily: FF,\n};\n\nconst gridStyle = {\n display: 'grid',\n gridTemplateColumns: '1fr 1fr',\n gap: 12,\n marginTop: '36px',\n};\n\nconst cardStyle = {\n display: 'flex',\n height: 160,\n padding: 24,\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n borderRadius: 12,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n transition: 'var(--transition)',\n cursor: 'default',\n gap: 8\n};\n\nconst cardHoverStyle = {\n ...cardStyle,\n boxShadow: 'var(--shadow-sm)',\n};\n\nconst iconWrapperStyle = {\n width: 40,\n height: 40,\n borderRadius: 'var(--radius)',\n background: 'var(--paper-secondary)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'var(--text-base)',\n};\n\nconst cardTitleStyle = {\n color: 'var(--grey-strong)',\n fontSize: 20,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 'normal',\n fontFamily: FF,\n margin: 0,\n};\n\nconst cardDescStyle = {\n fontSize: 13,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--text-base)',\n margin: 0,\n fontFamily: FF,\n flex: '1 0 0',\n};\n\nconst btnStyle = {\n display: 'flex',\n height: 28,\n padding: 10,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n background: 'var(--grey-strong)',\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 1,\n fontFamily: FF,\n color: 'var(--grey-white)',\n border: 'none',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n boxSizing: 'border-box',\n};\n\nconst progressBarBg = {\n flex: 1,\n height: 8,\n borderRadius: 4,\n background: 'var(--border)',\n overflow: 'hidden',\n};\n\nconst progressBarFill = (pct) => ({\n width: `${pct}%`,\n height: '100%',\n borderRadius: 4,\n background: 'var(--color-green)',\n transition: 'width 0.4s ease-out',\n});\n\nconst recommendedBadge = {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 4,\n fontSize: 'var(--text-xs)',\n fontWeight: 'var(--font-semibold)',\n color: 'var(--rail-compliance)',\n fontFamily: FF,\n marginLeft: 12,\n};\n\n// ─── Card Component ───\n\nfunction OnboardingCard({ icon, title, description, buttonLabel, onAction, recommended, children }) {\n const [hovered, setHovered] = useState(false);\n\n return (\n <div\n style={hovered ? cardHoverStyle : cardStyle}\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n >\n <div>\n <div style={{ display: 'flex', alignItems: 'center', gap: 12 }}>\n <div style={iconWrapperStyle}>{icon}</div>\n <h3 style={cardTitleStyle}>{title}</h3>\n </div>\n <div style={{ display: 'flex', flexDirection: 'column', gap: 4, marginLeft: 52, marginTop: 4 }}>\n {description && <p style={cardDescStyle}>{description}</p>}\n {children}\n </div>\n </div>\n <div style={{ display: 'flex', alignItems: 'center', marginLeft: 52 }}>\n <button\n style={btnStyle}\n onClick={onAction}\n onMouseEnter={(e) => { e.currentTarget.style.opacity = '0.85'; }}\n onMouseLeave={(e) => { e.currentTarget.style.opacity = '1'; }}\n >\n {buttonLabel}\n </button>\n {recommended && (\n <span style={recommendedBadge}>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" /></svg>\n Recommended\n </span>\n )}\n </div>\n </div>\n );\n}\n\n// ─── Main Component ───\n\nconst UploadEvaluate = ({\n userName = 'Will',\n stepsCompleted = 4,\n totalSteps = 6,\n onUpload,\n onContinue,\n onExplore,\n onConnect,\n}) => {\n const progressPct = (stepsCompleted / totalSteps) * 100;\n\n return (\n <div style={containerStyle}>\n <h1 style={headingStyle}>Welcome {userName}</h1>\n <p style={subtitleStyle}>Get started with your project or explore new features</p>\n\n <div style={gridStyle}>\n {/* Upload and Evaluate Audio */}\n <OnboardingCard\n icon={<Upload size={24} />}\n title=\"Upload and Evaluate Audio\"\n description=\"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)\"\n buttonLabel=\"Upload\"\n onAction={onUpload}\n />\n\n {/* Getting started with Chordia */}\n <OnboardingCard\n icon={<CircleUser size={24} />}\n title=\"Getting started with Chordia\"\n description=\"Complete these steps to get the most out of Chordia.\"\n buttonLabel=\"Continue\"\n onAction={onContinue}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, width: '100%' }}>\n <div style={progressBarBg}>\n <div style={progressBarFill(progressPct)} />\n </div>\n <span style={{ fontSize: 12, color: 'var(--text-muted)', fontFamily: FF, whiteSpace: 'nowrap' }}>\n <strong style={{ color: 'var(--text-base)', fontWeight: 600 }}>{stepsCompleted}</strong> of {totalSteps} steps completed\n </span>\n </div>\n </OnboardingCard>\n\n {/* Explore Demo Projects */}\n <OnboardingCard\n icon={<Compass size={24} />}\n title=\"Explore Demo Projects\"\n description=\"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.\"\n buttonLabel=\"Explore\"\n onAction={onExplore}\n recommended\n />\n\n {/* Connect Data Source */}\n <OnboardingCard\n icon={<Link2 size={24} />}\n title=\"Connect Data Source\"\n description=\"Connect and integrate third-party tools with your external data sources.\"\n buttonLabel=\"Connect\"\n onAction={onConnect}\n />\n </div>\n </div>\n );\n};\n\nexport default UploadEvaluate;\n","import { useState, useRef } from 'react';\nimport { CloudUpload } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n fontFamily: FF,\n};\n\nconst sectionTitleStyle = {\n fontSize: 20,\n fontWeight: 600,\n fontStyle: 'normal',\n fontFamily: FF,\n color: 'var(--grey-strong)',\n margin: 0,\n lineHeight: 'normal',\n};\n\nconst sectionSubtitleStyle = {\n fontSize: 13,\n fontWeight: 400,\n fontStyle: 'normal',\n color: 'var(--color-text-secondary)',\n fontFamily: FF,\n margin: '4px 0 0',\n lineHeight: '140%',\n};\n\nconst dropzoneStyle = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minHeight: 320,\n borderRadius: 16,\n border: '2px dashed var(--color-input-border)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n marginTop: 24,\n padding: '48px 24px',\n};\n\nconst dropzoneHoverStyle = {\n ...dropzoneStyle,\n borderColor: 'var(--color-green)',\n background: 'var(--color-green-ring)',\n};\n\nconst dropzoneIconWrap = {\n width: 80,\n height: 80,\n borderRadius: 9999,\n background: 'var(--focus-2)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n marginBottom: 20,\n};\n\nconst dropzoneTextStyle = {\n fontSize: 18,\n fontWeight: 600,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n textAlign: 'center',\n lineHeight: '28px',\n margin: 0,\n};\n\nconst browseButtonStyle = {\n display: 'flex',\n height: 32,\n padding: 16,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n fontSize: 15,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n marginTop: 16,\n boxSizing: 'border-box',\n};\n\nconst dropzoneHintStyle = {\n fontSize: 14,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-muted)',\n textAlign: 'center',\n marginTop: 16,\n lineHeight: '140%',\n};\n\n// ─── Component ───\n\nconst UploadInteraction = ({ onFileSelect }) => {\n const [dragOver, setDragOver] = useState(false);\n const fileInputRef = useRef(null);\n\n const handleDragOver = (e) => {\n e.preventDefault();\n setDragOver(true);\n };\n\n const handleDragLeave = () => {\n setDragOver(false);\n };\n\n const handleDrop = (e) => {\n e.preventDefault();\n setDragOver(false);\n const files = e.dataTransfer?.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n };\n\n const handleBrowseClick = () => {\n fileInputRef.current?.click();\n };\n\n const handleFileChange = (e) => {\n const files = e.target.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n e.target.value = '';\n };\n\n return (\n <div style={containerStyle}>\n <h2 style={sectionTitleStyle}>Evaluate Interaction</h2>\n <p style={sectionSubtitleStyle}>\n Upload another interaction to compare results and identify patterns across multiple evaluations.\n </p>\n\n <input\n ref={fileInputRef}\n type=\"file\"\n accept=\".mp3,.wma,.wav\"\n multiple\n style={{ display: 'none' }}\n onChange={handleFileChange}\n />\n\n <div\n style={dragOver ? dropzoneHoverStyle : dropzoneStyle}\n onDragOver={handleDragOver}\n onDragLeave={handleDragLeave}\n onDrop={handleDrop}\n onClick={handleBrowseClick}\n >\n <div style={dropzoneIconWrap}>\n <CloudUpload size={32} color=\"var(--grey-strong)\" />\n </div>\n <p style={dropzoneTextStyle}>Drop your file here, or</p>\n <button\n type=\"button\"\n style={browseButtonStyle}\n onClick={(e) => { e.stopPropagation(); handleBrowseClick(); }}\n onMouseEnter={(e) => { e.currentTarget.style.background = 'var(--hover-warm-subtle)'; }}\n onMouseLeave={(e) => { e.currentTarget.style.background = 'var(--grey-white)'; }}\n >\n Browse files\n </button>\n <p style={dropzoneHintStyle}>Supports: MP3, WMA or WAV</p>\n </div>\n </div>\n );\n};\n\nexport default UploadInteraction;\n"],"names":["FF","containerStyle","headingStyle","subtitleStyle","gridStyle","cardStyle","cardHoverStyle","iconWrapperStyle","cardTitleStyle","cardDescStyle","btnStyle","progressBarBg","progressBarFill","pct","recommendedBadge","OnboardingCard","icon","title","description","buttonLabel","onAction","recommended","children","hovered","setHovered","useState","jsxs","jsx","e","UploadEvaluate","userName","stepsCompleted","totalSteps","onUpload","onContinue","onExplore","onConnect","progressPct","Upload","CircleUser","Compass","Link2","sectionTitleStyle","sectionSubtitleStyle","dropzoneStyle","dropzoneHoverStyle","dropzoneIconWrap","dropzoneTextStyle","browseButtonStyle","dropzoneHintStyle","UploadInteraction","onFileSelect","dragOver","setDragOver","fileInputRef","useRef","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","CloudUpload"],"mappings":"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"}
1
+ {"version":3,"file":"UploadInteraction.es.js","sources":["../src/components/onboarding/UploadEvaluate.jsx","../src/components/onboarding/UploadInteraction.jsx"],"sourcesContent":["import { useState } from 'react';\nimport { Upload, CircleUser, Compass, Link2 } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n padding: '40px 48px',\n fontFamily: FF,\n minHeight: '100vh',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n};\n\nconst headingStyle = {\n fontSize: 'var(--text-4xl)',\n fontWeight: 'var(--font-bold)',\n fontFamily: FF,\n color: 'var(--text-ink)',\n margin: 0,\n letterSpacing: 'var(--tracking-tight)',\n lineHeight: 'var(--leading-tight)',\n};\n\nconst subtitleStyle = {\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--color-text-secondary)',\n margin: '8px 0 0',\n fontFamily: FF,\n};\n\nconst gridStyle = {\n display: 'grid',\n gridTemplateColumns: '1fr 1fr',\n gap: 12,\n marginTop: '36px',\n};\n\nconst cardStyle = {\n display: 'flex',\n height: 160,\n padding: 24,\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n borderRadius: 12,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n transition: 'var(--transition)',\n cursor: 'default',\n gap: 8\n};\n\nconst cardHoverStyle = {\n ...cardStyle,\n boxShadow: 'var(--shadow-sm)',\n};\n\nconst iconWrapperStyle = {\n width: 40,\n height: 40,\n borderRadius: 'var(--radius)',\n background: 'var(--paper-secondary)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: 'var(--text-base)',\n};\n\nconst cardTitleStyle = {\n color: 'var(--grey-strong)',\n fontSize: 20,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 'normal',\n fontFamily: FF,\n margin: 0,\n};\n\nconst cardDescStyle = {\n fontSize: 13,\n fontStyle: 'normal',\n fontWeight: 400,\n lineHeight: '140%',\n color: 'var(--text-base)',\n margin: 0,\n fontFamily: FF,\n flex: '1 0 0',\n};\n\nconst btnStyle = {\n display: 'flex',\n height: 28,\n padding: 10,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n background: 'var(--grey-strong)',\n fontSize: 14,\n fontStyle: 'normal',\n fontWeight: 600,\n lineHeight: 1,\n fontFamily: FF,\n color: 'var(--grey-white)',\n border: 'none',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n boxSizing: 'border-box',\n};\n\nconst progressBarBg = {\n flex: 1,\n height: 8,\n borderRadius: 4,\n background: 'var(--border)',\n overflow: 'hidden',\n};\n\nconst progressBarFill = (pct) => ({\n width: `${pct}%`,\n height: '100%',\n borderRadius: 4,\n background: 'var(--color-green)',\n transition: 'width 0.4s ease-out',\n});\n\nconst recommendedBadge = {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 4,\n fontSize: 'var(--text-xs)',\n fontWeight: 'var(--font-semibold)',\n color: 'var(--rail-compliance)',\n fontFamily: FF,\n marginLeft: 12,\n};\n\n// ─── Card Component ───\n\nfunction OnboardingCard({ icon, title, description, buttonLabel, onAction, recommended, children }) {\n const [hovered, setHovered] = useState(false);\n\n return (\n <div\n style={hovered ? cardHoverStyle : cardStyle}\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n >\n <div>\n <div style={{ display: 'flex', alignItems: 'center', gap: 12 }}>\n <div style={iconWrapperStyle}>{icon}</div>\n <h3 style={cardTitleStyle}>{title}</h3>\n </div>\n <div style={{ display: 'flex', flexDirection: 'column', gap: 4, marginLeft: 52, marginTop: 4 }}>\n {description && <p style={cardDescStyle}>{description}</p>}\n {children}\n </div>\n </div>\n <div style={{ display: 'flex', alignItems: 'center', marginLeft: 52 }}>\n <button\n style={btnStyle}\n onClick={onAction}\n onMouseEnter={(e) => { e.currentTarget.style.opacity = '0.85'; }}\n onMouseLeave={(e) => { e.currentTarget.style.opacity = '1'; }}\n >\n {buttonLabel}\n </button>\n {recommended && (\n <span style={recommendedBadge}>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" /></svg>\n Recommended\n </span>\n )}\n </div>\n </div>\n );\n}\n\n// ─── Main Component ───\n\nconst UploadEvaluate = ({\n userName = 'Will',\n stepsCompleted = 4,\n totalSteps = 6,\n onUpload,\n onContinue,\n onExplore,\n onConnect,\n}) => {\n const progressPct = (stepsCompleted / totalSteps) * 100;\n\n return (\n <div style={containerStyle}>\n <h1 style={headingStyle}>Welcome {userName}</h1>\n <p style={subtitleStyle}>Get started with your project or explore new features</p>\n\n <div style={gridStyle}>\n {/* Upload and Evaluate Audio */}\n <OnboardingCard\n icon={<Upload size={24} />}\n title=\"Upload and Evaluate Audio\"\n description=\"Upload Audio Files to Run Evaluations: MP3, WMA or WAV (up to 50 files, max 325MB total)\"\n buttonLabel=\"Upload\"\n onAction={onUpload}\n />\n\n {/* Getting started with Chordia */}\n <OnboardingCard\n icon={<CircleUser size={24} />}\n title=\"Getting started with Chordia\"\n description=\"Complete these steps to get the most out of Chordia.\"\n buttonLabel=\"Continue\"\n onAction={onContinue}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: 8, width: '100%' }}>\n <div style={progressBarBg}>\n <div style={progressBarFill(progressPct)} />\n </div>\n <span style={{ fontSize: 12, color: 'var(--text-muted)', fontFamily: FF, whiteSpace: 'nowrap' }}>\n <strong style={{ color: 'var(--text-base)', fontWeight: 600 }}>{stepsCompleted}</strong> of {totalSteps} steps completed\n </span>\n </div>\n </OnboardingCard>\n\n {/* Explore Demo Projects */}\n <OnboardingCard\n icon={<Compass size={24} />}\n title=\"Explore Demo Projects\"\n description=\"Explore how Chordia Compass transforms real data into insights with plans, dashboards, and evaluations.\"\n buttonLabel=\"Explore\"\n onAction={onExplore}\n recommended\n />\n\n {/* Connect Data Source */}\n <OnboardingCard\n icon={<Link2 size={24} />}\n title=\"Connect Data Source\"\n description=\"Connect and integrate third-party tools with your external data sources.\"\n buttonLabel=\"Connect\"\n onAction={onConnect}\n />\n </div>\n </div>\n );\n};\n\nexport default UploadEvaluate;\n","import { useState, useRef } from 'react';\nimport { CloudUpload } from 'lucide-react';\n\nconst FF = 'var(--font-sans)';\n\n// ─── Styles ───\n\nconst containerStyle = {\n fontFamily: FF,\n};\n\nconst sectionTitleStyle = {\n fontSize: 20,\n fontWeight: 600,\n fontStyle: 'normal',\n fontFamily: FF,\n color: 'var(--grey-strong)',\n margin: 0,\n lineHeight: 'normal',\n};\n\nconst sectionSubtitleStyle = {\n fontSize: 13,\n fontWeight: 400,\n fontStyle: 'normal',\n color: 'var(--color-text-secondary)',\n fontFamily: FF,\n margin: '4px 0 0',\n lineHeight: '140%',\n};\n\nconst dropzoneStyle = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minHeight: 320,\n borderRadius: 16,\n border: '2px dashed var(--color-input-border)',\n background: 'var(--grey-white)',\n boxSizing: 'border-box',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n marginTop: 24,\n padding: '48px 24px',\n};\n\nconst dropzoneHoverStyle = {\n ...dropzoneStyle,\n borderColor: 'var(--color-green)',\n background: 'var(--color-green-ring)',\n};\n\nconst dropzoneIconWrap = {\n width: 80,\n height: 80,\n borderRadius: 9999,\n background: 'var(--focus-2)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n marginBottom: 20,\n};\n\nconst dropzoneTextStyle = {\n fontSize: 18,\n fontWeight: 600,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n textAlign: 'center',\n lineHeight: '28px',\n margin: 0,\n};\n\nconst browseButtonStyle = {\n display: 'flex',\n height: 32,\n padding: 16,\n justifyContent: 'center',\n alignItems: 'center',\n gap: 10,\n borderRadius: 10,\n border: '1px solid var(--grey-absent)',\n background: 'var(--grey-white)',\n fontSize: 15,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-strong)',\n cursor: 'pointer',\n transition: 'var(--transition-fast)',\n outline: 'none',\n marginTop: 16,\n boxSizing: 'border-box',\n};\n\nconst dropzoneHintStyle = {\n fontSize: 14,\n fontWeight: 400,\n fontFamily: FF,\n color: 'var(--grey-muted)',\n textAlign: 'center',\n marginTop: 16,\n lineHeight: '140%',\n};\n\n// ─── Component ───\n\nconst UploadInteraction = ({ onFileSelect }) => {\n const [dragOver, setDragOver] = useState(false);\n const fileInputRef = useRef(null);\n\n const handleDragOver = (e) => {\n e.preventDefault();\n setDragOver(true);\n };\n\n const handleDragLeave = () => {\n setDragOver(false);\n };\n\n const handleDrop = (e) => {\n e.preventDefault();\n setDragOver(false);\n const files = e.dataTransfer?.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n };\n\n const handleBrowseClick = () => {\n fileInputRef.current?.click();\n };\n\n const handleFileChange = (e) => {\n const files = e.target.files;\n if (files?.length) {\n onFileSelect?.(files);\n }\n e.target.value = '';\n };\n\n return (\n <div style={containerStyle}>\n <h2 style={sectionTitleStyle}>Evaluate Interaction</h2>\n <p style={sectionSubtitleStyle}>\n Upload interactions to generate insights, explore results, and identify patterns.\n </p>\n\n <input\n ref={fileInputRef}\n type=\"file\"\n accept=\"audio/mpeg,audio/wav,audio/x-ms-wma,audio/mp4,video/mp4,video/webm\"\n multiple\n style={{ display: 'none' }}\n onChange={handleFileChange}\n />\n\n <div\n style={dragOver ? dropzoneHoverStyle : dropzoneStyle}\n onDragOver={handleDragOver}\n onDragLeave={handleDragLeave}\n onDrop={handleDrop}\n onClick={handleBrowseClick}\n >\n <div style={dropzoneIconWrap}>\n <CloudUpload size={32} color=\"var(--grey-strong)\" />\n </div>\n <p style={dropzoneTextStyle}>Drop your file here, or</p>\n <button\n type=\"button\"\n style={browseButtonStyle}\n onClick={(e) => { e.stopPropagation(); handleBrowseClick(); }}\n onMouseEnter={(e) => { e.currentTarget.style.background = 'var(--hover-warm-subtle)'; }}\n onMouseLeave={(e) => { e.currentTarget.style.background = 'var(--grey-white)'; }}\n >\n Browse files\n </button>\n <p style={dropzoneHintStyle}>Supports: MP3, WAV, WMA, MP4, and WEBM</p>\n </div>\n </div>\n );\n};\n\nexport default UploadInteraction;\n"],"names":["FF","containerStyle","headingStyle","subtitleStyle","gridStyle","cardStyle","cardHoverStyle","iconWrapperStyle","cardTitleStyle","cardDescStyle","btnStyle","progressBarBg","progressBarFill","pct","recommendedBadge","OnboardingCard","icon","title","description","buttonLabel","onAction","recommended","children","hovered","setHovered","useState","jsxs","jsx","e","UploadEvaluate","userName","stepsCompleted","totalSteps","onUpload","onContinue","onExplore","onConnect","progressPct","Upload","CircleUser","Compass","Link2","sectionTitleStyle","sectionSubtitleStyle","dropzoneStyle","dropzoneHoverStyle","dropzoneIconWrap","dropzoneTextStyle","browseButtonStyle","dropzoneHintStyle","UploadInteraction","onFileSelect","dragOver","setDragOver","fileInputRef","useRef","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","CloudUpload"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../AgentLiftCard.cjs.js"),r=require("../SummarySection.cjs.js"),i=require("../CustomFilterChips.cjs.js"),a=require("../AutoSearch.cjs.js");require("react/jsx-runtime");require("react");require("lucide-react");require("../SmallButton.cjs.js");require("react-dom");require("../TextInput.cjs.js");exports.AgentLiftCard=e.AgentLiftCard;exports.EvidenceItem=e.EvidenceItem;exports.ConditionCard=r.ConditionCard;exports.ModelScoreCard=r.ModelScoreCard;exports.ObservationCard=r.ObservationCard;exports.ScoreDriverCard=r.ScoreDriverCard;exports.ScoreDriverCardVariant=r.ScoreDriverCardVariant;exports.SignalCard=r.SignalCard;exports.SmallObservationCard=r.SmallObservationCard;exports.SummarySection=r.SummarySection;exports.CustomFilterChips=i.CustomFilterChips;exports.Pagination=i.Pagination;exports.AutoSearch=a.AutoSearch;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../AgentLiftCard.cjs.js"),r=require("../SummarySection.cjs.js"),i=require("../CustomFilterChips.cjs.js"),e=require("../FileUploadingState.cjs.js");require("react/jsx-runtime");require("react");require("lucide-react");require("../SmallButton.cjs.js");require("react-dom");require("../TextInput.cjs.js");exports.AgentLiftCard=a.AgentLiftCard;exports.EvidenceItem=a.EvidenceItem;exports.ConditionCard=r.ConditionCard;exports.ModelScoreCard=r.ModelScoreCard;exports.ObservationCard=r.ObservationCard;exports.ScoreDriverCard=r.ScoreDriverCard;exports.ScoreDriverCardVariant=r.ScoreDriverCardVariant;exports.SignalCard=r.SignalCard;exports.SmallObservationCard=r.SmallObservationCard;exports.SummarySection=r.SummarySection;exports.CustomFilterChips=i.CustomFilterChips;exports.Pagination=i.Pagination;exports.AutoSearch=e.AutoSearch;exports.DrawerButton=e.DrawerButton;exports.DrawerInput=e.DrawerInput;exports.DrawerLabel=e.DrawerLabel;exports.FileUploadSuccessState=e.FileUploadSuccessState;exports.FileUploadingState=e.FileUploadingState;exports.SideDrawer=e.SideDrawer;
2
2
  //# sourceMappingURL=common.cjs.js.map
@@ -1,7 +1,7 @@
1
- import { A as C, E as d } from "../AgentLiftCard.es.js";
2
- import { C as p, M as S, O as c, b as f, c as l, S as v, a as x, d as A } from "../SummarySection.es.js";
3
- import { C as g, P as u } from "../CustomFilterChips.es.js";
4
- import { A as h } from "../AutoSearch.es.js";
1
+ import { A as m, E as n } from "../AgentLiftCard.es.js";
2
+ import { C as S, M as C, O as c, b as l, c as D, S as u, a as b, d as f } from "../SummarySection.es.js";
3
+ import { C as g, P as w } from "../CustomFilterChips.es.js";
4
+ import { A, D as F, b as O, a as h, c as E, F as I, S as L } from "../FileUploadingState.es.js";
5
5
  import "react/jsx-runtime";
6
6
  import "react";
7
7
  import "lucide-react";
@@ -9,18 +9,24 @@ import "../SmallButton.es.js";
9
9
  import "react-dom";
10
10
  import "../TextInput.es.js";
11
11
  export {
12
- C as AgentLiftCard,
13
- h as AutoSearch,
14
- p as ConditionCard,
12
+ m as AgentLiftCard,
13
+ A as AutoSearch,
14
+ S as ConditionCard,
15
15
  g as CustomFilterChips,
16
- d as EvidenceItem,
17
- S as ModelScoreCard,
16
+ F as DrawerButton,
17
+ O as DrawerInput,
18
+ h as DrawerLabel,
19
+ n as EvidenceItem,
20
+ E as FileUploadSuccessState,
21
+ I as FileUploadingState,
22
+ C as ModelScoreCard,
18
23
  c as ObservationCard,
19
- u as Pagination,
20
- f as ScoreDriverCard,
21
- l as ScoreDriverCardVariant,
22
- v as SignalCard,
23
- x as SmallObservationCard,
24
- A as SummarySection
24
+ w as Pagination,
25
+ l as ScoreDriverCard,
26
+ D as ScoreDriverCardVariant,
27
+ L as SideDrawer,
28
+ u as SignalCard,
29
+ b as SmallObservationCard,
30
+ f as SummarySection
25
31
  };
26
32
  //# sourceMappingURL=common.es.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),m=require("react"),n=require("lucide-react"),I={home:n.Home,projects:n.FolderClosed,folder:n.FolderClosed,organization:n.Users,users:n.Users,dashboard:n.LayoutDashboard,history:n.Clock3,sessions:n.Clock3,monitoring:n.Activity,activity:n.Activity,insights:n.Lightbulb,notifications:n.Bell,integrations:n.Plug,settings:n.Settings,usage:n.BarChart3,docs:n.FileText,documentation:n.FileText,agents:n.Headphones,security:n.Shield,configuration:n.Sliders,workflow:n.Workflow};function w(t){return t?typeof t=="string"?I[t.toLowerCase()]||n.SquareDot:t:n.SquareDot}function M({menuItems:t=[],activeId:r,onNavigate:a,collapsed:o,onToggleCollapse:u,header:x,footer:c,width:l=240,collapsedWidth:f=56}){const[i,v]=m.useState(!1),d=o!==void 0?o:i,h=u||(()=>v(!i)),[y,p]=m.useState(()=>{const s={};return t.forEach(g=>{var b;if((b=g.children)!=null&&b.length){const z=g.children.some(S=>S.id===r||S.active);s[g.id]=z}}),s}),T=s=>{p(g=>({...g,[s]:!g[s]}))},j=d?f:l;return e.jsxs("nav",{style:{width:j,minWidth:j,height:"100%",display:"flex",flexDirection:"column",background:"var(--paper-elevated)",borderRight:"1px solid var(--border)",fontFamily:"var(--font-sans)",transition:"width 0.2s ease, min-width 0.2s ease",overflow:"hidden",flexShrink:0},children:[x&&!d&&e.jsx("div",{style:{padding:"16px 16px 8px",flexShrink:0},children:x}),e.jsx("div",{style:{display:"flex",justifyContent:d?"center":"flex-end",padding:d?"12px 0":"8px 12px",flexShrink:0},children:e.jsx("button",{onClick:h,title:d?"Expand sidebar":"Collapse sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:"var(--radius-sm)",border:"none",background:"transparent",color:"var(--text-faint)",cursor:"pointer",transition:"background 0.15s ease, color 0.15s ease"},onMouseEnter:s=>{s.currentTarget.style.background="var(--hover-warm)",s.currentTarget.style.color="var(--text-muted)"},onMouseLeave:s=>{s.currentTarget.style.background="transparent",s.currentTarget.style.color="var(--text-faint)"},children:d?e.jsx(n.PanelLeft,{size:16}):e.jsx(n.PanelLeftClose,{size:16})})}),e.jsx("div",{style:{flex:1,overflowY:"auto",overflowX:"hidden",padding:d?"0 8px":"0 10px"},children:t.map((s,g)=>{var b;return e.jsxs(m.Fragment,{children:[s.section&&!d&&e.jsx("div",{style:{fontSize:"var(--text-xs)",fontWeight:650,letterSpacing:"0.08em",textTransform:"uppercase",color:"var(--text-faint)",padding:"16px 8px 6px",lineHeight:1},children:s.section}),(b=s.children)!=null&&b.length?e.jsx(R,{item:s,activeId:r,expanded:!!y[s.id],onToggle:()=>T(s.id),onNavigate:a,collapsed:d}):e.jsx(C,{item:s,active:s.id===r||s.active,onNavigate:a,collapsed:d})]},s.id||g)})}),c&&!d&&e.jsx("div",{style:{padding:"12px 16px",borderTop:"1px solid var(--border-subtle)",flexShrink:0},children:c})]})}function C({item:t,active:r,onNavigate:a,collapsed:o}){const u=w(t.icon),x=typeof t.icon!="string"&&typeof t.icon<"u";return e.jsxs("button",{onClick:()=>a==null?void 0:a(t.href||t.id),title:o?t.label:void 0,style:{display:"flex",alignItems:"center",gap:o?0:10,justifyContent:o?"center":"flex-start",width:"100%",padding:o?"10px 0":"8px 10px",borderRadius:"var(--radius-sm)",border:"none",background:r?"var(--hover-warm)":"transparent",color:r?"var(--text-ink)":"var(--text-base)",fontWeight:r?550:400,fontSize:"var(--text-sm)",fontFamily:"var(--font-sans)",cursor:"pointer",textAlign:"left",transition:"background 0.15s ease, color 0.1s ease",marginBottom:2},onMouseEnter:c=>{r||(c.currentTarget.style.background="var(--hover-warm-subtle)")},onMouseLeave:c=>{r||(c.currentTarget.style.background="transparent")},children:[x?e.jsx("span",{style:{flexShrink:0,display:"flex"},children:t.icon}):e.jsx(u,{size:16,style:{flexShrink:0,color:r?"var(--text-strong)":"var(--text-muted)"}}),!o&&e.jsx("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.label})]})}function R({item:t,activeId:r,expanded:a,onToggle:o,onNavigate:u,collapsed:x}){var f;const c=w(t.icon),l=(f=t.children)==null?void 0:f.some(i=>i.id===r||i.active);return x?e.jsx("button",{onClick:o,title:t.label,style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",padding:"10px 0",borderRadius:"var(--radius-sm)",border:"none",background:l?"var(--hover-warm)":"transparent",color:l?"var(--text-ink)":"var(--text-base)",cursor:"pointer",marginBottom:2,transition:"background 0.15s ease"},onMouseEnter:i=>{l||(i.currentTarget.style.background="var(--hover-warm-subtle)")},onMouseLeave:i=>{l||(i.currentTarget.style.background="transparent")},children:e.jsx(c,{size:16,style:{color:l?"var(--text-strong)":"var(--text-muted)"}})}):e.jsxs("div",{style:{marginBottom:2},children:[e.jsxs("button",{onClick:o,style:{display:"flex",alignItems:"center",gap:10,width:"100%",padding:"8px 10px",borderRadius:"var(--radius-sm)",border:"none",background:"transparent",color:l?"var(--text-ink)":"var(--text-base)",fontWeight:l?550:400,fontSize:"var(--text-sm)",fontFamily:"var(--font-sans)",cursor:"pointer",textAlign:"left",transition:"background 0.15s ease"},onMouseEnter:i=>{i.currentTarget.style.background="var(--hover-warm-subtle)"},onMouseLeave:i=>{i.currentTarget.style.background="transparent"},children:[e.jsx(c,{size:16,style:{flexShrink:0,color:l?"var(--text-strong)":"var(--text-muted)"}}),e.jsx("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.label}),e.jsx(n.ChevronDown,{size:14,style:{flexShrink:0,color:"var(--text-faint)",transform:a?"rotate(0deg)":"rotate(-90deg)",transition:"transform 0.2s ease"}})]}),a&&e.jsx("div",{style:{paddingLeft:18,marginTop:2},children:t.children.map((i,v)=>e.jsx(C,{item:i,active:i.id===r||i.active,onNavigate:u,collapsed:!1},i.id||v))})]})}const k=["#5a8a6e","#b07d4f","#7a8fa6","#c47a5a","#6a9a8a","#a0785a","#5a7a9a","#9a7a5a"];function F(t){if(!t)return k[0];let r=0;for(let a=0;a<t.length;a++)r=(r<<5)-r+t.charCodeAt(a)|0;return k[Math.abs(r)%k.length]}function L({logo:t,title:r,userName:a,userEmail:o,userInitials:u,userRole:x,onSignOut:c,children:l,trailing:f,userMenu:i,height:v=48,style:d}){const h=a||o||"",y=u||B(h);return e.jsxs("header",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 20px",height:v,borderBottom:"1px solid var(--border)",background:"var(--paper-elevated)",flexShrink:0,fontFamily:"var(--font-sans)",position:"sticky",top:0,zIndex:1e3,...d},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[t!==void 0?t:e.jsx("span",{style:{fontSize:"var(--text-lg)",fontWeight:700,fontFamily:"var(--font-display)",color:"var(--text-ink)",letterSpacing:"-0.01em"},children:"Chordia"}),r&&e.jsxs(e.Fragment,{children:[e.jsx("span",{style:{width:1,height:18,background:"var(--border)",flexShrink:0}}),e.jsx("span",{style:{fontSize:"var(--text-md)",fontWeight:500,color:"var(--text-muted)"},children:r})]})]}),l&&e.jsx("div",{style:{display:"flex",alignItems:"center",gap:8,flex:1,justifyContent:"center",minWidth:0},children:l}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[f,i||h&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{style:{width:30,height:30,borderRadius:"50%",background:F(h),display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("span",{style:{fontSize:11,fontWeight:600,color:"#fff",letterSpacing:"0.02em",lineHeight:1},children:y})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:1},children:[e.jsx("span",{style:{fontSize:"var(--text-sm)",fontWeight:550,color:"var(--text-strong)",lineHeight:1.2},children:h}),x&&e.jsx("span",{style:{fontSize:"var(--text-xs)",color:"var(--text-muted)",lineHeight:1.2},children:x})]}),c&&e.jsx("button",{onClick:c,title:"Sign out",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:"var(--radius-sm)",border:"none",background:"transparent",color:"var(--text-faint)",cursor:"pointer",transition:"background 0.15s ease, color 0.15s ease"},onMouseEnter:p=>{p.currentTarget.style.background="var(--hover-warm)",p.currentTarget.style.color="var(--text-muted)"},onMouseLeave:p=>{p.currentTarget.style.background="transparent",p.currentTarget.style.color="var(--text-faint)"},children:e.jsx(n.LogOut,{size:14})})]})]})]})}function W({label:t,color:r="var(--text-muted)",active:a,onClick:o}){return e.jsxs("button",{onClick:o,style:{display:"flex",alignItems:"center",gap:4,fontSize:"var(--text-sm)",fontWeight:500,fontFamily:"var(--font-sans)",padding:"4px 10px",borderRadius:"var(--radius-sm)",border:`1px solid color-mix(in srgb, ${r} 30%, transparent)`,background:`color-mix(in srgb, ${r} 10%, transparent)`,color:r,cursor:"pointer",transition:"background 0.15s ease, border-color 0.15s ease"},onMouseEnter:u=>{u.currentTarget.style.background=`color-mix(in srgb, ${r} 18%, transparent)`},onMouseLeave:u=>{u.currentTarget.style.background=`color-mix(in srgb, ${r} 10%, transparent)`},children:[t,e.jsx(n.ChevronDown,{size:12,style:{transform:a?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",opacity:.7}})]})}function D({open:t,onClose:r,children:a,align:o="left"}){return t?e.jsxs(e.Fragment,{children:[e.jsx("div",{onClick:r,style:{position:"fixed",inset:0,zIndex:99,background:"rgba(0,0,0,0.03)"}}),e.jsx("div",{style:{position:"absolute",top:"100%",[o==="right"?"right":"left"]:0,marginTop:4,zIndex:100,background:"#fff",border:"1px solid var(--border)",borderRadius:"var(--radius)",padding:4,minWidth:200,maxHeight:280,overflowY:"auto",boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:a})]}):null}function A({label:t,active:r,onClick:a}){return e.jsx("div",{onClick:a,style:{padding:"8px 10px",borderRadius:"var(--radius-sm)",cursor:"pointer",fontSize:"var(--text-sm)",color:r?"var(--text-ink)":"var(--text-base)",fontWeight:r?600:400,fontFamily:"var(--font-sans)",background:r?"var(--hover-warm)":"transparent",transition:"background 0.1s ease"},onMouseEnter:o=>{r||(o.currentTarget.style.background="var(--hover-warm-subtle)")},onMouseLeave:o=>{r||(o.currentTarget.style.background="transparent")},children:t})}function E({connected:t,label:r}){const a=r||(t?"Connected":"Disconnected");return e.jsx("span",{style:{fontSize:"var(--text-xs)",fontFamily:"var(--font-sans)",padding:"3px 10px",borderRadius:12,border:`1px solid ${t?"var(--state-present)":"var(--border)"}`,color:t?"var(--state-present)":"var(--text-faint)",background:t?"rgba(37,163,114,0.08)":"transparent",transition:"all 0.2s ease"},children:a})}function B(t){if(!t)return"?";const r=t.trim().split(/\s+/);return r.length>=2?(r[0][0]+r[r.length-1][0]).toUpperCase():t.slice(0,2).toUpperCase()}exports.NavDropdown=D;exports.NavDropdownItem=A;exports.NavPill=W;exports.NavigationBar=L;exports.Sidebar=M;exports.StatusIndicator=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),k=require("react"),n=require("lucide-react"),I={home:n.Home,projects:n.FolderClosed,folder:n.FolderClosed,organization:n.Users,users:n.Users,dashboard:n.LayoutDashboard,history:n.Clock3,sessions:n.Clock3,monitoring:n.Activity,activity:n.Activity,insights:n.Lightbulb,notifications:n.Bell,integrations:n.Plug,settings:n.Settings,usage:n.BarChart3,docs:n.FileText,documentation:n.FileText,agents:n.Headphones,security:n.Shield,configuration:n.Sliders,workflow:n.Workflow};function w(r){return r?typeof r=="string"?I[r.toLowerCase()]||n.SquareDot:r:n.SquareDot}function B({menuItems:r=[],activeId:t,onNavigate:o,collapsed:i,onToggleCollapse:u,header:g,footer:l,width:c=244,collapsedWidth:f=56}){const[s,y]=k.useState(!1),d=i!==void 0?i:s,h=u||(()=>y(!s)),[b,p]=k.useState(()=>{const a={};return r.forEach(x=>{var v;if((v=x.children)!=null&&v.length){const A=x.children.some(S=>S.id===t||S.active);a[x.id]=A}}),a}),T=a=>{p(x=>({...x,[a]:!x[a]}))},m=d?f:c;return e.jsxs("nav",{style:{width:m,minWidth:m,height:"100%",display:"flex",flexDirection:"column",alignItems:"flex-start",padding:d?"0":"0 0 24px 24px",gap:24,background:"var(--Background-Inverse, #0B0B0B)",fontFamily:"var(--font-sans)",transition:"width 0.2s ease, min-width 0.2s ease",overflow:"hidden",flexShrink:0},children:[g&&!d&&e.jsx("div",{style:{padding:"16px 16px 8px",flexShrink:0,width:"100%"},children:g}),e.jsx("div",{style:{display:"flex",justifyContent:d?"center":"flex-end",padding:d?"12px 0":"8px 0 0",flexShrink:0,width:"100%"},children:e.jsx("button",{onClick:h,title:d?"Expand sidebar":"Collapse sidebar",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:"var(--radius-sm)",border:"none",background:"transparent",color:"rgba(255, 255, 255, 0.5)",cursor:"pointer",transition:"background 0.15s ease, color 0.15s ease"},onMouseEnter:a=>{a.currentTarget.style.background="rgba(255, 255, 255, 0.08)",a.currentTarget.style.color="rgba(255, 255, 255, 0.8)"},onMouseLeave:a=>{a.currentTarget.style.background="transparent",a.currentTarget.style.color="rgba(255, 255, 255, 0.5)"},children:d?e.jsx(n.PanelLeft,{size:16}):e.jsx(n.PanelLeftClose,{size:16})})}),e.jsx("div",{style:{flex:1,overflowY:"auto",overflowX:"hidden",padding:d?"0 8px":"0",width:"100%"},children:r.map((a,x)=>{var v;return e.jsxs(k.Fragment,{children:[a.section&&!d&&e.jsx("div",{style:{fontSize:"var(--text-xs)",fontWeight:650,letterSpacing:"0.08em",textTransform:"uppercase",color:"rgba(255, 255, 255, 0.35)",padding:"16px 8px 6px",lineHeight:1},children:a.section}),(v=a.children)!=null&&v.length?e.jsx(E,{item:a,activeId:t,expanded:!!b[a.id],onToggle:()=>T(a.id),onNavigate:o,collapsed:d}):e.jsx(C,{item:a,active:a.id===t||a.active,onNavigate:o,collapsed:d})]},a.id||x)})}),l&&!d&&e.jsx("div",{style:{padding:"12px 16px",borderTop:"1px solid rgba(255, 255, 255, 0.08)",flexShrink:0,width:"100%"},children:l})]})}function C({item:r,active:t,onNavigate:o,collapsed:i}){const u=w(r.icon),g=typeof r.icon!="string"&&typeof r.icon<"u";return e.jsxs("button",{onClick:()=>o==null?void 0:o(r.href||r.id),title:i?r.label:void 0,style:{display:"flex",alignItems:"center",gap:i?0:12,justifyContent:i?"center":"flex-start",width:"100%",padding:i?"10px 0":"12px 24px 12px 12px",borderRadius:t?"4px 0 0 4px":"4px",borderRight:t?"2px solid #00A66E":"2px solid transparent",borderTop:"none",borderBottom:"none",borderLeft:"none",background:t?"var(--Background-MonoPressed, #323232)":"transparent",color:t?"#00A66E":"var(--Content-TertiaryInverse, #B2AEA8)",fontWeight:t?550:400,fontSize:"var(--text-sm)",fontFamily:"var(--font-sans)",cursor:"pointer",textAlign:"left",transition:"background 0.15s ease, color 0.1s ease, border-color 0.15s ease",marginBottom:2},onMouseEnter:l=>{t||(l.currentTarget.style.background="var(--Background-MonoPressed, #323232)",l.currentTarget.style.color="#00A66E")},onMouseLeave:l=>{t||(l.currentTarget.style.background="transparent",l.currentTarget.style.color="var(--Content-TertiaryInverse, #B2AEA8)")},children:[g?e.jsx("span",{style:{flexShrink:0,display:"flex"},children:r.icon}):e.jsx(u,{size:18,style:{flexShrink:0,color:"inherit"}}),!i&&e.jsx("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:r.label})]})}function E({item:r,activeId:t,expanded:o,onToggle:i,onNavigate:u,collapsed:g}){var f;const l=w(r.icon),c=(f=r.children)==null?void 0:f.some(s=>s.id===t||s.active);return g?e.jsx("button",{onClick:i,title:r.label,style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",padding:"10px 0",borderRadius:"4px",border:"none",background:c?"var(--Background-MonoPressed, #323232)":"transparent",color:c?"#00A66E":"var(--Content-TertiaryInverse, #B2AEA8)",cursor:"pointer",marginBottom:2,transition:"background 0.15s ease"},onMouseEnter:s=>{c||(s.currentTarget.style.background="var(--Background-MonoPressed, #323232)",s.currentTarget.style.color="#00A66E")},onMouseLeave:s=>{c||(s.currentTarget.style.background="transparent",s.currentTarget.style.color="var(--Content-TertiaryInverse, #B2AEA8)")},children:e.jsx(l,{size:18,style:{color:"inherit"}})}):e.jsxs("div",{style:{marginBottom:2},children:[e.jsxs("button",{onClick:i,style:{display:"flex",alignItems:"center",gap:12,width:"100%",padding:"12px 24px 12px 12px",borderRadius:"4px",border:"none",background:"transparent",color:c?"#00A66E":"var(--Content-TertiaryInverse, #B2AEA8)",fontWeight:c?550:400,fontSize:"var(--text-sm)",fontFamily:"var(--font-sans)",cursor:"pointer",textAlign:"left",transition:"background 0.15s ease, color 0.15s ease"},onMouseEnter:s=>{s.currentTarget.style.background="var(--Background-MonoPressed, #323232)",s.currentTarget.style.color="#00A66E"},onMouseLeave:s=>{s.currentTarget.style.background="transparent",c?s.currentTarget.style.color="#00A66E":s.currentTarget.style.color="var(--Content-TertiaryInverse, #B2AEA8)"},children:[e.jsx(l,{size:18,style:{flexShrink:0,color:"inherit"}}),e.jsx("span",{style:{flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:r.label}),e.jsx(n.ChevronDown,{size:14,style:{flexShrink:0,color:"inherit",opacity:.7,transform:o?"rotate(0deg)":"rotate(-90deg)",transition:"transform 0.2s ease"}})]}),o&&e.jsx("div",{style:{paddingLeft:18,marginTop:2},children:r.children.map((s,y)=>e.jsx(C,{item:s,active:s.id===t||s.active,onNavigate:u,collapsed:!1},s.id||y))})]})}const j=["#5a8a6e","#b07d4f","#7a8fa6","#c47a5a","#6a9a8a","#a0785a","#5a7a9a","#9a7a5a"];function z(r){if(!r)return j[0];let t=0;for(let o=0;o<r.length;o++)t=(t<<5)-t+r.charCodeAt(o)|0;return j[Math.abs(t)%j.length]}function M({logo:r,title:t,userName:o,userEmail:i,userInitials:u,userRole:g,onSignOut:l,children:c,trailing:f,userMenu:s,height:y=48,style:d}){const h=o||i||"",b=u||D(h);return e.jsxs("header",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 20px",height:y,borderBottom:"1px solid var(--border)",background:"var(--paper-elevated)",flexShrink:0,fontFamily:"var(--font-sans)",position:"sticky",top:0,zIndex:1e3,...d},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[r!==void 0?r:e.jsx("span",{style:{fontSize:"var(--text-lg)",fontWeight:700,fontFamily:"var(--font-display)",color:"var(--text-ink)",letterSpacing:"-0.01em"},children:"Chordia"}),t&&e.jsxs(e.Fragment,{children:[e.jsx("span",{style:{width:1,height:18,background:"var(--border)",flexShrink:0}}),e.jsx("span",{style:{fontSize:"var(--text-md)",fontWeight:500,color:"var(--text-muted)"},children:t})]})]}),c&&e.jsx("div",{style:{display:"flex",alignItems:"center",gap:8,flex:1,justifyContent:"center",minWidth:0},children:c}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexShrink:0},children:[f,s||h&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{style:{width:30,height:30,borderRadius:"50%",background:z(h),display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("span",{style:{fontSize:11,fontWeight:600,color:"#fff",letterSpacing:"0.02em",lineHeight:1},children:b})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:1},children:[e.jsx("span",{style:{fontSize:"var(--text-sm)",fontWeight:550,color:"var(--text-strong)",lineHeight:1.2},children:h}),g&&e.jsx("span",{style:{fontSize:"var(--text-xs)",color:"var(--text-muted)",lineHeight:1.2},children:g})]}),l&&e.jsx("button",{onClick:l,title:"Sign out",style:{display:"flex",alignItems:"center",justifyContent:"center",width:28,height:28,borderRadius:"var(--radius-sm)",border:"none",background:"transparent",color:"var(--text-faint)",cursor:"pointer",transition:"background 0.15s ease, color 0.15s ease"},onMouseEnter:p=>{p.currentTarget.style.background="var(--hover-warm)",p.currentTarget.style.color="var(--text-muted)"},onMouseLeave:p=>{p.currentTarget.style.background="transparent",p.currentTarget.style.color="var(--text-faint)"},children:e.jsx(n.LogOut,{size:14})})]})]})]})}function L({label:r,color:t="var(--text-muted)",active:o,onClick:i}){return e.jsxs("button",{onClick:i,style:{display:"flex",alignItems:"center",gap:4,fontSize:"var(--text-sm)",fontWeight:500,fontFamily:"var(--font-sans)",padding:"4px 10px",borderRadius:"var(--radius-sm)",border:`1px solid color-mix(in srgb, ${t} 30%, transparent)`,background:`color-mix(in srgb, ${t} 10%, transparent)`,color:t,cursor:"pointer",transition:"background 0.15s ease, border-color 0.15s ease"},onMouseEnter:u=>{u.currentTarget.style.background=`color-mix(in srgb, ${t} 18%, transparent)`},onMouseLeave:u=>{u.currentTarget.style.background=`color-mix(in srgb, ${t} 10%, transparent)`},children:[r,e.jsx(n.ChevronDown,{size:12,style:{transform:o?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",opacity:.7}})]})}function R({open:r,onClose:t,children:o,align:i="left"}){return r?e.jsxs(e.Fragment,{children:[e.jsx("div",{onClick:t,style:{position:"fixed",inset:0,zIndex:99,background:"rgba(0,0,0,0.03)"}}),e.jsx("div",{style:{position:"absolute",top:"100%",[i==="right"?"right":"left"]:0,marginTop:4,zIndex:100,background:"#fff",border:"1px solid var(--border)",borderRadius:"var(--radius)",padding:4,minWidth:200,maxHeight:280,overflowY:"auto",boxShadow:"0 8px 24px rgba(0,0,0,0.12)"},children:o})]}):null}function F({label:r,active:t,onClick:o}){return e.jsx("div",{onClick:o,style:{padding:"8px 10px",borderRadius:"var(--radius-sm)",cursor:"pointer",fontSize:"var(--text-sm)",color:t?"var(--text-ink)":"var(--text-base)",fontWeight:t?600:400,fontFamily:"var(--font-sans)",background:t?"var(--hover-warm)":"transparent",transition:"background 0.1s ease"},onMouseEnter:i=>{t||(i.currentTarget.style.background="var(--hover-warm-subtle)")},onMouseLeave:i=>{t||(i.currentTarget.style.background="transparent")},children:r})}function W({connected:r,label:t}){const o=t||(r?"Connected":"Disconnected");return e.jsx("span",{style:{fontSize:"var(--text-xs)",fontFamily:"var(--font-sans)",padding:"3px 10px",borderRadius:12,border:`1px solid ${r?"var(--state-present)":"var(--border)"}`,color:r?"var(--state-present)":"var(--text-faint)",background:r?"rgba(37,163,114,0.08)":"transparent",transition:"all 0.2s ease"},children:o})}function D(r){if(!r)return"?";const t=r.trim().split(/\s+/);return t.length>=2?(t[0][0]+t[t.length-1][0]).toUpperCase():r.slice(0,2).toUpperCase()}exports.NavDropdown=R;exports.NavDropdownItem=F;exports.NavPill=L;exports.NavigationBar=M;exports.Sidebar=B;exports.StatusIndicator=W;
2
2
  //# sourceMappingURL=navigation.cjs.js.map