chordia-ui 3.3.8 → 3.3.9
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.
- package/dist/AgentLiftCard.cjs.js.map +1 -1
- package/dist/AgentLiftCard.es.js +5 -3
- package/dist/AgentLiftCard.es.js.map +1 -1
- package/dist/CustomFilterChips.cjs.js.map +1 -1
- package/dist/CustomFilterChips.es.js +2 -1
- package/dist/CustomFilterChips.es.js.map +1 -1
- package/dist/FileUploadingState.cjs.js.map +1 -1
- package/dist/FileUploadingState.es.js +16 -10
- package/dist/FileUploadingState.es.js.map +1 -1
- package/dist/IntegrationCard.cjs.js.map +1 -1
- package/dist/IntegrationCard.es.js +3 -3
- package/dist/IntegrationCard.es.js.map +1 -1
- package/dist/SectionLabel.cjs.js.map +1 -1
- package/dist/SectionLabel.es.js.map +1 -1
- package/dist/SmallButton.cjs.js.map +1 -1
- package/dist/SmallButton.es.js +16 -16
- package/dist/SmallButton.es.js.map +1 -1
- package/dist/SummarySection.cjs.js.map +1 -1
- package/dist/SummarySection.es.js +11 -9
- package/dist/SummarySection.es.js.map +1 -1
- package/dist/TextInput.cjs.js.map +1 -1
- package/dist/TextInput.es.js.map +1 -1
- package/dist/Timeline.cjs.js.map +1 -1
- package/dist/Timeline.es.js +14 -8
- package/dist/Timeline.es.js.map +1 -1
- package/dist/Tooltip.cjs.js +1 -1
- package/dist/Tooltip.cjs.js.map +1 -1
- package/dist/Tooltip.es.js +31 -20
- package/dist/Tooltip.es.js.map +1 -1
- package/dist/TourGuideTooltip.cjs.js.map +1 -1
- package/dist/TourGuideTooltip.es.js +2 -1
- package/dist/TourGuideTooltip.es.js.map +1 -1
- package/dist/UpdatedInteractionRecording.cjs.js +1 -1
- package/dist/UpdatedInteractionRecording.cjs.js.map +1 -1
- package/dist/UpdatedInteractionRecording.es.js +79 -97
- package/dist/UpdatedInteractionRecording.es.js.map +1 -1
- package/dist/UploadInteraction.cjs.js.map +1 -1
- package/dist/UploadInteraction.es.js.map +1 -1
- package/dist/colors.cjs.js +2 -0
- package/dist/colors.cjs.js.map +1 -0
- package/dist/colors.es.js +2 -0
- package/dist/colors.es.js.map +1 -0
- package/dist/components/UpdatedInteractionDetails.cjs.js +10 -1
- package/dist/components/UpdatedInteractionDetails.cjs.js.map +1 -1
- package/dist/components/UpdatedInteractionDetails.es.js +1531 -9
- package/dist/components/UpdatedInteractionDetails.es.js.map +1 -1
- package/dist/components/chat.cjs.js +30 -1
- package/dist/components/chat.cjs.js.map +1 -1
- package/dist/components/chat.es.js +2222 -7
- package/dist/components/chat.es.js.map +1 -1
- package/dist/components/common.cjs.js +1 -1
- package/dist/components/common.es.js +32 -25
- package/dist/components/common.es.js.map +1 -1
- package/dist/components/data.cjs.js +1 -1
- package/dist/components/data.cjs.js.map +1 -1
- package/dist/components/data.es.js +1033 -4
- package/dist/components/data.es.js.map +1 -1
- package/dist/components/layout.cjs.js +3 -1
- package/dist/components/layout.cjs.js.map +1 -1
- package/dist/components/layout.es.js +1533 -8
- package/dist/components/layout.es.js.map +1 -1
- package/dist/components/login.cjs.js +1 -1
- package/dist/components/login.es.js +6 -2
- package/dist/components/login.es.js.map +1 -1
- package/dist/components/media.cjs.js +1 -1
- package/dist/components/media.cjs.js.map +1 -1
- package/dist/components/media.es.js +220 -6
- package/dist/components/media.es.js.map +1 -1
- package/dist/components/models.cjs.js +1 -1
- package/dist/components/models.cjs.js.map +1 -1
- package/dist/components/models.es.js +91 -2
- package/dist/components/models.es.js.map +1 -1
- package/dist/components/navigation.cjs.js +1 -1
- package/dist/components/navigation.cjs.js.map +1 -1
- package/dist/components/navigation.es.js +766 -7
- package/dist/components/navigation.es.js.map +1 -1
- package/dist/components/notifications.cjs.js +1 -1
- package/dist/components/notifications.cjs.js.map +1 -1
- package/dist/components/notifications.es.js +368 -3
- package/dist/components/notifications.es.js.map +1 -1
- package/dist/components/onboarding.cjs.js +1 -1
- package/dist/components/onboarding.cjs.js.map +1 -1
- package/dist/components/onboarding.es.js +985 -7
- package/dist/components/onboarding.es.js.map +1 -1
- package/dist/components/primitives.cjs.js +1 -1
- package/dist/components/primitives.cjs.js.map +1 -1
- package/dist/components/primitives.es.js +635 -25
- package/dist/components/primitives.es.js.map +1 -1
- package/dist/debugger-wc.cjs.js +4 -4
- package/dist/debugger-wc.cjs.js.map +1 -1
- package/dist/debugger-wc.es.js +15 -11
- package/dist/debugger-wc.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs2.js +2 -49
- package/dist/index.cjs2.js.map +1 -1
- package/dist/index.cjs3.js +50 -0
- package/dist/index.cjs3.js.map +1 -0
- package/dist/index.es.js +104 -99
- package/dist/index.es.js.map +1 -1
- package/dist/index.es2.js +2632 -1776
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es3.js +1944 -0
- package/dist/index.es3.js.map +1 -0
- package/dist/pages/interactionDetails.cjs.js +1 -1
- package/dist/pages/interactionDetails.cjs.js.map +1 -1
- package/dist/pages/interactionDetails.es.js +70 -47
- package/dist/pages/interactionDetails.es.js.map +1 -1
- package/dist/sortable.esm.cjs.js +1 -1
- package/dist/sortable.esm.cjs.js.map +1 -1
- package/dist/sortable.esm.es.js +55 -53
- package/dist/sortable.esm.es.js.map +1 -1
- package/dist/{chordia-ui.css → style.css} +1 -1
- package/package.json +1 -1
- package/src/components/UpdatedInteractionDetails/UpdatedInteractionDetails.jsx +318 -77
- package/src/components/UpdatedInteractionDetails/UpdatedInteractionRecording.jsx +7 -17
- package/dist/ChartRenderer.cjs.js +0 -31
- package/dist/ChartRenderer.cjs.js.map +0 -1
- package/dist/ChartRenderer.es.js +0 -2210
- package/dist/ChartRenderer.es.js.map +0 -1
- package/dist/GettingStarted.cjs.js +0 -2
- package/dist/GettingStarted.cjs.js.map +0 -1
- package/dist/GettingStarted.es.js +0 -983
- package/dist/GettingStarted.es.js.map +0 -1
- package/dist/InlineConfirm.cjs.js +0 -2
- package/dist/InlineConfirm.cjs.js.map +0 -1
- package/dist/InlineConfirm.es.js +0 -618
- package/dist/InlineConfirm.es.js.map +0 -1
- package/dist/InteractionSummaryCard.cjs.js +0 -2
- package/dist/InteractionSummaryCard.cjs.js.map +0 -1
- package/dist/InteractionSummaryCard.es.js +0 -216
- package/dist/InteractionSummaryCard.es.js.map +0 -1
- package/dist/LoginPage.cjs.js +0 -3
- package/dist/LoginPage.cjs.js.map +0 -1
- package/dist/LoginPage.es.js +0 -2618
- package/dist/LoginPage.es.js.map +0 -1
- package/dist/NavigationBar.cjs.js +0 -2
- package/dist/NavigationBar.cjs.js.map +0 -1
- package/dist/NavigationBar.es.js +0 -762
- package/dist/NavigationBar.es.js.map +0 -1
- package/dist/NotificationPanel.cjs.js +0 -2
- package/dist/NotificationPanel.cjs.js.map +0 -1
- package/dist/NotificationPanel.es.js +0 -371
- package/dist/NotificationPanel.es.js.map +0 -1
- package/dist/OverlayPanel.cjs.js +0 -2
- package/dist/OverlayPanel.cjs.js.map +0 -1
- package/dist/OverlayPanel.es.js +0 -93
- package/dist/OverlayPanel.es.js.map +0 -1
- package/dist/SplitPane.cjs.js +0 -4
- package/dist/SplitPane.cjs.js.map +0 -1
- package/dist/SplitPane.es.js +0 -1531
- package/dist/SplitPane.es.js.map +0 -1
- package/dist/SummaryStatsPanel.cjs.js +0 -2
- package/dist/SummaryStatsPanel.cjs.js.map +0 -1
- package/dist/SummaryStatsPanel.es.js +0 -1027
- package/dist/SummaryStatsPanel.es.js.map +0 -1
- package/dist/UpdatedInteractionDetails.cjs.js +0 -11
- package/dist/UpdatedInteractionDetails.cjs.js.map +0 -1
- package/dist/UpdatedInteractionDetails.es.js +0 -1310
- package/dist/UpdatedInteractionDetails.es.js.map +0 -1
|
@@ -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, X } 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 = ({\n onFileSelect,\n showUploadQueuedMessage = false,\n uploadSummary = { successCount: 0, failedCount: 0, primaryFailureReason: '' },\n}) => {\n const [dragOver, setDragOver] = useState(false);\n const [isStatusDismissed, setIsStatusDismissed] = useState(false);\n const fileInputRef = useRef(null);\n const successCount = uploadSummary?.successCount || 0;\n const failedCount = uploadSummary?.failedCount || 0;\n const primaryFailureReason = uploadSummary?.primaryFailureReason || '';\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 setIsStatusDismissed(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 setIsStatusDismissed(false);\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\n {showUploadQueuedMessage && !isStatusDismissed && (\n <div \n style={{\n marginTop: 16,\n borderRadius: 10,\n border: '1px solid var(--border)',\n background: 'var(--grey-light)',\n padding: 'var(--spacing-2) var(--spacing-3)',\n }}>\n <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', gap: 12 }}>\n <p style={{ fontSize: 15, fontWeight: 600, fontFamily: FF, color: 'var(--grey-strong)' }}>Upload status</p>\n <button\n type=\"button\"\n style={{ \n display: 'flex',\n alignItems: 'center', justifyContent: 'center', width: 20, height: 20, borderRadius: 10, background: 'var(--grey-light)', cursor: 'pointer',\n border: 'none',\n outline: 'none',\n padding: 0,\n margin: 0,\n }}\n onClick={() => setIsStatusDismissed(true)}\n >\n <X size={14} color=\"var(--grey-strong)\" />\n </button>\n </div>\n <p style={{ fontSize: 13, fontWeight: 400, fontFamily: FF, color: 'var(--grey-strong)', marginTop: 8 }}>\n {failedCount > 0 && successCount > 0\n ? `${successCount} file${successCount > 1 ? 's are' : ' is'} successfully uploaded and ${failedCount} file${failedCount > 1 ? 's are' : ' is'} failed.`\n : failedCount > 0\n ? `${failedCount} file${failedCount > 1 ? 's' : ''} failed to upload.`\n : successCount > 1\n ? `${successCount} files are queued for evaluation.`\n : 'Your file is queued for evaluation.'}\n </p>\n <p className=\"mt-1 text-xs text-gray-600\">\n {failedCount > 0\n ? `Failed because ${primaryFailureReason || 'of a validation issue'}.`\n : 'You can continue using the app while upload runs in the background. Results will appear in the project history once ready.'}\n </p>\n </div>\n )}\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","showUploadQueuedMessage","uploadSummary","dragOver","setDragOver","isStatusDismissed","setIsStatusDismissed","fileInputRef","useRef","successCount","failedCount","primaryFailureReason","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","handleFileChange","CloudUpload","X"],"mappings":"+FAGMA,EAAK,mBAILC,EAAiB,CACrB,QAAS,YACT,WAAYD,EACZ,UAAW,QACX,WAAY,oBACZ,UAAW,YACb,EAEME,EAAe,CACnB,SAAU,kBACV,WAAY,mBACZ,WAAYF,EACZ,MAAO,kBACP,OAAQ,EACR,cAAe,wBACf,WAAY,sBACd,EAEMG,EAAgB,CACpB,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,OACZ,MAAO,8BACP,OAAQ,UACR,WAAYH,CACd,EAEMI,EAAY,CAChB,QAAS,OACT,oBAAqB,UACrB,IAAK,GACL,UAAW,MACb,EAEMC,EAAY,CAChB,QAAS,OACT,OAAQ,IACR,QAAS,GACT,cAAe,SACf,eAAgB,gBAChB,WAAY,aACZ,aAAc,GACd,OAAQ,+BACR,WAAY,oBACZ,UAAW,aACX,WAAY,oBACZ,OAAQ,UACR,IAAK,CACP,EAEMC,EAAiB,CACrB,GAAGD,EACH,UAAW,kBACb,EAEME,EAAmB,CACvB,MAAO,GACP,OAAQ,GACR,aAAc,gBACd,WAAY,yBACZ,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,MAAO,kBACT,EAEMC,EAAiB,CACrB,MAAO,qBACP,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,SACZ,WAAYR,EACZ,OAAQ,CACV,EAEMS,EAAgB,CACpB,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,OACZ,MAAO,mBACP,OAAQ,EACR,WAAYT,EACZ,KAAM,OACR,EAEMU,EAAW,CACf,QAAS,OACT,OAAQ,GACR,QAAS,GACT,eAAgB,SAChB,WAAY,SACZ,IAAK,GACL,aAAc,GACd,WAAY,qBACZ,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,EACZ,WAAYV,EACZ,MAAO,oBACP,OAAQ,OACR,OAAQ,UACR,WAAY,yBACZ,QAAS,OACT,UAAW,YACb,EAEMW,EAAgB,CACpB,KAAM,EACN,OAAQ,EACR,aAAc,EACd,WAAY,gBACZ,SAAU,QACZ,EAEMC,EAAmBC,IAAS,CAChC,MAAO,GAAGA,CAAG,IACb,OAAQ,OACR,aAAc,EACd,WAAY,qBACZ,WAAY,qBACd,GAEMC,EAAmB,CACvB,QAAS,cACT,WAAY,SACZ,IAAK,EACL,SAAU,iBACV,WAAY,uBACZ,MAAO,yBACP,WAAYd,EACZ,WAAY,EACd,EAIA,SAASe,EAAe,CAAE,KAAAC,EAAM,MAAAC,EAAO,YAAAC,EAAa,YAAAC,EAAa,SAAAC,EAAU,YAAAC,EAAa,SAAAC,GAAY,CAClG,KAAM,CAACC,EAASC,CAAU,EAAIC,EAAAA,SAAS,EAAK,EAE5C,OACEC,EAAAA,KAAC,MAAA,CACC,MAAOH,EAAUjB,EAAiBD,EAClC,aAAc,IAAMmB,EAAW,EAAI,EACnC,aAAc,IAAMA,EAAW,EAAK,EAEpC,SAAA,CAAAE,OAAC,MAAA,CACC,SAAA,CAAAA,EAAAA,KAAC,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,IAAK,EAAA,EACxD,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,MAAOpB,EAAmB,SAAAS,EAAK,EACpCW,EAAAA,IAAC,KAAA,CAAG,MAAOnB,EAAiB,SAAAS,CAAA,CAAM,CAAA,EACpC,EACAS,EAAAA,KAAC,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,cAAe,SAAU,IAAK,EAAG,WAAY,GAAI,UAAW,GACxF,SAAA,CAAAR,GAAeS,EAAAA,IAAC,IAAA,CAAE,MAAOlB,EAAgB,SAAAS,EAAY,EACrDI,CAAA,CAAA,CACH,CAAA,EACF,EACAI,EAAAA,KAAC,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,WAAY,EAAA,EAC/D,SAAA,CAAAC,EAAAA,IAAC,SAAA,CACC,MAAOjB,EACP,QAASU,EACT,aAAeQ,GAAM,CAAEA,EAAE,cAAc,MAAM,QAAU,MAAQ,EAC/D,aAAeA,GAAM,CAAEA,EAAE,cAAc,MAAM,QAAU,GAAK,EAE3D,SAAAT,CAAA,CAAA,EAEFE,GACCK,EAAAA,KAAC,OAAA,CAAK,MAAOZ,EACX,SAAA,CAAAa,EAAAA,IAAC,MAAA,CAAI,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,eAAe,SAAAA,MAAC,OAAA,CAAK,EAAE,oDAAoD,EAAE,EAAM,aAAA,CAAA,CAE1I,CAAA,CAAA,CAEJ,CAAA,CAAA,CAAA,CAGN,CAIA,MAAME,EAAiB,CAAC,CACtB,SAAAC,EAAW,OACX,eAAAC,EAAiB,EACjB,WAAAC,EAAa,EACb,SAAAC,EACA,WAAAC,EACA,UAAAC,EACA,UAAAC,CACF,IAAM,CACJ,MAAMC,EAAeN,EAAiBC,EAAc,IAEpD,OACEN,EAAAA,KAAC,MAAA,CAAI,MAAOzB,EACV,SAAA,CAAAyB,EAAAA,KAAC,KAAA,CAAG,MAAOxB,EAAc,SAAA,CAAA,WAAS4B,CAAA,EAAS,EAC3CH,EAAAA,IAAC,IAAA,CAAE,MAAOxB,EAAe,SAAA,wDAAqD,EAE9EuB,EAAAA,KAAC,MAAA,CAAI,MAAOtB,EAEV,SAAA,CAAAuB,EAAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACW,EAAAA,OAAA,CAAO,KAAM,EAAA,CAAI,EACxB,MAAM,4BACN,YAAY,2FACZ,YAAY,SACZ,SAAUL,CAAA,CAAA,EAIZN,EAAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACY,EAAAA,WAAA,CAAW,KAAM,EAAA,CAAI,EAC5B,MAAM,+BACN,YAAY,uDACZ,YAAY,WACZ,SAAUL,EAEV,SAAAR,EAAAA,KAAC,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,IAAK,EAAG,MAAO,MAAA,EAClE,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,MAAOhB,EACV,SAAAgB,EAAAA,IAAC,OAAI,MAAOf,EAAgByB,CAAW,CAAA,CAAG,CAAA,CAC5C,EACAX,EAAAA,KAAC,OAAA,CAAK,MAAO,CAAE,SAAU,GAAI,MAAO,oBAAqB,WAAY1B,EAAI,WAAY,QAAA,EACnF,SAAA,CAAA2B,EAAAA,IAAC,SAAA,CAAO,MAAO,CAAE,MAAO,mBAAoB,WAAY,GAAA,EAAQ,SAAAI,CAAA,CAAe,EAAS,OAAKC,EAAW,kBAAA,CAAA,CAC1G,CAAA,CAAA,CACF,CAAA,CAAA,EAIFL,EAAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACa,EAAAA,QAAA,CAAQ,KAAM,EAAA,CAAI,EACzB,MAAM,wBACN,YAAY,0GACZ,YAAY,UACZ,SAAUL,EACV,YAAW,EAAA,CAAA,EAIbR,EAAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACc,EAAAA,MAAA,CAAM,KAAM,EAAA,CAAI,EACvB,MAAM,sBACN,YAAY,2EACZ,YAAY,UACZ,SAAUL,CAAA,CAAA,CACZ,CAAA,CACF,CAAA,EACF,CAEJ,ECzPMpC,EAAK,mBAILC,EAAiB,CACrB,WAAYD,CACd,EAEM0C,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,UAAW,SACX,WAAY1C,EACZ,MAAO,qBACP,OAAQ,EACR,WAAY,QACd,EAEM2C,EAAuB,CAC3B,SAAU,GACV,WAAY,IACZ,UAAW,SACX,MAAO,8BACP,WAAY3C,EACZ,OAAQ,UACR,WAAY,MACd,EAEM4C,EAAgB,CACpB,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,MAAO,OACP,UAAW,IACX,aAAc,GACd,OAAQ,uCACR,WAAY,oBACZ,UAAW,aACX,OAAQ,UACR,WAAY,yBACZ,UAAW,GACX,QAAS,WACX,EAEMC,EAAqB,CACzB,GAAGD,EACH,YAAa,qBACb,WAAY,yBACd,EAEME,EAAmB,CACvB,MAAO,GACP,OAAQ,GACR,aAAc,KACd,WAAY,iBACZ,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,WAAY,EACZ,aAAc,EAChB,EAEMC,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,WAAY/C,EACZ,MAAO,qBACP,UAAW,SACX,WAAY,OACZ,OAAQ,CACV,EAEMgD,EAAoB,CACxB,QAAS,OACT,OAAQ,GACR,QAAS,GACT,eAAgB,SAChB,WAAY,SACZ,IAAK,GACL,aAAc,GACd,OAAQ,+BACR,WAAY,oBACZ,SAAU,GACV,WAAY,IACZ,WAAYhD,EACZ,MAAO,qBACP,OAAQ,UACR,WAAY,yBACZ,QAAS,OACT,UAAW,GACX,UAAW,YACb,EAEMiD,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,WAAYjD,EACZ,MAAO,oBACP,UAAW,SACX,UAAW,GACX,WAAY,MACd,EAIMkD,EAAoB,CAAC,CACzB,aAAAC,EACA,wBAAAC,EAA0B,GAC1B,cAAAC,EAAgB,CAAE,aAAc,EAAG,YAAa,EAAG,qBAAsB,EAAA,CAC3E,IAAM,CACJ,KAAM,CAACC,EAAUC,CAAW,EAAI9B,EAAAA,SAAS,EAAK,EACxC,CAAC+B,EAAmBC,CAAoB,EAAIhC,EAAAA,SAAS,EAAK,EAC1DiC,EAAeC,EAAAA,OAAO,IAAI,EAC1BC,GAAeP,GAAA,YAAAA,EAAe,eAAgB,EAC9CQ,GAAcR,GAAA,YAAAA,EAAe,cAAe,EAC5CS,GAAuBT,GAAA,YAAAA,EAAe,uBAAwB,GAE9DU,EAAkBnC,GAAM,CAC5BA,EAAE,eAAA,EACF2B,EAAY,EAAI,CAClB,EAEMS,EAAkB,IAAM,CAC5BT,EAAY,EAAK,CACnB,EAEMU,EAAcrC,GAAM,OACxBA,EAAE,eAAA,EACF2B,EAAY,EAAK,EACjBE,EAAqB,EAAK,EAC1B,MAAMS,GAAQC,EAAAvC,EAAE,eAAF,YAAAuC,EAAgB,MAC1BD,GAAA,MAAAA,EAAO,SACTf,GAAA,MAAAA,EAAee,GAEnB,EAEME,EAAoB,IAAM,QAC9BD,EAAAT,EAAa,UAAb,MAAAS,EAAsB,OACxB,EAEME,EAAoBzC,GAAM,CAC9B,MAAMsC,EAAQtC,EAAE,OAAO,MACnBsC,GAAA,MAAAA,EAAO,SACTT,EAAqB,EAAK,EAC1BN,GAAA,MAAAA,EAAee,IAEjBtC,EAAE,OAAO,MAAQ,EACnB,EAEA,OACEF,EAAAA,KAAC,MAAA,CAAI,MAAOzB,EACV,SAAA,CAAA0B,EAAAA,IAAC,KAAA,CAAG,MAAOe,EAAmB,SAAA,uBAAoB,EAClDf,EAAAA,IAAC,IAAA,CAAE,MAAOgB,EAAsB,SAAA,oFAEhC,EAEAhB,EAAAA,IAAC,QAAA,CACC,IAAK+B,EACL,KAAK,OACL,OAAO,qEACP,SAAQ,GACR,MAAO,CAAE,QAAS,MAAA,EAClB,SAAUW,CAAA,CAAA,EAGZ3C,EAAAA,KAAC,MAAA,CACC,MAAO4B,EAAWT,EAAqBD,EACvC,WAAYmB,EACZ,YAAaC,EACb,OAAQC,EACR,QAASG,EAET,SAAA,CAAAzC,EAAAA,IAAC,MAAA,CAAI,MAAOmB,EACV,SAAAnB,EAAAA,IAAC2C,eAAY,KAAM,GAAI,MAAM,oBAAA,CAAqB,CAAA,CACpD,EACA3C,EAAAA,IAAC,IAAA,CAAE,MAAOoB,EAAmB,SAAA,0BAAuB,EACpDpB,EAAAA,IAAC,SAAA,CACC,KAAK,SACL,MAAOqB,EACP,QAAUpB,GAAM,CAAEA,EAAE,gBAAA,EAAmBwC,EAAA,CAAqB,EAC5D,aAAexC,GAAM,CAAEA,EAAE,cAAc,MAAM,WAAa,0BAA4B,EACtF,aAAeA,GAAM,CAAEA,EAAE,cAAc,MAAM,WAAa,mBAAqB,EAChF,SAAA,cAAA,CAAA,EAGDD,EAAAA,IAAC,IAAA,CAAE,MAAOsB,EAAmB,SAAA,wCAAA,CAAsC,CAAA,CAAA,CAAA,EAGpEG,GAA2B,CAACI,GAC3B9B,EAAAA,KAAC,MAAA,CACD,MAAO,CACL,UAAW,GACX,aAAc,GACd,OAAQ,0BACR,WAAY,oBACZ,QAAS,mCAAA,EAET,SAAA,CAAAA,EAAAA,KAAC,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,eAAgB,gBAAiB,IAAK,EAAA,EACzF,SAAA,CAAAC,EAAAA,IAAC,IAAA,CAAE,MAAO,CAAE,SAAU,GAAI,WAAY,IAAK,WAAY3B,EAAI,MAAO,oBAAA,EAAwB,SAAA,gBAAa,EACvG2B,EAAAA,IAAC,SAAA,CACC,KAAK,SACL,MAAO,CACL,QAAS,OACT,WAAY,SAAU,eAAgB,SAAU,MAAO,GAAI,OAAQ,GAAI,aAAc,GAAI,WAAY,oBAAqB,OAAQ,UAClI,OAAQ,OACR,QAAS,OACT,QAAS,EACT,OAAQ,CAAA,EAEV,QAAS,IAAM8B,EAAqB,EAAI,EAExC,SAAA9B,EAAAA,IAAC4C,IAAA,CAAE,KAAM,GAAI,MAAM,oBAAA,CAAqB,CAAA,CAAA,CAC1C,EACF,EACA5C,EAAAA,IAAC,KAAE,MAAO,CAAE,SAAU,GAAI,WAAY,IAAK,WAAY3B,EAAI,MAAO,qBAAsB,UAAW,CAAA,EAChG,SAAA6D,EAAc,GAAKD,EAAe,EAC/B,GAAGA,CAAY,QAAQA,EAAe,EAAI,QAAU,KAAK,8BAA8BC,CAAW,QAAQA,EAAc,EAAI,QAAU,KAAK,WAC3IA,EAAc,EACZ,GAAGA,CAAW,QAAQA,EAAc,EAAI,IAAM,EAAE,qBAChDD,EAAe,EACb,GAAGA,CAAY,oCACf,qCAAA,CACV,EACAjC,EAAAA,IAAC,IAAA,CAAE,UAAU,6BACV,SAAAkC,EAAc,EACX,kBAAkBC,GAAwB,uBAAuB,IACjE,4HAAA,CACN,CAAA,CAAA,CAAA,CACF,EAEJ,CAEJ"}
|
|
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, X } 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 = ({\n onFileSelect,\n showUploadQueuedMessage = false,\n uploadSummary = { successCount: 0, failedCount: 0, primaryFailureReason: '' },\n}) => {\n const [dragOver, setDragOver] = useState(false);\n const [isStatusDismissed, setIsStatusDismissed] = useState(false);\n const fileInputRef = useRef(null);\n const successCount = uploadSummary?.successCount || 0;\n const failedCount = uploadSummary?.failedCount || 0;\n const primaryFailureReason = uploadSummary?.primaryFailureReason || '';\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 setIsStatusDismissed(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 setIsStatusDismissed(false);\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\n {showUploadQueuedMessage && !isStatusDismissed && (\n <div \n style={{\n marginTop: 16,\n borderRadius: 10,\n border: '1px solid var(--border)',\n background: 'var(--grey-light)',\n padding: 'var(--spacing-2) var(--spacing-3)',\n }}>\n <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', gap: 12 }}>\n <p style={{ fontSize: 15, fontWeight: 600, fontFamily: FF, color: 'var(--grey-strong)' }}>Upload status</p>\n <button\n type=\"button\"\n style={{ \n display: 'flex',\n alignItems: 'center', justifyContent: 'center', width: 20, height: 20, borderRadius: 10, background: 'var(--grey-light)', cursor: 'pointer',\n border: 'none',\n outline: 'none',\n padding: 0,\n margin: 0,\n }}\n onClick={() => setIsStatusDismissed(true)}\n >\n <X size={14} color=\"var(--grey-strong)\" />\n </button>\n </div>\n <p style={{ fontSize: 13, fontWeight: 400, fontFamily: FF, color: 'var(--grey-strong)', marginTop: 8 }}>\n {failedCount > 0 && successCount > 0\n ? `${successCount} file${successCount > 1 ? 's are' : ' is'} successfully uploaded and ${failedCount} file${failedCount > 1 ? 's are' : ' is'} failed.`\n : failedCount > 0\n ? `${failedCount} file${failedCount > 1 ? 's' : ''} failed to upload.`\n : successCount > 1\n ? `${successCount} files are queued for evaluation.`\n : 'Your file is queued for evaluation.'}\n </p>\n <p className=\"mt-1 text-xs text-gray-600\">\n {failedCount > 0\n ? `Failed because ${primaryFailureReason || 'of a validation issue'}.`\n : 'You can continue using the app while upload runs in the background. Results will appear in the project history once ready.'}\n </p>\n </div>\n )}\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","showUploadQueuedMessage","uploadSummary","dragOver","setDragOver","isStatusDismissed","setIsStatusDismissed","fileInputRef","useRef","successCount","failedCount","primaryFailureReason","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","handleFileChange","CloudUpload","X"],"mappings":"+FAGMA,EAAK,mBAILC,EAAiB,CACrB,QAAS,YACT,WAAYD,EACZ,UAAW,QACX,WAAY,oBACZ,UAAW,YACb,EAEME,EAAe,CACnB,SAAU,kBACV,WAAY,mBACZ,WAAYF,EACZ,MAAO,kBACP,OAAQ,EACR,cAAe,wBACf,WAAY,sBACd,EAEMG,EAAgB,CACpB,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,OACZ,MAAO,8BACP,OAAQ,UACR,WAAYH,CACd,EAEMI,EAAY,CAChB,QAAS,OACT,oBAAqB,UACrB,IAAK,GACL,UAAW,MACb,EAEMC,EAAY,CAChB,QAAS,OACT,OAAQ,IACR,QAAS,GACT,cAAe,SACf,eAAgB,gBAChB,WAAY,aACZ,aAAc,GACd,OAAQ,+BACR,WAAY,oBACZ,UAAW,aACX,WAAY,oBACZ,OAAQ,UACR,IAAK,CACP,EAEMC,EAAiB,CACrB,GAAGD,EACH,UAAW,kBACb,EAEME,EAAmB,CACvB,MAAO,GACP,OAAQ,GACR,aAAc,gBACd,WAAY,yBACZ,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,MAAO,kBACT,EAEMC,EAAiB,CACrB,MAAO,qBACP,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,SACZ,WAAYR,EACZ,OAAQ,CACV,EAEMS,EAAgB,CACpB,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,OACZ,MAAO,mBACP,OAAQ,EACR,WAAYT,EACZ,KAAM,OACR,EAEMU,EAAW,CACf,QAAS,OACT,OAAQ,GACR,QAAS,GACT,eAAgB,SAChB,WAAY,SACZ,IAAK,GACL,aAAc,GACd,WAAY,qBACZ,SAAU,GACV,UAAW,SACX,WAAY,IACZ,WAAY,EACZ,WAAYV,EACZ,MAAO,oBACP,OAAQ,OACR,OAAQ,UACR,WAAY,yBACZ,QAAS,OACT,UAAW,YACb,EAEMW,EAAgB,CACpB,KAAM,EACN,OAAQ,EACR,aAAc,EACd,WAAY,gBACZ,SAAU,QACZ,EAEMC,EAAmBC,IAAS,CAChC,MAAO,GAAGA,CAAG,IACb,OAAQ,OACR,aAAc,EACd,WAAY,qBACZ,WAAY,qBACd,GAEMC,EAAmB,CACvB,QAAS,cACT,WAAY,SACZ,IAAK,EACL,SAAU,iBACV,WAAY,uBACZ,MAAO,yBACP,WAAYd,EACZ,WAAY,EACd,EAIA,SAASe,EAAe,CAAE,KAAAC,EAAM,MAAAC,EAAO,YAAAC,EAAa,YAAAC,EAAa,SAAAC,EAAU,YAAAC,EAAa,SAAAC,GAAY,CAClG,KAAM,CAACC,EAASC,CAAU,EAAIC,WAAS,EAAK,EAG1C,OAAAC,EAAA,KAAC,MAAA,CACC,MAAOH,EAAUjB,EAAiBD,EAClC,aAAc,IAAMmB,EAAW,EAAI,EACnC,aAAc,IAAMA,EAAW,EAAK,EAEpC,SAAA,CAAAE,OAAC,MACC,CAAA,SAAA,CAACA,EAAAA,KAAA,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,IAAK,EAAA,EACxD,SAAA,CAACC,EAAA,IAAA,MAAA,CAAI,MAAOpB,EAAmB,SAAKS,EAAA,EACnCW,EAAA,IAAA,KAAA,CAAG,MAAOnB,EAAiB,SAAMS,EAAA,CAAA,EACpC,EACCS,EAAA,KAAA,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,cAAe,SAAU,IAAK,EAAG,WAAY,GAAI,UAAW,CACxF,EAAA,SAAA,CAAAR,GAAgBS,EAAA,IAAA,IAAA,CAAE,MAAOlB,EAAgB,SAAYS,EAAA,EACrDI,CAAA,EACH,CAAA,EACF,EACAI,EAAAA,KAAC,MAAI,CAAA,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,WAAY,EAAA,EAC/D,SAAA,CAAAC,EAAA,IAAC,SAAA,CACC,MAAOjB,EACP,QAASU,EACT,aAAeQ,GAAM,CAAIA,EAAA,cAAc,MAAM,QAAU,MAAQ,EAC/D,aAAeA,GAAM,CAAIA,EAAA,cAAc,MAAM,QAAU,GAAK,EAE3D,SAAAT,CAAA,CACH,EACCE,GACCK,EAAA,KAAC,OAAK,CAAA,MAAOZ,EACX,SAAA,CAAAa,EAAA,IAAC,MAAI,CAAA,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,eAAe,SAAAA,MAAC,OAAK,CAAA,EAAE,mDAAoD,CAAA,EAAE,EAAM,aAAA,EAE1I,CAAA,EAEJ,CAAA,CAAA,CAAA,CAGN,CAIA,MAAME,EAAiB,CAAC,CACtB,SAAAC,EAAW,OACX,eAAAC,EAAiB,EACjB,WAAAC,EAAa,EACb,SAAAC,EACA,WAAAC,EACA,UAAAC,EACA,UAAAC,CACF,IAAM,CACE,MAAAC,EAAeN,EAAiBC,EAAc,IAGlD,OAAAN,EAAA,KAAC,MAAI,CAAA,MAAOzB,EACV,SAAA,CAACyB,EAAAA,KAAA,KAAA,CAAG,MAAOxB,EAAc,SAAA,CAAA,WAAS4B,CAAA,EAAS,EAC1CH,EAAA,IAAA,IAAA,CAAE,MAAOxB,EAAe,SAAqD,wDAAA,EAE9EuB,EAAAA,KAAC,MAAI,CAAA,MAAOtB,EAEV,SAAA,CAAAuB,EAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACW,EAAAA,OAAO,CAAA,KAAM,EAAI,CAAA,EACxB,MAAM,4BACN,YAAY,2FACZ,YAAY,SACZ,SAAUL,CAAA,CACZ,EAGAN,EAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACY,EAAAA,WAAW,CAAA,KAAM,EAAI,CAAA,EAC5B,MAAM,+BACN,YAAY,uDACZ,YAAY,WACZ,SAAUL,EAEV,SAACR,EAAA,KAAA,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,IAAK,EAAG,MAAO,MAAA,EAClE,SAAA,CAACC,EAAAA,IAAA,MAAA,CAAI,MAAOhB,EACV,SAAAgB,EAAAA,IAAC,OAAI,MAAOf,EAAgByB,CAAW,CAAA,CAAG,CAC5C,CAAA,EACCX,EAAAA,KAAA,OAAA,CAAK,MAAO,CAAE,SAAU,GAAI,MAAO,oBAAqB,WAAY1B,EAAI,WAAY,QAAA,EACnF,SAAA,CAAC2B,EAAAA,IAAA,SAAA,CAAO,MAAO,CAAE,MAAO,mBAAoB,WAAY,GAAA,EAAQ,SAAeI,CAAA,CAAA,EAAS,OAAKC,EAAW,kBAAA,EAC1G,CAAA,EACF,CAAA,CACF,EAGAL,EAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACa,EAAAA,QAAQ,CAAA,KAAM,EAAI,CAAA,EACzB,MAAM,wBACN,YAAY,0GACZ,YAAY,UACZ,SAAUL,EACV,YAAW,EAAA,CACb,EAGAR,EAAA,IAACZ,EAAA,CACC,KAAMY,EAAAA,IAACc,EAAAA,MAAM,CAAA,KAAM,EAAI,CAAA,EACvB,MAAM,sBACN,YAAY,2EACZ,YAAY,UACZ,SAAUL,CAAA,CACZ,CAAA,EACF,CACF,CAAA,CAAA,CAEJ,ECzPMpC,EAAK,mBAILC,EAAiB,CACrB,WAAYD,CACd,EAEM0C,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,UAAW,SACX,WAAY1C,EACZ,MAAO,qBACP,OAAQ,EACR,WAAY,QACd,EAEM2C,EAAuB,CAC3B,SAAU,GACV,WAAY,IACZ,UAAW,SACX,MAAO,8BACP,WAAY3C,EACZ,OAAQ,UACR,WAAY,MACd,EAEM4C,EAAgB,CACpB,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,MAAO,OACP,UAAW,IACX,aAAc,GACd,OAAQ,uCACR,WAAY,oBACZ,UAAW,aACX,OAAQ,UACR,WAAY,yBACZ,UAAW,GACX,QAAS,WACX,EAEMC,EAAqB,CACzB,GAAGD,EACH,YAAa,qBACb,WAAY,yBACd,EAEME,EAAmB,CACvB,MAAO,GACP,OAAQ,GACR,aAAc,KACd,WAAY,iBACZ,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,WAAY,EACZ,aAAc,EAChB,EAEMC,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,WAAY/C,EACZ,MAAO,qBACP,UAAW,SACX,WAAY,OACZ,OAAQ,CACV,EAEMgD,EAAoB,CACxB,QAAS,OACT,OAAQ,GACR,QAAS,GACT,eAAgB,SAChB,WAAY,SACZ,IAAK,GACL,aAAc,GACd,OAAQ,+BACR,WAAY,oBACZ,SAAU,GACV,WAAY,IACZ,WAAYhD,EACZ,MAAO,qBACP,OAAQ,UACR,WAAY,yBACZ,QAAS,OACT,UAAW,GACX,UAAW,YACb,EAEMiD,EAAoB,CACxB,SAAU,GACV,WAAY,IACZ,WAAYjD,EACZ,MAAO,oBACP,UAAW,SACX,UAAW,GACX,WAAY,MACd,EAIMkD,EAAoB,CAAC,CACzB,aAAAC,EACA,wBAAAC,EAA0B,GAC1B,cAAAC,EAAgB,CAAE,aAAc,EAAG,YAAa,EAAG,qBAAsB,EAAG,CAC9E,IAAM,CACJ,KAAM,CAACC,EAAUC,CAAW,EAAI9B,WAAS,EAAK,EACxC,CAAC+B,EAAmBC,CAAoB,EAAIhC,WAAS,EAAK,EAC1DiC,EAAeC,SAAO,IAAI,EAC1BC,GAAeP,GAAA,YAAAA,EAAe,eAAgB,EAC9CQ,GAAcR,GAAA,YAAAA,EAAe,cAAe,EAC5CS,GAAuBT,GAAA,YAAAA,EAAe,uBAAwB,GAE9DU,EAAkBnC,GAAM,CAC5BA,EAAE,eAAe,EACjB2B,EAAY,EAAI,CAAA,EAGZS,EAAkB,IAAM,CAC5BT,EAAY,EAAK,CAAA,EAGbU,EAAcrC,GAAM,OACxBA,EAAE,eAAe,EACjB2B,EAAY,EAAK,EACjBE,EAAqB,EAAK,EACpB,MAAAS,GAAQC,EAAAvC,EAAE,eAAF,YAAAuC,EAAgB,MAC1BD,GAAA,MAAAA,EAAO,SACTf,GAAA,MAAAA,EAAee,GACjB,EAGIE,EAAoB,IAAM,QAC9BD,EAAAT,EAAa,UAAb,MAAAS,EAAsB,OAAM,EAGxBE,EAAoBzC,GAAM,CACxB,MAAAsC,EAAQtC,EAAE,OAAO,MACnBsC,GAAA,MAAAA,EAAO,SACTT,EAAqB,EAAK,EAC1BN,GAAA,MAAAA,EAAee,IAEjBtC,EAAE,OAAO,MAAQ,EAAA,EAIjB,OAAAF,EAAA,KAAC,MAAI,CAAA,MAAOzB,EACV,SAAA,CAAC0B,EAAA,IAAA,KAAA,CAAG,MAAOe,EAAmB,SAAoB,uBAAA,EACjDf,EAAA,IAAA,IAAA,CAAE,MAAOgB,EAAsB,SAEhC,oFAAA,EAEAhB,EAAA,IAAC,QAAA,CACC,IAAK+B,EACL,KAAK,OACL,OAAO,qEACP,SAAQ,GACR,MAAO,CAAE,QAAS,MAAO,EACzB,SAAUW,CAAA,CACZ,EAEA3C,EAAA,KAAC,MAAA,CACC,MAAO4B,EAAWT,EAAqBD,EACvC,WAAYmB,EACZ,YAAaC,EACb,OAAQC,EACR,QAASG,EAET,SAAA,CAACzC,EAAAA,IAAA,MAAA,CAAI,MAAOmB,EACV,SAAAnB,EAAA,IAAC2C,eAAY,KAAM,GAAI,MAAM,oBAAA,CAAqB,CACpD,CAAA,EACC3C,EAAA,IAAA,IAAA,CAAE,MAAOoB,EAAmB,SAAuB,0BAAA,EACpDpB,EAAA,IAAC,SAAA,CACC,KAAK,SACL,MAAOqB,EACP,QAAUpB,GAAM,CAAEA,EAAE,gBAAgB,EAAqBwC,GAAG,EAC5D,aAAexC,GAAM,CAAIA,EAAA,cAAc,MAAM,WAAa,0BAA4B,EACtF,aAAeA,GAAM,CAAIA,EAAA,cAAc,MAAM,WAAa,mBAAqB,EAChF,SAAA,cAAA,CAED,EACCD,EAAA,IAAA,IAAA,CAAE,MAAOsB,EAAmB,SAAsC,yCAAA,CAAA,CAAA,CACrE,EAECG,GAA2B,CAACI,GAC3B9B,EAAA,KAAC,MAAA,CACD,MAAO,CACL,UAAW,GACX,aAAc,GACd,OAAQ,0BACR,WAAY,oBACZ,QAAS,mCACX,EACE,SAAA,CAACA,EAAAA,KAAA,MAAA,CAAI,MAAO,CAAE,QAAS,OAAQ,WAAY,SAAU,eAAgB,gBAAiB,IAAK,EAAA,EACzF,SAAA,CAAAC,EAAA,IAAC,IAAE,CAAA,MAAO,CAAE,SAAU,GAAI,WAAY,IAAK,WAAY3B,EAAI,MAAO,oBAAqB,EAAG,SAAa,gBAAA,EACvG2B,EAAA,IAAC,SAAA,CACC,KAAK,SACL,MAAO,CACL,QAAS,OACT,WAAY,SAAU,eAAgB,SAAU,MAAO,GAAI,OAAQ,GAAI,aAAc,GAAI,WAAY,oBAAqB,OAAQ,UAClI,OAAQ,OACR,QAAS,OACT,QAAS,EACT,OAAQ,CACV,EACA,QAAS,IAAM8B,EAAqB,EAAI,EAExC,SAAC9B,EAAA,IAAA4C,IAAA,CAAE,KAAM,GAAI,MAAM,qBAAqB,CAAA,CAC1C,CAAA,EACF,EACA5C,EAAAA,IAAC,KAAE,MAAO,CAAE,SAAU,GAAI,WAAY,IAAK,WAAY3B,EAAI,MAAO,qBAAsB,UAAW,CAAA,EAChG,SAAc6D,EAAA,GAAKD,EAAe,EAC/B,GAAGA,CAAY,QAAQA,EAAe,EAAI,QAAU,KAAK,8BAA8BC,CAAW,QAAQA,EAAc,EAAI,QAAU,KAAK,WAC3IA,EAAc,EACZ,GAAGA,CAAW,QAAQA,EAAc,EAAI,IAAM,EAAE,qBAChDD,EAAe,EACb,GAAGA,CAAY,oCACf,qCACV,CAAA,EACAjC,EAAAA,IAAC,IAAE,CAAA,UAAU,6BACV,SAAAkC,EAAc,EACX,kBAAkBC,GAAwB,uBAAuB,IACjE,4HACN,CAAA,CAAA,CAAA,CACF,CAEJ,CAAA,CAAA,CAEJ"}
|
|
@@ -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, X } 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 = ({\n onFileSelect,\n showUploadQueuedMessage = false,\n uploadSummary = { successCount: 0, failedCount: 0, primaryFailureReason: '' },\n}) => {\n const [dragOver, setDragOver] = useState(false);\n const [isStatusDismissed, setIsStatusDismissed] = useState(false);\n const fileInputRef = useRef(null);\n const successCount = uploadSummary?.successCount || 0;\n const failedCount = uploadSummary?.failedCount || 0;\n const primaryFailureReason = uploadSummary?.primaryFailureReason || '';\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 setIsStatusDismissed(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 setIsStatusDismissed(false);\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\n {showUploadQueuedMessage && !isStatusDismissed && (\n <div \n style={{\n marginTop: 16,\n borderRadius: 10,\n border: '1px solid var(--border)',\n background: 'var(--grey-light)',\n padding: 'var(--spacing-2) var(--spacing-3)',\n }}>\n <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', gap: 12 }}>\n <p style={{ fontSize: 15, fontWeight: 600, fontFamily: FF, color: 'var(--grey-strong)' }}>Upload status</p>\n <button\n type=\"button\"\n style={{ \n display: 'flex',\n alignItems: 'center', justifyContent: 'center', width: 20, height: 20, borderRadius: 10, background: 'var(--grey-light)', cursor: 'pointer',\n border: 'none',\n outline: 'none',\n padding: 0,\n margin: 0,\n }}\n onClick={() => setIsStatusDismissed(true)}\n >\n <X size={14} color=\"var(--grey-strong)\" />\n </button>\n </div>\n <p style={{ fontSize: 13, fontWeight: 400, fontFamily: FF, color: 'var(--grey-strong)', marginTop: 8 }}>\n {failedCount > 0 && successCount > 0\n ? `${successCount} file${successCount > 1 ? 's are' : ' is'} successfully uploaded and ${failedCount} file${failedCount > 1 ? 's are' : ' is'} failed.`\n : failedCount > 0\n ? `${failedCount} file${failedCount > 1 ? 's' : ''} failed to upload.`\n : successCount > 1\n ? `${successCount} files are queued for evaluation.`\n : 'Your file is queued for evaluation.'}\n </p>\n <p className=\"mt-1 text-xs text-gray-600\">\n {failedCount > 0\n ? `Failed because ${primaryFailureReason || 'of a validation issue'}.`\n : 'You can continue using the app while upload runs in the background. Results will appear in the project history once ready.'}\n </p>\n </div>\n )}\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","showUploadQueuedMessage","uploadSummary","dragOver","setDragOver","isStatusDismissed","setIsStatusDismissed","fileInputRef","useRef","successCount","failedCount","primaryFailureReason","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","CloudUpload","X"],"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, X } 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 = ({\n onFileSelect,\n showUploadQueuedMessage = false,\n uploadSummary = { successCount: 0, failedCount: 0, primaryFailureReason: '' },\n}) => {\n const [dragOver, setDragOver] = useState(false);\n const [isStatusDismissed, setIsStatusDismissed] = useState(false);\n const fileInputRef = useRef(null);\n const successCount = uploadSummary?.successCount || 0;\n const failedCount = uploadSummary?.failedCount || 0;\n const primaryFailureReason = uploadSummary?.primaryFailureReason || '';\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 setIsStatusDismissed(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 setIsStatusDismissed(false);\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\n {showUploadQueuedMessage && !isStatusDismissed && (\n <div \n style={{\n marginTop: 16,\n borderRadius: 10,\n border: '1px solid var(--border)',\n background: 'var(--grey-light)',\n padding: 'var(--spacing-2) var(--spacing-3)',\n }}>\n <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', gap: 12 }}>\n <p style={{ fontSize: 15, fontWeight: 600, fontFamily: FF, color: 'var(--grey-strong)' }}>Upload status</p>\n <button\n type=\"button\"\n style={{ \n display: 'flex',\n alignItems: 'center', justifyContent: 'center', width: 20, height: 20, borderRadius: 10, background: 'var(--grey-light)', cursor: 'pointer',\n border: 'none',\n outline: 'none',\n padding: 0,\n margin: 0,\n }}\n onClick={() => setIsStatusDismissed(true)}\n >\n <X size={14} color=\"var(--grey-strong)\" />\n </button>\n </div>\n <p style={{ fontSize: 13, fontWeight: 400, fontFamily: FF, color: 'var(--grey-strong)', marginTop: 8 }}>\n {failedCount > 0 && successCount > 0\n ? `${successCount} file${successCount > 1 ? 's are' : ' is'} successfully uploaded and ${failedCount} file${failedCount > 1 ? 's are' : ' is'} failed.`\n : failedCount > 0\n ? `${failedCount} file${failedCount > 1 ? 's' : ''} failed to upload.`\n : successCount > 1\n ? `${successCount} files are queued for evaluation.`\n : 'Your file is queued for evaluation.'}\n </p>\n <p className=\"mt-1 text-xs text-gray-600\">\n {failedCount > 0\n ? `Failed because ${primaryFailureReason || 'of a validation issue'}.`\n : 'You can continue using the app while upload runs in the background. Results will appear in the project history once ready.'}\n </p>\n </div>\n )}\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","showUploadQueuedMessage","uploadSummary","dragOver","setDragOver","isStatusDismissed","setIsStatusDismissed","fileInputRef","useRef","successCount","failedCount","primaryFailureReason","handleDragOver","handleDragLeave","handleDrop","files","_a","handleBrowseClick","CloudUpload","X"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,11 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),A=require("react"),o=require("lucide-react"),L=require("../UpdatedInteractionRecording.cjs.js");require("../Timeline.cjs.js");const c={strong:"var(--Grey-Strong, #2E3236)",muted:"var(--Grey-Muted, #808183)",absent:"var(--Grey-absent, #D9D9D9)",accent:"var(--rail-orange, #C98A5A)",itemText:"var(--text-item, #3F3F3F)",quoteLine:"var(--border-warm, #B2AEA8)",quoteText:"var(--text-subtle-warm, #767473)",iconBg:"var(--surface-hover, #F3F7F7)"},he={effective:"Effective",strong:"Strong",needs_improvement:"Needs Improvement",mixed:"Mixed"},K="updated-coaching-synthesis-keyframes";function ye(){if(typeof document>"u"||document.getElementById(K))return;const t=document.createElement("style");t.id=K,t.textContent=`
|
|
2
|
+
@keyframes updated-coaching-shimmer {
|
|
3
|
+
0% { background-position: -200% 0; }
|
|
4
|
+
100% { background-position: 200% 0; }
|
|
5
|
+
}
|
|
6
|
+
@keyframes updated-coaching-pulse {
|
|
7
|
+
0%, 100% { opacity: 0.4; }
|
|
8
|
+
50% { opacity: 1; }
|
|
9
|
+
}
|
|
10
|
+
`,document.head.appendChild(t)}function xe({overall:t}){const n=he[t]||(t?t.replace(/_/g," "):"");return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[e.jsx("span",{style:{fontSize:13,fontWeight:400,color:c.strong,fontFamily:"var(--font-sans)",lineHeight:1.2},children:"Overall:"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsx(o.ThumbsUp,{size:14,color:c.strong,strokeWidth:1.5}),e.jsx("span",{style:{fontSize:13,fontWeight:600,color:c.strong,fontFamily:"var(--font-sans)",lineHeight:1.2},children:n})]})]})}function ue({item:t}){const n=typeof t=="string"?t:(t==null?void 0:t.text)||"",s=typeof t=="object"?t==null?void 0:t.quote:null;return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:14},children:[e.jsx("div",{style:{fontSize:14,fontWeight:600,color:c.itemText,fontFamily:"var(--font-sans)",lineHeight:1.5},children:n}),s&&e.jsxs("div",{style:{display:"flex",gap:10},children:[e.jsx("div",{style:{width:1,flexShrink:0,alignSelf:"stretch",background:c.quoteLine}}),e.jsxs("div",{style:{fontSize:14,fontWeight:400,color:c.quoteText,fontFamily:"var(--font-sans)",lineHeight:1.5},children:["“",s,"”"]})]})]})}function Z({icon:t,label:n,items:s}){return!s||s.length===0?null:e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16,borderRadius:12},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:24,height:24,borderRadius:9999,background:c.iconBg,flexShrink:0},children:t}),e.jsx("span",{style:{fontSize:16,fontWeight:600,color:c.strong,fontFamily:"var(--font-sans)",lineHeight:"normal"},children:n})]}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:24},children:s.map((a,g)=>e.jsx(ue,{item:a},g))})]})}const B=({data:t,loading:n,error:s})=>{var y,x;if(A.useEffect(()=>{ye()},[]),n)return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("div",{style:{width:6,height:6,borderRadius:"50%",background:c.accent,animation:"updated-coaching-pulse 1.5s ease-in-out infinite"}}),e.jsx("span",{style:{fontSize:14,color:c.muted,fontWeight:500},children:"Synthesizing coaching summary..."})]}),[180,260,220].map((S,b)=>e.jsx("div",{style:{height:10,width:S,maxWidth:"100%",borderRadius:4,background:`linear-gradient(90deg, ${c.absent} 25%, var(--shimmer-mid, #ECECEC) 50%, ${c.absent} 75%)`,backgroundSize:"200% 100%",animation:"updated-coaching-shimmer 1.8s ease-in-out infinite",animationDelay:`${b*.2}s`}},b))]});if(s)return e.jsx("div",{style:{fontSize:14,color:c.muted},children:"Unable to generate coaching summary."});if(!t)return null;const a=t.strengths||[],g=t.improvements||[],h=typeof t.one_liner=="string"?t.one_liner:((y=t.one_liner)==null?void 0:y.text)||"",m=typeof t.context=="string"?t.context:((x=t.context)==null?void 0:x.text)||"";return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,background:"#FFF"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(o.ShieldCheck,{size:20,color:c.accent,strokeWidth:2}),e.jsx("span",{style:{fontSize:16,fontWeight:600,color:c.strong,fontFamily:"var(--font-sans)",lineHeight:1.2,textTransform:"uppercase"},children:"Coaching Summary"})]}),h&&e.jsx("div",{style:{fontSize:14,fontWeight:500,color:c.strong,fontFamily:"var(--font-sans)",lineHeight:1.5},children:h}),e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:16,justifyContent:"space-between"},children:[m&&e.jsx("div",{style:{fontSize:14,fontWeight:400,color:c.muted,fontFamily:"var(--font-sans)",lineHeight:1.5,flex:1},children:m}),t.overall&&e.jsx(xe,{overall:t.overall})]}),(a.length>0||g.length>0)&&e.jsxs("div",{style:{display:"flex",gap:24,paddingTop:24,borderTop:`1px solid ${c.absent}`},children:[e.jsx(Z,{icon:e.jsx(o.TrendingUp,{size:14,color:c.strong,strokeWidth:1.5}),label:"Key Strengths",items:a}),e.jsx(Z,{icon:e.jsx(o.Lightbulb,{size:14,color:c.strong,strokeWidth:1.5}),label:"Improvements",items:g})]})]})};function ve(t){const n=Math.floor(t/60),s=Math.round(t%60);return`${n}:${s.toString().padStart(2,"0")}`}const me={display:"flex",justifyContent:"space-between",padding:"8px 8px 12px 8px",alignItems:"center",gap:24,fontFamily:"var(--font-sans)",fontSize:13,fontWeight:400,lineHeight:"normal",borderBottom:"1px solid var(--Grey-absent, #D9D9D9)"},X={display:"flex",flexDirection:"column",flex:"1 0 0",gap:12,minWidth:0},se=({meta:t={},callPurpose:n={},classification:s={},dimensions:a=[],outcomeQuality:g="Neutral",onMoreDetails:h})=>{const m=t.duration_seconds!=null?ve(t.duration_seconds):null,y=t.message_count,x=n.interaction_driver,S=s.interaction_paradigm,b=[m!=null&&{label:"Duration",value:m},x!=null&&{label:"Driver",value:x},...a.filter((i,p)=>p%2===0).map(i=>({label:i.label||i.key,value:i.value})),{label:"Outcome Quality",value:g}].filter(Boolean),u=[y!=null&&{label:"Messages",value:y},S!=null&&{label:"Paradigm",value:S},...a.filter((i,p)=>p%2===1).map(i=>({label:i.label||i.key,value:i.value})),{label:"More Details",isLink:!0}].filter(Boolean),l=i=>i.isLink?e.jsxs("div",{onClick:h,style:{display:"flex",alignItems:"center",gap:6,padding:"8px 0 8px 0",cursor:"pointer",fontFamily:"var(--font-sans)"},children:[e.jsx(o.ExternalLink,{size:16,color:"#808183",strokeWidth:1.5}),e.jsx("span",{style:{color:"var(--Grey-Strong, #2E3236)",fontSize:13,fontWeight:400},children:i.label})]},i.label):e.jsxs("div",{style:me,children:[e.jsx("span",{style:{color:"var(--Grey-Strong, #2E3236)",whiteSpace:"nowrap",flexShrink:0},children:i.label}),e.jsx("span",{style:{color:"var(--Grey-Muted, #808183)",textAlign:"right"},children:i.value})]},i.label);return e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:24,alignSelf:"stretch"},children:[e.jsx("div",{style:X,children:b.map(i=>l(i))}),e.jsx("div",{style:X,children:u.map(i=>l(i))})]})},r={strong:"var(--Grey-Strong, #2E3236)",muted:"var(--Grey-Muted, #808183)",absent:"var(--Grey-absent, #D9D9D9)",white:"var(--Grey-White, #FFF)",cardBg:"var(--surface-warm-40, rgba(243, 241, 229, 0.40))"},v=1.2,J=3,ee=t=>t!=null?Math.round(t*100)+"%":"—",te=t=>{if(t==null)return"—";const n=(t*100).toFixed(1);return t>0?`+${n}pp`:`${n}pp`},ie=({outcomeLift:t,driverLabels:n=[]})=>{var b;if(!t||t.lift==null)return null;const s=t.p_expected,a=t.p_full,g=t.lift_raw??(a!=null&&s!=null?a-s:null),h=t.lift,m=(b=t.interpretation)!=null&&b.lift_band?t.interpretation.lift_band.replace(/_/g," "):h>=0?"Positive":"Negative",y=m.charAt(0).toUpperCase()+m.slice(1),x=n.slice(0,J),S=n.length-J;return e.jsxs("div",{style:{display:"flex",flexDirection:"column",padding:24,gap:24,borderRadius:8,border:`1px solid ${r.absent}`,background:r.cardBg,alignSelf:"stretch"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:32},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:24,alignSelf:"stretch"},children:[e.jsx("span",{style:{fontSize:15,fontWeight:600,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:"Agent Lift Analysis"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontFamily:"var(--font-sans)"},children:[e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.strong,lineHeight:v},children:"vs. Average Agent:"}),e.jsx("span",{style:{fontSize:14,fontWeight:600,color:r.strong,lineHeight:v},children:te(h)}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,paddingLeft:8,borderLeft:`1px solid ${r.absent}`},children:[e.jsx(o.ThumbsUp,{size:14,color:r.strong}),e.jsx("span",{style:{fontSize:13,fontWeight:600,color:r.strong,lineHeight:v},children:y})]})]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"flex-end",gap:24},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,alignItems:"center"},children:[e.jsx("span",{style:{fontSize:28,fontWeight:400,color:r.muted,fontFamily:"var(--font-sans)",lineHeight:v},children:ee(s)}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:"Expected Outcome"}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.muted,fontFamily:"var(--font-sans)",lineHeight:v},children:"Based on call type & difficulty"})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,alignItems:"center",paddingLeft:24,borderLeft:`1px solid ${r.absent}`},children:[e.jsx("span",{style:{fontSize:28,fontWeight:400,color:r.muted,fontFamily:"var(--font-sans)",lineHeight:v},children:te(g)}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:"Agent Impact"}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.muted,fontFamily:"var(--font-sans)",lineHeight:v},children:"Behavior-driven change"})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,alignItems:"center",paddingLeft:24,borderLeft:`1px solid ${r.absent}`},children:[e.jsx("span",{style:{fontSize:28,fontWeight:400,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:ee(a)}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[e.jsx("span",{style:{fontSize:13,fontWeight:600,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:"Predicted Outcome"}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:r.muted,fontFamily:"var(--font-sans)",lineHeight:v},children:"With agent behaviors"})]})]})]})]}),n.length>0&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4,alignSelf:"stretch"},children:[e.jsx("span",{style:{fontSize:12,fontWeight:600,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v},children:"Key Drivers"}),e.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:[x.map((u,l)=>e.jsx("div",{style:{display:"flex",padding:8,alignItems:"center",justifyContent:"center",borderRadius:4,border:`1px solid ${r.absent}`,background:r.white},children:e.jsx("span",{style:{fontSize:12,fontWeight:400,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200},children:u})},l)),S>0&&e.jsx("div",{style:{display:"flex",padding:8,alignItems:"center",justifyContent:"center",borderRadius:4,border:`1px solid ${r.absent}`,background:r.white},children:e.jsxs("span",{style:{fontSize:12,fontWeight:400,color:r.strong,fontFamily:"var(--font-sans)",lineHeight:v,whiteSpace:"nowrap"},children:["+ ",S]})})]})]})]})},ne=({children:t,size:n=28,onClick:s,title:a})=>{const[g,h]=A.useState(!1);return e.jsx("div",{title:a,onClick:s,onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),style:{display:"flex",alignItems:"center",justifyContent:"center",width:n,height:n,borderRadius:9999,background:g?"var(--surface-hover, #F3F7F7)":"transparent",cursor:"pointer",flexShrink:0,transition:"background 0.15s"},children:t})},$=({signals:t={signals:[],present_count:0,total_signals_evaluated:0},expandedSignals:n=new Set,toggleSignal:s=()=>{},playEvidence:a=()=>{},highlightTurns:g=()=>{},onShowInTranscript:h=()=>{},timelinePlaying:m=!1,currentTimeSeconds:y=0})=>{const x=(t==null?void 0:t.signals)??[],S=(t==null?void 0:t.present_count)??x.length,b=l=>{const i=Math.floor(l/6e4),p=Math.floor(l%6e4/1e3);return`${i.toString().padStart(2,"0")}:${p.toString().padStart(2,"0")}`},u=l=>m&&l.start_ms!=null&&y*1e3>=l.start_ms&&y*1e3<=(l.end_ms??l.start_ms+5e3);return e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",alignSelf:"stretch",width:"100%",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,width:"100%"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:34,height:34,borderRadius:9999,background:"var(--surface-hover, #F3F7F7)",flexShrink:0},children:e.jsx(o.FileSignal,{size:20,color:"#2E3236",strokeWidth:1.5})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",flex:1},children:[e.jsx("span",{style:{fontSize:15,fontWeight:500,color:"var(--Grey-Strong, #2E3236)"},children:"Signals"}),e.jsxs("span",{style:{fontSize:14,fontWeight:500,color:"var(--Grey-Strong, #2E3236)"},children:[S," Signals Detected"]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignSelf:"stretch",background:"var(--Grey-White, #FFF)",gap:8},children:[x.length===0&&e.jsx("div",{style:{padding:"8px 0",fontSize:14,color:"var(--Grey-Muted, #808183)"},children:"No signals detected."}),x.map((l,i)=>{var w,W,F;const p=l.key??l.id??i,f=n.has(p),C=((w=l.observations)==null?void 0:w.length)??0;return e.jsxs("div",{id:`signal-${p}`,style:{display:"flex",flexDirection:"column",width:"100%",gap:8},children:[e.jsxs("button",{onClick:()=>s(p),style:{display:"flex",padding:"8px 0",alignItems:"center",gap:12,alignSelf:"stretch",width:"100%",background:"none",border:"none",borderBottom:"1px solid var(--Grey-absent, #D9D9D9)",cursor:"pointer"},children:[e.jsxs("span",{style:{flex:1,textAlign:"left",fontSize:14,fontWeight:600,color:"var(--text-dark, #0B0A0A)",lineHeight:1.71},children:[l.display_name||((W=l.key)==null?void 0:W.replace(/_/g," ")),C>0&&e.jsxs("span",{style:{fontWeight:600,color:"var(--text-dark, #0B0A0A)",marginLeft:6},children:["(",C,")"]})]}),f?e.jsx(o.ChevronUp,{size:20,color:"#767473"}):e.jsx(o.ChevronDown,{size:20,color:"#767473"})]}),f&&((F=l.observations)==null?void 0:F.length)>0&&e.jsx("div",{style:{display:"flex",flexDirection:"column",alignSelf:"stretch",gap:0},children:l.observations.map((I,M)=>{var H,E,_;return e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignSelf:"stretch",gap:8},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,padding:"8px 0",justifyContent:"space-between"},children:[e.jsx("span",{style:{flex:1,fontSize:14,fontWeight:400,color:"var(--text-subtle-warm, #767473)",lineHeight:1.5},children:I.reason||I.explanation}),((E=(H=I.evidence)==null?void 0:H[0])==null?void 0:E.start_ms)!=null&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[e.jsx(ne,{size:28,title:"Show in transcript",onClick:k=>{k.stopPropagation(),h(I.evidence[0].start_ms)},children:e.jsx(o.ScrollText,{size:16,color:"#808183",strokeWidth:1.5})}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Muted, #808183)",lineHeight:1.2,whiteSpace:"nowrap"},children:b(I.evidence[0].start_ms)})]})]}),(_=I.evidence)==null?void 0:_.map((k,R)=>k.text&&e.jsxs("div",{onClick:G=>{G.stopPropagation(),a(k)},onMouseEnter:()=>g(k.turn_ids??[]),onMouseLeave:()=>g([]),style:{display:"flex",alignItems:"center",gap:8,padding:"8px 0",cursor:"pointer"},children:[e.jsx(ne,{size:28,children:e.jsx(o.PlayCircle,{size:17,color:u(k)?"var(--rail-orange, #C98A5A)":"var(--Grey-Muted, #808183)",strokeWidth:1})}),e.jsxs("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",lineHeight:1.2},children:["“",k.text,"”"]})]},R))]},I.key??M)})})]},p)})]})]})},j={strong:"var(--Grey-Strong, #2E3236)",muted:"var(--Grey-Muted, #808183)",absent:"var(--Grey-absent, #D9D9D9)",white:"var(--Grey-White, #FFF)",accent:"var(--rail-orange, #C98A5A)",track:"var(--rail-surface-2, #E3E1D7)",infoIcon:"var(--color-input-border, #ACACAD)"},be=({score:t=4,maxScore:n=10})=>{const S=Math.min(Math.round(t/n*5),5),b=180/5,u=p=>{const f=p*Math.PI/180;return{x:121.5+85*Math.cos(f),y:123-85*Math.sin(f)}},l=(p,f)=>{const C=u(p),w=u(f),W=p-f>180?1:0;return`M ${C.x} ${C.y} A 85 85 0 ${W} 1 ${w.x} ${w.y}`},i=2;return e.jsx("svg",{width:243,height:130,viewBox:"0 0 243 130",fill:"none",children:Array.from({length:5},(p,f)=>{const C=180-f*b-(f>0?i/2:0),w=180-(f+1)*b+(f<5-1?i/2:0),W=f<S;return e.jsx("path",{d:l(C,w),stroke:W?j.strong:j.track,strokeWidth:30,strokeLinecap:"butt",fill:"none"},f)})})},je=({value:t=0,maxValue:n=5})=>e.jsx("div",{style:{display:"flex",gap:2},children:Array.from({length:n},(s,a)=>e.jsx("div",{style:{width:22,height:6,borderRadius:1,background:a<t?j.strong:j.track}},a))}),Se=({label:t,value:n=0,maxValue:s=5})=>e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,padding:8,alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("span",{style:{fontSize:12,fontWeight:400,color:j.strong,fontFamily:"var(--font-sans)",lineHeight:"normal"},children:t}),e.jsx(o.Info,{size:14,color:j.infoIcon,strokeWidth:1})]}),e.jsx(je,{value:n,maxValue:s})]}),oe=({score:t=83,maxScore:n=100,predictedScore:s=4,predictedLabel:a="Predicted Objective",description:g="",legends:h=[{label:"CSAT",value:3},{label:"Resolution",value:4},{label:"Process Adherence",value:5},{label:"Communication",value:3}]})=>{const m=String(s).padStart(2,"0");return e.jsxs("div",{style:{display:"flex",flexDirection:"column",padding:24,borderRadius:8,border:`1px solid ${j.absent}`,background:j.white,alignSelf:"stretch",gap:24},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[e.jsx("span",{style:{fontSize:15,fontWeight:600,color:j.strong,fontFamily:"var(--font-sans)",lineHeight:1.2},children:"Compass Score"}),e.jsx("span",{style:{fontSize:14,fontWeight:400,color:j.muted,fontFamily:"var(--font-sans)",lineHeight:"normal"},children:g})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:48,flex:1},children:[e.jsxs("div",{style:{display:"flex",width:243,flexDirection:"column",alignItems:"center",flexShrink:0},children:[e.jsx(be,{score:t,maxScore:n}),e.jsxs("svg",{width:"34",height:"35",viewBox:"0 0 34 35",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{marginTop:-24},children:[e.jsx("path",{d:"M16 25.2169C19.958 25.2169 23.1667 22.0083 23.1667 18.0503C23.1667 14.0922 19.958 10.8836 16 10.8836C12.042 10.8836 8.83334 14.0922 8.83334 18.0503C8.83334 22.0083 12.042 25.2169 16 25.2169Z",fill:"var(--rail-orange, #C98A5A)"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M30.4791 11.2328L33.4351 0L21.6888 3.09113C19.9212 2.41855 18.0036 2.05025 16 2.05025C7.16344 2.05025 0 9.2137 0 18.0503C0 26.8868 7.16344 34.0503 16 34.0503C24.8366 34.0503 32 26.8868 32 18.0503C32 15.6119 31.4546 13.301 30.4791 11.2328ZM16 30.5503C22.9036 30.5503 28.5 24.9538 28.5 18.0503C28.5 11.1467 22.9036 5.55025 16 5.55025C9.09644 5.55025 3.5 11.1467 3.5 18.0503C3.5 24.9538 9.09644 30.5503 16 30.5503Z",fill:"var(--rail-orange, #C98A5A)"})]}),e.jsx("div",{style:{fontSize:28,fontWeight:400,color:j.strong,fontFamily:"var(--font-sans)",lineHeight:1,textAlign:"center",marginTop:8},children:t})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,alignItems:"center",justifyContent:"center",flex:1},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center"},children:[e.jsx("div",{style:{fontSize:28,fontWeight:400,color:j.strong,fontFamily:"var(--font-sans)",lineHeight:1,textAlign:"center"},children:m}),e.jsx("div",{style:{fontSize:14,fontWeight:400,color:j.muted,fontFamily:"var(--font-sans)",lineHeight:1.43,textAlign:"center"},children:a})]}),e.jsx("div",{style:{width:"100%",height:1,background:j.absent}}),h.map((y,x)=>e.jsx(Se,{label:y.label,value:y.value},x))]})]})]})},ke=[{key:"overview",label:"Overview"},{key:"coaching",label:"Coaching Summary"},{key:"signals",label:"Signals & Guidance"},{key:"comments",label:"Comments"}],De=({title:t="Wheel Stud Replacement Enquiry",onBack:n,data:s,coachingData:a,audioUrl:g,prevSessionTitle:h,prevSessionDesc:m,nextSessionTitle:y,nextSessionDesc:x,onPreviousSession:S,onNextSession:b})=>{var Y,Q;const[u,l]=A.useState("overview"),[i,p]=A.useState(new Set),[f,C]=A.useState(!1),[w,W]=A.useState(null),F=A.useRef(null),I=[{title:"Tire Repair Appointment",date:"11/12/2025, 2:30:00 PM"},{title:"Quote Confirmation",date:"10/1/2025, 9:00:00 AM"},{title:"Automative Repair Enquiry",date:"09/15/2025, 11:45:00 AM"},{title:"Vehicle Inspection Reminder",date:"07/20/2025, 1:00:00 PM"},{title:"Oil Change Service",date:"05/5/2025, 10:00:00 AM"}],M=d=>{var z;const D=d/1e3;(z=F.current)!=null&&z.seekTo&&F.current.seekTo(D)},H=d=>{p(D=>{const z=new Set(D);return z.has(d)?z.delete(d):z.add(d),z})},E=(s==null?void 0:s.blocks)||[],_=d=>{var D;return((D=E.find(z=>z.block_id===d))==null?void 0:D.payload)||{}},k=_("interaction-metadata"),R=_("interaction-context"),G=_("interaction-signals"),P=_("interaction-outcome-lift"),re=R.call_purpose||{},le=R.classification||{},T={duration_seconds:156,message_count:25,...k},U={interaction_driver:"General Information",interaction_direction:"inbound",...re},ae={interaction_paradigm:"Informational",...le},de={p_expected:.94,p_full:.83,lift_raw:-.11,lift:.043,interpretation:{lift_band:"positive"},...P},ce=((Y=P.driver_signal_keys)==null?void 0:Y.map(d=>d.replace(/^sig\./,"").replace(/_/g," ")))||["customer needs fully addressed","call flow expectations set","Opening expectations set","Active listening demonstrated","Resolution confirmed"],O=a||{one_liner:"David provided the customer with information on wheel stud replacement and pricing, but did not secure an appointment.",context:"The customer was seeking information on wheel stud replacement for a 2013 Chevy Bolt and was unsure about doing the repair themselves.",strengths:[{text:"Anthony effectively scheduled the appointment and confirmed the details clearly.",quote:"Alright. That is all set up for Saturday, the twenty eighth, at 12:00."},{text:"Handled customer objections well by explaining the need for a separate appointment for alignment.",quote:"I don't have the alignment changeover the weekend. So I would have to set up a separate appointment for the alignment."},{text:"Demonstrated courtesy and professionalism throughout the call.",quote:"Have a great day."}],improvements:[{text:"Close the loop by restating the plan and confirming next steps to ensure customer certainty.",quote:"Alright. That is all set up for Saturday, the twenty eighth, at 12:00."},{text:"Frame solutions positively by leading with what can be done rather than limitations.",quote:"I don't have the alignment changeover the weekend."}],overall:"effective"},q=(Q=G==null?void 0:G.signals)!=null&&Q.length?G:{present_count:9,total_signals_evaluated:146,signals:[{key:"price_estimate_provided",display_name:"Price Estimate Provided",observations:[{key:"obs1",reason:"Evidence shows a price estimate or quote was provided.",evidence:[{start_ms:92e3,end_ms:97e3,text:"From Casper, you're probably looking at, like, a half hour labor plus a stud, so you'd probably be somewhere around $90 or something.",turn_ids:[8]}]}]},{key:"fee_or_cost_discussed",display_name:"Fee or Cost Discussed",observations:[{key:"obs2",reason:"Agent discussed pricing details with the customer."}]},{key:"engagement_budget",display_name:"Engagement Budget Discussed",observations:[{key:"obs3a",reason:"Budget expectations were set."},{key:"obs3b",reason:"Customer confirmed budget range."}]},{key:"projected_revenue",display_name:"Projected Revenue Discussed",observations:[{key:"obs4a",reason:"Revenue projection shared."},{key:"obs4b",reason:"Timeline for revenue discussed."},{key:"obs4c",reason:"Quarterly targets mentioned."}]},{key:"market_analysis",display_name:"Market Analysis Completed",observations:[{key:"obs5a",reason:"Market analysis referenced."},{key:"obs5b",reason:"Competitive landscape discussed."},{key:"obs5c",reason:"Market trends mentioned."},{key:"obs5d",reason:"Regional analysis provided."}]},{key:"target_audience",display_name:"Target Audience Defined",observations:[{key:"obs6a",reason:"Target audience identified."},{key:"obs6b",reason:"Demographics discussed."},{key:"obs6c",reason:"Audience segmentation reviewed."},{key:"obs6d",reason:"Persona mapping completed."},{key:"obs6e",reason:"Channel preferences noted."}]},{key:"concept_approval",display_name:"Concept Approval Received",observations:[{key:"obs7a",reason:"Concept approved by stakeholder."},{key:"obs7b",reason:"Feedback incorporated."},{key:"obs7c",reason:"Sign-off confirmed."},{key:"obs7d",reason:"Revisions requested."},{key:"obs7e",reason:"Final version accepted."},{key:"obs7f",reason:"Timeline approved."}]},{key:"prototype_developed",display_name:"Prototype Developed",observations:[{key:"obs8a",reason:"Prototype shared."},{key:"obs8b",reason:"Testing initiated."},{key:"obs8c",reason:"Feedback collected."},{key:"obs8d",reason:"Iterations completed."},{key:"obs8e",reason:"Usability tested."},{key:"obs8f",reason:"Design finalized."},{key:"obs8g",reason:"Stakeholder demo done."}]},{key:"user_testing",display_name:"User Testing Scheduled",observations:[{key:"obs9a",reason:"Testing sessions planned."},{key:"obs9b",reason:"Participants recruited."},{key:"obs9c",reason:"Test scripts prepared."},{key:"obs9d",reason:"Environment set up."},{key:"obs9e",reason:"Accessibility testing included."},{key:"obs9f",reason:"Results framework defined."},{key:"obs9g",reason:"Timeline confirmed."},{key:"obs9h",reason:"Backup plan discussed."}]}]},ge="David",N="Sandra Bullock",V=8,pe=k.evaluated_dt?new Date(k.evaluated_dt).toLocaleString():"3/29/2026, 8:30:00 AM",fe=U.interaction_direction==="inbound"?"Inbound":"Outbound";return e.jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%",background:"var(--Grey-White, #FFF)"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,padding:"24px 24px 0"},children:[e.jsx("button",{onClick:n,style:{display:"flex",alignItems:"center",justifyContent:"center",background:"none",border:"none",cursor:"pointer",padding:0,flexShrink:0},children:e.jsx(o.ArrowLeft,{size:24,color:"var(--Grey-Strong, #2E3236)"})}),e.jsx("div",{style:{width:1,height:28,background:"var(--Base-absent, #D9D9D9)"}}),e.jsx("h1",{style:{color:"var(--Grey-Strong, #2E3236)",fontSize:24,fontStyle:"normal",fontWeight:400,lineHeight:"normal",margin:0},children:t})]}),e.jsx("div",{style:{display:"flex",alignItems:"flex-start",background:"var(--Grey-White, #FFF)",borderBottom:"1px solid var(--Grey-Faint, #ACADAD)",padding:"0 24px",marginTop:8},children:ke.map(d=>e.jsx("button",{onClick:()=>l(d.key),style:{display:"flex",padding:16,alignItems:"center",gap:10,background:"none",border:"none",borderBottom:u===d.key?"3px solid var(--Grey-Strong, #2E3236)":"3px solid transparent",cursor:"pointer",fontSize:15,fontWeight:u===d.key?500:400,color:u===d.key?"var(--Grey-Strong, #2E3236)":"var(--Grey-Muted, #808183)",whiteSpace:"nowrap",transition:"border-color 0.2s ease, color 0.2s ease"},children:d.label},d.key))}),e.jsxs("div",{style:{padding:24,flex:1,overflowY:"auto"},children:[u==="overview"&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",justifyContent:"flex-end",alignItems:"flex-start",gap:24,alignSelf:"stretch"},children:[e.jsxs("div",{style:{display:"flex",height:40,alignItems:"center",gap:16,alignSelf:"stretch"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flex:1},children:[e.jsx(o.ClipboardList,{size:24,color:"var(--rail-orange, #C98A5A)",strokeWidth:2}),e.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--Grey-Strong, #2E3236)",lineHeight:1.2,textTransform:"uppercase"},children:"Overview"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,flexShrink:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"8px 0"},children:[e.jsx(o.CalendarDays,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",fontFamily:"var(--font-sans)",lineHeight:1.2},children:pe})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"8px 0"},children:[e.jsx(o.PhoneIncoming,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",fontFamily:"var(--font-sans)",lineHeight:1.2},children:fe})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,paddingLeft:16,borderLeft:"1px solid var(--Grey-absent, #D9D9D9)"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"8px 0"},children:[e.jsx(o.Headset,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",fontFamily:"var(--font-sans)",lineHeight:1.2},children:ge})]}),e.jsx(o.Repeat,{size:16,color:"var(--color-input-border, #ACACAD)",strokeWidth:1.5}),e.jsxs("div",{style:{position:"relative"},children:[e.jsxs("button",{onClick:()=>C(d=>!d),style:{display:"flex",alignItems:"center",gap:4,padding:"8px 0",background:"none",border:"none",cursor:"pointer"},children:[e.jsx(o.CircleUser,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}),e.jsxs("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",lineHeight:1.2},children:[N," (",V," Sessions)"]}),f?e.jsx(o.ChevronUp,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}):e.jsx(o.ChevronDown,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5})]}),f&&e.jsxs("div",{style:{position:"absolute",top:"100%",right:0,marginTop:4,width:264,background:"var(--Grey-White, #FFF)",borderRadius:4,border:"1px solid var(--Grey-absent, #D9D9D9)",boxShadow:"0 4px 16px rgba(0,0,0,0.12)",zIndex:50,overflow:"hidden"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:8,padding:16},children:[e.jsx(o.CircleUser,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5,style:{marginTop:2,flexShrink:0}}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[e.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--Grey-Strong, #2E3236)",lineHeight:1},children:N}),e.jsxs("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Muted, #808183)",lineHeight:1},children:[V," Sessions in past"]})]})]}),I.map((d,D)=>e.jsxs("div",{onMouseEnter:()=>W(D),onMouseLeave:()=>W(null),style:{display:"flex",width:264,padding:"12px 16px",justifyContent:"space-between",alignItems:"center",background:w===D?"var(--surface-hover, #F3F7F7)":"var(--Grey-White, #FFF)",borderTop:"1px solid var(--Grey-absent, #D9D9D9)",cursor:"pointer",boxSizing:"border-box",transition:"background 0.15s"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"var(--Grey-Strong, #2E3236)",lineHeight:1},children:d.title}),e.jsx("span",{style:{fontSize:12,fontWeight:400,color:"var(--Grey-Muted, #808183)",lineHeight:1},children:d.date})]}),w===D&&e.jsx(o.ExternalLink,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1,style:{flexShrink:0}})]},D)),e.jsx("div",{style:{padding:16,borderTop:"1px solid var(--Grey-absent, #D9D9D9)",display:"flex",justifyContent:"center"},children:e.jsxs("button",{style:{display:"flex",height:32,padding:"16px 16px 16px 12px",justifyContent:"center",alignItems:"center",gap:6,background:"var(--Grey-White, #FFF)",border:"1px solid var(--Grey-absent, #D9D9D9)",borderRadius:10,cursor:"pointer"},children:[e.jsx(o.History,{size:16,color:"var(--Grey-Muted, #808183)",strokeWidth:1.5}),e.jsx("span",{style:{fontSize:14,fontWeight:600,color:"var(--Grey-Strong, #2E3236)"},children:"View All Sessions"})]})})]})]})]})]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:24,alignSelf:"stretch"},children:[e.jsx("div",{style:{flex:1,minWidth:0},children:e.jsx(oe,{})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"stretch",justifyContent:"flex-end",gap:24,flex:1,minWidth:0},children:[e.jsx(se,{meta:T,callPurpose:U,classification:ae,outcomeQuality:"Neutral"}),e.jsx(ie,{outcomeLift:de,driverLabels:ce})]})]}),e.jsx(B,{data:O}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,alignSelf:"stretch"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx(o.FileSignal,{size:24,color:"#C98A5A",strokeWidth:2}),e.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--Grey-Strong, #2E3236)",lineHeight:1.2,textTransform:"uppercase"},children:"Signals & Recording"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:24,alignSelf:"stretch",paddingTop:16,borderTop:"1px solid #D9D9D9"},children:[e.jsx("div",{style:{flex:1,minWidth:0},children:e.jsx($,{signals:q,expandedSignals:i,toggleSignal:H,onShowInTranscript:M})}),e.jsx("div",{style:{flex:1,minWidth:0},children:e.jsx(L.UpdatedInteractionRecording,{ref:F,audioUrl:g,durationSeconds:T.duration_seconds,currentTimeSeconds:0})})]})]})]}),u==="coaching"&&e.jsx(B,{data:O}),u==="signals"&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:24},children:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:24},children:[e.jsx("div",{style:{flex:1,minWidth:0},children:e.jsx($,{signals:q,expandedSignals:i,toggleSignal:H,onShowInTranscript:M})}),e.jsx("div",{style:{flex:1,minWidth:0},children:e.jsx(L.UpdatedInteractionRecording,{ref:F,audioUrl:g,durationSeconds:T.duration_seconds,currentTimeSeconds:0})})]})}),u==="comments"&&e.jsx("div",{style:{fontSize:14,color:"var(--Grey-Muted, #808183)",fontFamily:"var(--font-sans)"},children:"No comments yet."})]}),e.jsxs("div",{style:{display:"flex",position:"sticky",bottom:0,zIndex:10},children:[e.jsxs("button",{onClick:S,style:{display:"flex",alignItems:"center",gap:30,padding:"12px 28px",flex:1,background:"var(--Grey-White, #FFF)",border:"1px solid var(--Grey-absent, #D9D9D9)",cursor:"pointer"},children:[e.jsx(o.ArrowLeft,{size:24,color:"var(--Grey-Muted, #808183)",strokeWidth:2}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10},children:[e.jsx("span",{style:{fontSize:14,fontWeight:400,color:"#000",lineHeight:1.2,textAlign:"left"},children:h||"Previous Session Title"}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"#000",lineHeight:1.2,opacity:.5,textAlign:"left"},children:m||"Short description of the session"})]})]}),e.jsxs("button",{onClick:b,style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:30,padding:"12px 28px",flex:1,background:"var(--Grey-White, #FFF)",border:"1px solid var(--Grey-absent, #D9D9D9)",cursor:"pointer"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10},children:[e.jsx("span",{style:{fontSize:14,fontWeight:400,color:"#000",lineHeight:1.2,textAlign:"left"},children:y||"Next Session Title"}),e.jsx("span",{style:{fontSize:13,fontWeight:400,color:"#000",lineHeight:1.2,opacity:.5,textAlign:"left"},children:x||"Short description of the session"})]}),e.jsx(o.ArrowRight,{size:24,color:"var(--Grey-Muted, #808183)",strokeWidth:2})]})]})]})};exports.UpdatedInteractionRecording=L.UpdatedInteractionRecording;exports.UpdatedCoachingSynthesisCard=B;exports.UpdatedCompassScore=oe;exports.UpdatedInteractionContext=se;exports.UpdatedInteractionDetails=De;exports.UpdatedInteractionScores=ie;exports.UpdatedInteractionSignals=$;
|
|
2
11
|
//# sourceMappingURL=UpdatedInteractionDetails.cjs.js.map
|