@mahatisystems/mahati-ui-components 5.2.2 → 5.3.1

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.mjs"],"names":["__getOwnPropNames","Object","getOwnPropertyNames","__commonJS","cb","mod","__require","exports","require_down_4","module","require_performance_peak_icon","require_calendar_3","require_increase","require_decrease","useState","ChevronDown","ChevronUp","jsx","jsxs","Accordion","title","children","items","defaultOpenIndex","defaultOpen","className","headerClassName","contentClassName","icon","iconPosition","multipleOpen","onToggle","accordionTestId","headerTestId","contentTestId","openIndexes","setOpenIndexes","normalizedItems","length","content","handleToggle","index","newIndexes","includes","filter","i","map","item","isOpen","disabled","onClick","displayName","React2","jsx2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","name","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","IconButtonGroup","forwardRef","direction","props","ref","gap","style","variantClasses","default","destructive","outline","ghost","link","dotted","pill","sizeClasses","sm","md","lg","ButtonBase","variant","size","iconButton","iconButtonHeightClass","iconButtonWidthClass","iconButtonBgClass","iconButtonRadiusClass","iconButtonBgPaddingClass","iconButtonHoverBgClass","iconButtonHoverIntensity","testId","color","height","width","minHeight","minWidth","startsWith","background","borderRadius","Button","React3","useState2","ChevronDown2","ChevronUp2","jsx3","jsxs2","Card","cardContent","cardBackContent","collapsible","flippable","backgroundColor","onFlip","open","setOpen","isFlipped","setIsFlipped","contentId","useId","handleFlip","newState","mainContent","variantStyles","elevated","outlined","subtle","figma","sizeStyles","type","e","stopPropagation","p","id","React4","X","Fragment","jsx4","jsxs3","MODAL_WIDTH_MAP","xl","getPositionClass","position","Modal","onClose","subtitle","customWidth","margin","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","key","document","addEventListener","removeEventListener","body","overflow","role","strokeWidth","label","jsx5","FormContainer","onSubmit","React5","jsx6","jsxs4","Input","hasError","errorMessage","onChange","handleChange","useState4","useEffect3","useRef","useRef2","X2","ChevronDown3","createPortal","useState3","useEffect2","HiOutlineClock","HiChevronDown","HiChevronLeft","HiChevronRight","HiCalendarDays","Fragment2","jsx7","jsxs5","convertToDateString","date","year","month","String","padStart","day","isSameDate","date1","date2","formatDate","formatDateWithFormat","format","monthNum","monthNames","monthAbbr","formatTime","time","hour24","hour","period","hour2","minute2","minute","getDaysInMonth","monthIndex","Date","getDate","getFirstDayOfMonth","getDay","getMonthName","toLocaleDateString","DATE_FORMAT_OPTIONS","TIME_ZONE_OPTIONS","compareInternalDates","a","b","addDaysInternal","start","daysToAdd","y","m","d","dim","isBlockedDateHelper","config","days","startInternal","startDate","endInternal","currentInternal","afterOrOnStart","beforeOrOnEnd","getLocalTimeZone","timeZoneString","Intl","DateTimeFormat","resolvedOptions","timeZone","shortTimeZone","toLocaleTimeString","timeZoneName","split","SIZE_SCALES","getDeviceScale","window","innerWidth","Calendar","calendartestId","value","enableRangeSelection","rangeValue","onRangeChange","enableTimeSelection","timeValue","onTimeChange","showTimeFormatToggle","timeFormat","onTimeFormatChange","autoHide","showTodayButton","showClearButton","placeholder","onShow","onHide","showIcon","enableYearDropdown","showDateFormatSelector","dateFormat","onDateFormatChange","showTimeZoneSelector","timeZoneFormat","onTimeZoneFormatChange","blockDateConfig","previewTextStyles","globalTypography","today","getFullYear","currentYear","setCurrentYear","getMonth","currentMonth","setCurrentMonth","end","internalRangeValue","setInternalRangeValue","setIsOpen","activeField","setActiveField","showTimeSelector","setShowTimeSelector","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedPeriod","setSelectedPeriod","internalTimeFormat","setInternalTimeFormat","showYearDropdown","setShowYearDropdown","internalDateFormat","setInternalDateFormat","internalTimeZoneFormat","setInternalTimeZoneFormat","deviceScale","setDeviceScale","positionAbove","setPositionAbove","containerRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","Math","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","target","daysInMonth","firstDay","monthName","previousMonth","nextMonth","selectDate","newRange","startTime","getTime","endTime","dateString","selectToday","todayDate","now","currentHour","getHours","currentMinute","getMinutes","hour12","localTZ","clearDate","toggleCalendar","handleStartFieldClick","handleEndFieldClick","handleChooseTimeClick","handleChooseDateClick","handleTimeFormatToggle","newFormat","handleTimeConfirm","handleDateConfirm","handleMonthYearClick","handleYearSelect","renderDays","isSelected","isInRange","currentTime","isToday","isBlocked","push","fontSize","totalCells","remainingCells","renderTimeSelector","hours12","Array","from","_","hours24","minutes","marginBottom","transform","paddingLeft","paddingRight","border","zone","marginTop","Number","paddingTop","flex","defaultIcon","readOnly","paddingBottom","cursor","opacity","padding","marginLeft","Fragment3","jsx8","jsxs6","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","SelectWrapper","opt","SelectIcon","MahatiActivity","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","MahatiStatus","MahatiSearch","useEffect4","useState5","Fragment4","jsx9","jsxs7","getFontFamily","font","lower","trim","TabbedInterface","tabs","defaultActiveTab","onTabChange","draggableTabs","onReorderTabs","orientation","verticalPosition","showTabCloseIconInHeader","tabCloseIconPosition","tabCloseIconContent","onCloseTab","tabHeaderFont","tabContentFont","sectionTitleFont","sectionDescriptionFont","activeIndex","setActiveIndex","draggingIndex","setDraggingIndex","effectiveCloseIconContent","tabHeaderFontFamily","tabContentFontFamily","handleTabClick","handleDragStart","handleDragOver","preventDefault","handleDrop","fromIndex","toIndex","prevActive","active","handleDragEnd","headerButtons","tab","isDragging","showClose","closeIcon","draggable","onDragStart","onDragOver","onDrop","onDragEnd","fontFamily","useState6","useRef3","useEffect5","jsx10","jsxs8","Dropdown","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","basic","dark","underline","shadow","glass","gradient","React10","useEffect6","useState7","XMarkIcon","Fragment5","jsx11","jsxs9","getFontFamily2","renderCellValue","isValidElement","isArray","some","v","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","TableWithTab","tableProps","tabProps","rearrange","getRowId","renderTabContent","onRowOpenInTab","description","tabLabelKey","data","setTabs","labelColumnKey","sectionTitleFontFamily","sectionDescriptionFontFamily","t","rawLabel","rowIndex","handleRowClick","existsIndex","findIndex","next2","splice","next","handleCloseTab","isRowSelected","handleReorderTabs","moved","tabbedInterfaceTabs","effectiveShowHeaderClose","header","colSpan","selected","rowId","React11","useState8","ArrowDownOnSquareIcon","XMarkIcon2","Fragment6","jsx12","jsxs10","Table","page","setPage","limit","setLimit","totalCount","highlightRowColor","actions","paginationRequired","paginationPosition","onDownloadPDF","onDownloadExcel","searchable","searchTerm","onResetSearch","onSearch","searchModeOptions","summary","summaryKey","summaryTitleField","summaryColumn","summaryColumnKey","summaryColumnMaxLength","textWrapColumns","textWrapMaxLength","textWrapColumnMaxLengths","tableTestId","searchMode","setSearchMode","expandedRowIndex","setExpandedRowIndex","Set","expandedRowIndexes","setExpandedRowIndexes","isPaginated","totalPages","max","ceil","currentPage","goToPage","clamped","min","renderPageNumbers","pages","siblings","summaryColKeyToUse","renderCell","truncated","substring","mode","idx","isExpanded","has","toggleRow","delete","add","useMemo","useMemo3","useState12","useEffect7","useRef4","useState9","jsx13","jsxs11","assetSrc","anyM","src","arrowDownIcon","getTriggerClasses","base","getMenuClasses","getOptionClasses","ChartDropdown","internalValue","setInternalValue","displayValue","optionValue","onKeyDown","alt","React13","Chart","ChartJS","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","Doughnut","Line","Bar","jsx14","register","makeAreaDataStraight","datasets","ds","tension","cubicInterpolationMode","PieLineBarChart","chartType","defaultOptions","isLineFamily","responsive","maintainAspectRatio","elements","line","plugins","legend","display","tooltip","intersect","titleColor","bodyColor","borderColor","borderWidth","displayColors","scales","x","grid","drawBorder","ticks","interaction","axis","cutout","chartOptions","renderChart","jsx15","jsxs12","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","jsx16","jsxs13","GaugeChart","gauges","fontWeight","gauge","percentage","angle","remaining","dailyAvg","viewBox","x1","y1","x2","y2","offset","stopColor","fill","stroke","strokeLinecap","transition","strokeDasharray","gradientUnits","stopOpacity","textAnchor","transformOrigin","DEFAULT_RISK_BANDS","rangeStart","rangeEnd","createRiskArcPath","centerX","centerY","radius","startAngle","endAngle","startRad","PI","endRad","cos","sin","largeArcFlag","getRiskLevel","score","bands","band","RiskGaugeChart","maxScore","currentLevel","bandIndex","arcPath","bandIdx","jsx17","jsxs14","HorizontalBarChart","bars","xAxisConfig","topPerformer","safeBars","bar","whiteSpace","labels","totalLabels","approxCharWidth","centerOffset","maxVal","barLengthPercentage","React14","jsx18","jsxs15","assetSrc2","arrowDownIcon2","GANTT_COLORS","emerald","GanttChart","selectedYear","selectedMonth","selectedProject","onProjectChange","isProjectDropdownOpen","setIsProjectDropdownOpen","projects","projectData","getMonthNames","monthRange","monthMap","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","month1","month2","getMonthNumber","monthNumberMap","getTodayPosition","currentDay","monthToNumber","selectedMonth1","selectedMonth2","selectedYearNum","dayPercent","positionInMonth","mobileLeft","desktopLeft","show","todayPosition","months","displayMonths","month1Num","month2Num","getTaskPosition","endDate","startDay","startMonth","endDay","endMonth","selectedMonth1Num","selectedMonth2Num","startPercent","isInSecondMonth","lineHeight","baseHeight","taskHeight","taskSpacing","tasks","DateRangeBoxes","alignItems","justifyContent","aspectRatio","boxShadow","project","smLeft","section","task","taskColor","React15","jsx19","jsxs16","LEGEND_COLORS","getActivityColor","getYearWeeks","calendarheatmapData","weeks","firstDayOfWeek","daysToMonday","firstMonday","currentDate","lastMonth","weekIndex","maxWeeks","MONTH_NAMES_FULL","MONTH_NAMES_SHORT","hasCurrentYearDate","dateStr","dayData","weekDays","setDate","dayIndex","thursday","weekMonth","monthLabel","CalendarHeatmapChart","selectedType","hoveredCell","setHoveredCell","visible","cellColor","tooltipData","setTooltipData","yearWeeks","dayRows","forEach","week","weekIdx","dayIdx","strokeLinejoin","rowIdx","cell","colIdx","isCurrentYear","cellKey","isHovered","onMouseEnter","currentTarget","onMouseLeave","marginRight","Fragment7","jsx20","jsxs17","DEFAULT_COLORS","LollipopChart","MenuButtonDots","maxValue","gridPositions","axisLabels","slice","textOverflow","reverse","maxWidth","jsx21","jsxs18","defaultGradient","ColumnChart","columns","yAxisConfig","safeColumns","minValue","yAxisLabels","formatValue","toFixed","calculateHeight","column","columnHeightPercentage","React16","useMemo2","useState10","useRef5","useEffect8","Fragment8","jsx22","jsxs19","createLinearPath","points","path","createAreaPath","linePath","lastPoint","firstPoint","calculatePercentageChange","firstValue","lastValue","abs","getTimeLabel","dataLength","timestamps","monthsDiff","daysDiff","years","floor","getDateRange","filteredTimestamps","allTimestamps","formatDateRange","formatSingleDate","sameYear","sd","sy","em","ed","ey","calculateSum","reduce","s","formatCurrencyValue","prefix","KPIChart","hoveredIndex","setHoveredIndex","tooltipPos","setTooltipPos","timePeriods","filteredData","cutoffDate","setMonth","setFullYear","filtered","filteredTS","timestamp","dataDate","percentageChange","isPositive","dynamicTimeLabel","dynamicDateRange","dynamicValue","chartWidth","chartHeight","calculatedPoints","linearPath","areaPath","gradientId","random","substr","handleMouseMove","svg","ownerSVGElement","clientX","nearestIndex","minDistance","point","distance","positiveGradientStop","trendColor","changeIndicatorBg","letterSpacing","preserveAspectRatio","isNaN","cx","cy","r","onMouseMove","borderTop","text","jsx23","jsxs20","DEFAULT_BAR_COLORS","revenue","profit","loss","cost","GroupBarChart","groups","legends","safeGroups","getColorMap","colorMap","BAR_COLORS","getProfitOrLoss","group","profitOrLoss","profitOrLossValue","isProfitable","profitLossColor","profitLossAbsValue","barIdx","textAlign","wordBreak","overflowWrap","useState11","jsx24","jsxs21","DEFAULT_COLORS2","aggregating","outstanding","writeOff","StackBarChart","setTooltip","safeData","COLORS","getLabel","l","defaultLabels","handleSegmentMouseEnter","total","totalHeight","aggregatingPercent","outstandingPercent","writeOffPercent","backdropFilter","Fragment9","jsx25","jsxs22","assetSrc3","FALLBACK_ICONS","performancePeakIcon","calendarIcon","increaseIcon","decreaseIcon","getIconSrc","imported","fallback","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MenuDotsButton","MahatiChartAnalyticsWidget","chartTypes","initialChartType","filters","chartFilters","selectedFilters","chartDataMap","bulletData","gaugeData","horizontalBarData","columnChartData","groupBarData","stackBarData","lollipopData","kpiData","riskGaugeData","ganttData","heatmapData","onApplyFilters","quickStats","actionButtons","onChartTypeChange","onFiltersChange","details","setChartType","selectedGanttProject","setSelectedGanttProject","selectedCalendarHeatmapProject","setSelectedCalendarHeatmapProject","currentFilters","currentData","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","Revenue","isIncrease","cur","topProductData","category","Profit","needsFocus","change","calendarPeakAndActiveDay","empty","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","n","dateObj","dayNames","entries","stats","avg","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","currentKPIData","kpiKey","currentGauge","sp","productData","xAxis","Cost","st","yAxis","lYearData","ly","lm","lc","lo","lCatData","selectedCategory","currentRiskGauges","sw","selectedWeek","allData","isActive","zIndex","val","statusColors","totalVolume","transactions","getBadgeBg","QuickInsightsCard","peakIconSrc","peakDate","peakEvents","calendarIconSrc","activeDayLabel","activeDayValue","activeAvg","dateLabel","sm2","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","formattedDate","currentRiskGauge","lastTask","TopPerformerCard","performer","totalRevenue","sum","contribution","ci","prevMonth","prevYear","prevTypeData","prevTop","growth","rank","sort","currentTotal","prevTotal","pctChange","bgColor","minimumFractionDigits","maximumFractionDigits","defaultLegends","getColor","revenueColor","profitColor","lossColor","g","topPL","isTopProfitable","prevGroups","lossProducts","needsFocusHasLoss","mt","ct","topTotal","mt2","ct2","weekNum","replace","prevWeek","prevDay","pt","ch","fid","f","f0","f1","f2","catData","bestItem","lowestItem","aboveAvg","React19","useState13","Fragment10","jsx26","jsxs23","Tooltip2","image","animation","setVisible","isReady","setIsReady","showAnimation","setShowAnimation","tooltipPosition","setTooltipPosition","adjustedPosition","setAdjustedPosition","tooltipRef","hasContent","tooltipRect","viewportWidth","viewportHeight","finalPosition","right","showTooltip","requestAnimationFrame","delay","triggerDelay","setTimeout","hideTooltip","handleUpdate","passive","renderTooltipContent","loading","renderAnimation","AnimationComponent","component","variantStyle","onFocus","onBlur","React20","useEffect9","ReactDOM","jsx27","jsxs24","getStripGradient","getGradient","getTitleColor","getIcon","objectFit","altText","ToastMessage","customTitle","message","duration","custom","action","rest","backgroundClass","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","titleFontFamily","messageFontFamily","messageColor","closeIconWidth","closeIconHeight","btn","useState14","useEffect10","useRef6","useMemo4","jsx28","ConfettiExplosion","particleCount","force","particleSize","stageHeight","particles","setParticles","animationFrameRef","timerRef","stableColors","newParticles","speed","fromLeft","startX","shape","rotation","rotationSpeed","vx","vy","gravity","life","animate","elapsed","prevParticles","particle","cancelAnimationFrame","starGradient","clipPath","useState15","useEffect11","useRef7","useMemo5","jsx29","RealisticConfetti","jsx30","jsxs25","SrOnly","Spinner","primaryColor","borderTopColor","CircularSpinner","ringCount","rings","ringSize","CardOverlayLoader","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","backdrop","LoadingDots","dots","LoadingDotsLinear","CardWithLoading","imageUrl","useEffect12","useRef8","useState16","ChevronDown4","X3","Loader2","Fragment11","jsx31","jsxs26","SearchableDropdown","search","setSearch","MultiSelectDropdown","removeValue","toggleValue","filteredOptions","lbl","checked","CascadingDropdown","level2","level1","level3","displayText","GroupedDropdown","isSectionSelected","isChildChecked","toggleSection","toggleChild","exists","flatMap","AvatarDropdown","AvatarMultiSelectDropdown","AsyncDropdown","loadOptions","setOptions","setLoading","then","finally","useEffect13","useRef9","useState17","jsx32","jsxs27","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","TexttoAudio","icons","WORDS_PER_SECOND","setText","setMode","playing","setPlaying","setCurrentTime","setDuration","volume","setVolume","setSpeed","loop","setLoop","utteranceRef","wordIndexRef","textAreaRef","highlightOnSkipRef","setSummary","loopMode","setLoopMode","loopCountRef","autoPlayRef","baseDurationRef","timerBaseRef","volumeRef","speedRef","categorizeText","input","text2","categories","Technology","keywords","Business","Education","Media","Human","Geography","Nature","Health","summaries","k","highlightWordAt","startIndex","ta","test","focus","setSelectionRange","formatTime2","sec","getSourceText","speakFromTime","speechSynthesis","cancel","source","words","startWordIndex","charOffset","stopTimer","u","SpeechSynthesisUtterance","rate","onboundary","charIndex","onend","speak","startTimer","fromTime","setInterval","togglePlay","resume","clearInterval","getQuickSummary","pageText","innerText","getPageContent","downloadAudio","alert","skip","baseDuration","newDuration","newCurrentTime","getVolumeIcon","step","accentColor","useEffect14","useRef10","useState18","createPortal2","X4","jsx33","jsxs28","MahatiLocationAccessModal","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","MahatiCameraAccessModal","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","console","error","MahatiMicrophoneAccessModal","requestMic","audio","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","MahatiPromotionModal","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","href","MahatiPromotionModalV2Modal","showBadgeImage","badgeImageSrc","MahatiPromotionModalV3Modal","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","MahatiNotificationCard","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction","MahatiAsyncDropdown","MahatiAvatarDropdown","MahatiAvatarMultiSelectDropdown","MahatiButton","MahatiCalendar","MahatiCard","MahatiCascadingDropdown","MahatiConfettiExplosion","MahatiDropdown","MahatiFormContainer","MahatiGroupedDropdown","MahatiInput","MahatiModal","MahatiMultiSelectDropdown","MahatiPromotionModal_V1","MahatiPromotionModal_V2","MahatiPromotionModal_V3","MahatiRealisticConfetti","MahatiSearchableDropdown","MahatiTabbedInterface","MahatiTable","MahatiTableWithTab","MahatiTexttoAudio","MahatiToastMessage","MahatiTooltip"],"mappings":"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","sourcesContent":["var __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports, module) {\n module.exports = \"./down_4-X52SETBJ.png\";\n }\n});\n\n// src/assets/icons/performance-peak-icon.png\nvar require_performance_peak_icon = __commonJS({\n \"src/assets/icons/performance-peak-icon.png\"(exports, module) {\n module.exports = \"./performance-peak-icon-QXFZTZUB.png\";\n }\n});\n\n// src/assets/icons/calendar-3.png\nvar require_calendar_3 = __commonJS({\n \"src/assets/icons/calendar-3.png\"(exports, module) {\n module.exports = \"./calendar-3-SFJ52KIR.png\";\n }\n});\n\n// src/assets/icons/increase.png\nvar require_increase = __commonJS({\n \"src/assets/icons/increase.png\"(exports, module) {\n module.exports = \"./increase-QM2727GU.png\";\n }\n});\n\n// src/assets/icons/decrease.png\nvar require_decrease = __commonJS({\n \"src/assets/icons/decrease.png\"(exports, module) {\n module.exports = \"./decrease-SMWSBU7A.png\";\n }\n});\n\n// src/components/accordion.tsx\nimport { useState } from \"react\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nfunction Accordion({\n title,\n children,\n items = [],\n defaultOpenIndex = null,\n defaultOpen,\n className = \"\",\n headerClassName = \"\",\n contentClassName = \"\",\n icon,\n iconPosition = \"right\",\n multipleOpen = false,\n onToggle,\n accordionTestId,\n headerTestId,\n contentTestId\n}) {\n const [openIndexes, setOpenIndexes] = useState(\n defaultOpen ? [0] : defaultOpenIndex !== null && defaultOpenIndex !== void 0 ? [defaultOpenIndex] : []\n );\n const normalizedItems = items && items.length > 0 ? items : title !== void 0 ? [{ title, content: children }] : [];\n const handleToggle = (index) => {\n let newIndexes;\n if (multipleOpen) {\n if (openIndexes.includes(index)) {\n newIndexes = openIndexes.filter((i) => i !== index);\n } else {\n newIndexes = [...openIndexes, index];\n }\n } else {\n newIndexes = openIndexes.includes(index) ? [] : [index];\n }\n setOpenIndexes(newIndexes);\n };\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n \"data-testid\": accordionTestId,\n className: `w-full max-w-[684px] border border-slate-200 rounded-xl overflow-hidden bg-white ${className}`,\n children: normalizedItems.map((item, index) => {\n const isOpen = openIndexes.includes(index);\n return /* @__PURE__ */ jsxs(\"div\", { children: [\n /* @__PURE__ */ jsxs(\n \"button\",\n {\n \"data-testid\": headerTestId,\n disabled: item.disabled,\n onClick: () => handleToggle(index),\n className: `\n w-full flex items-center justify-between\n px-6 min-h-[60px]\n font-medium transition\n ${item.disabled ? \"opacity-50 cursor-not-allowed\" : \"cursor-pointer\"}\n ${isOpen ? \"text-white bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\" : \"text-slate-800 bg-white\"}\n ${headerClassName}\n `,\n children: [\n iconPosition === \"left\" && /* @__PURE__ */ jsx(\"span\", { className: \"mr-2\", children: icon || (isOpen ? /* @__PURE__ */ jsx(ChevronUp, {}) : /* @__PURE__ */ jsx(ChevronDown, {})) }),\n /* @__PURE__ */ jsx(\"span\", { className: \"flex-1 text-left\", children: item.title }),\n iconPosition === \"right\" && /* @__PURE__ */ jsx(\"span\", { children: icon || (isOpen ? /* @__PURE__ */ jsx(ChevronUp, {}) : /* @__PURE__ */ jsx(ChevronDown, {})) })\n ]\n }\n ),\n isOpen && !item.disabled && /* @__PURE__ */ jsx(\n \"div\",\n {\n \"data-testid\": contentTestId,\n className: `px-6 py-4 text-slate-600 border-t border-slate-200 ${contentClassName}`,\n children: item.content\n }\n ),\n index !== normalizedItems.length - 1 && /* @__PURE__ */ jsx(\"div\", { className: \"border-t border-slate-200\" })\n ] }, index);\n })\n }\n );\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nimport React2 from \"react\";\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar parseHeightWidth = (className) => {\n if (!className) return \"36px\";\n const match = className.match(/[hw]-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"36px\";\n};\nvar parseGap = (gapClass) => {\n if (!gapClass) return \"8px\";\n const match = gapClass.match(/gap-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"8px\";\n};\nvar getColorByName = (name) => {\n const colors = {\n blue: \"#3b82f6\",\n green: \"#10b981\",\n red: \"#ef4444\",\n orange: \"#f59e0b\",\n purple: \"#8b5cf6\",\n yellow: \"#f59e0b\",\n pink: \"#ec4899\",\n teal: \"#14b8a6\",\n indigo: \"#6366f1\",\n primary: \"linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1))\",\n secondary: \"#6b7280\",\n success: \"#10b981\",\n danger: \"#ef4444\",\n warning: \"#f59e0b\",\n info: \"#3b82f6\"\n };\n return colors[name?.toLowerCase()] || colors.primary;\n};\nvar IconButtonGroup = React2.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ jsx2(\n \"div\",\n {\n ref,\n style: { gap },\n className: `inline-flex ${direction === \"col\" ? \"flex-col items-start\" : \"flex-row items-center\"} ${className || \"\"}`,\n ...props,\n children\n }\n );\n }\n);\nIconButtonGroup.displayName = \"IconButtonGroup\";\nvar variantClasses = {\n // ✅ Fixed: was from-[31761A3] — missing #\n default: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white rounded-md hover:opacity-90 active:opacity-95\",\n destructive: \"bg-[#ef4444] text-white rounded-md hover:bg-[#dc2626] active:bg-[#b91c1c]\",\n outline: \"border border-[#e5e7eb] bg-white text-[#374151] rounded-md hover:bg-[#f9fafb] hover:border-[#d1d5db] active:bg-[#f3f4f6]\",\n // ✅ Fixed: was bg-gray-200 text-gray-700 — now matches CSS-in-JS blue\n secondary: \"bg-[#3b82f6] text-white rounded-md hover:bg-[#2563eb] active:bg-[#1d4ed8]\",\n ghost: \"bg-transparent text-[#374151] rounded-md hover:bg-[#f3f4f6] active:bg-[#e5e7eb]\",\n link: \"bg-transparent text-[#2563eb] underline underline-offset-4 p-0 h-auto hover:no-underline hover:text-[#1d4ed8]\",\n danger: \"bg-transparent text-[#ef4444] rounded-md hover:bg-[#ef44441a] active:bg-[#ef444433]\",\n dotted: \"relative [background:linear-gradient(to_right,#1e73be,#28a97d)] text-white rounded-lg border-2 border-dashed border-white/50 hover:opacity-90\",\n pill: \"[background:linear-gradient(to_right,#1761A3,#4DAF83)] text-white rounded-full hover:opacity-90 active:opacity-95\"\n};\nvar sizeClasses = {\n sm: \"h-[36px] px-3 text-[13px]\",\n md: \"h-[40px] px-4 text-[14px]\",\n lg: \"h-[44px] px-6 text-[15px]\",\n icon: \"h-[40px] w-[40px]\",\n default: \"h-[40px] px-4\"\n};\nvar ButtonBase = React2.forwardRef(\n ({\n className,\n variant = \"default\",\n size = \"default\",\n name,\n iconButton = false,\n iconButtonHeightClass,\n iconButtonWidthClass,\n iconButtonBgClass,\n iconButtonRadiusClass,\n iconButtonBgPaddingClass,\n iconButtonHoverBgClass,\n iconButtonHoverIntensity,\n children,\n testId,\n style,\n ...props\n }, ref) => {\n const color = getColorByName(name);\n if (iconButton) {\n const height = parseHeightWidth(iconButtonHeightClass);\n const width = parseHeightWidth(iconButtonWidthClass);\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n style: {\n height,\n width,\n minHeight: height,\n minWidth: width,\n color: color.startsWith(\"linear\") ? \"white\" : color,\n ...style\n },\n className: `\n inline-flex items-center justify-center\n transition-all duration-200\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-white\n ${iconButtonRadiusClass || \"rounded-md\"}\n ${iconButtonBgPaddingClass || \"p-[2px]\"}\n ${iconButtonBgClass || \"bg-white/10\"}\n hover:opacity-85 active:opacity-70\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n \"data-testid\": testId,\n style: name ? {\n background: color,\n color: \"white\",\n borderRadius: variant === \"pill\" ? \"9999px\" : \"6px\",\n ...style\n } : style,\n className: `\n inline-flex items-center justify-center\n whitespace-nowrap\n font-medium\n text-[14px]\n transition-all duration-200\n cursor-pointer\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-blue-400\n disabled:pointer-events-none disabled:opacity-50\n ${!name ? variantClasses[variant] : \"\"}\n ${sizeClasses[size]}\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n);\nButtonBase.displayName = \"Button\";\nvar Button = ButtonBase;\nButton.IconButtonGroup = IconButtonGroup;\n\n// src/components/card.tsx\nimport React3, { useState as useState2 } from \"react\";\nimport { ChevronDown as ChevronDown2, ChevronUp as ChevronUp2 } from \"lucide-react\";\nimport { jsx as jsx3, jsxs as jsxs2 } from \"react/jsx-runtime\";\nvar Card = React3.forwardRef(\n ({\n title,\n cardContent,\n cardBackContent,\n collapsible = false,\n flippable = false,\n backgroundColor,\n borderRadius,\n variant = \"default\",\n size = \"default\",\n className = \"\",\n children,\n defaultOpen = true,\n onFlip,\n style,\n testId,\n ...props\n }, ref) => {\n const [open, setOpen] = useState2(defaultOpen);\n const [isFlipped, setIsFlipped] = useState2(false);\n const contentId = React3.useId();\n const handleFlip = () => {\n if (!flippable) return;\n const newState = !isFlipped;\n setIsFlipped(newState);\n onFlip?.(newState);\n };\n const mainContent = cardContent || children;\n const variantStyles = {\n default: \"bg-white text-slate-800 border border-slate-200 hover:shadow-xl\",\n elevated: \"bg-white border border-transparent shadow-md\",\n outlined: \"bg-slate-50 border border-slate-200\",\n subtle: \"bg-slate-50 border border-transparent\",\n figma: \"border border-[#1761A3] shadow-[0_4px_4px_rgba(0,0,0,0.25)]\"\n };\n const sizeStyles = {\n sm: \"p-4\",\n default: \"p-6\",\n lg: \"p-8\",\n figma: \"w-full max-w-full p-5 box-border\"\n };\n return /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: flippable ? \"perspective-[1000px]\" : \"\",\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ jsxs2(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: `\n rounded-[14px]\n transition-all duration-300 ease-in-out\n shadow-[0_4px_4px_rgba(0,0,0,0.25)]\n ${variantStyles[variant]}\n ${sizeStyles[size]}\n ${flippable ? \"relative cursor-pointer transform-style-preserve-3d transition-transform duration-700 ease-in-out\" : \"\"}\n ${isFlipped ? \"rotate-y-180\" : \"\"}\n ${className}\n `,\n style: {\n backgroundColor: variant !== \"figma\" && backgroundColor ? backgroundColor : variant === \"figma\" ? backgroundColor || \"rgba(77,175,131,0.10)\" : void 0,\n borderRadius: borderRadius || \"14px\",\n ...style\n },\n ...props,\n children: [\n /* @__PURE__ */ jsxs2(\"div\", { className: flippable ? \"backface-hidden\" : \"\", children: [\n title && /* @__PURE__ */ jsxs2(\n \"div\",\n {\n className: `flex items-center justify-between ${open && mainContent ? \"mb-4\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx3(\"h4\", { className: \"text-xl font-semibold text-slate-800 leading-7\", children: title }),\n collapsible && /* @__PURE__ */ jsx3(\n \"button\",\n {\n type: \"button\",\n onClick: (e) => {\n if (flippable) e.stopPropagation();\n setOpen((p) => !p);\n },\n \"aria-label\": open ? \"Hide content\" : \"Show content\",\n \"aria-expanded\": open,\n \"aria-controls\": contentId,\n className: \"\\r\\n z-10 flex items-center justify-center\\r\\n w-8 h-8 rounded-full\\r\\n bg-[#1761A3]\\r\\n hover:opacity-80\\r\\n focus:outline-none\\r\\n focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-[#1761A3]\\r\\n \",\n children: open ? /* @__PURE__ */ jsx3(ChevronUp2, { className: \"w-5 h-5 text-white\" }) : /* @__PURE__ */ jsx3(ChevronDown2, { className: \"w-5 h-5 text-white\" })\n }\n )\n ]\n }\n ),\n mainContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n id: contentId,\n className: `\n grid overflow-hidden\n transition-[grid-template-rows,opacity]duration-500 ease-in-out\n ${open ? \"grid-rows-[1fr] opacity-100\" : \"grid-rows-[0fr] opacity-0\"}\n `,\n children: /* @__PURE__ */ jsx3(\"div\", { className: \"overflow-hidden\", children: mainContent })\n }\n )\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: \"\\r\\n absolute inset-0\\r\\n w-full h-full\\r\\n p-6\\r\\n rotate-y-180\\r\\n backface-hidden\\r\\n \",\n children: cardBackContent\n }\n )\n ]\n }\n )\n }\n );\n }\n);\nCard.displayName = \"Card\";\n\n// src/components/Modal.tsx\nimport * as React4 from \"react\";\nimport { X } from \"lucide-react\";\nimport { Fragment, jsx as jsx4, jsxs as jsxs3 } from \"react/jsx-runtime\";\nvar MODAL_WIDTH_MAP = {\n sm: \"360px\",\n default: \"562px\",\n md: \"720px\",\n lg: \"760px\",\n xl: \"800px\"\n};\nvar getPositionClass = (position) => {\n switch (position) {\n case \"top-left\":\n return \"items-start justify-start\";\n case \"top-right\":\n return \"items-start justify-end\";\n case \"top-center\":\n return \"items-start justify-center\";\n case \"bottom-left\":\n return \"items-end justify-start\";\n case \"bottom-right\":\n return \"items-end justify-end\";\n case \"bottom-center\":\n return \"items-end justify-center\";\n case \"center-left\":\n return \"items-center justify-start\";\n case \"center-right\":\n return \"items-center justify-end\";\n default:\n return \"items-center justify-center\";\n }\n};\nfunction Modal({\n testId,\n isOpen,\n onClose,\n title,\n subtitle,\n children,\n className = \"\",\n width: customWidth,\n height,\n margin,\n primaryAction,\n secondaryAction,\n headerIcon,\n showDivider = true,\n position = \"center\",\n size = \"default\"\n}) {\n const width = customWidth ?? MODAL_WIDTH_MAP[size];\n React4.useEffect(() => {\n if (!isOpen) return;\n const onKey = (e) => e.key === \"Escape\" && onClose();\n document.addEventListener(\"keydown\", onKey);\n return () => document.removeEventListener(\"keydown\", onKey);\n }, [isOpen, onClose]);\n React4.useEffect(() => {\n document.body.style.overflow = isOpen ? \"hidden\" : \"unset\";\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n if (!isOpen) return null;\n return /* @__PURE__ */ jsxs3(Fragment, { children: [\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-overlay` : void 0,\n onClick: onClose,\n className: \"fixed inset-0 bg-black/40 z-[9998] animate-[fadeIn_.2s_ease-out]\"\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n className: `fixed inset-0 z-[9999] pointer-events-none flex p-4 ${getPositionClass(\n position\n )}`,\n children: /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"dialog\",\n \"aria-modal\": \"true\",\n onClick: (e) => e.stopPropagation(),\n style: {\n width: typeof width === \"number\" ? `${width}px` : width,\n height: height ?? (position.includes(\"left\") || position.includes(\"right\") ? \"90vh\" : \"auto\"),\n margin: typeof margin === \"number\" ? `${margin}px` : margin\n },\n className: `pointer-events-auto relative bg-white border border-gray-200 rounded-lg shadow-[0px_4px_24px_rgba(0,0,0,0.15)] flex flex-col animate-[scaleIn_.2s_ease-out] ${!position.includes(\"left\") && !position.includes(\"right\") ? \"max-h-[90vh]\" : \"\"} ${className}`,\n children: [\n /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-header` : void 0,\n className: \"px-6 py-4 flex items-center justify-between border-b border-gray-200\",\n children: [\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex items-center gap-3 flex-1\", children: [\n headerIcon && /* @__PURE__ */ jsx4(\"div\", { children: headerIcon }),\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex-1\", children: [\n title && /* @__PURE__ */ jsx4(\n \"h3\",\n {\n \"data-testid\": testId ? `${testId}-title` : void 0,\n className: \"text-[#333] font-semibold text-[16px]\",\n children: title\n }\n ),\n subtitle && /* @__PURE__ */ jsx4(\n \"p\",\n {\n \"data-testid\": testId ? `${testId}-subtitle` : void 0,\n className: \"text-sm text-gray-500 mt-1\",\n children: subtitle\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-close-btn` : void 0,\n onClick: onClose,\n \"aria-label\": \"Close dialog\",\n className: \" p-1 text-gray-400 hover:text-gray-600 flex items-center justify-center transition-colors\",\n children: /* @__PURE__ */ jsx4(X, { size: 20, strokeWidth: 2 })\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-body` : void 0,\n className: \"flex-grow overflow-y-auto custom-scrollbar\",\n children\n }\n ),\n (primaryAction || secondaryAction) && /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-footer` : void 0,\n className: \"px-6 py-4 flex justify-center gap-3 border-t border-gray-200\",\n children: [\n secondaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-secondary-btn` : void 0,\n onClick: secondaryAction.onClick,\n className: \"min-w-[140px] h-[36px] px-4 rounded-md border border-[#1761A3] text-[#1761A3] bg-white text-sm font-medium hover:bg-gray-50 focus:ring-2 focus:ring-[#1761A3]/20\",\n children: secondaryAction.label ?? \"Cancel\"\n }\n ),\n primaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-primary-btn` : void 0,\n onClick: primaryAction.onClick,\n disabled: primaryAction.disabled,\n className: `min-w-[140px] h-[36px] px-4 rounded-md text-white text-sm font-medium ${primaryAction.disabled ? \"bg-blue-300 cursor-not-allowed\" : \"bg-[#1761A3] hover:bg-[#134a7a]\"} focus:ring-2 focus:ring-[#1761A3]/30`,\n children: primaryAction.label ?? \"Save\"\n }\n )\n ]\n }\n )\n ]\n }\n )\n }\n )\n ] });\n}\nModal.displayName = \"Modal\";\n\n// src/components/FormContainer.tsx\nimport { jsx as jsx5 } from \"react/jsx-runtime\";\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ jsx5(\n \"form\",\n {\n \"data-testid\": testId,\n onSubmit,\n style,\n className: `\n form-container\n flex flex-col gap-4\n w-full max-w-[560px] min-w-0\n mx-auto\n p-4 max-[480px]:p-3\n bg-white\n shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)]\n rounded-lg\n box-border\n ${className}\n `,\n children\n }\n );\n};\nFormContainer.displayName = \"FormContainer\";\n\n// src/components/Input.tsx\nimport React5 from \"react\";\nimport { jsx as jsx6, jsxs as jsxs4 } from \"react/jsx-runtime\";\nvar Input = React5.forwardRef(\n ({\n hasError = false,\n errorMessage = \"\",\n className = \"\",\n onChange,\n children,\n testId,\n ...props\n }, ref) => {\n const handleChange = (e) => {\n if (props.disabled) return;\n onChange?.(e);\n };\n return /* @__PURE__ */ jsxs4(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex flex-col w-full mb-4\",\n children: [\n /* @__PURE__ */ jsx6(\n \"input\",\n {\n ref,\n onChange: handleChange,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n className: `\n w-full max-w-full min-w-0\n h-[44px]\n px-3\n text-base\n rounded-md\n border\n outline-none\n box-border\n transition-all duration-200\n\n ${hasError ? \"border-red-500 focus:border-red-600 focus:ring-2 focus:ring-red-100\" : \"border-[#D9D9D9] focus:border-blue-500 focus:ring-2 focus:ring-blue-100 hover:border-gray-400 focus:border-blue-500\"}\n\n disabled:bg-gray-100\n disabled:text-gray-400\n disabled:border-gray-200\n disabled:cursor-not-allowed\n\n file:py-2 file:px-3 file:cursor-pointer\n\n placeholder:text-gray-400\n\n ${className}\n `,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ jsx6(\n \"span\",\n {\n \"data-testid\": testId ? `${testId}-error` : void 0,\n className: \"text-red-500 text-sm mt-1 min-h-[1.25rem] block\",\n children: errorMessage\n }\n )\n ]\n }\n );\n }\n);\nInput.displayName = \"Input\";\n\n// src/components/Filter.tsx\nimport { useState as useState4, useEffect as useEffect3, useRef as useRef2 } from \"react\";\nimport { X as X2, ChevronDown as ChevronDown3 } from \"lucide-react\";\nimport { createPortal } from \"react-dom\";\n\n// src/components/Calendar.tsx\nimport { useState as useState3, useEffect as useEffect2, useRef } from \"react\";\nimport { HiOutlineClock, HiChevronDown, HiChevronLeft, HiChevronRight } from \"react-icons/hi\";\nimport { HiCalendarDays } from \"react-icons/hi2\";\nimport { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs5 } from \"react/jsx-runtime\";\nvar convertToDateString = (date) => {\n if (!date) return \"\";\n const year = date.year;\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n return `${year}-${month}-${day}`;\n};\nvar isSameDate = (date1, date2) => {\n if (!date1 || !date2) return false;\n return date1.year === date2.year && date1.month === date2.month && date1.day === date2.day;\n};\nvar formatDate = (date) => {\n if (!date) return \"\";\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n return `${month}-${day}-${year}`;\n};\nvar formatDateWithFormat = (date, format) => {\n if (!date) return \"\";\n const monthNum = date.month + 1;\n const month = String(monthNum).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n const monthNames = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\n const monthAbbr = monthNames[date.month];\n if (format === \"none\") {\n return `${month}-${day}-${year}`;\n }\n switch (format) {\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"MMM/DD/YYYY\":\n return `${monthAbbr}/${day}/${year}`;\n case \"DD/MMM/YYYY\":\n return `${day}/${monthAbbr}/${year}`;\n case \"YYYY/MMM/DD\":\n return `${year}/${monthAbbr}/${day}`;\n case \"MMM DD, YYYY\":\n return `${monthAbbr} ${day}, ${year}`;\n case \"DD MMM YYYY\":\n return `${day} ${monthAbbr} ${year}`;\n case \"YYYY MMM DD\":\n return `${year} ${monthAbbr} ${day}`;\n case \"MM-DD-YYYY\":\n return `${month}-${day}-${year}`;\n case \"DD-MM-YYYY\":\n return `${day}-${month}-${year}`;\n case \"YYYY-MM-DD\":\n return `${year}-${month}-${day}`;\n case \"MMM-DD-YYYY\":\n return `${monthAbbr}-${day}-${year}`;\n case \"DD-MMM-YYYY\":\n return `${day}-${monthAbbr}-${year}`;\n case \"YYYY-MMM-DD\":\n return `${year}-${monthAbbr}-${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n case \"MM.DD.YYYY\":\n return `${month}.${day}.${year}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n default:\n return `${month}-${day}-${year}`;\n }\n};\nvar formatTime = (time, format = \"12h\") => {\n if (!time) return \"\";\n if (format === \"24h\") {\n let hour24 = time.hour;\n if (time.period === \"PM\" && time.hour !== 12) {\n hour24 = time.hour + 12;\n } else if (time.period === \"AM\" && time.hour === 12) {\n hour24 = 0;\n }\n const hour2 = String(hour24).padStart(2, \"0\");\n const minute2 = String(time.minute).padStart(2, \"0\");\n return `${hour2}:${minute2}`;\n }\n const hour = String(time.hour).padStart(2, \"0\");\n const minute = String(time.minute).padStart(2, \"0\");\n return `${hour}:${minute} ${time.period}`;\n};\nvar getDaysInMonth = (year, monthIndex) => {\n return new Date(year, monthIndex + 1, 0).getDate();\n};\nvar getFirstDayOfMonth = (year, monthIndex) => {\n return new Date(year, monthIndex, 1).getDay();\n};\nvar getMonthName = (monthIndex) => {\n return new Date(2024, monthIndex, 1).toLocaleDateString(\"en-US\", {\n month: \"long\"\n });\n};\nvar DATE_FORMAT_OPTIONS = [\n \"none\",\n \"MM/DD/YYYY\",\n \"DD/MM/YYYY\",\n \"YYYY/MM/DD\",\n \"MMM/DD/YYYY\",\n \"DD/MMM/YYYY\",\n \"YYYY/MMM/DD\",\n \"MMM DD, YYYY\",\n \"DD MMM YYYY\",\n \"YYYY MMM DD\",\n \"MM-DD-YYYY\",\n \"DD-MM-YYYY\",\n \"YYYY-MM-DD\",\n \"MMM-DD-YYYY\",\n \"DD-MMM-YYYY\",\n \"YYYY-MMM-DD\",\n \"DD.MM.YYYY\",\n \"MM.DD.YYYY\",\n \"YYYY.MM.DD\"\n];\nvar TIME_ZONE_OPTIONS = [\n \"none\",\n \"UTC\",\n \"GMT\",\n \"EST\",\n \"EDT\",\n \"CST\",\n \"CDT\",\n \"MST\",\n \"MDT\",\n \"PST\",\n \"PDT\",\n \"IST\",\n \"JST\",\n \"KST\",\n \"AEST\",\n \"AEDT\",\n \"NZST\",\n \"NZDT\",\n \"CET\",\n \"CEST\",\n \"BST\",\n \"AST\",\n \"HST\",\n \"AKST\",\n \"AKDT\",\n \"SST\",\n \"NST\",\n \"WET\",\n \"WEST\",\n \"EET\",\n \"EEST\",\n \"MSK\",\n \"HKT\",\n \"SGT\",\n \"PKT\",\n \"BDT\",\n \"AWST\",\n \"ACST\",\n \"ACDT\",\n \"NFT\"\n];\nvar compareInternalDates = (a, b) => {\n if (a.year !== b.year) return a.year - b.year;\n if (a.monthIndex !== b.monthIndex) return a.monthIndex - b.monthIndex;\n return a.day - b.day;\n};\nvar addDaysInternal = (start, daysToAdd) => {\n let y = start.year;\n let m = start.monthIndex;\n let d = start.day + daysToAdd;\n while (true) {\n const dim = getDaysInMonth(y, m);\n if (d <= dim) break;\n d -= dim;\n m += 1;\n if (m > 11) {\n m = 0;\n y += 1;\n }\n }\n return { year: y, monthIndex: m, day: d };\n};\nvar isBlockedDateHelper = (date, config) => {\n if (!config || config.days <= 0) return false;\n const startInternal = {\n year: config.startDate.year,\n monthIndex: config.startDate.month,\n day: config.startDate.day\n };\n const endInternal = addDaysInternal(startInternal, config.days - 1);\n const currentInternal = {\n year: date.year,\n monthIndex: date.month,\n day: date.day\n };\n const afterOrOnStart = compareInternalDates(currentInternal, startInternal) >= 0;\n const beforeOrOnEnd = compareInternalDates(currentInternal, endInternal) <= 0;\n return afterOrOnStart && beforeOrOnEnd;\n};\nvar getLocalTimeZone = () => {\n const timeZoneString = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const date = /* @__PURE__ */ new Date();\n const shortTimeZone = date.toLocaleTimeString(\"en-us\", { timeZoneName: \"short\" }).split(\" \")[2];\n return shortTimeZone || timeZoneString;\n};\nvar SIZE_SCALES = {\n \"small\": 0.65,\n \"medium\": 0.8,\n \"large\": 0.9,\n \"extra-large\": 1\n};\nvar getDeviceScale = () => {\n if (typeof window === \"undefined\") return 1;\n const width = window.innerWidth;\n if (width < 640) return 0.7;\n if (width < 1024) return 0.85;\n return 1;\n};\nvar Calendar = ({\n calendartestId,\n value,\n onChange,\n enableRangeSelection = false,\n rangeValue,\n onRangeChange,\n enableTimeSelection = false,\n timeValue,\n onTimeChange,\n showTimeFormatToggle = false,\n timeFormat = \"12h\",\n onTimeFormatChange,\n autoHide = false,\n showTodayButton = false,\n showClearButton = false,\n placeholder = \"Select date\",\n className,\n disabled = false,\n onShow,\n onHide,\n icon,\n showIcon = true,\n size = \"extra-large\",\n enableYearDropdown = false,\n showDateFormatSelector = false,\n dateFormat = \"none\",\n onDateFormatChange,\n showTimeZoneSelector = false,\n timeZoneFormat = \"none\",\n onTimeZoneFormatChange,\n blockDateConfig,\n previewTextStyles = {},\n globalTypography = {}\n}) => {\n const today = /* @__PURE__ */ new Date();\n const [currentYear, setCurrentYear] = useState3(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = useState3(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = useState3({ start: null, end: null });\n const [isOpen, setIsOpen] = useState3(false);\n const [activeField, setActiveField] = useState3(\"start\");\n const [showTimeSelector, setShowTimeSelector] = useState3(false);\n const [selectedHour, setSelectedHour] = useState3(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = useState3(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = useState3(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = useState3(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = useState3(false);\n const [internalDateFormat, setInternalDateFormat] = useState3(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = useState3(timeZoneFormat);\n const [deviceScale, setDeviceScale] = useState3(1);\n const [positionAbove, setPositionAbove] = useState3(false);\n const containerRef = useRef(null);\n const calendarRef = useRef(null);\n const sizeScale = SIZE_SCALES[size];\n const scale = sizeScale * deviceScale;\n const finalRangeValue = rangeValue ?? internalRangeValue;\n const scaled = (value2) => Math.round(value2 * scale);\n useEffect2(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n useEffect2(() => {\n if (!isOpen || !containerRef.current || !calendarRef.current) return;\n const calculatePosition = () => {\n const containerRect = containerRef.current?.getBoundingClientRect();\n const calendarHeight = calendarRef.current?.offsetHeight || 580 * scale;\n if (!containerRect) return;\n const spaceBelow = window.innerHeight - containerRect.bottom;\n const spaceAbove = containerRect.top;\n const bufferSpace = 20;\n if (spaceBelow < calendarHeight + bufferSpace && spaceAbove > calendarHeight + bufferSpace) {\n setPositionAbove(true);\n } else {\n setPositionAbove(false);\n }\n };\n calculatePosition();\n window.addEventListener(\"resize\", calculatePosition);\n window.addEventListener(\"scroll\", calculatePosition, true);\n return () => {\n window.removeEventListener(\"resize\", calculatePosition);\n window.removeEventListener(\"scroll\", calculatePosition, true);\n };\n }, [isOpen, scale]);\n useEffect2(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n useEffect2(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n useEffect2(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n useEffect2(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n useEffect2(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n useEffect2(() => {\n const handleClickOutside = (event) => {\n if (containerRef.current && !containerRef.current.contains(event.target)) {\n if (isOpen) {\n setIsOpen(false);\n setShowTimeSelector(false);\n setShowYearDropdown(false);\n onHide?.();\n }\n }\n };\n if (isOpen) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpen, onHide]);\n const daysInMonth = getDaysInMonth(currentYear, currentMonth);\n const firstDay = getFirstDayOfMonth(currentYear, currentMonth);\n const monthName = getMonthName(currentMonth);\n const previousMonth = () => {\n if (currentMonth === 0) {\n setCurrentMonth(11);\n setCurrentYear(currentYear - 1);\n } else {\n setCurrentMonth(currentMonth - 1);\n }\n };\n const nextMonth = () => {\n if (currentMonth === 11) {\n setCurrentMonth(0);\n setCurrentYear(currentYear + 1);\n } else {\n setCurrentMonth(currentMonth + 1);\n }\n };\n const selectDate = (day) => {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n if (enableRangeSelection) {\n if (activeField === \"start\") {\n const newRange = { start: date, end: finalRangeValue?.end || null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n } else {\n const start = finalRangeValue?.start;\n if (start) {\n const startTime = new Date(start.year, start.month, start.day).getTime();\n const endTime = new Date(date.year, date.month, date.day).getTime();\n let newRange;\n if (endTime < startTime) {\n newRange = { start: date, end: start };\n } else {\n newRange = { start, end: date };\n }\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n } else {\n const newRange = { start: date, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n }\n }\n } else {\n const dateString = convertToDateString(date);\n onChange?.(date, dateString);\n }\n if (showTimeSelector) {\n setShowTimeSelector(false);\n }\n if (autoHide && (!enableRangeSelection || enableRangeSelection && activeField === \"end\" && finalRangeValue?.start)) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const selectToday = () => {\n const todayDate = {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n };\n setCurrentYear(todayDate.year);\n setCurrentMonth(todayDate.month);\n const dateString = convertToDateString(todayDate);\n onChange?.(todayDate, dateString);\n if (enableTimeSelection && showTimeSelector) {\n const now = /* @__PURE__ */ new Date();\n const currentHour = now.getHours();\n const currentMinute = now.getMinutes();\n let hour12;\n let period;\n if (currentHour === 0) {\n hour12 = 12;\n period = \"AM\";\n } else if (currentHour === 12) {\n hour12 = 12;\n period = \"PM\";\n } else if (currentHour > 12) {\n hour12 = currentHour - 12;\n period = \"PM\";\n } else {\n hour12 = currentHour;\n period = \"AM\";\n }\n setSelectedHour(hour12);\n setSelectedMinute(currentMinute);\n setSelectedPeriod(period);\n onTimeChange?.({\n hour: hour12,\n minute: currentMinute,\n period\n });\n if (showTimeZoneSelector) {\n const localTZ = getLocalTimeZone();\n setInternalTimeZoneFormat(localTZ);\n onTimeZoneFormatChange?.(localTZ);\n }\n }\n if (autoHide) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const clearDate = () => {\n if (enableRangeSelection) {\n const newRange = { start: null, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"start\");\n } else {\n onChange?.(null, \"\");\n }\n if (enableTimeSelection) {\n onTimeChange?.(null);\n setSelectedHour(12);\n setSelectedMinute(0);\n setSelectedPeriod(\"AM\");\n }\n };\n const toggleCalendar = () => {\n if (disabled) return;\n const newState = !isOpen;\n setIsOpen(newState);\n if (newState) {\n setShowTimeSelector(false);\n onShow?.();\n } else {\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const handleStartFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"start\");\n setShowTimeSelector(false);\n };\n const handleEndFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"end\");\n setShowTimeSelector(false);\n };\n const handleChooseTimeClick = () => {\n setShowTimeSelector(!showTimeSelector);\n };\n const handleChooseDateClick = () => {\n setShowTimeSelector(false);\n };\n const handleTimeFormatToggle = () => {\n const newFormat = internalTimeFormat === \"12h\" ? \"24h\" : \"12h\";\n setInternalTimeFormat(newFormat);\n onTimeFormatChange?.(newFormat);\n };\n const handleTimeConfirm = () => {\n onTimeChange?.({\n hour: selectedHour,\n minute: selectedMinute,\n period: selectedPeriod\n });\n setShowTimeSelector(false);\n };\n const handleDateConfirm = () => {\n setIsOpen(false);\n onHide?.();\n };\n const handleMonthYearClick = () => {\n if (enableYearDropdown) {\n setShowYearDropdown(!showYearDropdown);\n }\n };\n const handleYearSelect = (year) => {\n setCurrentYear(year);\n setShowYearDropdown(false);\n };\n const renderDays = () => {\n const days = [];\n for (let i = 0; i < firstDay; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-start-${i}`\n )\n );\n }\n for (let day = 1; day <= daysInMonth; day++) {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n const isSelected = enableRangeSelection ? isSameDate(finalRangeValue?.start, date) || isSameDate(finalRangeValue?.end, date) : isSameDate(value, date);\n const isInRange = enableRangeSelection && finalRangeValue?.start && finalRangeValue?.end ? (() => {\n const currentTime = new Date(date.year, date.month, date.day).getTime();\n const startTime = new Date(\n finalRangeValue.start.year,\n finalRangeValue.start.month,\n finalRangeValue.start.day\n ).getTime();\n const endTime = new Date(\n finalRangeValue.end.year,\n finalRangeValue.end.month,\n finalRangeValue.end.day\n ).getTime();\n return currentTime > startTime && currentTime < endTime;\n })() : false;\n const isToday = isSameDate(\n {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n },\n date\n );\n const isBlocked = isBlockedDateHelper(date, blockDateConfig);\n days.push(\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n if (!isBlocked) selectDate(day);\n },\n disabled: isBlocked,\n className: `\n flex items-center justify-center rounded\n font-semibold transition-all\n ${isSelected ? \"text-white shadow\" : \"\"}\n ${!isSelected && isToday ? \"border-2 border-[#1761A3] text-[#1761A3]\" : \"\"}\n ${!isSelected && !isToday && !isInRange ? \"bg-[rgba(0,123,255,0.05)] text-gray-700\" : \"\"}\n ${isInRange && !isSelected ? \"bg-[rgba(23,97,163,0.15)] text-gray-700\" : \"\"}\n ${!isBlocked && !isSelected ? \"hover:bg-[rgba(23,97,163,0.1)]\" : \"\"}\n ${isBlocked ? \"opacity-40 cursor-not-allowed text-gray-400\" : \"cursor-pointer\"}\n `,\n style: {\n width: scale * 32,\n height: scale * 30,\n fontSize: scale * 14,\n background: isSelected ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : void 0\n },\n children: day\n },\n `current-${day}`\n )\n );\n }\n const totalCells = firstDay + daysInMonth;\n const remainingCells = totalCells % 7 === 0 ? 0 : 7 - totalCells % 7;\n for (let i = 0; i < remainingCells; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-end-${i}`\n )\n );\n }\n return days;\n };\n const renderTimeSelector = () => {\n const hours12 = Array.from({ length: 12 }, (_, i) => i + 1);\n const hours24 = Array.from({ length: 24 }, (_, i) => i);\n const minutes = Array.from({ length: 60 }, (_, i) => i);\n return /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col h-full\", children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 overflow-y-auto\", children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\"div\", { style: { marginBottom: scaled(12) }, children: [\n showTimeFormatToggle && /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scaled(12) }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black\",\n style: { fontSize: scale * 12 },\n children: \"Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-center\",\n style: { gap: scale * 8 },\n children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"12h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"12h\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: handleTimeFormatToggle,\n role: \"switch\",\n \"aria-checked\": internalTimeFormat === \"24h\",\n className: \"relative inline-flex items-center rounded-lg transition-all\",\n style: {\n width: scale * 38,\n height: scale * 17,\n background: internalTimeFormat === \"24h\" ? \"#1761A3\" : \"#cbd5e1\"\n },\n children: /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"bg-white rounded-full shadow\",\n style: {\n width: scale * 13,\n height: scale * 13,\n transform: internalTimeFormat === \"24h\" ? `translateX(${scale * 23}px)` : `translateX(${scale * 2}px)`\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"24h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"24h\"\n }\n )\n ]\n }\n )\n ] }) }),\n (showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-start\",\n style: { gap: scale * 15 },\n children: [\n showDateFormatSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-center\",\n style: { fontSize: scale * 12 },\n children: \"Date Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalDateFormat,\n onChange: (e) => {\n setInternalDateFormat(e.target.value);\n onDateFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 36,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\",\n background: \"#F0F8FF\"\n },\n children: DATE_FORMAT_OPTIONS.map((format) => /* @__PURE__ */ jsx7(\"option\", { children: format }, format))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] }),\n showTimeZoneSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-right\",\n style: { fontSize: scale * 12 },\n children: \"Time Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalTimeZoneFormat,\n onChange: (e) => {\n setInternalTimeZoneFormat(e.target.value);\n onTimeZoneFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\"\n },\n children: TIME_ZONE_OPTIONS.map((zone) => /* @__PURE__ */ jsx7(\"option\", { children: zone }, zone))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 16 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block text-[#374151] font-semibold\",\n style: {\n marginBottom: scale * 12,\n fontSize: scale * 12\n },\n children: \"Time Select\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedHour,\n onChange: (e) => setSelectedHour(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: (internalTimeFormat === \"24h\" ? hours24 : hours12).map((hour) => /* @__PURE__ */ jsx7(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedMinute,\n onChange: (e) => setSelectedMinute(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: minutes.map((minute) => /* @__PURE__ */ jsx7(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n internalTimeFormat === \"12h\" && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs5(\n \"select\",\n {\n value: selectedPeriod,\n onChange: (e) => setSelectedPeriod(e.target.value),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: [\n /* @__PURE__ */ jsx7(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ jsx7(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 12 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block font-semibold text-[#374151]\",\n style: {\n marginBottom: scale * 8,\n fontSize: scale * 12\n },\n children: \"Preview\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"p\",\n {\n className: \"text-[#1761A3] font-semibold\",\n style: { fontSize: scale * 12 },\n children: [\n formatDateWithFormat(value ?? null, internalDateFormat),\n \" \",\n formatTime(\n { hour: selectedHour, minute: selectedMinute, period: selectedPeriod },\n internalTimeFormat\n ),\n internalTimeZoneFormat !== \"none\" ? ` ${internalTimeZoneFormat}` : \"\"\n ]\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"border-t border-[#e5e7eb]\",\n style: { paddingTop: scale * 15 },\n children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(23,97,163,0.15)\",\n color: \"#1761A3\",\n gap: scale * 8,\n flex: !showClearButton ? \"none\" : 1\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(239,68,68,0.15)\",\n color: \"#EF4444\",\n flex: !showTodayButton ? \"none\" : 1\n },\n children: \"Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleTimeConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Time\"\n }\n )\n ]\n }\n )\n ] });\n };\n const defaultIcon = /* @__PURE__ */ jsx7(HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ jsxs5(\n \"div\",\n {\n ref: containerRef,\n className: `relative ${className ?? \"\"}`,\n \"data-testid\": calendartestId,\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"relative\", children: [\n showIcon && /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"pointer-events-none absolute inset-y-0 left-0 flex items-center\",\n style: { paddingLeft: scaled(12) },\n children: icon || defaultIcon\n }\n ),\n /* @__PURE__ */ jsx7(\n \"input\",\n {\n type: \"text\",\n readOnly: true,\n disabled,\n placeholder,\n onClick: toggleCalendar,\n value: enableRangeSelection && finalRangeValue ? finalRangeValue.start && finalRangeValue.end ? `${formatDate(finalRangeValue.start)} - ${formatDate(finalRangeValue.end)}` : finalRangeValue.start ? `${formatDate(finalRangeValue.start)} - ...` : \"\" : enableTimeSelection && value && timeValue ? `${formatDate(value)} ${formatTime(timeValue, internalTimeFormat)}` : formatDate(value ?? null),\n className: \"block w-full rounded-full border border-gray-300 bg-gray-50 font-semibold text-gray-900 shadow-sm transition-all focus:outline-none focus:border-blue-500\",\n style: {\n paddingTop: scale * 10,\n paddingBottom: scale * 10,\n paddingLeft: showIcon ? scale * 40 : scale * 12,\n paddingRight: scale * 12,\n fontSize: scale * 12,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n opacity: disabled ? 0.5 : 1\n }\n }\n )\n ] }),\n isOpen && /* @__PURE__ */ jsx7(\n \"div\",\n {\n ref: calendarRef,\n className: \"absolute left-0 z-[9999] overflow-hidden bg-white\",\n style: {\n width: scale * 406,\n borderRadius: scale * 22,\n border: \"1px solid #1761A3\",\n marginTop: positionAbove ? void 0 : scale * 8,\n marginBottom: positionAbove ? scale * 8 : void 0\n },\n children: /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex flex-col\",\n style: {\n padding: scale * 24,\n background: \"linear-gradient(to bottom, rgba(23,97,163,0.08), rgba(77,175,131,0.08))\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"font-bold text-gray-900\",\n style: {\n fontSize: scale * 20,\n marginBottom: scale * 20\n },\n children: enableRangeSelection ? \"Select Date Range\" : \"Select Date & Time\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: `flex items-center ${!enableTimeSelection ? \"justify-center\" : \"justify-center\"}`,\n style: {\n gap: enableTimeSelection ? scale * 20 : 0,\n marginBottom: scale * 24,\n width: \"100%\"\n },\n children: enableRangeSelection ? /* @__PURE__ */ jsxs5(Fragment2, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleStartFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"start\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"start\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"text-gray-500\",\n style: {\n fontSize: scale * 12,\n gap: scale * 24\n },\n children: \"From Date\"\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleEndFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"end\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"end\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex flex-col items-start\",\n style: { gap: scale * 4 },\n children: [\n /* @__PURE__ */ jsx7(\"span\", { style: {\n fontSize: scale * 12\n }, children: \"To Date\" }),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ]\n }\n )\n ]\n }\n )\n ] }) : /* @__PURE__ */ jsxs5(Fragment2, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseDateClick,\n className: \"flex items-center justify-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n minWidth: enableTimeSelection ? scale * 140 : scale * 220,\n background: !showTimeSelector && enableTimeSelection ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: !showTimeSelector && enableTimeSelection ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseTimeClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n marginLeft: scale * 16,\n background: showTimeSelector ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: showTimeSelector ? \"white\" : \"#111827\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: timeValue ? formatTime(\n timeValue,\n internalTimeFormat\n ) : \"Choose Time\" })\n ]\n }\n )\n ] })\n }\n ),\n /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scale * 22 }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"relative flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Previous month\",\n onClick: previousMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(HiChevronLeft, { style: { width: scaled(10), height: scaled(10) } })\n }\n ),\n /* @__PURE__ */ jsxs5(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: handleMonthYearClick,\n className: \"font-bold text-[#1761A3]\",\n style: { fontSize: scale * 18 },\n children: [\n monthName,\n \" \",\n currentYear\n ]\n }\n ),\n showYearDropdown && /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"absolute bg-white border rounded-md shadow-md z-[9999] max-h-40 overflow-y-auto\",\n style: {\n marginTop: scale * 8,\n width: scale * 120\n },\n children: Array.from({ length: 100 }, (_, i) => currentYear - 50 + i).map((year) => /* @__PURE__ */ jsx7(\n \"div\",\n {\n onClick: () => handleYearSelect(year),\n className: \"px-3 py-2 cursor-pointer hover:bg-gray-100\",\n style: { fontSize: scale * 12 },\n children: year\n },\n year\n ))\n }\n )\n ] }),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Next month\",\n onClick: nextMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(HiChevronRight, { style: { width: scaled(10), height: scaled(10) } })\n }\n )\n ] }) }),\n !showTimeSelector ? /* @__PURE__ */ jsxs5(Fragment2, { children: [\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"grid grid-cols-7\",\n style: { gap: scale * 24 },\n children: renderDays()\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex justify-between\",\n style: {\n gap: scale * 12,\n marginTop: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center font-semibold\",\n style: {\n width: scale * 165,\n height: scale * 38,\n borderRadius: scale * 6,\n background: \"rgba(23, 97, 163, 0.15)\",\n color: \"#1761A3\",\n fontSize: scale * 12,\n gap: scale * 8\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiCalendarDays,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"flex items-center justify-center font-semibold\",\n style: {\n width: scale * 165,\n height: scale * 38,\n borderRadius: scale * 6,\n background: \"rgba(239, 68, 68, 0.15)\",\n color: \"#EF4444\",\n fontSize: scale * 12\n },\n children: \"\\u{1F5D1} Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleDateConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n marginTop: scale * 12,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Date\"\n }\n )\n ] }) : renderTimeSelector()\n ]\n }\n )\n }\n )\n ]\n }\n );\n};\nCalendar.displayName = \"Calendar\";\n\n// src/components/Filter.tsx\nimport { Fragment as Fragment3, jsx as jsx8, jsxs as jsxs6 } from \"react/jsx-runtime\";\nvar DEFAULT_ACTIVITY_OPTIONS = [\n { label: \"Select Activity\", value: \"\" },\n { label: \"Activity List\", value: \"Activity List\" },\n { label: \"Login\", value: \"Login\" },\n { label: \"Update\", value: \"Update\" },\n { label: \"Delete\", value: \"Delete\" }\n];\nvar DEFAULT_STATUS_OPTIONS = [\n { label: \"Select Status\", value: \"\" },\n { label: \"Pending\", value: \"Pending\" },\n { label: \"Approved\", value: \"Approved\" },\n { label: \"Rejected\", value: \"Rejected\" }\n];\nvar Filter = ({\n onApply,\n onReset,\n activityOptions = DEFAULT_ACTIVITY_OPTIONS,\n statusOptions = DEFAULT_STATUS_OPTIONS,\n searchPlaceholder = \"Search...\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const [values, setValues] = useState4({\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n });\n const handleChange = (name, value) => {\n setValues((prev) => ({ ...prev, [name]: value }));\n };\n const resetField = (name) => {\n if (name === \"date\") {\n setValues((prev) => ({\n ...prev,\n date: { start: null, end: null }\n }));\n } else {\n setValues((prev) => ({ ...prev, [name]: \"\" }));\n }\n };\n const resetAll = () => {\n const newValues = {\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n };\n setValues(newValues);\n if (onReset) onReset();\n else if (onApply) onApply(newValues);\n };\n const applyFilters = () => {\n if (onApply) onApply(values);\n setOpen(false);\n };\n return /* @__PURE__ */ jsxs6(\"div\", { className: \"relative\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-button` : void 0,\n onClick: () => setOpen((p) => !p),\n className: \"\\r\\n flex items-center gap-2\\r\\n px-5 py-3\\r\\n rounded-lg\\r\\n border border-[rgba(23,97,163,0.35)]\\r\\n bg-gradient-to-r from-[#f2fbf8] to-[#eef6fb]\\r\\n text-slate-900 font-semibold\\r\\n shadow-sm\\r\\n hover:from-[#e8f5f0] hover:to-[#e0f0f6]\\r\\n focus:outline-none focus:ring-2 focus:ring-[#1761a3]\\r\\n \",\n children: \"Filter\"\n }\n ),\n open && /* @__PURE__ */ jsx8(\n \"div\",\n {\n className: \"absolute right-0 mt-3 z-50\",\n \"data-testid\": testId ? `${testId}-model` : void 0,\n children: /* @__PURE__ */ jsxs6(\"div\", { className: \"w-[360px] bg-white border border-slate-200 rounded-lg shadow\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-3 border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsx8(\"h3\", { className: \"text-base font-semibold\", children: \"Add Filter\" }),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-close` : void 0,\n onClick: () => setOpen(false),\n className: \"w-8 h-8 rounded-full flex items-center justify-center bg-slate-100 hover:bg-slate-200\",\n children: /* @__PURE__ */ jsx8(X2, { className: \"w-4 h-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx8(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ jsx8(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.activity,\n onChange: (e) => handleChange(\"activity\", e.target.value),\n children: activityOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.status,\n onChange: (e) => handleChange(\"status\", e.target.value),\n children: statusOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsx8(\n \"input\",\n {\n className: \"w-full px-4 py-3 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.keyword,\n placeholder: searchPlaceholder,\n onChange: (e) => handleChange(\"keyword\", e.target.value)\n }\n ),\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb]\", children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-resetall` : void 0,\n onClick: resetAll,\n className: \"border border-[#1761a3] bg-[#f0f8ff] px-4 py-2 rounded-md hover:bg-[#e6f3ff]\",\n children: \"Reset all\"\n }\n ),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-apply` : void 0,\n onClick: applyFilters,\n className: \"px-4 py-2 rounded-md text-white bg-gradient-to-r from-[#1761a3] to-[#4daf83] hover:opacity-90\",\n children: \"Apply Now\"\n }\n )\n ] })\n ] })\n }\n )\n ] });\n};\nvar Section = ({\n title,\n onReset,\n children\n}) => /* @__PURE__ */ jsxs6(\"div\", { className: \"px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb] border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between mb-3\", children: [\n /* @__PURE__ */ jsx8(\"h6\", { className: \"font-semibold text-sm\", children: title }),\n /* @__PURE__ */ jsx8(\"button\", { type: \"button\", onClick: onReset, className: \"text-[#1761a3] text-sm font-semibold hover:opacity-80\", children: \"Reset\" })\n ] }),\n children\n] });\nvar SelectWrapper = ({ children }) => /* @__PURE__ */ jsx8(\"div\", { className: \"relative w-full mb-3\", children });\nvar SelectIcon = () => /* @__PURE__ */ jsx8(\"span\", { className: \"absolute right-3 top-1/2 -translate-y-1/2 text-slate-500 pointer-events-none\", children: /* @__PURE__ */ jsx8(ChevronDown3, { className: \"w-4 h-4\" }) });\nvar MahatiActivity = ({\n value,\n onChange,\n options = DEFAULT_ACTIVITY_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Activity\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) {\n return;\n }\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment3, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-option-${String(opt.value)}` : void 0,\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiStatus = ({\n value,\n onChange,\n options = DEFAULT_STATUS_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Status\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) return;\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment3, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiSearch = ({\n value,\n onChange,\n placeholder = \"Search...\",\n size = \"medium\",\n testId\n}) => /* @__PURE__ */ jsx8(\n \"input\",\n {\n \"data-testid\": testId,\n type: \"text\",\n value,\n placeholder,\n onChange: (e) => onChange(e.target.value),\n className: `\n w-full\n border border-slate-300\n rounded-md\n bg-white\n text-sm\n focus:outline-none\n focus:ring-2\n focus:ring-[#1761a3]\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `\n }\n);\nFilter.displayName = \"Filter\";\nMahatiActivity.displayName = \"MahatiActivity\";\nMahatiStatus.displayName = \"MahatiStatus\";\nMahatiSearch.displayName = \"MahatiSearch\";\n\n// src/components/TabbedInterface.tsx\nimport { useEffect as useEffect4, useState as useState5 } from \"react\";\nimport { Fragment as Fragment4, jsx as jsx9, jsxs as jsxs7 } from \"react/jsx-runtime\";\nvar getFontFamily = (font) => {\n if (!font) return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\")\n return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\")\n return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nvar TabbedInterface = ({\n tabs,\n variant = \"underline\",\n defaultActiveTab = 0,\n onTabChange,\n draggableTabs = false,\n onReorderTabs,\n orientation = \"horizontal\",\n verticalPosition = \"left\",\n showTabCloseIconInHeader = false,\n tabCloseIconPosition = \"right\",\n tabCloseIconContent,\n onCloseTab,\n tabHeaderFont,\n tabContentFont,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) => {\n const [activeIndex, setActiveIndex] = useState5(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = useState5(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n useEffect4(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n useEffect4(() => {\n if (!tabs.length) {\n setActiveIndex(0);\n return;\n }\n setActiveIndex(\n (prev) => prev < 0 ? 0 : prev >= tabs.length ? tabs.length - 1 : prev\n );\n }, [tabs.length]);\n const handleTabClick = (index) => {\n setActiveIndex(index);\n onTabChange?.(index);\n };\n const handleDragStart = (index) => {\n if (!draggableTabs) return;\n setDraggingIndex(index);\n };\n const handleDragOver = (event) => {\n if (!draggableTabs) return;\n event.preventDefault();\n };\n const handleDrop = (index) => {\n if (!draggableTabs) return;\n if (draggingIndex === null) {\n setDraggingIndex(null);\n return;\n }\n const fromIndex = draggingIndex;\n const toIndex = index;\n if (fromIndex === toIndex) {\n setDraggingIndex(null);\n return;\n }\n setActiveIndex((prevActive) => {\n let active = prevActive;\n if (active === fromIndex) return toIndex;\n if (fromIndex < toIndex) {\n if (active > fromIndex && active <= toIndex) return active - 1;\n } else if (fromIndex > toIndex) {\n if (active >= toIndex && active < fromIndex) return active + 1;\n }\n return active;\n });\n onReorderTabs?.(fromIndex, toIndex);\n setDraggingIndex(null);\n };\n const handleDragEnd = () => {\n if (!draggableTabs) return;\n setDraggingIndex(null);\n };\n const headerButtons = /* @__PURE__ */ jsx9(Fragment4, { children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n const isDragging = draggableTabs && draggingIndex === index;\n const showClose = showTabCloseIconInHeader && !!onCloseTab;\n const closeIcon = showClose ? /* @__PURE__ */ jsx9(\n \"span\",\n {\n role: \"button\",\n \"aria-label\": \"Close tab\",\n onClick: (e) => {\n e.stopPropagation();\n onCloseTab?.(index);\n },\n className: \"inline-flex h-6 w-6 items-center justify-center rounded-full text-lg font-bold hover:bg-[#e2e8f0] hover:text-[#334155]\",\n children: effectiveCloseIconContent\n }\n ) : null;\n return /* @__PURE__ */ jsxs7(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleTabClick(index),\n draggable: draggableTabs,\n onDragStart: () => handleDragStart(index),\n onDragOver: handleDragOver,\n onDrop: () => handleDrop(index),\n onDragEnd: handleDragEnd,\n className: `relative flex items-center px-4 py-2 text-sm font-semibold transition-all duration-300 select-none\n ${orientation === \"vertical\" ? \"text-left w-full\" : \"text-center\"}\n ${isDragging ? \"ring-2 ring-[#1761A3]\" : \"\"}\n ${variant === \"pill\" ? active ? \"rounded-full bg-[#1761A3] text-white shadow\" : \"rounded-full text-[#1761A3] hover:bg-[#1761A3]/10\" : variant === \"outline\" ? active ? \"rounded-md border-2 border-[#1761A3] bg-[#F3F8FF] text-[#1761A3]\" : \"rounded-md border-2 border-transparent text-slate-700 hover:border-slate-300\" : variant === \"filled\" ? active ? \"rounded-md bg-[#1761A3] text-white\" : \"rounded-md bg-[#EAF3FD] text-[#1761A3]\" : variant === \"gradient\" ? active ? \"rounded-md bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white\" : \"rounded-md bg-[#F0F4F8] text-[#1761A3]\" : variant === \"shadow\" ? active ? \"rounded-md bg-white text-[#1761A3] shadow-lg\" : \"rounded-md bg-[#F8FAFD]\" : variant === \"glass\" ? active ? \"rounded-md bg-[#1761A3]/40 text-white border border-white/30 backdrop-blur-[24px]\" : \"rounded-md bg-white/20 border border-white/30\" : variant === \"dark\" ? active ? \"text-blue-300 border-b-4 border-blue-400\" : \"text-slate-300 hover:text-blue-400\" : active ? \"text-[#1761A3]\" : \"text-slate-700 hover:text-[#1761A3]\"}`,\n children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex min-w-0 items-center gap-2\", children: [\n tabCloseIconPosition === \"left\" && closeIcon,\n tab.icon && /* @__PURE__ */ jsx9(\"span\", { children: tab.icon }),\n /* @__PURE__ */ jsx9(\"span\", { className: \"truncate\", children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon\n ] }),\n variant === \"underline\" && /* @__PURE__ */ jsx9(\n \"span\",\n {\n className: `absolute ${orientation === \"vertical\" ? \"left-0 top-0 h-full w-[3px]\" : \"bottom-[-2px] left-0 h-[3px] w-full\"}\n bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\n transition-transform duration-300\n ${active ? \"scale-x-100\" : \"scale-x-0\"}\n `\n }\n )\n ]\n },\n index\n );\n }) });\n const content = /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: \"relative min-h-[180px]\",\n style: { fontFamily: tabContentFontFamily },\n children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: `transition-opacity duration-300 ${active ? \"relative opacity-100\" : \"absolute inset-0 opacity-0 pointer-events-none\"}`,\n children: tab.content\n },\n index\n );\n })\n }\n );\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsxs7(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"mb-5 flex justify-around max-[600px]:flex-col max-[600px]:items-center\", children: headerButtons }),\n content\n ]\n }\n );\n }\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: verticalPosition === \"left\" ? /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[minmax(180px,220px)_1fr]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-r md:pr-4\", children: headerButtons }),\n /* @__PURE__ */ jsx9(\"div\", { children: content })\n ] }) : /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[1fr_minmax(180px,220px)]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { children: content }),\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-l md:pl-4\", children: headerButtons })\n ] })\n }\n );\n};\nTabbedInterface.displayName = \"TabbedInterface\";\n\n// src/components/Dropdown.tsx\nimport { useState as useState6, useRef as useRef3, useEffect as useEffect5 } from \"react\";\nimport { jsx as jsx10, jsxs as jsxs8 } from \"react/jsx-runtime\";\nvar Dropdown = ({\n options,\n value,\n onSelect,\n variant = \"basic\",\n className = \"\",\n placeholder = \"Select an option\",\n disabled = false,\n testId\n}) => {\n const [open, setOpen] = useState6(false);\n const [internalSelected, setInternalSelected] = useState6(null);\n const dropdownRef = useRef3(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n useEffect5(() => {\n function handleClickOutside(event) {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setOpen(false);\n }\n }\n if (open) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [open]);\n const handleSelect = (option) => {\n if (disabled) return;\n if (value === void 0) setInternalSelected(option);\n onSelect(option.value);\n setOpen(false);\n };\n const handleButtonClick = () => {\n if (!disabled) {\n setOpen(!open);\n }\n };\n return /* @__PURE__ */ jsxs8(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative w-full max-w-[14rem] min-w-0 box-border ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n /* @__PURE__ */ jsx10(\n \"button\",\n {\n onClick: handleButtonClick,\n disabled,\n type: \"button\",\n className: `\n w-full text-left px-4 py-2 rounded-[0.375rem] text-[1rem] leading-[1.5]\n transition-all duration-200 ease-in-out border-none\n ${disabled ? \"bg-[#e5e7eb] text-[#9ca3af] cursor-not-allowed opacity-50\" : \"\"}\n\n ${!disabled && {\n basic: \"bg-[#2563eb] text-white hover:bg-[#1d4ed8]\",\n outline: \"border border-[#2563eb] bg-transparent text-[#2563eb] hover:bg-[#eff6ff]\",\n pill: \"bg-[#2563eb] text-white rounded-full hover:bg-[#1d4ed8]\",\n dark: \"bg-[#1f2937] text-white hover:bg-[#374151]\",\n underline: \"border-none border-b-2 border-[#3b82f6] rounded-none bg-transparent text-[#1d4ed8] hover:bg-[#eff6ff]\",\n shadow: \"bg-white text-[#374151] border border-[#e5e7eb] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)] hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\",\n glass: \"bg-[rgba(255,255,255,0.2)] [backdrop-filter:blur(12px)][-webkit-backdrop-filter:blur(12px)] text-white border border-[rgba(255,255,255,0.4)] hover:bg-[rgba(255,255,255,0.3)]\",\n gradient: \"bg-gradient-to-r from-[#3b82f6] to-[#a855f7] text-white hover:opacity-90\"\n }[variant]}\n `,\n children: selectedOption?.key || placeholder\n }\n ),\n open && !disabled && /* @__PURE__ */ jsx10(\n \"div\",\n {\n className: `\n absolute mt-2 w-full rounded-[0.375rem] border border-[#e5e7eb]\n shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\n max-h-[16rem] overflow-y-auto scrollbar-thin scrollbar-thumb-slate-300 scrollbar-track-100 z-20\n ${variant === \"glass\" ? \"bg-[rgba(255,255,255,0.9)] backdrop-blur-[12px] border-[rgba(255,255,255,0.6)]\" : \"bg-white\"}\n `,\n children: options.map((opt, index) => /* @__PURE__ */ jsx10(\n \"div\",\n {\n onClick: () => handleSelect(opt),\n className: `\n px-4 py-2 cursor-pointer text-[#374151]\n transition-colors duration-150\n ${variant === \"glass\" ? \"hover:bg-[rgba(59,130,246,0.1)]\" : \"hover:bg-[#f3f4f6]\"}\n ${index === 0 ? \"rounded-t-[0.375rem]\" : \"\"}\n ${index === options.length - 1 ? \"rounded-b-[0.375rem]\" : \"\"}\n `,\n children: opt.key\n },\n opt.value\n ))\n }\n )\n ]\n }\n );\n};\nDropdown.displayName = \"Dropdown\";\n\n// src/components/TableWithTab.tsx\nimport React10, { useEffect as useEffect6, useState as useState7 } from \"react\";\nimport { XMarkIcon } from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment5, jsx as jsx11, jsxs as jsxs9 } from \"react/jsx-runtime\";\nvar getFontFamily2 = (font) => {\n if (!font)\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\") return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\") return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nfunction renderCellValue(value) {\n if (React10.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ jsx11(\"span\", { className: \"text-slate-300\", children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => React10.isValidElement(v))) return /* @__PURE__ */ jsx11(Fragment5, { children: value });\n return value.join(\", \");\n }\n if (value instanceof Date) return value.toLocaleString();\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (typeof value === \"number\") return value.toString();\n if (typeof value === \"object\") return JSON.stringify(value);\n return String(value);\n}\nfunction DefaultTabContent({\n headers,\n row\n}) {\n return /* @__PURE__ */ jsx11(\"div\", { className: \"flex flex-col gap-2\", children: headers.map((h) => /* @__PURE__ */ jsxs9(\n \"div\",\n {\n className: \"flex flex-col sm:flex-row sm:items-center gap-1 rounded-lg bg-white p-3 text-sm shadow-sm\",\n children: [\n /* @__PURE__ */ jsx11(\"span\", { className: \"w-full sm:w-48 text-xs font-semibold uppercase tracking-wide text-slate-500\", children: h.label }),\n /* @__PURE__ */ jsx11(\"span\", { className: \"flex-1 break-words text-slate-800\", children: renderCellValue(row[h.key]) })\n ]\n },\n h.key\n )) });\n}\nfunction TableWithTab({\n tableProps,\n tabProps,\n rearrange = false,\n getRowId,\n renderTabContent,\n onRowOpenInTab,\n title,\n description,\n tabLabelKey,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) {\n const { headers, data } = tableProps;\n const [tabs, setTabs] = useState7([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n useEffect6(() => {\n if (!tabs.length) return;\n setTabs(\n (prev) => prev.map((t) => {\n const row = t.row;\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : t.id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${t.rowIndex + 1}`;\n return { ...t, label };\n })\n );\n }, [tabLabelKey, headers]);\n const handleRowClick = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n setTabs((prev) => {\n const existsIndex = prev.findIndex((t) => t.id === id);\n if (existsIndex !== -1) {\n const next2 = [...prev];\n next2.splice(existsIndex, 1);\n return next2;\n }\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${index + 1}`;\n const next = [...prev, { id, label, row, rowIndex: index }];\n onRowOpenInTab?.(row);\n return next;\n });\n };\n const handleCloseTab = (id) => {\n setTabs((prev) => prev.filter((t) => t.id !== id));\n };\n const isRowSelected = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n return tabs.some((t) => t.id === id);\n };\n const handleReorderTabs = (fromIndex, toIndex) => {\n setTabs((prev) => {\n const next = [...prev];\n const [moved] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, moved);\n return next;\n });\n };\n const tabbedInterfaceTabs = tabs.map((t) => ({\n label: t.label,\n content: /* @__PURE__ */ jsxs9(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsx11(\"div\", { className: \"flex justify-end\", children: /* @__PURE__ */ jsxs9(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleCloseTab(t.id),\n className: \"inline-flex items-center gap-1 rounded-full bg-[#f1f5f9] px-3 py-1 text-xs font-medium text-[#334155] transition-colors hover:bg-[#e2e8f0]\",\n children: [\n /* @__PURE__ */ jsx11(XMarkIcon, { className: \"h-3 w-3\" }),\n /* @__PURE__ */ jsx11(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ jsx11(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ jsxs9(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full rounded-xl border border-slate-200 bg-white p-6 shadow-sm\",\n children: [\n (title || description) && /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-4\", children: [\n title && /* @__PURE__ */ jsx11(\n \"h2\",\n {\n className: \"text-xl font-semibold text-slate-900\",\n style: { fontFamily: sectionTitleFontFamily },\n children: title\n }\n ),\n description && /* @__PURE__ */ jsx11(\n \"p\",\n {\n className: \"mt-1 text-sm text-slate-500\",\n style: { fontFamily: sectionDescriptionFontFamily },\n children: description\n }\n )\n ] }),\n /* @__PURE__ */ jsx11(\"div\", { className: \"overflow-x-auto w-full rounded-xl border border-slate-200\", children: /* @__PURE__ */ jsx11(\"div\", { className: \"min-w-[900px]\", children: /* @__PURE__ */ jsxs9(\"table\", { className: \"min-w-full border-collapse text-sm\", children: [\n /* @__PURE__ */ jsx11(\"thead\", { className: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\", children: /* @__PURE__ */ jsx11(\"tr\", { children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"th\",\n {\n className: \"px-3 py-2 text-left text-xs font-semibold uppercase tracking-wide text-white\",\n children: header.label\n },\n header.key\n )) }) }),\n /* @__PURE__ */ jsxs9(\"tbody\", { className: \"bg-white\", children: [\n data.length === 0 && /* @__PURE__ */ jsx11(\"tr\", { children: /* @__PURE__ */ jsx11(\n \"td\",\n {\n colSpan: headers.length,\n className: \"px-4 py-6 text-center text-sm text-slate-500\",\n children: \"No records to display.\"\n }\n ) }),\n data.map((row, index) => {\n const selected = isRowSelected(row, index);\n const rowId = getRowId ? getRowId(row, index) : index;\n return /* @__PURE__ */ jsx11(\n \"tr\",\n {\n onClick: () => handleRowClick(row, index),\n className: `cursor-pointer border-b border-slate-100 transition hover:bg-slate-50 ${selected ? \"bg-blue-100/70\" : \"\"}`,\n children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"td\",\n {\n className: \"px-3 py-2 text-slate-800\",\n children: renderCellValue(\n row[header.key]\n )\n },\n header.key\n ))\n },\n String(rowId)\n );\n })\n ] })\n ] }) }) }),\n tabs.length > 0 && /* @__PURE__ */ jsxs9(\"div\", { className: \"mt-6\", children: [\n /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-3 flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs9(\"h3\", { className: \"text-sm font-semibold uppercase tracking-wide text-slate-500\", children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ jsx11(\"p\", { className: \"text-xs text-slate-500\", children: \"Drag the tab headers to change their order.\" })\n ] }),\n /* @__PURE__ */ jsx11(\n TabbedInterface,\n {\n ...tabProps,\n tabs: tabbedInterfaceTabs,\n draggableTabs: rearrange,\n onReorderTabs: rearrange ? handleReorderTabs : void 0,\n showTabCloseIconInHeader: effectiveShowHeaderClose,\n onCloseTab: (index) => {\n const target = tabs[index];\n if (!target) return;\n handleCloseTab(target.id);\n }\n }\n )\n ] })\n ]\n }\n );\n}\nTableWithTab.displayName = \"TableWithTab\";\n\n// src/components/Table.tsx\nimport React11, { useState as useState8 } from \"react\";\nimport {\n ArrowDownOnSquareIcon,\n XMarkIcon as XMarkIcon2\n} from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment6, jsx as jsx12, jsxs as jsxs10 } from \"react/jsx-runtime\";\nvar Table = ({\n headers,\n data,\n page,\n setPage,\n limit,\n setLimit,\n totalCount,\n highlightRowColor,\n actions,\n paginationRequired,\n paginationPosition = \"bottom-center\",\n onDownloadPDF,\n onDownloadExcel,\n searchable = false,\n searchTerm = \"\",\n onResetSearch,\n onSearch,\n searchModeOptions = [\"includes\", \"startsWith\"],\n summary,\n summaryKey = \"summary\",\n summaryTitleField = \"name\",\n summaryColumn = false,\n summaryColumnKey,\n summaryColumnMaxLength = 120,\n textWrapColumns,\n textWrapMaxLength = 120,\n textWrapColumnMaxLengths,\n tableTestId\n}) => {\n const [searchMode, setSearchMode] = useState8(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = useState8(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = useState8(\n /* @__PURE__ */ new Set()\n );\n const isPaginated = paginationRequired;\n const handleChange = (e) => {\n onSearch?.(e.target.value, searchMode);\n };\n const totalPages = isPaginated ? Math.max(1, Math.ceil((totalCount || 0) / (limit || 1))) : 0;\n const currentPage = isPaginated ? typeof page === \"number\" && page > 0 ? page : 1 : 1;\n const goToPage = (p) => {\n if (!isPaginated) return;\n const clamped = Math.max(1, Math.min(totalPages, p));\n setPage?.(clamped);\n };\n const renderPageNumbers = () => {\n if (!isPaginated || totalPages <= 1) return null;\n const pages = [];\n const siblings = 1;\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(1),\n disabled: currentPage === 1,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === 1 ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: \"1\"\n },\n 1\n )\n );\n const start = Math.max(2, currentPage - siblings);\n const end = Math.min(totalPages - 1, currentPage + siblings);\n if (start > 2) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"s\"));\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(i),\n disabled: currentPage === i,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === i ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: i\n },\n i\n )\n );\n }\n if (end < totalPages - 1) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"e\"));\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(totalPages),\n disabled: currentPage === totalPages,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === totalPages ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: totalPages\n },\n totalPages\n )\n );\n }\n return pages;\n };\n const summaryColKeyToUse = summaryColumnKey || summaryKey;\n const renderCell = (value, key) => {\n if (value == null) return \"-\";\n if (React11.isValidElement(value)) return value;\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (value instanceof Date) return value.toLocaleString();\n if (Array.isArray(value)) {\n if (value.some((item) => React11.isValidElement(item))) return /* @__PURE__ */ jsx12(Fragment6, { children: value });\n return value.join(\", \");\n }\n if (typeof value === \"object\") return JSON.stringify(value);\n if (typeof value === \"string\") {\n if (textWrapColumns?.includes(key)) {\n const max = textWrapColumnMaxLengths?.[key] ?? textWrapMaxLength ?? 120;\n const truncated = value.length <= max ? value : value.substring(0, max) + \"...\";\n return /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"text-sm text-slate-600 line-clamp-2\",\n title: value,\n children: truncated\n }\n );\n }\n }\n return String(value);\n };\n return /* @__PURE__ */ jsxs10(Fragment6, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ jsxs10(\"div\", { className: \"mb-3 flex flex-wrap justify-between gap-3\", children: [\n searchable && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsxs10(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsx12(\n \"input\",\n {\n value: searchTerm,\n onChange: handleChange,\n placeholder: \"Search...\",\n className: \"w-56 rounded-lg px-3 py-2 pr-8 text-sm text-[#1761A3] shadow focus:ring-2 focus:ring-emerald-500\"\n }\n ),\n searchTerm && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: onResetSearch,\n className: \"absolute right-2 top-2\",\n children: /* @__PURE__ */ jsx12(XMarkIcon2, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx12(\n \"select\",\n {\n value: searchMode,\n onChange: (e) => setSearchMode(e.target.value),\n className: \"rounded-lg px-2 py-2 text-sm shadow\",\n children: searchModeOptions.map((mode) => /* @__PURE__ */ jsx12(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex gap-2\", children: [\n onDownloadPDF && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadPDF(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: /* @__PURE__ */ jsx12(ArrowDownOnSquareIcon, { className: \"h-5 w-5\" })\n }\n ),\n onDownloadExcel && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadExcel(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: \"Excel\"\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"overflow-x-auto rounded-xl border border-[#1761A3] bg-white\",\n \"data-testid\": tableTestId,\n children: /* @__PURE__ */ jsxs10(\"table\", { className: \"w-full min-w-[900px] table-fixed\", children: [\n /* @__PURE__ */ jsx12(\"thead\", { className: \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\", children: /* @__PURE__ */ jsxs10(\"tr\", { children: [\n headers.map((header, idx) => /* @__PURE__ */ jsx12(\n \"th\",\n {\n className: \" h-[50px] px-3 py-2 text-left text-sm font-bold text-white\",\n children: header.label\n },\n idx\n )),\n actions && /* @__PURE__ */ jsx12(\"th\", { className: \"px-3 py-2 text-white font-bold\", children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ jsx12(\"tbody\", { children: data.length > 0 ? data.map((row, rowIndex) => {\n const isExpanded = summary === \"single\" ? expandedRowIndex === rowIndex : expandedRowIndexes.has(rowIndex);\n const toggleRow = () => {\n if (!summary) return;\n if (summary === \"single\") {\n setExpandedRowIndex((prev) => prev === rowIndex ? null : rowIndex);\n } else {\n setExpandedRowIndexes((prev) => {\n const next = new Set(prev);\n next.has(rowIndex) ? next.delete(rowIndex) : next.add(rowIndex);\n return next;\n });\n }\n };\n return /* @__PURE__ */ jsxs10(React11.Fragment, { children: [\n /* @__PURE__ */ jsxs10(\n \"tr\",\n {\n onClick: toggleRow,\n className: \" h-[57px] border-b even:bg-slate-50 hover:bg-slate-100\",\n style: highlightRowColor ? { backgroundColor: highlightRowColor } : void 0,\n children: [\n headers.map((header, i) => /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-sm whitespace-nowrap overflow-hidden text-ellipsis max-w-[1px] break-words\", children: renderCell(row[header.key], header.key) }, i)),\n actions && /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-center\", children: actions(row) })\n ]\n }\n ),\n summary && isExpanded && /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"px-4 py-4 bg-gradient-to-r from-[rgba(239,246,255,0.5)] to-[rgba(219,234,254,0.5)]\",\n children: row[summaryKey]\n }\n ) })\n ] }, rowIndex);\n }) : /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"text-center py-6 text-slate-500\",\n children: \"No records found\"\n }\n ) }) })\n ] })\n }\n ),\n paginationRequired && totalPages > 1 && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex justify-center mt-3 gap-2 items-center\", children: [\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage - 1),\n disabled: currentPage === 1,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Previous\"\n }\n ),\n renderPageNumbers(),\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage + 1),\n disabled: currentPage === totalPages,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Next\"\n }\n )\n ] })\n ] });\n};\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { useMemo as useMemo3, useState as useState12 } from \"react\";\n\n// src/components/ChartDropdown.tsx\nimport { useEffect as useEffect7, useMemo, useRef as useRef4, useState as useState9 } from \"react\";\nimport { jsx as jsx13, jsxs as jsxs11 } from \"react/jsx-runtime\";\nvar assetSrc = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon = require_down_4();\nvar getTriggerClasses = (variant) => {\n const base = \"cursor-pointer outline-none transition-all duration-200\";\n switch (variant) {\n case \"mahatiFilter\":\n return `${base} w-[130px] h-[30px] rounded-[4px] border border-[rgba(210,210,210,1)] bg-gradient-to-r from-[rgba(23,97,163,0.07)] to-[rgba(77,175,131,0.07)] px-2 text-xs text-[rgba(17,24,39,1)] flex items-center justify-between gap-2 hover:opacity-95 focus:shadow-[0_0_0_2px_rgba(23,97,163,0.25)]`;\n case \"basic\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"outline\":\n return `${base} border border-[rgba(37,99,235,1)] text-[rgba(37,99,235,1)] bg-transparent rounded-md px-4 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"pill\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-full px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"dark\":\n return `${base} bg-[rgba(31,41,55,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(55,65,81,1)]`;\n case \"underline\":\n return `${base} border-b-2 border-[rgba(59,130,246,1)] bg-transparent text-[rgba(29,78,216,1)] rounded-none px-2 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"shadow\":\n return `${base} bg-white text-[rgba(55,65,81,1)] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1)] border border-[rgba(229,231,235,1)] rounded-md px-4 py-2 hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)]`;\n case \"glass\":\n return `${base} bg-[rgba(255,255,255,0.2)] backdrop-blur-md text-white border border-[rgba(255,255,255,0.4)] rounded-md px-4 py-2 hover:bg-[rgba(255,255,255,0.3)]`;\n case \"gradient\":\n return `${base} bg-gradient-to-r from-[rgba(59,130,246,1)] to-[rgba(168,85,247,1)] text-white border-none rounded-md px-4 py-2 hover:opacity-90`;\n default:\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n }\n};\nvar getMenuClasses = (variant) => {\n const base = \"absolute mt-1 z-20 bg-white rounded-md shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)] overflow-hidden\";\n if (variant === \"mahatiFilter\") {\n return `${base} w-[130px] rounded-[4px] border border-[rgba(210,210,210,1)] shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]`;\n }\n return `${base} min-w-[160px] border border-[rgba(229,231,235,1)]`;\n};\nvar getOptionClasses = (variant, isSelected) => {\n const base = \"w-full text-left cursor-pointer outline-none border-none transition-colors duration-200\";\n if (variant === \"mahatiFilter\") {\n return `${base} h-[30px] px-2 flex items-center text-xs text-[rgba(31,41,55,1)] rounded-none ${isSelected ? \"bg-[rgba(243,244,246,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(243,244,246,1)]`;\n }\n return `${base} px-3 py-2 text-sm text-[rgba(31,41,55,1)] ${isSelected ? \"bg-[rgba(239,246,255,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(239,246,255,1)]`;\n};\nvar ChartDropdown = ({\n options,\n value,\n onSelect,\n label,\n variant = \"basic\",\n className,\n testId\n}) => {\n const [isOpen, setIsOpen] = useState9(false);\n const [internalValue, setInternalValue] = useState9(value);\n const dropdownRef = useRef4(null);\n useEffect7(() => {\n if (value !== void 0) setInternalValue(value);\n }, [value]);\n const displayValue = value !== void 0 ? value : internalValue;\n const selectedOption = useMemo(\n () => options.find((opt) => opt.value === displayValue),\n [options, displayValue]\n );\n useEffect7(() => {\n const handleClickOutside = (event) => {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\n }, []);\n const handleSelect = (optionValue) => {\n onSelect(optionValue);\n if (value === void 0) {\n setInternalValue(optionValue);\n }\n setIsOpen(false);\n };\n return /* @__PURE__ */ jsxs11(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative inline-block ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ jsx13(\"label\", { className: \"block mb-1 text-xs font-medium text-[rgba(55,65,81,1)]\", children: label }),\n /* @__PURE__ */ jsxs11(\n \"button\",\n {\n type: \"button\",\n className: getTriggerClasses(variant),\n onClick: () => setIsOpen(!isOpen),\n onKeyDown: (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n setIsOpen(!isOpen);\n }\n },\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": isOpen,\n children: [\n /* @__PURE__ */ jsx13(\"span\", { className: \"overflow-hidden text-ellipsis whitespace-nowrap\", children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ jsx13(\n \"img\",\n {\n src: assetSrc(arrowDownIcon),\n alt: \"\",\n className: \"w-3 h-3 flex-shrink-0\"\n }\n )\n ]\n }\n ),\n isOpen && /* @__PURE__ */ jsx13(\"div\", { className: getMenuClasses(variant), role: \"listbox\", children: options.map((option) => /* @__PURE__ */ jsx13(\n \"button\",\n {\n type: \"button\",\n className: getOptionClasses(variant, option.value === displayValue),\n onClick: () => handleSelect(option.value),\n role: \"option\",\n \"aria-selected\": option.value === displayValue,\n children: option.key\n },\n option.key\n )) })\n ]\n }\n );\n};\nChartDropdown.displayName = \"ChartDropdown\";\n\n// src/components/PieLineBarChart.tsx\nimport React13 from \"react\";\nimport {\n Chart as ChartJS,\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n} from \"chart.js\";\nimport { Doughnut, Line, Bar } from \"react-chartjs-2\";\nimport { jsx as jsx14 } from \"react/jsx-runtime\";\nChartJS.register(\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n);\nvar makeAreaDataStraight = (data) => {\n const datasets = Array.isArray(data.datasets) ? data.datasets : [];\n return {\n ...data,\n datasets: datasets.map((ds) => ({\n ...ds,\n tension: 0,\n cubicInterpolationMode: \"default\"\n }))\n };\n};\nvar PieLineBarChart = ({\n chartType,\n data,\n options\n}) => {\n const defaultOptions = React13.useMemo(() => {\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n if (isLineFamily) {\n return {\n responsive: true,\n maintainAspectRatio: false,\n elements: { line: { tension: 0 } },\n plugins: {\n legend: { display: false },\n tooltip: {\n mode: \"index\",\n intersect: false,\n backgroundColor: \"rgba(255,255,255,0.95)\",\n titleColor: \"rgba(31,41,55,1)\",\n bodyColor: \"rgba(107,114,128,1)\",\n borderColor: \"rgba(229,231,235,1)\",\n borderWidth: 1,\n padding: 12,\n displayColors: true\n }\n },\n scales: {\n x: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } }\n },\n y: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } },\n min: 40,\n max: 90\n }\n },\n interaction: { mode: \"nearest\", axis: \"x\", intersect: false }\n };\n }\n return {\n responsive: true,\n maintainAspectRatio: false,\n cutout: chartType === \"pie\" || chartType === \"doughnut\" ? \"50%\" : void 0,\n plugins: { legend: { display: false } }\n };\n }, [chartType]);\n const chartOptions = options || defaultOptions;\n const renderChart = () => {\n switch (chartType) {\n case \"line\":\n case \"area\":\n return /* @__PURE__ */ jsx14(Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ jsx14(Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ jsx14(Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsx14(\"div\", { className: \"w-full h-full relative flex items-center justify-center\", children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nimport { jsx as jsx15, jsxs as jsxs12 } from \"react/jsx-runtime\";\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ jsxs12(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"mt-4 flex flex-col gap-[35px] sm:gap-[45px]\", children: bullets.map((b) => {\n const percentageAchieved = Math.round(b.achieved / b.target * 100);\n const achievedWidth = Math.min(b.achieved / b.target * 100, 100);\n const markerPosition = Math.min(b.marker / b.target * 100, 100);\n return /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"flex flex-col gap-[9px]\",\n \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0,\n children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-xs font-semibold leading-normal sm:text-sm\", children: b.name }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"flex flex-col gap-3 sm:flex-row sm:items-center sm:gap-4\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full sm:w-[500px]\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"absolute top-[-29px] right-0 text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal whitespace-nowrap sm:text-sm\", children: [\n \"$\",\n b.achieved.toLocaleString(),\n \"/$\",\n b.target.toLocaleString()\n ] }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full h-5 rounded-[20px] bg-[rgba(183,232,214,0.9)] overflow-hidden\", children: [\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"h-5 rounded-l-[20px] rounded-r-none bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\",\n style: { width: `${achievedWidth}%` },\n \"data-testid\": testId ? `${testId}-bar-${b.name}` : void 0\n }\n ),\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"absolute top-0 h-5 w-1 rounded-sm bg-[rgba(15,74,122,1)]\",\n style: { left: `${markerPosition}%`, transform: \"translateX(-50%)\" },\n \"data-testid\": testId ? `${testId}-marker-${b.name}` : void 0\n }\n )\n ] }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"absolute top-[29px] left-0 w-full\", children: /* @__PURE__ */ jsxs12(\"div\", { className: \"flex justify-between items-start\", children: [\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", children: \"0\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"2k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"4k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"6k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"8k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-8px\" }, children: \"10k\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"text-[rgba(115,115,115,1)] font-[Poppins,sans-serif] text-[9px] font-semibold leading-normal whitespace-nowrap sm:ml-[27px] sm:text-[10px]\",\n \"data-testid\": testId ? `${testId}-percentage-${b.name}` : void 0,\n children: [\n percentageAchieved,\n \"% of target achieved\"\n ]\n }\n )\n ] })\n ]\n },\n b.name\n );\n }) })\n ] });\n};\nBulletChart.displayName = \"BulletChart\";\n\n// src/components/GaugeChart.tsx\nimport { jsx as jsx16, jsxs as jsxs13 } from \"react/jsx-runtime\";\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: {\n color: \"rgba(23,97,163,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"18px\",\n fontWeight: 600\n },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const percentage = Math.min(gauge.value / gauge.max * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const remaining = gauge.max - gauge.value;\n const dailyAvg = Math.round(gauge.value / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"relative w-full flex-shrink-0 lg:w-[340px]\",\n style: { height: \"220px\" },\n children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\"linearGradient\", { id: `gaugeGradient${index}`, x1: \"0%\", y1: \"0%\", x2: \"100%\", y2: \"0%\", children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\" })\n ] }) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: \"rgba(230,230,230,1)\",\n strokeWidth: \"16\",\n strokeLinecap: \"round\"\n }\n ),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: `url(#gaugeGradient${index})`,\n strokeWidth: \"16\",\n strokeLinecap: \"round\",\n style: { transition: \"all 0.7s ease-in-out\" },\n strokeDasharray: `${percentage / 100 * 408.4} 408.4`\n }\n ),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"14px\",\n fontWeight: 500,\n fill: \"rgba(94,94,94,1)\"\n },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `centerGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#centerGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\n \"g\",\n {\n style: {\n transition: \"all 0.7s ease-in-out\",\n transform: `rotate(${angle}deg)`,\n transformOrigin: \"0 0\"\n },\n children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" })\n }\n ) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: {\n color: \"rgba(100,100,100,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400\n },\n children: [\n \"You've completed \",\n Math.round(percentage),\n \"% of the total target\"\n ]\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Target\", value: gauge.max.toLocaleString() },\n { label: \"Achieved\", value: gauge.value.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Remaining\", value: remaining.toLocaleString() },\n { label: \"Daily Avg Needed\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nGaugeChart.displayName = \"GaugeChart\";\nvar DEFAULT_RISK_BANDS = [\n { label: \"Critical Risk\", color: \"#DC2626\", rangeStart: 0, rangeEnd: 20 },\n { label: \"High Risk\", color: \"#F97316\", rangeStart: 20, rangeEnd: 40 },\n { label: \"Stable\", color: \"#FBBF24\", rangeStart: 40, rangeEnd: 60 },\n { label: \"Strong\", color: \"#4ADE80\", rangeStart: 60, rangeEnd: 80 },\n { label: \"Top Performer\", color: \"#059669\", rangeStart: 80, rangeEnd: 100 }\n];\nvar createRiskArcPath = (centerX, centerY, radius, startAngle, endAngle) => {\n const startRad = (startAngle - 180) * Math.PI / 180;\n const endRad = (endAngle - 180) * Math.PI / 180;\n const x1 = centerX + radius * Math.cos(startRad);\n const y1 = centerY + radius * Math.sin(startRad);\n const x2 = centerX + radius * Math.cos(endRad);\n const y2 = centerY + radius * Math.sin(endRad);\n const largeArcFlag = endAngle - startAngle > 180 ? 1 : 0;\n return `M ${x1} ${y1} A ${radius} ${radius} 0 ${largeArcFlag} 1 ${x2} ${y2}`;\n};\nvar getRiskLevel = (score, bands) => {\n for (const band of bands) {\n if (score >= band.rangeStart && score <= band.rangeEnd) return band.label;\n }\n return bands[0].label;\n};\nvar RiskGaugeChart = ({ title, gauges }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"18px\", fontWeight: 600 },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const bands = gauge.bands || DEFAULT_RISK_BANDS;\n const maxScore = gauge.max || 100;\n const percentage = Math.min(gauge.score / maxScore * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const currentLevel = getRiskLevel(percentage, bands);\n const remaining = maxScore - gauge.score;\n const dailyAvg = Math.round(gauge.score / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"relative w-full flex-shrink-0 lg:w-[340px]\", style: { height: \"220px\" }, children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n bands.map((band, bandIndex) => {\n const startAngle = band.rangeStart / 100 * 180;\n const endAngle = band.rangeEnd / 100 * 180;\n const arcPath = createRiskArcPath(170, 170, 130, startAngle, endAngle);\n return /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: arcPath,\n fill: \"none\",\n stroke: band.color,\n strokeWidth: \"16\",\n strokeLinecap: \"butt\",\n style: { transition: \"all 0.7s ease-in-out\" }\n },\n bandIndex\n );\n }),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 500, fill: \"rgba(94,94,94,1)\" },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `riskCenterGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(148,163,184,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(71,85,105,1)\", stopOpacity: \"0.05\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#riskCenterGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\"g\", { style: { transition: \"all 0.7s ease-in-out\", transform: `rotate(${angle}deg)`, transformOrigin: \"0 0\" }, children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" }) }) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: { color: \"rgba(100,100,100,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"11px\", fontWeight: 400 },\n children: [\n \"Current Status: \",\n currentLevel\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Maximum\", value: maxScore.toLocaleString() },\n { label: \"Current Score\", value: gauge.score.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Gap to Max\", value: remaining.toLocaleString() },\n { label: \"Daily Average\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-wrap gap-[30px] mt-[30px] justify-center\", children: bands.map((band, bandIdx) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"w-5 h-3 rounded-sm\",\n style: { backgroundColor: band.color }\n }\n ),\n /* @__PURE__ */ jsx16(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n color: \"rgba(75,85,99,1)\",\n fontWeight: 500\n },\n children: band.label\n }\n )\n ] }, bandIdx)) }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nRiskGaugeChart.displayName = \"RiskGaugeChart\";\n\n// src/components/HorizontalBarChart.tsx\nimport { jsx as jsx17, jsxs as jsxs14 } from \"react/jsx-runtime\";\nvar HorizontalBarChart = ({\n title,\n bars,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n return /* @__PURE__ */ jsxs14(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex items-center justify-end mb-[2px]\", children: /* @__PURE__ */ jsx17(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded transition-colors hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer\",\n \"data-testid\": testId ? `${testId}-menu-button` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx17(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) })\n }\n ) }),\n /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n \"data-testid\": testId ? `${testId}-title` : void 0,\n children: title\n }\n ),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex items-start gap-4\", children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col justify-start pt-1\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-label-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"12px\",\n fontWeight: 400,\n whiteSpace: \"nowrap\"\n },\n className: \"sm:text-sm\",\n children: bar.name\n }\n )\n },\n bar.name\n )) }),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs14(\"div\", { className: \"absolute inset-0 pointer-events-none\", style: { height: \"180px\" }, children: [\n xAxisConfig && xAxisConfig.labels.map((label, idx) => {\n const totalLabels = xAxisConfig.labels.length;\n const position = idx / (totalLabels - 1) * 100;\n const approxCharWidth = 7;\n const centerOffset = String(label).length * approxCharWidth / 2;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 w-px z-[1]\",\n style: {\n left: `calc(${position}% - ${centerOffset}px)`,\n height: \"165px\",\n backgroundColor: \"rgba(229,231,235,1)\"\n }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 top-0 w-[2px] z-[2]\", style: { height: \"165px\", backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 right-0 h-[2px] z-[2]\", style: { bottom: \"15px\", backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col pt-1 relative z-10\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => {\n const maxVal = xAxisConfig?.max || 250;\n const barLengthPercentage = bar.value / maxVal * 100;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-row-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"relative h-[30px] w-full\", children: /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 left-0 h-[30px] rounded\",\n style: { width: `${barLengthPercentage}%`, background: bar.color },\n \"data-testid\": testId ? `${testId}-bar-${index}` : void 0\n }\n ) })\n },\n bar.name\n );\n }) }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex justify-between items-start w-full relative z-10\", style: { marginTop: \"-8px\" }, children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) })\n ] })\n ] })\n ] });\n};\nHorizontalBarChart.displayName = \"HorizontalBarChart\";\n\n// src/components/GanttChart.tsx\nimport React14 from \"react\";\nimport { jsx as jsx18, jsxs as jsxs15 } from \"react/jsx-runtime\";\nvar assetSrc2 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon2 = require_down_4();\nvar GANTT_COLORS = {\n green: \"rgba(44, 160, 44, 1)\",\n blue: \"rgba(37, 99, 235, 1)\",\n orange: \"rgba(255, 127, 14, 1)\",\n red: \"rgba(239, 68, 68, 1)\",\n purple: \"rgba(147, 51, 234, 1)\",\n teal: \"rgba(20, 184, 166, 1)\",\n pink: \"rgba(236, 72, 153, 1)\",\n yellow: \"rgba(234, 179, 8, 1)\",\n indigo: \"rgba(99, 102, 241, 1)\",\n emerald: \"rgba(16, 185, 129, 1)\"\n};\nvar GanttChart = ({\n data,\n selectedYear,\n selectedMonth,\n selectedProject,\n onProjectChange,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React14.useState(false);\n const projects = [\"Project 1\", \"Project 2\"];\n const projectData = data;\n const getMonthNames = (monthRange) => {\n const monthMap = {\n Jan: \"January\",\n Feb: \"February\",\n Mar: \"March\",\n Apr: \"April\",\n May: \"May\",\n Jun: \"June\",\n Jul: \"July\",\n Aug: \"August\",\n Sep: \"September\",\n Oct: \"October\",\n Nov: \"November\",\n Dec: \"December\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthMap[month1], monthMap[month2]];\n };\n const getMonthNumber = (monthRange) => {\n const monthNumberMap = {\n Jan: \"01\",\n Feb: \"02\",\n Mar: \"03\",\n Apr: \"04\",\n May: \"05\",\n Jun: \"06\",\n Jul: \"07\",\n Aug: \"08\",\n Sep: \"09\",\n Oct: \"10\",\n Nov: \"11\",\n Dec: \"12\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthNumberMap[month1], monthNumberMap[month2]];\n };\n const getTodayPosition = () => {\n const today = /* @__PURE__ */ new Date();\n const currentYear = today.getFullYear();\n const currentMonth = today.getMonth() + 1;\n const currentDay = today.getDate();\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1 = monthToNumber[month1];\n const selectedMonth2 = monthToNumber[month2];\n const selectedYearNum = parseInt(selectedYear);\n if (currentYear !== selectedYearNum) return null;\n let monthIndex = -1;\n if (currentMonth === selectedMonth1) monthIndex = 0;\n else if (currentMonth === selectedMonth2) monthIndex = 1;\n else return null;\n const daysInMonth = 31;\n const dayPercent = (currentDay - 1) / daysInMonth;\n const positionInMonth = dayPercent * 320;\n const mobileLeft = monthIndex === 0 ? 120 + positionInMonth : 450 + positionInMonth;\n const desktopLeft = monthIndex === 0 ? 137 + positionInMonth : 467 + positionInMonth;\n return {\n show: true,\n mobileLeft: Math.round(mobileLeft * 100) / 100,\n desktopLeft: Math.round(desktopLeft * 100) / 100\n };\n };\n const todayPosition = getTodayPosition();\n const months = getMonthNames(selectedMonth);\n const displayMonths = months.map((m) => `${m} ${selectedYear}`);\n const [month1Num, month2Num] = getMonthNumber(selectedMonth);\n const getTaskPosition = (startDate, endDate) => {\n const [startDay, startMonth] = startDate.split(\"/\").map(Number);\n const [endDay, endMonth] = endDate.split(\"/\").map(Number);\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1Num = monthToNumber[month1];\n const selectedMonth2Num = monthToNumber[month2];\n const daysInMonth = 31;\n let monthIndex = -1;\n let startPercent = 0;\n let width = 0;\n let isInSecondMonth = false;\n if (startMonth === selectedMonth1Num && endMonth === selectedMonth1Num) {\n monthIndex = 0;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth2Num && endMonth === selectedMonth2Num) {\n monthIndex = 1;\n isInSecondMonth = true;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth1Num && endMonth === selectedMonth2Num) {\n monthIndex = 2;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = 100 + endDay / daysInMonth * 100 - startPercent;\n }\n return { startPercent, width, monthIndex, isInSecondMonth };\n };\n const lineHeight = React14.useMemo(() => {\n const baseHeight = 30;\n const taskHeight = 32;\n const taskSpacing = 24;\n return baseHeight + projectData.tasks.length * (taskHeight + taskSpacing);\n }, [projectData.tasks.length]);\n const DateRangeBoxes = ({ monthNum }) => /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-2\", children: [\n `01/${monthNum} - 10/${monthNum}`,\n `11/${monthNum} - 20/${monthNum}`,\n `21/${monthNum} - 25/${monthNum}`,\n `26/${monthNum} - 31/${monthNum}`\n ].map((range) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"w-[74px] h-6 rounded\",\n style: { background: \"rgba(225, 237, 241, 1)\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\" },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 600\n },\n children: range\n }\n )\n },\n range\n )) });\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center justify-between mb-4 sm:mb-6\", children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs15(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-2 py-1 rounded cursor-pointer border-none transition-colors hover:bg-[rgba(249,250,251,1)]\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: selectedProject\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n width: \"12px\",\n height: \"12px\",\n background: `url(${assetSrc2(arrowDownIcon2)}) transparent 50% / cover no-repeat`,\n aspectRatio: \"1/1\",\n transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\",\n transition: \"transform 0.2s\"\n }\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-full left-0 mt-1 bg-white border rounded-lg z-50 min-w-[150px]\",\n style: {\n border: \"1px solid rgba(229,231,235,1)\",\n boxShadow: \"0 10px 15px -3px rgba(0,0,0,0.1)\"\n },\n children: projects.map((project, idx) => /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: `w-full text-left px-4 py-2 bg-white border-none cursor-pointer transition-colors hover:bg-[rgba(249,250,251,1)] ${idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\"} ${idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"}`,\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: project\n }\n )\n },\n project\n ))\n }\n )\n ] }),\n /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\",\n style: { background: \"rgba(107,114,128,1)\" }\n },\n i\n )) })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-8 mb-4\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute left-0 w-[120px] sm:w-[137px] h-8\" }),\n [\n { left: \"120px\", smLeft: \"137px\", label: displayMonths[0] },\n { left: \"450px\", smLeft: \"467px\", label: displayMonths[1] }\n ].map(({ left, smLeft, label }) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-0 w-[320px] h-8 rounded flex items-center justify-center\",\n style: {\n left,\n background: \"linear-gradient(90deg, rgba(23,97,163,1) 0%, rgba(77,175,131,1) 100%)\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600,\n color: \"white\"\n },\n children: label\n }\n )\n },\n label\n ))\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-6 mb-6\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"120px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"450px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + section * 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m1-${section}`\n )),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + 8 * 40 + 20}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n }\n ),\n [1, 2, 3, 4, 5, 6, 7, 8, 9].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${450 + section * 40 - 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m2-${section}`\n )),\n todayPosition?.show && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-[2px] z-0\",\n style: {\n background: \"rgba(32,148,243,1)\",\n left: `${todayPosition.mobileLeft}px`,\n top: \"-24px\",\n height: `${lineHeight - 30}px`\n },\n children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-10 h-[18px] flex items-center justify-center rounded-r\",\n style: {\n background: \"rgba(32,148,243,1)\",\n top: \"10px\",\n left: \"0px\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"white\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 500\n },\n children: \"Today\"\n }\n )\n }\n )\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"flex flex-col gap-4 sm:gap-6 mt-6 sm:mt-8\", children: projectData.tasks.map((task) => {\n const { startPercent, width, monthIndex, isInSecondMonth } = getTaskPosition(\n task.startDate,\n task.endDate\n );\n if (monthIndex === -1) return null;\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center\", children: [\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"flex-shrink-0 pr-2 sm:pr-4 overflow-hidden text-ellipsis whitespace-nowrap\",\n style: {\n width: \"120px\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"relative flex-1 h-7 sm:h-8\", children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute h-full\",\n style: {\n left: isInSecondMonth ? \"330px\" : \"0\",\n width: \"320px\"\n },\n children: /* @__PURE__ */ jsxs15(\n \"div\",\n {\n className: \"absolute h-full rounded-full flex items-center justify-between px-2 sm:px-3\",\n \"data-testid\": `gantt-task-${task.id}`,\n style: {\n left: `${startPercent}%`,\n width: `${width}%`,\n backgroundColor: taskColor\n },\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"text-white overflow-hidden text-ellipsis whitespace-nowrap ml-5\",\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"rounded-full py-[2px] px-2 sm:px-3 sm:py-1 whitespace-nowrap\",\n style: {\n fontSize: \"8px\",\n fontFamily: \"Poppins, sans-serif\",\n fontWeight: 600,\n backgroundColor: \"rgba(255,255,255,1)\",\n color: taskColor\n },\n children: task.status\n }\n )\n ]\n }\n )\n }\n ) })\n ] }, task.id);\n }) })\n ] })\n ] });\n};\nGanttChart.displayName = \"GanttChart\";\n\n// src/components/CalendarHeatmapChart.tsx\nimport React15 from \"react\";\nimport { jsx as jsx19, jsxs as jsxs16 } from \"react/jsx-runtime\";\nvar LEGEND_COLORS = [\n \"rgba(224, 242, 254, 1)\",\n \"rgba(154, 219, 255, 1)\",\n \"rgba(102, 194, 241, 1)\",\n \"rgba(43, 160, 209, 1)\",\n \"rgba(23, 97, 163, 1)\"\n];\nfunction getActivityColor(value) {\n if (value === 0) return \"rgba(224, 242, 254, 1)\";\n if (value < 1e3) return \"rgba(154, 219, 255, 1)\";\n if (value < 3e3) return \"rgba(102, 194, 241, 1)\";\n if (value < 5e3) return \"rgba(43, 160, 209, 1)\";\n return \"rgba(23, 97, 163, 1)\";\n}\nfunction getYearWeeks(year, calendarheatmapData, project, type) {\n const weeks = [];\n const startDate = new Date(year, 0, 1);\n const firstDayOfWeek = startDate.getDay();\n const daysToMonday = firstDayOfWeek === 0 ? -6 : 1 - firstDayOfWeek;\n const firstMonday = new Date(year, 0, 1 + daysToMonday);\n const currentDate = new Date(firstMonday);\n let lastMonth = -1;\n let weekIndex = 0;\n const maxWeeks = 54;\n const MONTH_NAMES_FULL = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ];\n const MONTH_NAMES_SHORT = [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ];\n while (weekIndex < maxWeeks) {\n const weekDays = [];\n let hasCurrentYearDate = false;\n for (let dayIndex = 0; dayIndex < 7; dayIndex++) {\n const date = new Date(currentDate);\n if (date.getFullYear() === year) hasCurrentYearDate = true;\n let value = 0;\n if (date.getFullYear() === year) {\n const dateStr = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, \"0\")}-${String(date.getDate()).padStart(2, \"0\")}`;\n const monthName = MONTH_NAMES_FULL[date.getMonth()];\n if (calendarheatmapData?.[project]?.[String(year)]?.[type]?.[monthName]) {\n const dayData = calendarheatmapData[project][String(year)][type][monthName].data.find(\n (d) => d.date === dateStr\n );\n if (dayData) value = dayData.value;\n }\n }\n weekDays.push({ date, value });\n currentDate.setDate(currentDate.getDate() + 1);\n }\n if (hasCurrentYearDate) {\n const thursday = weekDays[3].date;\n const weekMonth = thursday.getMonth();\n let monthLabel;\n if (weekMonth !== lastMonth && thursday.getFullYear() === year) {\n monthLabel = MONTH_NAMES_SHORT[weekMonth];\n lastMonth = weekMonth;\n }\n weeks.push({ days: weekDays, monthLabel });\n }\n if (currentDate.getFullYear() > year && currentDate.getMonth() > 0) break;\n weekIndex++;\n }\n return weeks;\n}\nvar CalendarHeatmapChart = ({\n data,\n selectedProject,\n selectedYear,\n selectedType,\n onProjectChange,\n calendarheatmapData,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React15.useState(false);\n const [hoveredCell, setHoveredCell] = React15.useState(null);\n const [tooltipData, setTooltipData] = React15.useState({\n visible: false,\n month: \"\",\n day: 0,\n value: 0,\n position: { x: 0, y: 0 },\n cellColor: \"rgba(77, 175, 131, 1)\"\n });\n const projects = [\"Project 1\", \"Project 2\"];\n const year = parseInt(selectedYear);\n const yearWeeks = getYearWeeks(year, calendarheatmapData || {}, selectedProject, selectedType);\n const dayRows = [[], [], [], [], [], [], []];\n yearWeeks.forEach((week, weekIdx) => {\n week.days.forEach((day, dayIdx) => {\n dayRows[dayIdx].push({ ...day, weekIdx });\n });\n });\n return /* @__PURE__ */ jsxs16(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex items-center gap-3\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs16(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-3 py-1.5 rounded hover:bg-gray-50 transition-colors border-none cursor-pointer\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: selectedProject }),\n /* @__PURE__ */ jsx19(\n \"svg\",\n {\n width: \"12\",\n height: \"12\",\n viewBox: \"0 0 12 12\",\n fill: \"none\",\n className: \"transition-transform duration-200\",\n style: { transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\" },\n children: /* @__PURE__ */ jsx19(\n \"path\",\n {\n d: \"M2.5 4.5L6 8L9.5 4.5\",\n stroke: \"currentColor\",\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }\n )\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx19(\"div\", { className: \"absolute top-full left-0 mt-1 bg-white border border-gray-200 rounded-lg shadow-lg z-50 min-w-[150px]\", children: projects.map((project, idx) => /* @__PURE__ */ jsx19(\n \"button\",\n {\n className: [\n \"w-full text-left px-4 py-2 bg-white border-none hover:bg-gray-50 transition-colors cursor-pointer\",\n idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\",\n idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"\n ].join(\" \"),\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: project })\n },\n project\n )) })\n ] }) }),\n /* @__PURE__ */ jsx19(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-[rgba(224,242,229,1)] border-none cursor-pointer hover:bg-gray-100 transition-colors\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-end gap-2 mb-6 pr-2\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"Less\" }),\n LEGEND_COLORS.map((color) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px]\",\n style: { backgroundColor: color }\n },\n color\n )),\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"More\" })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex-1 flex\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex flex-col justify-start pr-2 pt-5 shrink-0\", children: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"].map((day, idx) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-3.5 flex items-center justify-end text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[9px] font-medium mb-0.5\",\n children: day\n },\n idx\n )) }),\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex-1\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"min-w-max\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-1 h-[18px]\", children: yearWeeks.map((week, idx) => /* @__PURE__ */ jsx19(\"div\", { className: \"w-3.5 text-center\", children: week.monthLabel && /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: week.monthLabel }) }, idx)) }),\n dayRows.map((row, rowIdx) => /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-0.5\", children: row.map((cell, colIdx) => {\n const { date, value } = cell;\n const color = getActivityColor(value);\n const isCurrentYear = date.getFullYear() === year;\n const cellKey = `${rowIdx}-${colIdx}`;\n const isHovered = hoveredCell === cellKey;\n return /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px] relative transition-all duration-100\",\n style: {\n backgroundColor: isCurrentYear ? color : \"rgba(240,240,240,1)\",\n opacity: isCurrentYear ? 1 : 0.3,\n cursor: isCurrentYear ? \"pointer\" : \"default\",\n transform: isHovered && isCurrentYear ? \"scale(1.05)\" : \"scale(1)\"\n },\n onMouseEnter: (e) => {\n if (isCurrentYear) {\n setHoveredCell(cellKey);\n const rect = e.currentTarget.getBoundingClientRect();\n const monthName = date.toLocaleDateString(\"en-US\", { month: \"long\" });\n setTooltipData({\n visible: true,\n month: `${monthName} ${date.getFullYear()}`,\n day: date.getDate(),\n value,\n cellColor: color,\n position: { x: rect.left + rect.width / 2, y: rect.top }\n });\n }\n },\n onMouseLeave: () => {\n setHoveredCell(null);\n setTooltipData((prev) => ({ ...prev, visible: false }));\n },\n children: isCurrentYear && value > 0 && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"absolute inset-0 flex items-center justify-center pointer-events-none transition-opacity duration-200\",\n style: { opacity: isHovered ? 1 : 0 },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[6px] font-bold text-white [text-shadow:0_1px_1px_rgba(0,0,0,0.8)]\", children: date.getDate() })\n }\n )\n },\n colIdx\n );\n }) }, rowIdx))\n ] }) })\n ] }),\n tooltipData.visible && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999]\",\n style: {\n left: tooltipData.position.x,\n top: tooltipData.position.y,\n transform: \"translate(-50%, -120%)\"\n },\n children: /* @__PURE__ */ jsxs16(\n \"div\",\n {\n className: \"flex flex-col min-w-[127px] max-w-[200px] w-max rounded-md bg-white\",\n style: {\n border: \"1px solid rgba(77, 175, 131, 0.72)\",\n boxShadow: \"0 4px 14px 0 rgba(77, 175, 131, 0.3)\",\n padding: \"8px 48px 11px 10px\"\n },\n children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal mb-1.5 whitespace-nowrap\", children: [\n tooltipData.month.split(\" \")[0],\n \" \",\n tooltipData.day\n ] }),\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-px bg-[rgba(234,234,234,1)] mb-1.5\",\n style: { marginLeft: \"-2px\", marginRight: \"-40px\", width: \"calc(100% + 42px)\" }\n }\n ),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"shrink-0 w-3 h-3 rounded-[2px]\",\n style: { backgroundColor: tooltipData.cellColor }\n }\n ),\n /* @__PURE__ */ jsxs16(\"span\", { className: \"text-[rgba(129,129,129,1)] font-[Poppins,sans-serif] text-[11px] font-medium leading-normal whitespace-nowrap\", children: [\n \"Total \",\n tooltipData.value.toLocaleString(),\n \" activity\"\n ] })\n ] })\n ]\n }\n )\n }\n )\n ] });\n};\nCalendarHeatmapChart.displayName = \"CalendarHeatmapChart\";\n\n// src/components/LollipopChart.tsx\nimport { Fragment as Fragment7, jsx as jsx20, jsxs as jsxs17 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS = [\n \"rgba(37,99,235,1)\",\n \"rgba(16,185,129,1)\",\n \"rgba(245,158,11,1)\",\n \"rgba(239,68,68,1)\",\n \"rgba(147,51,234,1)\",\n \"rgba(236,72,153,1)\"\n];\nvar LollipopChart = ({\n title,\n items,\n orientation = \"horizontal\"\n}) => {\n if (!items || items.length === 0) {\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex items-center justify-center\", style: { color: \"rgba(107,114,128,1)\", fontSize: \"14px\" }, children: \"No data available\" })\n ] });\n }\n const maxValue = Math.max(...items.map((item) => item.value), 1);\n const gridPositions = [0, 25, 50, 75, 100];\n const axisLabels = gridPositions.map((pos) => Math.round(pos / 100 * maxValue));\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex flex-col gap-4 py-4 min-h-[300px] relative overflow-visible\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"w-full overflow-x-visible lg:overflow-x-auto\", children: orientation === \"horizontal\" ? /* @__PURE__ */ jsxs17(Fragment7, { children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col gap-4 relative pl-[140px] w-full min-w-[800px] lg:min-w-0\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[140px] right-0 top-0 bottom-0 pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute top-0 bottom-0 w-px\", style: { left: `${pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-[140px] right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center gap-4 relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute text-right pr-4\", style: { width: \"120px\", left: \"-140px\" }, children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\", display: \"block\" }, className: \"sm:text-sm\", children: item.label }) }),\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex-1 relative h-10 flex items-center\", children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"relative rounded-[2px] transition-all\",\n style: { width: `${percentage}%`, height: \"4px\", background: color },\n children: /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute right-[-10px] top-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n transform: \"translateY(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"ml-4 min-w-[50px] text-sm sm:text-base font-semibold\",\n style: { color: \"rgba(17,24,39,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: item.value\n }\n )\n ] })\n ] }, `${item.label}-${index}`);\n })\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-between mt-2 pl-[140px]\", style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" }, children: axisLabels.map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx)) })\n ] }) : (\n /* Vertical Chart */\n /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"flex flex-col h-full w-full relative pb-[60px] pl-[50px] min-w-[800px] lg:min-w-0\",\n style: { minHeight: \"350px\" },\n children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[50px] right-0 top-0 bottom-[60px] pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 h-px\", style: { top: `${100 - pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-0 top-0 bottom-0 flex flex-col justify-between text-right pr-[5px] w-[45px]\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" },\n children: [...axisLabels].reverse().map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx))\n }\n ),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-around items-end w-full flex-1 gap-4 px-4 relative\", children: items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col items-center gap-2 flex-1 min-w-[60px] max-w-[100px] h-full relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 relative w-10 flex flex-col justify-end items-center h-full\", children: /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"relative w-1 rounded-[2px] transition-all\",\n style: {\n height: `${percentage}%`,\n background: color,\n minHeight: percentage > 0 ? \"8px\" : \"0px\"\n },\n children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n top: \"-10px\",\n transform: \"translateX(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"absolute left-1/2 whitespace-nowrap text-sm sm:text-base font-semibold text-center\",\n style: {\n top: \"-30px\",\n transform: \"translateX(-50%)\",\n color: \"rgba(17,24,39,1)\",\n fontFamily: \"Poppins, sans-serif\"\n },\n children: item.value\n }\n )\n ]\n }\n ) }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute text-center\",\n style: { bottom: \"-50px\", left: \"50%\", transform: \"translateX(-50%)\", maxWidth: \"100px\" },\n children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500 }, className: \"sm:text-sm\", children: item.label })\n }\n )\n ] }, `${item.label}-${index}`);\n }) })\n ]\n }\n )\n ) }) })\n ] });\n};\nvar MenuButtonDots = () => /* @__PURE__ */ jsx20(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"flex gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx20(\"span\", { className: \"w-1 h-1 rounded-full\", style: { background: \"rgba(107,114,128,1)\" } }, i)) }) });\nLollipopChart.displayName = \"LollipopChart\";\n\n// src/components/ColumnChart.tsx\nimport { jsx as jsx21, jsxs as jsxs18 } from \"react/jsx-runtime\";\nvar defaultGradient = \"linear-gradient(180deg, rgba(77, 175, 131, 1) 0%, rgba(23, 97, 163, 1) 100%)\";\nvar ColumnChart = ({\n title,\n columns,\n yAxisConfig\n}) => {\n const safeColumns = columns || [];\n const maxValue = yAxisConfig?.max || 8e3;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 2e3, 4e3, 6e3, 8e3];\n const formatValue = (value) => {\n if (value >= 1e3) return `${(value / 1e3).toFixed(1)}k`;\n return value.toString();\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n const percentage = (value - minValue) / (maxValue - minValue) * 100;\n return Math.max(0, Math.min(100, percentage));\n };\n return /* @__PURE__ */ jsxs18(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx21(\"button\", { className: \"w-6 h-6 flex items-center justify-center rounded hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer transition-colors sm:w-8 sm:h-8\", children: /* @__PURE__ */ jsxs18(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-col flex-1 relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-row w-full flex-1 relative\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"flex flex-col justify-between items-end pr-2 w-10 h-[250px] flex-shrink-0\", children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx21(\n \"span\",\n {\n className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-normal sm:text-xs\",\n children: label >= 1e3 ? `${label / 1e3}k` : label\n },\n `y-${idx}`\n )) }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex-1 relative flex flex-col h-[250px]\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n \"data-testid\": `column-${idx}`,\n className: \"absolute left-0 right-0 h-px bg-[rgba(229,231,235,1)] z-[1]\",\n style: { top: `${position}%` }\n },\n `grid-${idx}`\n );\n }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-0.5 bg-[rgba(125,125,125,1)] z-[2]\" }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-0.5 bg-[rgba(125,125,125,1)] z-[2]\" })\n ] }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10 gap-0\", children: safeColumns.map((column, index) => {\n const columnHeightPercentage = calculateHeight(column.value);\n const gradient = column.gradient || column.color || defaultGradient;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-1\",\n children: /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"w-full max-w-[60px] rounded-t-[4px] rounded-b-none relative transition-all duration-300 min-h-[2px] hover:opacity-85 hover:-translate-y-0.5\",\n style: {\n height: `${columnHeightPercentage}%`,\n background: gradient\n },\n children: /* @__PURE__ */ jsx21(\"div\", { className: \"absolute top-[-24px] left-1/2 -translate-x-1/2 text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-medium whitespace-nowrap sm:text-xs sm:top-[-26px]\", children: formatValue(column.value) })\n }\n )\n },\n `${column.name}-${index}`\n );\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex justify-start px-[10px] mt-3\",\n style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" },\n children: safeColumns.map((column, index) => /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex justify-center items-start max-w-[100px] px-1 min-w-0\",\n children: /* @__PURE__ */ jsx21(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-normal text-center break-words hyphens-auto leading-[1.3] max-w-full whitespace-normal sm:text-xs\", children: column.name })\n },\n `label-${index}`\n ))\n }\n )\n ] })\n ] });\n};\nColumnChart.displayName = \"ColumnChart\";\n\n// src/components/KPIChart.tsx\nimport React16, { useMemo as useMemo2, useState as useState10, useRef as useRef5, useEffect as useEffect8 } from \"react\";\nimport { Fragment as Fragment8, jsx as jsx22, jsxs as jsxs19 } from \"react/jsx-runtime\";\nvar createLinearPath = (points) => {\n if (points.length === 0) return \"\";\n if (points.length === 1) return `M ${points[0].x},${points[0].y}`;\n let path = `M ${points[0].x},${points[0].y}`;\n for (let i = 1; i < points.length; i++) path += ` L ${points[i].x},${points[i].y}`;\n return path;\n};\nvar createAreaPath = (points, height) => {\n if (points.length === 0) return \"\";\n const linePath = createLinearPath(points);\n const lastPoint = points[points.length - 1];\n const firstPoint = points[0];\n return `${linePath} L ${lastPoint.x},${height} L ${firstPoint.x},${height} Z`;\n};\nvar calculatePercentageChange = (data) => {\n if (!data || data.length < 2) return 0;\n const firstValue = data[0];\n const lastValue = data[data.length - 1];\n if (firstValue === 0) return lastValue > 0 ? 100 : lastValue < 0 ? -100 : 0;\n return Math.round((lastValue - firstValue) / Math.abs(firstValue) * 1e3) / 10;\n};\nvar getTimeLabel = (period, dataLength, timestamps) => {\n switch (period) {\n case \"1D\":\n return \"Last 1 Day\";\n case \"1W\":\n return \"Last 1 Week\";\n case \"1M\":\n return \"Last 1 Month\";\n case \"6M\":\n return \"Last 6 Months\";\n case \"1Y\":\n return \"Last 1 Year\";\n case \"MAX\":\n if (timestamps && timestamps.length >= 2) {\n const startDate = new Date(timestamps[0]);\n const endDate = new Date(timestamps[timestamps.length - 1]);\n const monthsDiff = (endDate.getFullYear() - startDate.getFullYear()) * 12 + (endDate.getMonth() - startDate.getMonth());\n if (monthsDiff === 0) {\n const daysDiff = Math.ceil((endDate.getTime() - startDate.getTime()) / 864e5);\n return `Last ${daysDiff} Day${daysDiff > 1 ? \"s\" : \"\"}`;\n } else if (monthsDiff < 12) {\n return `Last ${monthsDiff} Month${monthsDiff > 1 ? \"s\" : \"\"}`;\n } else {\n const years = Math.floor(monthsDiff / 12);\n const months = monthsDiff % 12;\n return months === 0 ? `Last ${years} Year${years > 1 ? \"s\" : \"\"}` : `Last ${years}y ${months}m`;\n }\n }\n return `All Data (${dataLength} points)`;\n default:\n return \"All Data\";\n }\n};\nvar getDateRange = (period, filteredTimestamps, allTimestamps) => {\n if (period === \"MAX\" && allTimestamps && allTimestamps.length >= 2) {\n return formatDateRange(new Date(allTimestamps[0]), new Date(allTimestamps[allTimestamps.length - 1]));\n }\n if (filteredTimestamps && filteredTimestamps.length >= 2) {\n return formatDateRange(new Date(filteredTimestamps[0]), new Date(filteredTimestamps[filteredTimestamps.length - 1]));\n } else if (filteredTimestamps && filteredTimestamps.length === 1) {\n return formatSingleDate(new Date(filteredTimestamps[0]));\n }\n return \"No Date Range\";\n};\nvar formatDateRange = (startDate, endDate) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const sameYear = startDate.getFullYear() === endDate.getFullYear();\n const sm = monthNames[startDate.getMonth()];\n const sd = String(startDate.getDate()).padStart(2, \"0\");\n const sy = startDate.getFullYear();\n const em = monthNames[endDate.getMonth()];\n const ed = String(endDate.getDate()).padStart(2, \"0\");\n const ey = endDate.getFullYear();\n return sameYear ? `${sm} ${sd} - ${em} ${ed}` : `${sm} ${sd} ${sy} - ${em} ${ed} ${ey}`;\n};\nvar formatSingleDate = (date) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n return `${monthNames[date.getMonth()]} ${String(date.getDate()).padStart(2, \"0\")}, ${date.getFullYear()}`;\n};\nvar calculateSum = (data) => data?.reduce((s, v) => s + v, 0) ?? 0;\nvar formatCurrencyValue = (value) => {\n if (value === 0) return \"$0\";\n const abs = Math.abs(value);\n const prefix = value < 0 ? \"-\" : \"\";\n if (abs >= 1e9) return `${prefix}$${(abs / 1e9).toFixed(1)}B`;\n if (abs >= 1e6) return `${prefix}$${(abs / 1e6).toFixed(1)}M`;\n if (abs >= 1e3) return `${prefix}$${(abs / 1e3).toFixed(1)}K`;\n return `${prefix}$${abs.toFixed(0)}`;\n};\nvar KPIChart = ({ data }) => {\n const [hoveredIndex, setHoveredIndex] = React16.useState(null);\n const [tooltipPos, setTooltipPos] = React16.useState({ x: 0, y: 0 });\n const [selectedPeriod, setSelectedPeriod] = React16.useState(\n data.timePeriods && data.timePeriods.length > 0 ? data.timePeriods[data.timePeriods.length - 1] : \"MAX\"\n );\n const containerRef = React16.useRef(null);\n const { filteredData, filteredTimestamps } = useMemo2(() => {\n if (!data.timePeriods || !data.timestamps || selectedPeriod === \"MAX\") {\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const now = /* @__PURE__ */ new Date();\n let cutoffDate = /* @__PURE__ */ new Date();\n switch (selectedPeriod) {\n case \"1D\":\n cutoffDate.setDate(now.getDate() - 1);\n break;\n case \"1W\":\n cutoffDate.setDate(now.getDate() - 7);\n break;\n case \"1M\":\n cutoffDate.setMonth(now.getMonth() - 1);\n break;\n case \"6M\":\n cutoffDate.setMonth(now.getMonth() - 6);\n break;\n case \"1Y\":\n cutoffDate.setFullYear(now.getFullYear() - 1);\n break;\n default:\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const filtered = [];\n const filteredTS = [];\n data.timestamps.forEach((timestamp, index) => {\n const dataDate = new Date(timestamp);\n if (dataDate >= cutoffDate && dataDate <= now && index < data.data.length) {\n filtered.push(data.data[index]);\n filteredTS.push(timestamp);\n }\n });\n return {\n filteredData: filtered.length > 0 ? filtered : data.data,\n filteredTimestamps: filteredTS.length > 0 ? filteredTS : data.timestamps || []\n };\n }, [data.data, data.timestamps, data.timePeriods, selectedPeriod]);\n const percentageChange = useMemo2(() => calculatePercentageChange(filteredData), [filteredData]);\n const isPositive = percentageChange >= 0;\n const dynamicTimeLabel = useMemo2(() => getTimeLabel(selectedPeriod, filteredData.length, data.timestamps), [selectedPeriod, filteredData.length, data.timestamps]);\n const dynamicDateRange = useMemo2(() => getDateRange(selectedPeriod, filteredTimestamps, data.timestamps), [selectedPeriod, filteredTimestamps, data.timestamps]);\n const dynamicValue = useMemo2(() => formatCurrencyValue(calculateSum(filteredData)), [filteredData]);\n const { points, chartWidth, chartHeight } = useMemo2(() => {\n const width = 400;\n const height = 100;\n const padding = 5;\n if (!filteredData || filteredData.length === 0) return { points: [], minValue: 0, maxValue: 0, chartWidth: width, chartHeight: height };\n const min = Math.min(...filteredData);\n const max = Math.max(...filteredData);\n const range = max - min || 1;\n const calculatedPoints = filteredData.map((value, index) => ({\n x: padding + index / (filteredData.length - 1) * (width - padding * 2),\n y: height - padding - (value - min) / range * (height - padding * 2),\n value\n }));\n return { points: calculatedPoints, minValue: min, maxValue: max, chartWidth: width, chartHeight: height };\n }, [filteredData]);\n const linearPath = useMemo2(() => createLinearPath(points), [points]);\n const areaPath = useMemo2(() => createAreaPath(points, chartHeight), [points, chartHeight]);\n const gradientId = useMemo2(\n () => `kpi-gradient-${isPositive ? \"positive\" : \"negative\"}-${Math.random().toString(36).substr(2, 9)}`,\n [isPositive]\n );\n const handleMouseMove = (event) => {\n if (!containerRef.current || points.length === 0) return;\n const svg = event.currentTarget.ownerSVGElement;\n if (!svg) return;\n const rect = svg.getBoundingClientRect();\n const x = (event.clientX - rect.left) / rect.width * chartWidth;\n let nearestIndex = 0;\n let minDistance = Math.abs(points[0].x - x);\n points.forEach((point, index) => {\n const distance = Math.abs(point.x - x);\n if (distance < minDistance) {\n minDistance = distance;\n nearestIndex = index;\n }\n });\n setHoveredIndex(nearestIndex);\n setTooltipPos({\n x: points[nearestIndex].x / chartWidth * rect.width,\n y: points[nearestIndex].y / chartHeight * rect.height\n });\n };\n const positiveGradientStop = isPositive ? [\n { offset: \"0%\", color: \"rgba(34,197,94,0.2)\" },\n { offset: \"50%\", color: \"rgba(34,197,94,0.1)\" },\n { offset: \"100%\", color: \"rgba(34,197,94,0.02)\" }\n ] : [\n { offset: \"0%\", color: \"rgba(239,68,68,0.2)\" },\n { offset: \"50%\", color: \"rgba(239,68,68,0.1)\" },\n { offset: \"100%\", color: \"rgba(239,68,68,0.02)\" }\n ];\n const trendColor = isPositive ? \"rgba(34,197,94,1)\" : \"rgba(239,68,68,1)\";\n const changeIndicatorBg = isPositive ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n return /* @__PURE__ */ jsxs19(\n \"div\",\n {\n ref: containerRef,\n className: \"w-full flex flex-col overflow-hidden rounded-[10px] p-4 sm:px-6 sm:pb-6 sm:pt-5\",\n style: {\n height: \"350px\",\n border: \"1px solid rgba(23,97,163,1)\",\n background: \"rgba(241,247,248,1)\",\n boxShadow: \"0 1px 2px 0 rgba(0,0,0,0.05)\"\n },\n children: [\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex items-start justify-between mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsx22(\"div\", { className: \"relative flex-1\", children: /* @__PURE__ */ jsx22(\n \"h3\",\n {\n className: \"text-[13px] sm:text-sm lg:text-[15px] font-medium leading-[1.4]\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.01em\" },\n children: data.title\n }\n ) }),\n data.timePeriods && data.timePeriods.length > 0 && /* @__PURE__ */ jsx22(\"div\", { className: \"absolute left-1/2 -translate-x-1/2 flex gap-[6px] sm:gap-2 items-center\", children: data.timePeriods.map((period) => /* @__PURE__ */ jsx22(\n \"button\",\n {\n type: \"button\",\n onClick: () => setSelectedPeriod(period),\n className: \"px-3 py-1 sm:px-[14px] sm:py-[5px] lg:px-4 lg:py-[6px] rounded-[20px] text-[11px] sm:text-xs lg:text-[13px] font-medium whitespace-nowrap border-none cursor-pointer transition-all\",\n style: {\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n backgroundColor: selectedPeriod === period ? \"rgba(23,97,163,1)\" : \"transparent\",\n color: selectedPeriod === period ? \"white\" : \"rgba(148,163,184,1)\"\n },\n children: period\n },\n period\n )) }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"flex-shrink-0\", children: /* @__PURE__ */ jsxs19(\n \"div\",\n {\n className: \"flex items-center gap-[3px] sm:gap-1 px-2 sm:px-[10px] py-[3px] sm:py-1 rounded-[6px]\",\n style: { backgroundColor: changeIndicatorBg, transition: \"background-color 0.3s ease-in-out\" },\n children: [\n /* @__PURE__ */ jsx22(\n \"svg\",\n {\n className: \"w-[11px] h-[11px] sm:w-3 sm:h-3 lg:w-[13px] lg:h-[13px]\",\n viewBox: \"0 0 12 12\",\n style: { fill: trendColor, transition: \"fill 0.3s ease-in-out\" },\n children: isPositive ? /* @__PURE__ */ jsx22(\"path\", { d: \"M6 2L10 6H8V10H4V6H2L6 2Z\" }) : /* @__PURE__ */ jsx22(\"path\", { d: \"M6 10L2 6H4V2H8V6H10L6 10Z\" })\n }\n ),\n /* @__PURE__ */ jsxs19(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-semibold\",\n style: { color: trendColor, fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"color 0.3s ease-in-out\" },\n children: [\n Math.abs(percentageChange),\n \"%\"\n ]\n }\n )\n ]\n }\n ) })\n ] }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"mb-[14px] sm:mb-4 lg:mb-[18px]\", children: /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"text-[28px] sm:text-[36px] md:text-[40px] lg:text-[42px] xl:text-[44px] font-bold leading-[1.1]\",\n style: { color: \"rgba(15,23,42,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.02em\", transition: \"opacity 0.3s ease-in-out\" },\n children: dynamicValue\n }\n ) }),\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex-1 relative min-h-[100px] sm:min-h-[110px] lg:min-h-[120px] mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsxs19(\n \"svg\",\n {\n className: \"w-full h-full overflow-visible\",\n viewBox: `0 0 ${chartWidth} ${chartHeight}`,\n preserveAspectRatio: \"none\",\n children: [\n /* @__PURE__ */ jsx22(\"defs\", { children: /* @__PURE__ */ jsx22(\"linearGradient\", { id: gradientId, x1: \"0%\", y1: \"0%\", x2: \"0%\", y2: \"100%\", children: positiveGradientStop.map((s) => /* @__PURE__ */ jsx22(\"stop\", { offset: s.offset, stopColor: s.color }, s.offset)) }) }),\n /* @__PURE__ */ jsx22(\"path\", { d: areaPath, fill: `url(#${gradientId})`, stroke: \"none\", style: { transition: \"d 0.4s ease-in-out, fill 0.3s ease-in-out\" } }),\n /* @__PURE__ */ jsx22(\n \"path\",\n {\n d: linearPath,\n fill: \"none\",\n stroke: trendColor,\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n style: { transition: \"d 0.4s ease-in-out, stroke 0.3s ease-in-out\" }\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && !isNaN(points[hoveredIndex].x) && /* @__PURE__ */ jsxs19(Fragment8, { children: [\n /* @__PURE__ */ jsx22(\n \"line\",\n {\n x1: points[hoveredIndex].x,\n y1: \"0\",\n x2: points[hoveredIndex].x,\n y2: chartHeight,\n stroke: \"rgba(148,163,184,0.3)\",\n strokeWidth: \"1\",\n strokeDasharray: \"4 4\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n ),\n /* @__PURE__ */ jsx22(\n \"circle\",\n {\n cx: points[hoveredIndex].x,\n cy: points[hoveredIndex].y,\n r: \"3.5\",\n fill: trendColor,\n stroke: \"white\",\n strokeWidth: \"1\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"rect\",\n {\n x: \"0\",\n y: \"0\",\n width: chartWidth,\n height: chartHeight,\n fill: \"transparent\",\n style: { cursor: \"crosshair\" },\n onMouseMove: handleMouseMove,\n onMouseLeave: () => setHoveredIndex(null)\n }\n )\n ]\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"absolute pointer-events-none z-10 rounded-[6px] text-xs sm:text-[13px] lg:text-sm font-semibold whitespace-nowrap px-[10px] py-[6px] sm:px-3 sm:py-2 lg:px-[14px] lg:py-[10px]\",\n style: {\n left: tooltipPos.x,\n top: tooltipPos.y,\n backgroundColor: \"rgba(220,235,238,1)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n transform: \"translate(-50%, -100%) translateY(-8px)\",\n boxShadow: \"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06)\",\n border: \"1px solid rgba(23,97,163,0.2)\",\n opacity: 1,\n transition: \"opacity 0.2s\"\n },\n children: points[hoveredIndex].value.toLocaleString()\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"flex items-center justify-between pt-[10px] sm:pt-3 lg:pt-[14px] flex-shrink-0\",\n style: { borderTop: \"1px solid rgba(226,232,240,0.6)\" },\n children: [dynamicTimeLabel, dynamicDateRange].map((text, i) => /* @__PURE__ */ jsx22(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-medium\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"opacity 0.3s ease-in-out\" },\n children: text\n },\n i\n ))\n }\n )\n ]\n }\n );\n};\nKPIChart.displayName = \"KPIChart\";\n\n// src/components/GroupBarChart.tsx\nimport { jsx as jsx23, jsxs as jsxs20 } from \"react/jsx-runtime\";\nvar DEFAULT_BAR_COLORS = {\n revenue: \"rgba(23,97,163,1)\",\n profit: \"rgba(77,175,131,1)\",\n loss: \"rgba(220,38,38,1)\",\n cost: \"rgba(47,164,169,1)\"\n};\nvar GroupBarChart = ({\n title,\n groups,\n legends,\n yAxisConfig\n}) => {\n const safeGroups = groups || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_BAR_COLORS;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const BAR_COLORS = getColorMap();\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const getProfitOrLoss = (group) => {\n if (group.profitOrLoss !== void 0 && group.profitOrLoss !== null) return group.profitOrLoss;\n return group.revenue - group.cost;\n };\n return /* @__PURE__ */ jsxs20(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx23(\n \"div\",\n {\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n className: \"sm:text-base\",\n children: title\n }\n ),\n /* @__PURE__ */ jsx23(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx23(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx23(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex flex-col justify-between items-end pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute left-0 right-0 h-px z-[1]\",\n style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeGroups.map((group, index) => {\n const profitOrLossValue = getProfitOrLoss(group);\n const isProfitable = profitOrLossValue >= 0;\n const profitLossColor = isProfitable ? BAR_COLORS.profit : BAR_COLORS.loss;\n const profitLossAbsValue = Math.abs(profitOrLossValue);\n return /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-row items-end justify-center relative h-full gap-1 px-2\", children: [\n { value: group.revenue, color: BAR_COLORS.revenue },\n { value: profitLossAbsValue, color: profitLossColor },\n { value: group.cost, color: BAR_COLORS.cost }\n ].map(({ value, color }, barIdx) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[30px] h-full\", children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"w-full rounded-t min-h-[2px] relative transition-all hover:opacity-85 hover:-translate-y-[2px]\",\n style: { height: `${calculateHeight(value)}%`, background: color },\n children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2\",\n style: {\n top: \"-24px\",\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: value.toString()\n }\n )\n }\n ) }, barIdx)) }, `${group.name}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeGroups.map((group, index) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex justify-center items-start px-2 min-w-0\", children: /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: group.name\n }\n ) }, index)) })\n ] })\n ] });\n};\nGroupBarChart.displayName = \"GroupBarChart\";\n\n// src/components/StackBarChart.tsx\nimport { useState as useState11 } from \"react\";\nimport { jsx as jsx24, jsxs as jsxs21 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS2 = {\n aggregating: \"rgba(37,99,235,1)\",\n outstanding: \"rgba(34,197,94,1)\",\n writeOff: \"rgba(239,68,68,1)\"\n};\nvar StackBarChart = ({\n title,\n data,\n legends,\n yAxisConfig\n}) => {\n const [tooltip, setTooltip] = useState11(null);\n const safeData = data || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_COLORS2;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const COLORS = getColorMap();\n const getLabel = (key) => {\n if (legends && legends.length > 0) {\n const legend = legends.find((l) => l.key === key);\n if (legend) return legend.label;\n }\n const defaultLabels = {\n aggregating: \"Aggregating Amount\",\n outstanding: \"Outstanding Amount\",\n writeOff: \"Write-Off Amount\"\n };\n return defaultLabels[key] || key;\n };\n const formatValue = (value) => {\n if (value >= 1e3) return `$${(value / 1e3).toFixed(0)}k`;\n return `$${value}`;\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const handleSegmentMouseEnter = (event, dayData, type) => {\n const rect = event.currentTarget.getBoundingClientRect();\n setTooltip({ day: dayData.day, type, value: dayData[type], label: getLabel(type), x: rect.left + rect.width / 2, y: rect.top });\n };\n return /* @__PURE__ */ jsxs21(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx24(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx24(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx24(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx24(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex flex-col justify-between items-start pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsxs21(\"span\", { style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 }, className: \"sm:text-xs\", children: [\n \"$\",\n label\n ] }, idx)) }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 right-0 h-px z-[1]\", style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" } }, idx);\n }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeData.map((dayData, index) => {\n const total = dayData.aggregating + dayData.outstanding + dayData.writeOff;\n const totalHeight = calculateHeight(total);\n const aggregatingPercent = total > 0 ? dayData.aggregating / total * 100 : 0;\n const outstandingPercent = total > 0 ? dayData.outstanding / total * 100 : 0;\n const writeOffPercent = total > 0 ? dayData.writeOff / total * 100 : 0;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-2\", children: /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"w-full max-w-[60px] relative flex flex-col-reverse rounded-t overflow-hidden transition-all\",\n style: { height: `${totalHeight}%` },\n children: [\n /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2 text-[11px] sm:text-xs font-medium\",\n style: { top: \"-24px\", color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: formatValue(total)\n }\n ),\n dayData.writeOff > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${writeOffPercent}%`, backgroundColor: COLORS.writeOff || DEFAULT_COLORS2.writeOff },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"writeOff\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.outstanding > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${outstandingPercent}%`, backgroundColor: COLORS.outstanding || DEFAULT_COLORS2.outstanding },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"outstanding\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.aggregating > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${aggregatingPercent}%`, backgroundColor: COLORS.aggregating || DEFAULT_COLORS2.aggregating },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"aggregating\"),\n onMouseLeave: () => setTooltip(null)\n }\n )\n ]\n }\n ) }, `${dayData.day}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeData.map((dayData, index) => /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex justify-center items-start max-w-[100px] px-2 min-w-0\", children: /* @__PURE__ */ jsx24(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: dayData.day\n }\n ) }, index)) })\n ] }),\n tooltip && /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999] rounded-lg text-xs sm:text-[13px] font-medium px-[14px] py-[10px] sm:px-4 sm:py-3 whitespace-nowrap\",\n style: {\n left: tooltip.x,\n top: tooltip.y,\n backgroundColor: \"rgba(158,153,153,0.75)\",\n backdropFilter: \"blur(10px)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n boxShadow: \"0 2px 12px rgba(0,0,0,0.06), 0 1px 4px rgba(0,0,0,0.04)\",\n border: \"1px solid rgba(209,213,219,0.94)\",\n transform: \"translate(-50%, -100%) translateY(-10px)\",\n opacity: 1\n },\n children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-[11px] sm:text-xs font-normal mb-1\", style: { color: \"rgba(0,0,0,0.7)\" }, children: [\n tooltip.day,\n \" - \",\n tooltip.label\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-sm sm:text-[15px] font-semibold\", style: { color: \"rgba(0,0,0,1)\" }, children: [\n \"$\",\n tooltip.value\n ] })\n ]\n }\n )\n ] });\n};\nStackBarChart.displayName = \"StackBarChart\";\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { Fragment as Fragment9, jsx as jsx25, jsxs as jsxs22 } from \"react/jsx-runtime\";\nvar assetSrc3 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar FALLBACK_ICONS = {\n performancePeakIcon: \"/chart-icons/performance-peak-icon.png\",\n calendarIcon: \"/chart-icons/calendar-3.png\",\n increaseIcon: \"/chart-icons/increase.png\",\n decreaseIcon: \"/chart-icons/decrease.png\"\n};\nvar getIconSrc = (imported, fallback) => {\n const src = assetSrc3(imported);\n return src || fallback;\n};\nvar performancePeakIcon = \"\";\nvar calendarIcon = \"\";\nvar increaseIcon = \"\";\nvar decreaseIcon = \"\";\ntry {\n performancePeakIcon = require_performance_peak_icon();\n calendarIcon = require_calendar_3();\n increaseIcon = require_increase();\n decreaseIcon = require_decrease();\n} catch (e) {\n}\nvar colorToClass = (color) => {\n const c = typeof color === \"string\" ? color.toLowerCase() : \"\";\n if (c.startsWith(\"rgba(\") || c.startsWith(\"rgb(\")) return c;\n const map = {\n \"#7dcfaf\": \"#7DCFAF\",\n \"#f28a18\": \"#F28A18\",\n \"#2094f3\": \"#2094F3\",\n \"#909592\": \"#909592\",\n \"#bcc6cb\": \"#BCC6CB\",\n \"#3b82f6\": \"#3B82F6\",\n \"#10b981\": \"#10B981\",\n \"#ef4444\": \"#EF4444\",\n \"#f97316\": \"#F97316\",\n \"#f59e0b\": \"#F59E0B\",\n \"#8b5cf6\": \"#8B5CF6\",\n \"#ec4899\": \"#EC4899\",\n \"#6366f1\": \"#6366F1\"\n };\n return map[c] || (typeof color === \"string\" ? color : \"#D1D5DB\");\n};\nvar getStatusColors = (status) => {\n const statusConfig = {\n \"In Progress\": { textColor: \"rgba(23,97,163,1)\", backgroundColor: \"rgba(23,97,163,0.15)\" },\n \"Overdue\": { textColor: \"rgba(220,38,38,1)\", backgroundColor: \"rgba(239,68,68,0.15)\" },\n \"On Target\": { textColor: \"rgba(46,158,120,1)\", backgroundColor: \"rgba(70,194,155,0.15)\" }\n };\n return statusConfig[status] || statusConfig[\"In Progress\"];\n};\nvar tabLabel = (type) => {\n if (type === \"area\") return \"Area Line Chart\";\n if (type === \"bullet\") return \"Bullet Chart\";\n if (type === \"gauge\") return \"Gauge Chart\";\n if (type === \"riskgauge\") return \"KPI Risk Gauge Chart\";\n if (type === \"gantt\") return \"Gantt Chart\";\n if (type === \"calendarheatmap\") return \"Calendar Heat Map\";\n if (type === \"horizontalbar\") return \"Horizontal Bar Chart\";\n if (type === \"columnchart\") return \"Column Chart\";\n if (type === \"groupbar\") return \"Group Bar Chart\";\n if (type === \"stackbar\") return \"Stacked Bar Chart\";\n if (type === \"lollipop\") return \"Lollipop Chart\";\n if (type === \"kpi\") return \"KPI Chart\";\n return `${type.charAt(0).toUpperCase() + type.slice(1)} Chart`;\n};\nvar MenuDotsButton = () => /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] })\n }\n);\nvar MahatiChartAnalyticsWidget = ({\n title,\n chartTypes,\n initialChartType,\n filters,\n chartFilters,\n selectedFilters,\n chartDataMap,\n bulletData,\n gaugeData,\n horizontalBarData,\n columnChartData,\n groupBarData,\n stackBarData,\n lollipopData,\n kpiData,\n riskGaugeData,\n ganttData,\n heatmapData,\n calendarheatmapData,\n onApplyFilters,\n quickStats,\n actionButtons,\n onChartTypeChange,\n onFiltersChange,\n details\n}) => {\n const [chartType, setChartType] = useState12(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = useState12(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = useState12(\"Project 1\");\n const currentFilters = useMemo3(() => {\n if (chartFilters && chartFilters[chartType]) return chartFilters[chartType] || [];\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = useMemo3(() => {\n const base = chartDataMap[chartType];\n if (chartType === \"area\" && base) return makeAreaDataStraight(base);\n return base;\n }, [chartDataMap, chartType]);\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n const isPieFamily = chartType === \"pie\" || chartType === \"doughnut\";\n const bulletDetails = useMemo3(() => {\n if (chartType === \"bullet\" && bulletData?.bullets) {\n return bulletData.bullets.map((bullet) => {\n const percentageAchieved = Math.round(bullet.achieved / bullet.target * 100);\n return { label: bullet.name, value: `${percentageAchieved}% Done`, description: `${percentageAchieved}% of target achieved`, color: \"rgba(183,232,214,0.9)\" };\n });\n }\n return [];\n }, [chartType, bulletData]);\n const currentGanttData = useMemo3(() => {\n if (chartType === \"gantt\" && ganttData) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") newStatus = \"In Progress\";\n return { ...task, progress: newProgress, status: newStatus };\n })\n };\n }\n return { ...baseData, title: `${baseData.title} - ${selectedGanttProject}`, projectName: `${baseData.projectName} - ${selectedGanttProject}` };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = useMemo3(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = selectedFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const currentMonthIndex = monthOrder.indexOf(selectedMonth);\n const previousMonth = currentMonthIndex > 0 ? monthOrder[currentMonthIndex - 1] : \"December\";\n const previousYear = currentMonthIndex > 0 ? selectedYear : String(Number(selectedYear) - 1);\n const previousYearData = horizontalBarData[previousYear];\n const previousMonthData = previousYearData?.[previousMonth];\n const products = Object.keys(monthData);\n let maxRevenue = 0, topProduct = \"\", minRevenue = Infinity, needsFocusProduct = \"\";\n products.forEach((product) => {\n const revenue = monthData[product].Revenue;\n if (revenue > maxRevenue) {\n maxRevenue = revenue;\n topProduct = product;\n }\n if (revenue < minRevenue) {\n minRevenue = revenue;\n needsFocusProduct = product;\n }\n });\n let percentageChange = 0, isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const cur = monthData[topProduct].Revenue, prev = previousMonthData[topProduct].Revenue;\n if (prev !== 0) {\n percentageChange = (cur - prev) / prev * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return { category: \"Category\", name: topProduct, revenue: `${topProductData.Revenue}k`, profit: `${topProductData.Profit}k`, needsFocus: needsFocusProduct, change: `${Math.abs(percentageChange).toFixed(0)}%`, isIncrease };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = useMemo3(() => {\n const empty = { peakDay: { date: \"\", dayName: \"\", value: 0 }, mostActiveDay: { dayName: \"\", count: 0, average: 0 } };\n if (chartType !== \"calendarheatmap\" || !calendarheatmapData) return empty;\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project]?.[year]?.[type]) return empty;\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = { Sunday: { total: 0, count: 0 }, Monday: { total: 0, count: 0 }, Tuesday: { total: 0, count: 0 }, Wednesday: { total: 0, count: 0 }, Thursday: { total: 0, count: 0 }, Friday: { total: 0, count: 0 }, Saturday: { total: 0, count: 0 } };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData?.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [y, m, d] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(y, m - 1, d);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({ date: item.date, value: item.value, dayName });\n if (dayOfWeekCounts[dayName]) {\n dayOfWeekCounts[dayName].total += item.value;\n dayOfWeekCounts[dayName].count += 1;\n }\n });\n }\n });\n let peakDay = { date: \"\", dayName: \"\", value: 0 };\n if (allDayData.length > 0) peakDay = allDayData.reduce((max, cur) => cur.value > max.value ? cur : max);\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const avg = stats.total / stats.count;\n if (avg > mostActiveDay.average) mostActiveDay = { dayName, count: stats.count, average: Math.round(avg) };\n }\n });\n return { peakDay, mostActiveDay };\n }, [chartType, calendarheatmapData, selectedFilters, selectedCalendarHeatmapProject]);\n const formatPeakDate = (dateStr) => {\n if (!dateStr) return \"Wed, 12 Jun\";\n try {\n return new Date(dateStr).toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = useMemo3(() => {\n if (!bulletData) return null;\n const year = selectedFilters.SelectYear || \"2026\";\n const month = selectedFilters.SelectMonth || \"January\";\n const type = selectedFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData?.bullets) return { title: monthData.title || bulletData.title, bullets: monthData.bullets };\n }\n }\n return { title: bulletData.title, bullets: bulletData.bullets };\n }, [bulletData, selectedFilters]);\n const currentKPIData = useMemo3(() => {\n if (chartType !== \"kpi\" || !kpiData) return null;\n const kpiKey = selectedFilters[\"SelectKPI\"];\n if (!kpiKey) return kpiData[Object.keys(kpiData)[0]] || null;\n return kpiData[kpiKey] || null;\n }, [chartType, kpiData, selectedFilters]);\n const renderChart = () => {\n switch (chartType) {\n case \"pie\":\n case \"doughnut\":\n case \"line\":\n case \"area\":\n case \"bar\":\n if (currentData) return /* @__PURE__ */ jsx25(PieLineBarChart, { chartType, data: currentData });\n return null;\n case \"bullet\":\n if (currentBulletData) return /* @__PURE__ */ jsx25(BulletChart, { title: currentBulletData.title, bullets: currentBulletData.bullets });\n return null;\n case \"gauge\": {\n if (gaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges || [];\n if (gaugeData[sy]?.[sm]) currentGauge = gaugeData[sy][sm];\n return /* @__PURE__ */ jsx25(GaugeChart, { title: \"Performance Metrics\", gauges: currentGauge });\n }\n return null;\n }\n case \"gantt\": {\n if (currentGanttData) {\n const month = selectedFilters[\"SelectMonth\"] || \"Jan - Feb\";\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n return /* @__PURE__ */ jsx25(GanttChart, { data: currentGanttData, selectedYear: year, selectedMonth: month, selectedProject: selectedGanttProject, onProjectChange: setSelectedGanttProject });\n }\n return null;\n }\n case \"calendarheatmap\": {\n if (calendarheatmapData?.[selectedCalendarHeatmapProject]) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const projectData = calendarheatmapData[selectedCalendarHeatmapProject];\n const yearData = projectData[year];\n if (!yearData?.[type]) return null;\n return /* @__PURE__ */ jsx25(CalendarHeatmapChart, { data: yearData[type], selectedProject: selectedCalendarHeatmapProject, selectedYear: year, selectedType: type, onProjectChange: setSelectedCalendarHeatmapProject, calendarheatmapData });\n }\n return null;\n }\n case \"horizontalbar\": {\n if (!horizontalBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sp = selectedFilters[\"SelectType\"] || \"Product 1\";\n const yearData = horizontalBarData[sy];\n const monthData = yearData?.[sm];\n const productData = monthData?.[sp];\n const xAxisConfig = horizontalBarData.xAxis?.[sy];\n const bars = productData ? [\n { name: \"Revenue\", value: productData.Revenue, color: \"rgba(23,97,163,1)\" },\n { name: \"Profit\", value: productData.Profit, color: \"rgba(70,194,155,1)\" },\n { name: \"Cost\", value: productData.Cost, color: \"rgba(47,164,169,1)\" }\n ] : [];\n return /* @__PURE__ */ jsx25(HorizontalBarChart, { title: horizontalBarData.title, bars, selectedYear: sy, selectedMonth: sm, selectedType: sp, xAxisConfig, topPerformer: currentHorizontalBarTopPerformer });\n }\n case \"columnchart\": {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const yearData = columnChartData?.[sy];\n const typeData = yearData?.[sm]?.[st] || [];\n const yAxisConfig = columnChartData.yAxis?.[sy];\n const columns = typeData.map((item) => ({ name: item.name, value: item.value, gradient: item.gradient || \"linear-gradient(180deg, rgba(77,175,131,1) 0%, rgba(23,97,163,1) 100%)\" }));\n return /* @__PURE__ */ jsx25(ColumnChart, { title: columnChartData.title, columns, selectedYear: sy, selectedMonth: sm, selectedType: st, yAxisConfig });\n }\n case \"lollipop\": {\n if (!lollipopData) return null;\n const ly = selectedFilters[\"SelectYear\"] || \"2026\";\n const lm = selectedFilters[\"SelectMonth\"] || \"January\";\n const lc = selectedFilters[\"SelectType\"] || \"Category A\";\n const lo = selectedFilters[\"SelectOrientation\"] || \"horizontal\";\n const lYearData = lollipopData[ly] || {};\n const lCatData = lYearData?.[lm]?.[lc] || [];\n return /* @__PURE__ */ jsx25(LollipopChart, { title: lollipopData.title, items: lCatData, selectedYear: ly, selectedMonth: lm, selectedCategory: lc, orientation: lo });\n }\n case \"kpi\":\n if (currentKPIData) return /* @__PURE__ */ jsx25(KPIChart, { data: currentKPIData });\n return null;\n case \"riskgauge\": {\n if (riskGaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauges = riskGaugeData.gauges || [];\n if (riskGaugeData[sy]?.[sm]?.[st]) currentRiskGauges = riskGaugeData[sy][sm][st];\n return /* @__PURE__ */ jsx25(RiskGaugeChart, { title: \"KPI Risk Assessment Metrics\", gauges: currentRiskGauges });\n }\n return null;\n }\n case \"groupbar\": {\n if (!groupBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm] || [];\n const yAxisConfig = groupBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(GroupBarChart, { title: groupBarData.title, groups, legends: groupBarData.legends, selectedYear: sy, selectedMonth: sm, yAxisConfig });\n }\n case \"stackbar\": {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm]?.[sw]?.[st] || [];\n const yAxisConfig = stackBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(StackBarChart, { title: stackBarData.title, data: typeData, legends: stackBarData.legends, selectedYear: sy, selectedMonth: sm, selectedWeek: sw, selectedType: st, yAxisConfig, allData: stackBarData });\n }\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"min-h-screen bg-white\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"bg-white p-4 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-wrap gap-2\", children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n setChartType(type);\n onChartTypeChange?.(type);\n },\n \"aria-pressed\": isActive,\n className: `\n relative px-4 py-2 text-xs font-medium transition-all duration-200 rounded-full outline-none border cursor-pointer\n sm:px-6 sm:py-2.5 sm:text-sm\n focus-visible:shadow-[0_0_0_2px_rgba(23,97,163,0.35)]\n ${isActive ? \"text-white shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] border-[rgba(23,97,163,0.45)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\" : \"text-[rgba(55,65,81,1)] border-transparent bg-transparent hover:border-[rgba(23,97,163,0.25)] hover:bg-[rgba(23,97,163,0.05)]\"}\n `,\n children: tabLabel(type)\n },\n type\n );\n }) }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"p-4 relative z-50 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-3 items-end flex-wrap relative sm:gap-4\", children: [\n currentFilters.map((filter, index) => {\n const options = filter.options.map((opt) => ({ key: opt, value: opt }));\n return /* @__PURE__ */ jsx25(\n \"div\",\n {\n className: \"relative\",\n style: { zIndex: 50 + (currentFilters.length - index) },\n children: /* @__PURE__ */ jsx25(\n ChartDropdown,\n {\n options,\n value: selectedFilters[filter.id],\n onSelect: (val) => onFiltersChange({ ...selectedFilters, [filter.id]: String(val) }),\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => onApplyFilters?.(selectedFilters),\n className: \"w-[77px] h-[30px] rounded border border-[rgba(23,97,163,1)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)] text-white text-sm font-medium cursor-pointer transition-opacity hover:opacity-90\",\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"p-4 overflow-y-visible sm:px-6 md:px-8\", children: [\n isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-visible sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-end mb-4\", children: /* @__PURE__ */ jsx25(MenuDotsButton, {}) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"h-48 p-2 rounded-2xl sm:h-56 md:h-64\", children: renderChart() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"mt-4 flex flex-col gap-2 text-sm sm:mt-6 sm:gap-3\", children: details.map((item, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-4 h-2 rounded-sm flex-shrink-0 sm:w-5 sm:h-2.5\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(55,65,81,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label })\n ] }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-black text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-base font-semibold text-[rgba(17,24,39,1)] mb-4 sm:text-lg sm:mb-6\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-3 sm:gap-5\", children: details.map((item, idx) => {\n const statusColors = item.status ? getStatusColors(item.status) : null;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"inline-block flex-shrink-0 w-[18px] h-[10px] rounded-sm\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-xs overflow-hidden text-ellipsis whitespace-nowrap sm:text-sm\", children: item.label }),\n item.status && statusColors && /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-center w-12 h-4 rounded px-1 py-0.5\", style: { backgroundColor: statusColors.backgroundColor }, children: /* @__PURE__ */ jsx25(\"span\", { className: \"font-[Poppins,sans-serif] font-semibold whitespace-nowrap text-[6px]\", style: { color: statusColors.textColor }, children: item.status }) })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-xs\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-bold text-[rgba(17,24,39,1)] text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 md:col-span-2 lg:col-span-1 sm:gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: `text-xs font-medium mt-1 sm:text-sm ${quickStats.totalVolume.change.startsWith(\"+\") ? \"text-[rgba(22,163,74,1)]\" : \"text-[rgba(220,38,38,1)]\"}`, children: quickStats.totalVolume.change }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] }),\n chartType === \"bullet\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { children: currentBulletData?.bullets.map((bullet, idx) => {\n const percentage = Math.round(bullet.achieved / bullet.target * 100);\n const getBadgeBg = (name) => {\n const n = name.toLowerCase();\n if (n.includes(\"revenue\")) return \"rgba(70,194,155,0.15)\";\n if (n.includes(\"profit\")) return \"rgba(239,68,68,0.15)\";\n if (n.includes(\"customer\")) return \"rgba(23,97,163,0.15)\";\n return \"rgba(229,231,235,1)\";\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center py-3 not-last:border-b border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-medium text-[rgba(17,24,39,1)]\", children: bullet.name }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs text-[rgba(107,114,128,1)]\", children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"px-2 py-1 rounded text-sm font-medium\", style: { backgroundColor: getBadgeBg(bullet.name) }, children: [\n percentage,\n \"%\"\n ] })\n ] }, idx);\n }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 pt-4 mt-4 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-full bg-[rgba(96,165,250,1)] flex items-center justify-center flex-shrink-0 mt-0.5\", children: /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-bold text-white\", children: \"i\" }) }),\n /* @__PURE__ */ jsxs22(\"p\", { className: \"text-xs text-[rgba(107,114,128,1)] m-0 leading-relaxed\", children: [\n \"Suggested Actions: \",\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-[rgba(17,24,39,1)]\", children: \"Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"gauge\" && gaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges?.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[sy]?.[sm2]?.length > 0) currentGauge = gaugeData[sy][sm2][0];\n if (!currentGauge) return null;\n const gauge = currentGauge;\n const dailyAvgNeeded = Math.round(gauge.value / 30);\n const currentPace = 360;\n const daysRemaining = 8;\n const yearNum = parseInt(sy);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const monthIndex = monthNames.indexOf(sm2);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday = lastDayWeekday === 5 ? lastDay : lastDayWeekday < 5 ? lastDay - (lastDayWeekday + 2) : lastDay - 1;\n const formattedDate = new Date(yearNum, monthIndex, lastFriday).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Goal Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4 mb-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", `${daysRemaining} days`], [\"Expected Finish\", formattedDate]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"riskgauge\" && riskGaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauge = riskGaugeData.gauges?.length > 0 ? riskGaugeData.gauges[0] : null;\n if (riskGaugeData[sy]?.[sm2]?.[st]?.length > 0) currentRiskGauge = riskGaugeData[sy][sm2][st][0];\n if (!currentRiskGauge) return null;\n const gauge = currentRiskGauge;\n const maxScore = gauge.max || 100;\n const dailyAvgNeeded = Math.round(gauge.score / 30);\n const currentPace = Math.round(gauge.score / 20);\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Risk Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", \"8 days\"], [\"Max Score\", String(maxScore)]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: `${selectedFilters[\"SelectYear\"] || \"2026\"} : ${selectedFilters[\"SelectMonth\"] || \"January\"}` })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Risk Score\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: riskGaugeData?.[selectedFilters[\"SelectYear\"] || \"2026\"]?.[selectedFilters[\"SelectMonth\"] || \"January\"]?.[selectedFilters[\"SelectType\"] || \"Credit Score\"]?.[0]?.score || 0 }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Performance\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"N/A\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"No data\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Assessment Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"Wednesday\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Avg Score: 0\" })\n ] })\n ] })\n ] }),\n chartType === \"gantt\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,205px)] lg:gap-1 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto sm:p-3 sm:min-h-[400px] lg:overflow-x-hidden lg:p-[22px_30px_55px_30px] lg:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[650px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[205px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] max-h-[400px] overflow-y-auto sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sticky top-0 bg-[rgba(241,247,248,1)] pb-2 sm:text-sm sm:mb-4\", children: \"Quick Insights - All Titles\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-3 sticky top-5 bg-[rgba(241,247,248,1)] pb-1 sm:text-[10px]\", children: [\n \"Showing data for: \",\n selectedGanttProject\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: currentGanttData?.tasks.map((task) => {\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pb-2 border-b border-[rgba(229,231,235,1)] last:border-none\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3 h-3 rounded-full flex-shrink-0\", style: { background: taskColor } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-medium text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: task.name }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[8px] text-[rgba(107,114,128,1)] mt-0.5\", children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[8px] font-semibold px-2 py-0.5 rounded whitespace-nowrap\", style: { backgroundColor: getStatusColors(task.status).backgroundColor, color: getStatusColors(task.status).textColor }, children: task.status })\n ] }, task.id);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Project Summary\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-2 sm:text-[10px]\", children: \"Overall Status\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(254,242,242,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(220,38,38,1)] text-[10px] font-semibold sm:text-xs\", children: \"Overdue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"Overdue\").length || 0 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(239,246,255,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(37,99,235,1)] text-[10px] font-semibold sm:text-xs\", children: \"In Progress\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"In Progress\").length || 0 })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-1 gap-2 mt-2\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(240,253,244,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(22,163,74,1)] text-[10px] font-semibold sm:text-xs\", children: \"On Target\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"On Target\").length || 0 })\n ] }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-2 sm:text-[10px] sm:mt-3\", children: (() => {\n if (!currentGanttData?.tasks?.length) return \"Expected by 25 Feb 2025\";\n const lastTask = currentGanttData.tasks[currentGanttData.tasks.length - 1];\n const [day, month] = lastTask.endDate.split(\"/\");\n const monthNames = { \"01\": \"Jan\", \"02\": \"Feb\", \"03\": \"Mar\", \"04\": \"Apr\", \"05\": \"May\", \"06\": \"Jun\", \"07\": \"Jul\", \"08\": \"Aug\", \"09\": \"Sep\", \"10\": \"Oct\", \"11\": \"Nov\", \"12\": \"Dec\" };\n return `Expected by ${day} ${monthNames[month] || \"Jan\"} ${selectedFilters[\"SelectYear\"] || \"2026\"}`;\n })() })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"calendarheatmap\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,280px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto lg:overflow-x-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[750px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[280px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Activity Legend\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2\", children: [[\"rgba(154,219,255,1)\", \"<1K: Low activity\"], [\"rgba(102,194,241,1)\", \"1K - 3K: Moderate activity\"], [\"rgba(43,160,209,1)\", \"3K - 5K: High activity\"], [\"rgba(23,97,163,1)\", \">5K: Very high activity\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-sm flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] whitespace-nowrap sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full max-w-[280px] min-h-[210px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] p-3 flex flex-col gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium text-right\", children: [\n selectedFilters[\"SelectYear\"] || \"2026\",\n \", \",\n selectedCalendarHeatmapProject,\n \", \",\n selectedFilters[\"SelectType\"] || \"Development\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[17px] font-semibold mt-2\", children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"w-[11px] h-[11px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: calendarPeakAndActiveDay.peakDay.value ? `${calendarPeakAndActiveDay.peakDay.value.toLocaleString()} events` : \"5,600 events\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: [\n \"Avg \",\n calendarPeakAndActiveDay.mostActiveDay.average || 920,\n \" / day\"\n ] })\n ] })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"horizontalbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Demo Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(70,194,155,1)\", \"Profit\"], [\"rgba(47,164,169,1)\", \"Cost\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded bg-transparent flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ jsx25(TopPerformerCard, { performer: currentHorizontalBarTopPerformer })\n ] })\n ] }),\n chartType === \"columnchart\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center bg-[rgba(77,175,131,0.15)] px-3 py-1 rounded-xl text-[10px] font-semibold text-[rgba(77,175,131,1)] font-[Poppins,sans-serif]\", children: \"Leading\" })\n ] }),\n (() => {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, item) => item.value > max.value ? item : max, typeData[0]);\n const totalRevenue = typeData.reduce((sum, item) => sum + item.value, 0);\n const contribution = totalRevenue > 0 ? Math.round(topPerformer.value / totalRevenue * 100) : 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTop = prevTypeData.find((i) => i.name === topPerformer.name);\n const growth = prevTop?.value > 0 ? Math.round((topPerformer.value - prevTop.value) / prevTop.value * 100) : 14;\n const rank = [...typeData].sort((a, b) => b.value - a.value).findIndex((i) => i.name === topPerformer.name) + 1;\n return /* @__PURE__ */ jsxs22(Fragment9, { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-semibold text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] mb-5\", children: topPerformer.name }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-3\", children: [[\"Revenue\", topPerformer.value >= 1e3 ? `${(topPerformer.value / 1e3).toFixed(1)}k` : topPerformer.value, void 0], [\"Contribution\", `${contribution}%`, void 0], [\"Growth\", `${growth >= 0 ? \"+\" : \"\"}${growth}%`, growth >= 0 ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\"], [\"Rank\", `#${rank}`, void 0]].map(([label, value, color]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold\", style: { color: color || \"rgba(17,24,39,1)\" }, children: String(value) })\n ] }, String(label))) })\n ] });\n })()\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] flex flex-col justify-center sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center mb-10\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: [\n selectedFilters[\"SelectMonth\"] || \"January\",\n \" \",\n selectedFilters[\"SelectYear\"] || \"2026\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-8 font-[Poppins,sans-serif]\", children: \"Total Volume\" }),\n (() => {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n const currentTotal = typeData.reduce((sum, item) => sum + item.value, 0);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTotal = prevTypeData.reduce((sum, item) => sum + item.value, 0);\n const pctChange = prevTotal > 0 ? Math.round((currentTotal - prevTotal) / prevTotal * 100) : 0;\n const isIncrease = pctChange >= 0;\n const bgColor = isIncrease ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n const textColor = isIncrease ? \"rgba(5,150,105,1)\" : \"rgba(220,38,38,1)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif] tracking-tight\", children: [\n \"$\",\n currentTotal.toLocaleString(\"en-US\", { minimumFractionDigits: 2, maximumFractionDigits: 2 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"inline-flex items-center gap-1 px-2.5 py-1.5 rounded-md flex-shrink-0\", style: { background: bgColor }, children: [\n /* @__PURE__ */ jsx25(\"img\", { src: isIncrease ? getIconSrc(increaseIcon, FALLBACK_ICONS.increaseIcon) : getIconSrc(decreaseIcon, FALLBACK_ICONS.decreaseIcon), alt: isIncrease ? \"increase\" : \"decrease\", className: \"w-3.5 h-3.5 object-contain\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold font-[Poppins,sans-serif]\", style: { color: textColor }, children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"groupbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!groupBarData) return null;\n const legends = groupBarData.legends || [];\n const defaultLegends = [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(77,175,131,1)\", \"Profit\"], [\"rgba(220,38,38,1)\", \"Loss\"], [\"rgba(47,164,169,1)\", \"Cost\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col h-[130px] gap-4 sm:gap-5\", children: legends.length > 0 ? legends.map((legend, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: legend.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: legend.label })\n ] }, legend.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!groupBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm2] || [];\n if (!groups.length) return null;\n const legends = groupBarData.legends || [];\n const getColor = (key, fallback) => legends.find((l) => l.key === key)?.color || fallback;\n const revenueColor = getColor(\"revenue\", \"rgba(37,99,235,1)\");\n const profitColor = getColor(\"profit\", \"rgba(77,175,131,1)\");\n const lossColor = getColor(\"loss\", \"rgba(220,38,38,1)\");\n const getProfitOrLoss = (g) => g.profitOrLoss !== void 0 && g.profitOrLoss !== null ? g.profitOrLoss : g.revenue - g.cost;\n const topPerformer = groups.reduce((max, item) => item.revenue > max.revenue ? item : max, groups[0]);\n const topPL = getProfitOrLoss(topPerformer);\n const isTopProfitable = topPL >= 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevGroups = groupBarData?.[prevYear]?.[prevMonth] || [];\n const prevTop = prevGroups.find((i) => i.name === topPerformer.name);\n const pctChange = prevTop && prevTop.revenue > 0 ? Math.round((topPerformer.revenue - prevTop.revenue) / prevTop.revenue * 100) : 12;\n const isIncrease = pctChange >= 0;\n const lossProducts = groups.filter((i) => getProfitOrLoss(i) < 0);\n const needsFocus = lossProducts.length > 0 ? lossProducts.reduce((max, i) => getProfitOrLoss(i) < getProfitOrLoss(max) ? i : max, lossProducts[0]) : groups.reduce((min, i) => i.revenue < min.revenue ? i : min, groups[0]);\n const needsFocusHasLoss = getProfitOrLoss(needsFocus) < 0;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: revenueColor }, children: [\n topPerformer.revenue,\n \"k\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: isTopProfitable ? \"Profit\" : \"Loss\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: isTopProfitable ? profitColor : lossColor }, children: [\n Math.abs(topPL),\n \"k\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: [\n needsFocus.name,\n \" \",\n needsFocusHasLoss ? \"(Loss)\" : \"(Low Revenue)\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"stackbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!stackBarData) return null;\n const legends = stackBarData.legends || [];\n const defaultLegends = [[\"rgba(37,99,235,1)\", \"Aggregating Amount\"], [\"rgba(34,197,94,1)\", \"Outstanding Amount\"], [\"rgba(239,68,68,1)\", \"Write-Off Amount\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: legends.length > 0 ? legends.map((l, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: l.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: l.label })\n ] }, l.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm2]?.[sw]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, day) => {\n const mt = max.aggregating + max.outstanding + max.writeOff;\n const ct = day.aggregating + day.outstanding + day.writeOff;\n return ct > mt ? day : max;\n }, typeData[0]);\n const topTotal = topPerformer.aggregating + topPerformer.outstanding + topPerformer.writeOff;\n const needsFocus = typeData.reduce((min, day) => {\n const mt2 = min.aggregating + min.outstanding + min.writeOff;\n const ct2 = day.aggregating + day.outstanding + day.writeOff;\n return ct2 < mt2 ? day : min;\n }, typeData[0]);\n const weekNum = parseInt(sw.replace(\"Week \", \"\"));\n let percentageChange = 12, isIncrease = true;\n const prevWeek = weekNum > 1 ? `Week ${weekNum - 1}` : null;\n if (prevWeek) {\n const prevTypeData = stackBarData?.[sy]?.[sm2]?.[prevWeek]?.[st] || [];\n const prevDay = prevTypeData.find((d) => d.day === topPerformer.day);\n if (prevDay) {\n const pt = prevDay.aggregating + prevDay.outstanding + prevDay.writeOff;\n if (pt > 0) {\n const ch = (topTotal - pt) / pt * 100;\n percentageChange = Math.abs(Math.round(ch));\n isIncrease = ch >= 0;\n }\n }\n }\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n percentageChange,\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.day })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Aggregating\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: [\n \"$\",\n topPerformer.aggregating\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Outstanding\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(34,197,94,1)]\", children: [\n \"$\",\n topPerformer.outstanding\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: needsFocus.day })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"lollipop\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n return currentFilters.find((f) => f.id === fid)?.label || \"Categories\";\n })() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n const filter = currentFilters.find((f) => f.id === fid);\n const colors = [\"rgba(37,99,235,1)\", \"rgba(16,185,129,1)\", \"rgba(245,158,11,1)\", \"rgba(239,68,68,1)\", \"rgba(147,51,234,1)\"];\n return (filter?.options || []).map((opt, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3.5 h-3.5 rounded-full flex-shrink-0\", style: { backgroundColor: colors[idx % colors.length] } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: opt })\n ] }, opt));\n })() })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: \"Monthly Summary\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-5 h-5 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] }),\n (() => {\n const f0 = currentFilters[0]?.id, f1 = currentFilters[1]?.id, f2 = currentFilters[2]?.id;\n const year = selectedFilters[f0] || currentFilters[0]?.options[0] || \"2026\";\n const month = selectedFilters[f1] || currentFilters[1]?.options[0] || \"January\";\n const category = selectedFilters[f2] || currentFilters[2]?.options[0] || \"Category A\";\n const yearData = lollipopData?.[year] || {};\n const catData = yearData?.[month]?.[category] || [];\n const bestItem = catData.length ? catData.reduce((max, i) => i.value > max.value ? i : max, catData[0]) : null;\n const lowestItem = catData.length ? catData.reduce((min, i) => i.value < min.value ? i : min, catData[0]) : null;\n const avg = catData.length ? Math.round(catData.reduce((s, i) => s + i.value, 0) / catData.length) : 0;\n const aboveAvg = catData.filter((i) => i.value > avg).length;\n const isPositive = aboveAvg > catData.length - aboveAvg;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Best Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: bestItem?.label || \"N/A\" })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Lowest Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Average\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: avg })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Trend\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isPositive ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isPositive ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-semibold font-[Poppins,sans-serif]\", children: isPositive ? \"Positive\" : \"Negative\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 text-xs font-[Poppins,sans-serif]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(107,114,128,1)] font-medium\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(220,38,38,1)] font-semibold\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"kpi\" && currentKPIData && /* @__PURE__ */ jsx25(\"div\", { className: \"w-full\", children: renderChart() }),\n (chartType === \"line\" || chartType === \"area\" || chartType === \"bar\") && !isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: details.map((item, idx) => {\n let bgColor = \"rgba(229,231,235,0.5)\";\n if (item.label === \"Revenue\") bgColor = \"rgba(70,194,155,0.15)\";\n else if (item.label === \"Profit\") bgColor = \"rgba(239,68,68,0.15)\";\n else if (item.label === \"New Customers\") bgColor = \"rgba(23,97,163,0.15)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-[10px]\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"inline-flex items-center justify-center px-2 py-1 rounded text-[10px] font-bold text-[rgba(17,24,39,1)] whitespace-nowrap flex-shrink-0 sm:text-xs sm:px-2.5 sm:py-1.5\", style: { backgroundColor: bgColor }, children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Quick Stats\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"mb-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] })\n ] })\n ] })\n ] });\n};\nMahatiChartAnalyticsWidget.displayName = \"MahatiChartAnalyticsWidget\";\nvar QuickInsightsCard = ({\n totalVolume,\n peakIconSrc,\n peakDate,\n peakEvents,\n calendarIconSrc,\n activeDayLabel,\n activeDayValue,\n activeAvg,\n dateLabel\n}) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: dateLabel })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: totalVolume }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: peakIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: peakDate }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: peakEvents }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: calendarIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeDayLabel }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: activeDayValue }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeAvg })\n] });\nvar TopPerformerCard = ({ performer }) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: performer.isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: performer.isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-semibold\", children: performer.change })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: performer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: performer.revenue })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Profit\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(77,175,131,1)]\", children: performer.profit })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: performer.needsFocus })\n ] })\n] });\n\n// src/components/Tooltip.tsx\nimport React19, { useState as useState13 } from \"react\";\nimport { Fragment as Fragment10, jsx as jsx26, jsxs as jsxs23 } from \"react/jsx-runtime\";\nvar Tooltip2 = ({\n text,\n position = \"top\",\n children,\n variant = \"default\",\n className = \"\",\n textColor,\n backgroundColor,\n image,\n testId,\n animation\n}) => {\n const [visible, setVisible] = useState13(false);\n const [isReady, setIsReady] = useState13(false);\n const [showAnimation, setShowAnimation] = useState13(false);\n const [tooltipPosition, setTooltipPosition] = useState13({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = useState13(position);\n const triggerRef = React19.useRef(null);\n const tooltipRef = React19.useRef(null);\n const hasContent = !!(text || image);\n const calculatePosition = () => {\n if (!triggerRef.current || !tooltipRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n const tooltipRect = tooltipRef.current.getBoundingClientRect();\n const scrollY = window.scrollY;\n const scrollX = window.scrollX;\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n let top = 0;\n let left = 0;\n let finalPosition = position;\n const offset = 12;\n const padding = 10;\n switch (position) {\n case \"top\":\n top = rect.top + scrollY - tooltipRect.height - offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.top < tooltipRect.height + offset + padding) {\n finalPosition = \"bottom\";\n top = rect.bottom + scrollY + offset;\n }\n break;\n case \"right\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.right + scrollX + offset;\n if (rect.right + tooltipRect.width + offset + padding > viewportWidth) {\n finalPosition = \"left\";\n left = rect.left + scrollX - tooltipRect.width - offset;\n }\n break;\n case \"bottom\":\n top = rect.bottom + scrollY + offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.bottom + tooltipRect.height + offset + padding > viewportHeight) {\n finalPosition = \"top\";\n top = rect.top + scrollY - tooltipRect.height - offset;\n }\n break;\n case \"left\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.left + scrollX - tooltipRect.width - offset;\n if (rect.left < tooltipRect.width + offset + padding) {\n finalPosition = \"right\";\n left = rect.right + scrollX + offset;\n }\n break;\n }\n if (left < padding) left = padding;\n else if (left + tooltipRect.width > viewportWidth - padding)\n left = viewportWidth - tooltipRect.width - padding;\n if (top < scrollY + padding) top = scrollY + padding;\n else if (top + tooltipRect.height > scrollY + viewportHeight - padding)\n top = scrollY + viewportHeight - tooltipRect.height - padding;\n setTooltipPosition({ top, left });\n setAdjustedPosition(finalPosition);\n setIsReady(true);\n };\n const showTooltip = () => {\n if (!hasContent) return;\n setIsReady(false);\n setVisible(true);\n requestAnimationFrame(() => calculatePosition());\n if (animation) {\n const delay = animation.triggerDelay || 100;\n setTimeout(() => setShowAnimation(true), delay);\n }\n };\n const hideTooltip = () => {\n setVisible(false);\n setIsReady(false);\n setShowAnimation(false);\n setAdjustedPosition(position);\n };\n React19.useEffect(() => {\n if (visible) {\n const handleUpdate = () => {\n requestAnimationFrame(calculatePosition);\n };\n window.addEventListener(\"scroll\", handleUpdate, { passive: true });\n window.addEventListener(\"resize\", handleUpdate);\n return () => {\n window.removeEventListener(\"scroll\", handleUpdate);\n window.removeEventListener(\"resize\", handleUpdate);\n };\n }\n }, [visible]);\n const renderTooltipContent = () => {\n if (image) {\n return /* @__PURE__ */ jsx26(\n \"img\",\n {\n src: image.src,\n alt: image.alt || \"Tooltip image\",\n width: image.width || 200,\n height: image.height || 150,\n loading: \"lazy\",\n className: \"max-w-full h-auto rounded object-cover block\"\n }\n );\n }\n return text;\n };\n const renderAnimation = () => {\n if (!animation || !showAnimation) return null;\n const AnimationComponent = animation.component;\n return /* @__PURE__ */ jsx26(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) return /* @__PURE__ */ jsx26(Fragment10, { children });\n const variantStyle = variant === \"default\" ? \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white text-[11px]\" : \"bg-white/95 text-gray-700 border border-gray-200 text-[13px]\";\n return /* @__PURE__ */ jsxs23(\n \"div\",\n {\n \"data-testid\": testId,\n ref: triggerRef,\n className: `relative inline-block ${className}`,\n onMouseEnter: showTooltip,\n onMouseLeave: hideTooltip,\n onFocus: showTooltip,\n onBlur: hideTooltip,\n children: [\n children,\n renderAnimation(),\n /* @__PURE__ */ jsxs23(\n \"div\",\n {\n ref: tooltipRef,\n role: \"tooltip\",\n style: {\n top: tooltipPosition.top,\n left: tooltipPosition.left,\n color: textColor,\n background: backgroundColor\n },\n className: `\nfixed z-[99999]\nmax-w-[calc(100vw-16px)]\nmin-w-0\nbox-border\nfont-[Poppins]\nfont-medium\nrounded-[6px]\nwhitespace-normal\nbreak-words [overflow-wrap:anywhere]\nflex flex-wrap\ntransition-all duration-200\n${variantStyle}\n${visible && isReady ? \"opacity-100 visible scale-100\" : \"opacity-0 invisible scale-95 pointer-events-none\"}\n${image ? \"p-1\" : \"px-3 py-2\"}\n`,\n children: [\n renderTooltipContent(),\n variant === \"default\" && !image && /* @__PURE__ */ jsx26(\n \"div\",\n {\n className: \"absolute w-0 h-0 border-solid\",\n style: {\n ...adjustedPosition === \"top\" && {\n bottom: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"6px 6px 0 6px\",\n borderColor: \"#1761A3 transparent transparent transparent\"\n },\n ...adjustedPosition === \"bottom\" && {\n top: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"0 6px 6px 6px\",\n borderColor: \"transparent transparent #1761A3 transparent\"\n },\n ...adjustedPosition === \"left\" && {\n right: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 0 6px 6px\",\n borderColor: \"transparent transparent transparent #1761A3\"\n },\n ...adjustedPosition === \"right\" && {\n left: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 6px 6px 0\",\n borderColor: \"transparent #1761A3 transparent transparent\"\n }\n }\n }\n )\n ]\n }\n )\n ]\n }\n );\n};\nTooltip2.displayName = \"Tooltip\";\n\n// src/components/ToastMessage.tsx\nimport React20, { useEffect as useEffect9 } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { jsx as jsx27, jsxs as jsxs24 } from \"react/jsx-runtime\";\nvar getStripGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 22.5%, rgba(58, 208, 125, 1) 130%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 22.5%, rgba(183, 28, 28, 1) 130%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 22.5%, rgba(255, 191, 92, 1) 130%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 22.5%, rgba(77, 175, 131, 1) 130%)\";\n }\n};\nvar getGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 0%, rgba(58, 208, 125, 1) 100%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 0%, rgba(183, 28, 28, 1) 100%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 0%, rgba(255, 191, 92, 1) 100%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 0%, rgba(77, 175, 131, 1) 100%)\";\n }\n};\nvar getTitleColor = (type) => {\n switch (type) {\n case \"success\":\n return \"rgba(40, 167, 69, 1)\";\n case \"error\":\n return \"rgba(220, 53, 69, 1)\";\n case \"warning\":\n return \"rgba(245, 158, 11, 1)\";\n case \"notification\":\n default:\n return \"rgba(23, 97, 163, 1)\";\n }\n};\nvar getIcon = (type, background) => {\n const style = { width: \"28px\", height: \"28px\", objectFit: \"contain\" };\n const altText = type.charAt(0).toUpperCase() + type.slice(1);\n if (background === \"transparent\") {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/check-mark_2.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_2.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/notification_2.png\", alt: altText, style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/check-mark_1.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/notification_1.png\", alt: altText, style });\n }\n }\n};\nvar ToastMessage = React20.forwardRef(\n ({\n type = \"notification\",\n title: customTitle,\n message,\n onClose,\n showClose = true,\n duration = 5e3,\n background = \"solid\",\n custom,\n action,\n className,\n testId,\n ...rest\n }, ref) => {\n const backgroundClass = background === \"transparent\" ? \"bg-white\" : \"\";\n const displayTitle = customTitle ?? type.charAt(0).toUpperCase() + type.slice(1);\n const hasActions = action && action.length > 0;\n useEffect9(() => {\n if (!onClose) return;\n if (duration <= 0) return;\n const timer = setTimeout(onClose, duration);\n return () => clearTimeout(timer);\n }, [duration, onClose]);\n const closeIconSrc = custom?.closeIconSrc || (background === \"transparent\" ? \"icons/close_copy_1.png\" : \"/icons/close.png\");\n const iconElement = custom?.iconSrc ? /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: custom.iconSrc,\n alt: type,\n style: {\n width: custom.iconWidth || \"28px\",\n height: custom.iconHeight || \"28px\",\n objectFit: \"contain\"\n }\n }\n ) : getIcon(type, background);\n const content = /* @__PURE__ */ jsxs24(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n style: {\n background: background === \"transparent\" ? \"#ffffff\" : getGradient(type)\n },\n className: `fixed top-[20px] right-[20px] w-[325px] rounded-[12px] shadow-md z-[9999] overflow-hidden flex \n${hasActions ? \"flex-col p-[10px]\" : \"flex-row items-center pl-[10px]\"} \n${backgroundClass}\n${className || \"\"}`,\n role: \"alert\",\n \"aria-live\": \"assertive\",\n ...rest,\n children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"absolute left-[5px] top-0 w-[5px] h-full rounded-[20px_0_0_20px]\",\n style: { background: getStripGradient(type) }\n }\n ),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex items-center flex-1 min-h-[50px]\", children: [\n /* @__PURE__ */ jsx27(\"div\", { className: \"flex items-center justify-center w-[40px] h-[40px] mr-[12px] flex-shrink-0 z-[1]\", children: iconElement }),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex-1 min-w-0 z-[1]\", children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"font-semibold text-[16px] truncate\",\n style: {\n fontFamily: custom?.titleFontFamily || \"Poppins\",\n color: custom?.titleColor || (background === \"transparent\" ? getTitleColor(type) : \"white\")\n },\n children: displayTitle\n }\n ),\n message && /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"text-[10px] mt-[2px] truncate\",\n style: {\n fontFamily: custom?.messageFontFamily || \"Poppins\",\n color: custom?.messageColor || (background === \"transparent\" ? \"#555\" : \"white\")\n },\n children: message\n }\n )\n ] }),\n showClose && onClose && /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: onClose,\n \"aria-label\": \"Close toast\",\n className: \"ml-[8px] p-[4px] opacity-80 hover:opacity-100 flex-shrink-0\",\n children: /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: closeIconSrc,\n alt: \"Close\",\n style: {\n width: custom?.closeIconWidth || \"20px\",\n height: custom?.closeIconHeight || \"20px\",\n objectFit: \"contain\"\n }\n }\n )\n }\n )\n ] }),\n hasActions && /* @__PURE__ */ jsx27(\"div\", { className: \"flex gap-[8px] mt-[10px] pl-[5px] justify-end\", children: action?.map((btn, index) => /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: btn.onClick,\n className: \"text-[12px] font-semibold px-[16px] py-[6px] rounded-[6px] transition-all active:scale-95\",\n children: btn.label\n },\n index\n )) })\n ]\n }\n );\n return ReactDOM.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nimport { useState as useState14, useEffect as useEffect10, useRef as useRef6, useMemo as useMemo4 } from \"react\";\nimport { jsx as jsx28 } from \"react/jsx-runtime\";\nvar ConfettiExplosion = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState14([]);\n const animationFrameRef = useRef6(void 0);\n const timerRef = useRef6(void 0);\n const stableColors = useMemo4(() => colors, [JSON.stringify(colors)]);\n useEffect10(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx28(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nConfettiExplosion.displayName = \"ConfettiExplosion\";\n\n// src/components/RealisticConfetti.tsx\nimport { useState as useState15, useEffect as useEffect11, useRef as useRef7, useMemo as useMemo5 } from \"react\";\nimport { jsx as jsx29 } from \"react/jsx-runtime\";\nvar RealisticConfetti = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState15([]);\n const animationFrameRef = useRef7(void 0);\n const timerRef = useRef7(void 0);\n const stableColors = useMemo5(() => colors, [JSON.stringify(colors)]);\n useEffect11(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx29(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx29(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nRealisticConfetti.displayName = \"RealisticConfetti\";\n\n// src/components/Spinner.tsx\nimport { jsx as jsx30, jsxs as jsxs25 } from \"react/jsx-runtime\";\nvar SrOnly = ({ children }) => /* @__PURE__ */ jsx30(\"span\", { className: \"absolute w-[1px] h-[1px] p-0 m-[-1px] overflow-hidden whitespace-nowrap border-0 clip-[rect(0,0,0,0)]\", children });\nvar Spinner = ({\n size = 24,\n borderWidth = 4,\n borderRadius = 50,\n primaryColor = \"#007bff\",\n backgroundColor = \"rgba(0,123,255,0.2)\",\n speed = 1,\n testId\n}) => {\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: {\n width: size,\n height: size,\n borderWidth,\n borderRadius,\n borderColor: backgroundColor,\n borderTopColor: primaryColor,\n animation: `spin ${speed}s linear infinite`\n },\n className: \"border-solid\",\n children: /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n }\n );\n};\nvar CircularSpinner = ({\n size = 48,\n color = \"rgba(37,99,235,1)\",\n speed = 1.5,\n ringCount = 1,\n testId\n}) => {\n const rings = Array.from({ length: Math.max(1, ringCount) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n className: \"relative\",\n style: { width: size, height: size },\n children: [\n rings.map((_, i) => {\n const ringSize = size - i * (size / (ringCount + 1));\n const offset = (size - ringSize) / 2;\n const opacity = 1 - i * 0.3;\n return /* @__PURE__ */ jsx30(\n \"span\",\n {\n style: {\n width: ringSize,\n height: ringSize,\n top: offset,\n left: offset,\n opacity,\n borderWidth: Math.max(2, ringSize / 12),\n borderTopColor: color,\n animation: `circularSpin ${speed + i * 0.3}s linear infinite`\n },\n className: \"absolute border border-transparent rounded-full\"\n },\n i\n );\n }),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n ]\n }\n );\n};\nvar CardOverlayLoader = ({\n show = true,\n spinnerSize = 32,\n spinnerBorderWidth = 4,\n spinnerPrimary = \"rgba(37,99,235,1)\",\n spinnerTrack = \"rgba(229,231,235,1)\",\n backdrop = \"rgba(255,255,255,0.65)\",\n label = \"Loading...\",\n testId\n}) => {\n if (!show) return null;\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: { backgroundColor: backdrop },\n className: \"absolute inset-0 grid place-content-center rounded-xl backdrop-blur-[1px]\",\n children: /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col items-center gap-3\", children: [\n /* @__PURE__ */ jsx30(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack\n }\n ),\n /* @__PURE__ */ jsx30(\"span\", { className: \"text-sm font-medium text-gray-800\", children: label })\n ] })\n }\n );\n};\nvar LoadingDots = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 3,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(0, count) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsBounce ${speed}s ease-in-out ${i * (speed / dots.length)}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar LoadingDotsLinear = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 5,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(1, count) });\n const delay = speed / count;\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsLinear ${speed}s ease-in-out ${i * delay}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar CardWithLoading = ({\n loading = true,\n imageUrl = \"https://upload.wikimedia.org/wikipedia/commons/c/cb/Adirondacks_2016_Cascade_mountain_hike.jpg\",\n title = \"Amazing Landscape\",\n content = \"Discover breathtaking views and natural wonders from around the world.\",\n testId\n}) => {\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"rounded-xl overflow-hidden shadow-lg bg-white border border-gray-200 max-w-[28rem] relative\",\n children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-64 bg-gray-100 overflow-hidden relative\", children: !loading ? /* @__PURE__ */ jsx30(\"img\", { src: imageUrl, alt: title, className: \"w-full h-full object-cover\" }) : /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-full shimmer\" }) }),\n /* @__PURE__ */ jsxs25(\"div\", { className: \"p-6\", children: [\n !loading ? /* @__PURE__ */ jsx30(\"h3\", { className: \"text-xl font-semibold text-gray-900 mb-3\", children: title }) : /* @__PURE__ */ jsx30(\"div\", { className: \"h-7 w-[70%] shimmer rounded mb-3\" }),\n !loading ? /* @__PURE__ */ jsx30(\"p\", { className: \"text-sm text-gray-500 leading-relaxed\", children: content }) : /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-full shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[95%] shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[80%] shimmer rounded\" })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/NestedDropdown.tsx\nimport { useEffect as useEffect12, useRef as useRef8, useState as useState16 } from \"react\";\nimport { ChevronDown as ChevronDown4, X as X3, Loader2 } from \"lucide-react\";\nimport { Fragment as Fragment11, jsx as jsx31, jsxs as jsxs26 } from \"react/jsx-runtime\";\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const ref = useRef8(null);\n useEffect12(() => {\n const h = (e) => ref.current && !ref.current.contains(e.target) && setOpen(false);\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, []);\n const filtered = (options ?? []).filter(\n (o) => o.label.toLowerCase().includes(search.toLowerCase())\n );\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px] \\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n (options ?? []).find((o) => o.value === value)?.label || placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white rounded-[12px]\\r\\n border border-[rgba(23,97,163,0.3)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n placeholder: \"search..\",\n value: search,\n onChange: (e) => setSearch(e.target.value),\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filtered.map((o) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => {\n onChange(o.value);\n setOpen(false);\n setSearch(\"\");\n },\n className: \"px-4 py-[10px] text-[14px] cursor-pointer hover:bg-[#f1f5f9]\",\n children: o.label\n },\n o.value\n )),\n filtered.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\nfunction MultiSelectDropdown({\n label = \"Multi Select\",\n options,\n values,\n onChange,\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const ref = useRef8(null);\n const removeValue = (val) => {\n onChange(values.filter((v) => v !== val));\n };\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const toggleValue = (value) => {\n if (values.includes(value)) {\n onChange(values.filter((v) => v !== value));\n } else {\n onChange([...values, value]);\n }\n };\n const filteredOptions = options.filter(\n (o) => o.label.toLowerCase().includes(search.toLowerCase())\n );\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen(!open),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px]\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n values.length === 0 ? \"Multi Select\" : \"Multi Select\",\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"flex flex-wrap gap-2 mt-3\", children: values.map((val) => {\n const lbl = options.find((o) => o.value === val)?.label;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"flex items-center gap-[6px] px-[10px] py-[6px]\\r\\n bg-white border border-[#cde3f1] rounded-[10px] text-[13px]\",\n children: [\n lbl,\n /* @__PURE__ */ jsx31(\n X3,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n value: search,\n onChange: (e) => setSearch(e.target.value),\n placeholder: \"Search...\",\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filteredOptions.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => toggleValue(opt.value),\n className: `px-4 py-[10px] text-[14px] flex items-center gap-2 cursor-pointer\n hover:bg-[#f1f5f9] ${values.includes(opt.value) ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: values.includes(opt.value),\n readOnly: true\n }\n ),\n opt.label\n ]\n },\n opt.value\n )),\n filteredOptions.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\nfunction CascadingDropdown({\n label = \"Cascading Dropdown\",\n data,\n value,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const level1 = data;\n const level2 = data.find((d) => d.value === value.level1)?.children || [];\n const level3 = level2.find((d) => d.value === value.level2)?.children || [];\n const displayText = value.level3 || value.level2 || value.level1 || \"Select location\";\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px]\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n displayText,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: level1.map((opt) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => onChange({ level1: opt.value }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level1 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: opt.label\n },\n opt.value\n )) }),\n level2.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level2.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => onChange({\n level1: value.level1,\n level2: opt.value\n }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level2 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n \"\\u2514 \",\n opt.label\n ]\n },\n opt.value\n )) }),\n level3.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level3.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => onChange({\n level1: value.level1,\n level2: value.level2,\n level3: opt.value\n }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level3 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n \"\\u2514\\u2500 \",\n opt.label\n ]\n },\n opt.value\n )) })\n ]\n }\n )\n ]\n }\n );\n}\nfunction GroupedDropdown({\n label = \"Grouped Dropdown\",\n groups,\n values,\n onChange,\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const isSectionSelected = (group) => values?.section === group.label;\n const isChildChecked = (value) => values?.values.includes(value) ?? false;\n const toggleSection = (group) => {\n if (values?.section === group.label) {\n onChange(null);\n } else {\n onChange({\n section: group.label,\n values: group.options.map((o) => o.value)\n });\n }\n };\n const toggleChild = (group, value) => {\n if (values?.section !== group.label) {\n onChange({ section: group.label, values: [value] });\n return;\n }\n const exists = values.values.includes(value);\n const newValues = exists ? values.values.filter((v) => v !== value) : [...values.values, value];\n onChange(\n newValues.length === 0 ? null : { section: group.label, values: newValues }\n );\n };\n const displayValue = !values ? \"Select options\" : `${values.section} (${values.values.map(\n (v) => groups.flatMap((g) => g.options).find((o) => o.value === v)?.label\n ).join(\", \")})`;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n displayValue,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(23,97,163,0.3)] z-[100]\",\n children: groups.map((group) => /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3\", children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"flex items-center gap-2 font-semibold\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: isSectionSelected(group),\n onChange: () => toggleSection(group)\n }\n ),\n group.label\n ] }),\n group.options.map((opt) => /* @__PURE__ */ jsxs26(\n \"label\",\n {\n className: \"flex items-center gap-2 text-[14px] mt-[6px] ml-[22px]\",\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: isChildChecked(opt.value),\n onChange: () => toggleChild(group, opt.value)\n }\n ),\n opt.label\n ]\n },\n opt.value\n ))\n ] }, group.label))\n }\n )\n ]\n }\n );\n}\nfunction AvatarDropdown({\n label = \"Select Avatar\",\n placeholder = \"Choose user\",\n options,\n value,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const selected = options.find((o) => o.value === value);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n /* @__PURE__ */ jsx31(\"span\", { className: \"flex items-center gap-[10px]\", children: selected ? /* @__PURE__ */ jsxs26(Fragment11, { children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: selected.image,\n alt: selected.label,\n className: \"w-[28px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n selected.label\n ] }) : placeholder }),\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n flex items-center gap-[12px]\n hover:bg-[#f1f5f9]\n ${opt.value === value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[36px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n /* @__PURE__ */ jsxs26(\"div\", { children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ jsx31(\"div\", { className: \"text-[12px] text-[#64748b]\", children: opt.subtitle })\n ] })\n ]\n },\n opt.value\n )) })\n }\n )\n ]\n }\n );\n}\nfunction AvatarMultiSelectDropdown({\n label = \"Avatar Multi Select\",\n placeholder = \"Select users\",\n options,\n values,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const toggleValue = (value) => {\n if (values.includes(value)) {\n onChange(values.filter((v) => v !== value));\n } else {\n onChange([...values, value]);\n }\n };\n const removeValue = (value) => {\n onChange(values.filter((v) => v !== value));\n };\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"flex flex-wrap gap-2 mt-3\", children: values.map((val) => {\n const opt = options.find((o) => o.value === val);\n if (!opt) return null;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"flex items-center gap-2 px-[10px] py-[6px]\\r\\n bg-white border border-[#cde3f1] rounded-[10px] text-[13px]\",\n children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[24px] h-[24px] rounded-[6px] object-cover\"\n }\n ),\n opt.label,\n /* @__PURE__ */ jsx31(\n X3,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => {\n const active = values.includes(opt.value);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => toggleValue(opt.value),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n flex items-center gap-[12px]\n hover:bg-[#f1f5f9]\n ${active ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: active,\n readOnly: true,\n className: \"accent-[#1761a3]\"\n }\n ),\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[36px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n /* @__PURE__ */ jsxs26(\"div\", { children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ jsx31(\"div\", { className: \"text-[12px] text-[#64748b]\", children: opt.subtitle })\n ] })\n ]\n },\n opt.value\n );\n }) })\n }\n )\n ]\n }\n );\n}\nfunction AsyncDropdown({\n label = \"Async Dropdown\",\n placeholder = \"Search...\",\n value,\n disabled,\n testId,\n loadOptions,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const [options, setOptions] = useState16([]);\n const [loading, setLoading] = useState16(false);\n const ref = useRef8(null);\n useEffect12(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n useEffect12(() => {\n if (!open) return;\n setLoading(true);\n loadOptions(search).then(setOptions).finally(() => setLoading(false));\n }, [open, search, loadOptions]);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n disabled,\n onClick: () => !disabled && setOpen((o) => !o),\n className: `w-full px-4 py-3 rounded-[8px] text-white font-semibold\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\n flex justify-between items-center\n ${disabled ? \"opacity-60 cursor-not-allowed\" : \"cursor-pointer\"}`,\n children: [\n value || placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && !disabled && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n value: search,\n placeholder: \"Search...\",\n onChange: (e) => setSearch(e.target.value),\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n loading && /* @__PURE__ */ jsxs26(\"div\", { className: \"px-4 py-[10px] text-[14px] flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx31(Loader2, { size: 14, className: \"mr-2 animate-spin\" }),\n \"Loading...\"\n ] }),\n !loading && /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n options.map((opt) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n setSearch(\"\");\n },\n className: \"px-4 py-[10px] text-[14px] cursor-pointer hover:bg-[#f1f5f9]\",\n children: opt.label\n },\n opt.value\n )),\n options.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nimport { useEffect as useEffect13, useRef as useRef9, useState as useState17 } from \"react\";\nimport { jsx as jsx32, jsxs as jsxs27 } from \"react/jsx-runtime\";\nvar ControlIcon = ({ src }) => /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${src})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\"\n }\n }\n);\nvar defaultIcons = {\n play: \"/icons/play-btn.png\",\n pause: \"/icons/pause-btn.png\",\n stop: \"/icons/hard-stop.png\",\n repeat: \"/icons/repeat-icon.png\",\n skipForward: \"/icons/skip-forward.png\",\n skipBackward: \"/icons/Backward-icon.png\",\n tenForward: \"/icons/ten-skip-forward.png\",\n tenBackward: \"/icons/ten-skip-backward.png\"\n};\nvar TexttoAudio = ({ icons = defaultIcons }) => {\n const WORDS_PER_SECOND = 2.5;\n const [text, setText] = useState17(\"\");\n const [mode, setMode] = useState17(\"textarea\");\n const [playing, setPlaying] = useState17(false);\n const [currentTime, setCurrentTime] = useState17(0);\n const [duration, setDuration] = useState17(1);\n const [volume, setVolume] = useState17(1);\n const [speed, setSpeed] = useState17(1);\n const [loop, setLoop] = useState17(false);\n const utteranceRef = useRef9(null);\n const timerRef = useRef9(null);\n const wordIndexRef = useRef9(0);\n const textAreaRef = useRef9(null);\n const highlightOnSkipRef = useRef9(false);\n const [summary, setSummary] = useState17(\"\");\n const [loopMode, setLoopMode] = useState17(0);\n const loopCountRef = useRef9(0);\n const autoPlayRef = useRef9(false);\n const baseDurationRef = useRef9(0);\n const timerBaseRef = useRef9(0);\n const volumeRef = useRef9(volume);\n const speedRef = useRef9(speed);\n const categorizeText = (input) => {\n if (!input.trim()) return \"This content covers general topics.\";\n const text2 = input.toLowerCase();\n const categories = {\n Technology: {\n keywords: [\n \"technology\",\n \"software\",\n \"hardware\",\n \"ai\",\n \"artificial intelligence\",\n \"machine learning\",\n \"computer\",\n \"internet\",\n \"digital\",\n \"platform\",\n \"app\"\n ],\n summary: \"This content focuses on technology, software systems, and digital innovation.\"\n },\n Business: {\n keywords: [\n \"business\",\n \"marketing\",\n \"sales\",\n \"brand\",\n \"strategy\",\n \"market\",\n \"customer\",\n \"startup\",\n \"company\",\n \"growth\"\n ],\n summary: \"This content discusses business concepts, strategies, and market growth.\"\n },\n Education: {\n keywords: [\n \"education\",\n \"learning\",\n \"teaching\",\n \"students\",\n \"training\",\n \"course\",\n \"knowledge\",\n \"research\",\n \"study\"\n ],\n summary: \"This content is related to education, learning processes, and knowledge sharing.\"\n },\n Media: {\n keywords: [\n \"content\",\n \"video\",\n \"audio\",\n \"blog\",\n \"podcast\",\n \"social media\",\n \"youtube\",\n \"linkedin\",\n \"posts\"\n ],\n summary: \"This content explains media, communication formats, and content creation.\"\n },\n Human: {\n keywords: [\n \"human\",\n \"people\",\n \"communication\",\n \"engagement\",\n \"interaction\",\n \"society\",\n \"culture\",\n \"behavior\"\n ],\n summary: \"This content highlights human behavior, interaction, and social aspects.\"\n },\n Geography: {\n keywords: [\n \"geography\",\n \"location\",\n \"region\",\n \"country\",\n \"city\",\n \"map\",\n \"area\",\n \"population\"\n ],\n summary: \"This content relates to geographical regions and location-based information.\"\n },\n Nature: {\n keywords: [\n \"nature\",\n \"environment\",\n \"climate\",\n \"earth\",\n \"ecosystem\",\n \"forest\",\n \"water\",\n \"animals\",\n \"plants\"\n ],\n summary: \"This content focuses on nature, environment, and ecological systems.\"\n },\n Health: {\n keywords: [\n \"health\",\n \"medical\",\n \"fitness\",\n \"wellness\",\n \"mental\",\n \"physical\",\n \"disease\"\n ],\n summary: \"This content discusses health, wellness, and medical-related topics.\"\n }\n };\n const summaries = [];\n for (const key in categories) {\n if (categories[key].keywords.some((k) => text2.includes(k))) {\n summaries.push(categories[key].summary);\n }\n }\n return summaries.length ? summaries.slice(0, 2).join(\" \") : \"This content provides general informational insights.\";\n };\n const highlightWordAt = (startIndex) => {\n const ta = textAreaRef.current;\n if (!ta) return;\n const value = ta.value;\n let start = startIndex;\n while (start > 0 && /\\S/.test(value[start - 1])) {\n start--;\n }\n let end = startIndex;\n while (end < value.length && /\\S/.test(value[end])) {\n end++;\n }\n ta.focus();\n ta.setSelectionRange(start, end);\n };\n const formatTime2 = (sec) => {\n const m = Math.floor(sec / 60);\n const s = Math.floor(sec % 60);\n return `${m}:${s.toString().padStart(2, \"0\")}`;\n };\n const getSourceText = () => text;\n const speakFromTime = (time) => {\n window.speechSynthesis.cancel();\n const source = text;\n if (!source.trim()) return;\n const words = source.split(/\\s+/);\n const startWordIndex = Math.floor(time * WORDS_PER_SECOND);\n const charOffset = words.slice(0, startWordIndex).join(\" \").length + (startWordIndex > 0 ? 1 : 0);\n window.speechSynthesis.cancel();\n stopTimer();\n const u = new SpeechSynthesisUtterance(source.slice(charOffset));\n u.rate = speedRef.current;\n u.volume = volumeRef.current;\n u.onboundary = (e) => {\n if (e.name === \"word\" && highlightOnSkipRef.current) {\n highlightWordAt(charOffset + e.charIndex);\n }\n };\n u.onend = () => {\n stopTimer();\n highlightOnSkipRef.current = false;\n if (loopMode === 1 && loopCountRef.current === 0) {\n loopCountRef.current = 1;\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n if (loopMode === 2) {\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(duration);\n };\n utteranceRef.current = u;\n window.speechSynthesis.speak(u);\n setPlaying(true);\n startTimer(time);\n };\n const startTimer = (fromTime) => {\n stopTimer();\n const start = Date.now() - fromTime * 1e3;\n timerRef.current = setInterval(() => {\n const elapsed = (Date.now() - start) / 1e3;\n setCurrentTime(Math.min(elapsed, duration));\n }, 100);\n };\n const togglePlay = () => {\n if (!utteranceRef.current) {\n window.speechSynthesis.cancel();\n loopCountRef.current = 0;\n speakFromTime(currentTime);\n return;\n }\n if (playing) {\n window.speechSynthesis.pause();\n stopTimer();\n setPlaying(false);\n } else {\n window.speechSynthesis.resume();\n startTimer(currentTime);\n setPlaying(true);\n }\n };\n const stopTimer = () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n const getQuickSummary = () => {\n if (mode === \"page\") {\n const pageText = document.body.innerText.replace(/\\s+/g, \" \").trim();\n return pageText ? \"This page provides key information and functionality related to the current module.\" : \"No content available on this page.\";\n }\n return categorizeText(text);\n };\n const getPageContent = () => {\n return document.body.innerText.replace(/\\s+/g, \" \").trim();\n };\n const downloadAudio = () => {\n alert(\"Download audio requires Backend TTS integration\");\n };\n const skip = (sec) => {\n const next = Math.max(0, Math.min(currentTime + sec, duration));\n highlightOnSkipRef.current = true;\n window.speechSynthesis.cancel();\n stopTimer();\n setCurrentTime(next);\n speakFromTime(next);\n startTimer(next);\n };\n const stop = () => {\n window.speechSynthesis.cancel();\n stopTimer();\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(0);\n textAreaRef.current?.setSelectionRange(0, 0);\n utteranceRef.current = null;\n };\n useEffect13(() => {\n return () => {\n window.speechSynthesis.cancel();\n stopTimer();\n };\n }, []);\n useEffect13(() => {\n volumeRef.current = volume;\n }, [volume]);\n useEffect13(() => {\n speedRef.current = speed;\n }, [speed]);\n useEffect13(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n useEffect13(() => {\n if (!text.trim()) {\n setDuration(0);\n setCurrentTime(0);\n return;\n }\n const words = text.trim().split(/\\s+/).length;\n const baseDuration = words / WORDS_PER_SECOND;\n baseDurationRef.current = baseDuration;\n setDuration(baseDuration / speed);\n setCurrentTime(0);\n }, [text]);\n useEffect13(() => {\n if (!baseDurationRef.current) return;\n const progress = duration === 0 ? 0 : currentTime / duration;\n const newDuration = baseDurationRef.current / speed;\n const newCurrentTime = progress * newDuration;\n setDuration(newDuration);\n setCurrentTime(newCurrentTime);\n if (playing) {\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(newCurrentTime);\n }\n }, [speed]);\n useEffect13(() => {\n if (!autoPlayRef.current) return;\n if (!text.trim()) return;\n autoPlayRef.current = false;\n speakFromTime(0);\n }, [text]);\n const getVolumeIcon = () => {\n return volume === 0 ? \"/icons/mute-icon.png\" : \"/icons/sound-icon.png\";\n };\n return /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-container\",\n className: \"grid grid-cols-[4fr_1fr] gap-[10px] max-[900px]:grid-cols-1\",\n children: [\n /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-card\",\n className: \"border border-[#8ed1b2] bg-[#f1f7f7] rounded-[16px] overflow-hidden flex flex-col h-full\",\n children: [\n /* @__PURE__ */ jsx32(\"div\", { className: \"px-[16px] py-[12px] bg-[#e2ecf1] border-b border-[#8ed1b2] font-semibold\", children: \"Text to Speech\" }),\n /* @__PURE__ */ jsx32(\"div\", { className: \"flex flex-1 overflow-hidden\", children: /* @__PURE__ */ jsx32(\n \"textarea\",\n {\n ref: textAreaRef,\n placeholder: \"Enter text here...\",\n value: text,\n onChange: (e) => setText(e.target.value),\n className: \"w-full flex-1 h-[240px] min-h-[240px] max-h-[240px] border-none bg-transparent p-[16px] resize-none outline-none overflow-y-auto leading-[1.6]\"\n }\n ) }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex flex-wrap items-center gap-[10px] p-[12px] bg-[#eaf6f1] border-t border-[#8ed1b2] flex-shrink-0\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[8px] bg-[#d1e4e7] px-[12px] py-[8px] rounded-full overflow-x-auto\", children: [\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ jsx32(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${icons.skipBackward})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\",\n transform: \"scaleX(-1)\"\n }\n }\n ) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\",\n \"data-testid\": \"on-loop-btn\",\n onClick: () => {\n setLoopMode((prev) => prev === 2 ? 0 : prev + 1);\n },\n title: loopMode === 0 ? \"Loop off\" : loopMode === 1 ? \"Loop once\" : \"Loop continuously\",\n children: /* @__PURE__ */ jsxs27(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ jsx32(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n width: 6,\n height: 6,\n borderRadius: \"50%\",\n background: \"#1761a3\"\n }\n }\n ),\n loopMode === 2 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n fontSize: 10,\n fontWeight: 700,\n color: \"#1761a3\"\n },\n children: \"1\"\n }\n )\n ] })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[6px] w-[180px]\", children: [\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n className: \"flex-1 appearance-none h-[6px] rounded-[5px] cursor-pointer\",\n \"data-testid\": \"seek-bar\",\n type: \"range\",\n min: 0,\n max: duration,\n step: 0.01,\n value: currentTime,\n onChange: (e) => {\n const t = Number(e.target.value);\n setCurrentTime(t);\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(t);\n },\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg,\n rgba(23,97,163,1) 0%,\n rgba(77,175,131,1) ${currentTime / duration * 100}%,\n #e5e7eb ${currentTime / duration * 100}%,\n #e5e7eb 100%)`\n }\n }\n ),\n /* @__PURE__ */ jsxs27(\n \"span\",\n {\n style: {\n fontSize: 10,\n color: \"#4a5c57\",\n minWidth: 5,\n textAlign: \"right\"\n },\n children: [\n formatTime2(currentTime),\n \".\",\n formatTime2(duration)\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white border-none px-[12px] py-[6px] rounded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-entire-page-btn\",\n onClick: () => {\n const pageText = getPageContent();\n loopCountRef.current = 0;\n setText(pageText);\n setMode(\"page\");\n setCurrentTime(0);\n speakFromTime(0);\n },\n children: \"Reads Entire page\"\n }\n ),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white border-none px-[12px] py-[6px] rounded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-given-input\",\n onClick: () => {\n loopCountRef.current = 0;\n setMode(\"textarea\");\n setCurrentTime(0);\n setSummary(categorizeText(text));\n speakFromTime(0);\n },\n children: \"Reads input text\"\n }\n )\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex flex-col gap-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between items-center text-[13px] font-semibold text-[#243a36] mb-[10px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[10px]\", children: [\n /* @__PURE__ */ jsx32(\n \"div\",\n {\n onClick: () => setVolume(volume === 0 ? 1 : 0),\n style: {\n width: 18,\n height: 18,\n backgroundImage: `url(${getVolumeIcon()})`,\n backgroundSize: \"contain\",\n backgroundRepeat: \"no-repeat\",\n cursor: \"pointer\"\n }\n }\n ),\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n \"data-testid\": \"text-to-audio-volume\",\n type: \"range\",\n min: 0,\n max: 1,\n step: 0.01,\n value: volume,\n onChange: (e) => setVolume(Number(e.target.value)),\n className: \"w-full appearance-none h-[6px] rounded-[5px]\",\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg, \n rgba(23,97,163,1) 0%, \n rgba(77,175,131,1) ${volume * 100}%, \n #e5e7eb ${volume * 100}%, \n #e5e7eb 100%)`\n }\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between text-[13px] font-semibold mb-[10px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n \"data-testid\": \"test-to-audio-playbackspeed\",\n type: \"range\",\n min: 0.5,\n max: 2,\n step: 0.25,\n value: speed,\n className: \"w-full appearance-none h-[6px] rounded-[5px]\",\n onChange: (e) => setSpeed(Number(e.target.value)),\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg,\n rgba(23,97,163,1) 0%,\n rgba(77,175,131,1) ${(speed - 0.5) / 1.5 * 100}%,\n #e5e7eb ${(speed - 0.5) / 1.5 * 100}%,\n #e5e7eb 100%)`\n }\n }\n ),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between text-xs text-gray-500 mt-1\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ jsx32(\"span\", { children: \"Faster\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsx32(\"div\", { \"data-testid\": \"quick-summary\", className: \"font-semibold mb-[8px]\", children: \"Quick Summary\" }),\n /* @__PURE__ */ jsx32(\"p\", { className: \"text-sm text-[#4a5c57] leading-[1.5]\", children: mode === \"textarea\" ? categorizeText(text) : getQuickSummary() })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/Notifications.tsx\nimport { useEffect as useEffect14, useRef as useRef10, useState as useState18 } from \"react\";\nimport { createPortal as createPortal2 } from \"react-dom\";\nimport { X as X4 } from \"lucide-react\";\nimport { jsx as jsx33, jsxs as jsxs28 } from \"react/jsx-runtime\";\nvar MahatiLocationAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const ref = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const [location, setLocation] = useState18(null);\n useEffect14(() => {\n if (!navigator.permissions) return;\n navigator.permissions.query({ name: \"geolocation\" }).then((res) => {\n setStatus(res.state);\n res.onchange = () => setStatus(res.state);\n });\n }, []);\n useEffect14(() => {\n if (status === \"granted\" && location) {\n onAllow?.(location.coords);\n onClose();\n }\n }, [status, location]);\n const requestLocation = () => {\n navigator.geolocation.getCurrentPosition(\n (pos) => {\n setLocation(pos);\n setStatus(\"granted\");\n },\n () => setStatus(\"denied\"),\n { enableHighAccuracy: true }\n );\n };\n useEffect14(() => {\n if (!isOpen) return;\n const h = (e) => !ref.current?.contains(e.target) && onClose();\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, [isOpen]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-sm\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n className: \"w-[144px] object-contain\",\n alt: \"location\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestLocation,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Location Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiCameraAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestCamera = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n video: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Camera error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Camera Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestCamera,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Camera Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiMicrophoneAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestMic = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n audio: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Microphone error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Microphone Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestMic,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Microphone Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionCard = ({\n headerTitle,\n title,\n testId,\n description,\n ctaText,\n onCtaClick,\n showInput = false,\n inputPlaceholder,\n onInputChange,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full max-w-[420px] overflow-hidden rounded-[16px] border-2 border-[#c5d9e6] bg-[#f1f7f7] shadow-[0_6px_16px_rgba(0,0,0,0.15)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between bg-gradient-to-r from-[#1761a3] to-[#4daf83] px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium text-white\", children: headerTitle }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-5 py-6\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-2 text-[18px] font-semibold text-[#111827]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-6 text-[14px] text-[#878787]\", children: description }),\n showInput && /* @__PURE__ */ jsx33(\n \"input\",\n {\n type: \"email\",\n placeholder: inputPlaceholder,\n onChange: (e) => onInputChange?.(e.target.value),\n className: \"mb-4 w-full rounded-[8px] border-2 border-[#c2dae8] bg-[#eaf2f6] px-[14px] py-[12px] text-[14px] focus:border-[#1b5fa7] focus:outline-none\"\n }\n ),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onCtaClick,\n className: \"w-full rounded-[8px] bg-[#1761a3] py-[12px] text-[14px] font-medium text-white hover:bg-[#174f8a] hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: ctaText\n }\n )\n ] })\n ]\n }\n );\n};\nvar MahatiPromotionModal = ({\n isOpen,\n onClose,\n ctaLink,\n openInNewTab,\n onCtaClick,\n testId,\n ...cardProps\n}) => {\n const ref = useRef10(null);\n const [email, setEmail] = useState18(\"\");\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.(email);\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsx33(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: /* @__PURE__ */ jsx33(\n MahatiPromotionCard,\n {\n ...cardProps,\n onClose,\n onInputChange: setEmail,\n onCtaClick: handleCta\n }\n )\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV2Modal = ({\n isOpen,\n testId,\n onClose,\n headerTitle,\n title,\n description,\n ctaText,\n onCtaClick,\n ctaLink,\n openInNewTab = false,\n showBadgeImage = false,\n badgeImageSrc\n}) => {\n const ref = useRef10(null);\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] overflow-hidden rounded-[16px] bg-gradient-to-b from-[#4daf83] via-[#2f8fa0] to-[#1761a3] text-white shadow-[0_20px_40px_rgba(0,0,0,0.35)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium\", children: headerTitle }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-6 py-10\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-4 text-[28px] font-semibold\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-10 max-w-[80%] text-[14px] opacity-90\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"rounded-[8px] bg-white px-8 py-3 text-[14px] font-semibold text-[#1761a3] hover:bg-[#f2f6fa] hover:shadow-[0_6px_18px_rgba(0,0,0,0.3)]\",\n children: ctaText\n }\n )\n ] }),\n showBadgeImage && badgeImageSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeImageSrc,\n alt: \"Promotion Badge\",\n className: \"absolute bottom-6 right-[-24px] h-[120px] w-[120px] object-contain\"\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV3Modal = ({\n isOpen,\n testId,\n onClose,\n title,\n description,\n ctaText,\n onCtaClick,\n secondaryText = \"Later\",\n onSecondaryClick,\n imageSrc,\n ctaLink,\n openInNewTab = false\n}) => {\n const ref = useRef10(null);\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-[20px] top-[20px] flex h-[28px] w-[28px] items-center justify-center rounded-full bg-[#f1f5f9] hover:bg-[#e5e7eb]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n ),\n imageSrc && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-6 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: imageSrc,\n alt: \"Promotion\",\n className: \"h-[130px] w-[160px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h3\", { className: \"mb-3 text-[22px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 text-[14px] text-[#6b7280]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: ctaText\n }\n ),\n secondaryText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n onSecondaryClick?.();\n onClose();\n },\n className: \"mt-4 text-[14px] font-medium text-[#1761a3] hover:underline\",\n children: secondaryText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar BADGE_BG_MAP = {\n like: \"#F9595F\",\n mention: \"#E02424\",\n follow: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n comment: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n add: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\"\n};\nvar MahatiNotificationCard = ({\n title,\n testId,\n description,\n time,\n iconSrc,\n avatarSrc,\n badgeIconSrc,\n badgeType,\n primaryActionText,\n onPrimaryAction,\n secondaryActionText,\n onSecondaryAction,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex w-full max-w-[640px] items-start gap-4 rounded-[16px] border-2 border-[#c2e2d5] bg-[#f1f7f7] px-4 py-3 shadow-[0_2px_6px_rgba(0,0,0,0.08)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"relative h-[56px] w-[56px] flex-shrink-0 md:h-[64px] md:w-[64px]\", children: [\n iconSrc ? /* @__PURE__ */ jsx33(\"div\", { className: \"flex h-full w-full items-center justify-center rounded-[10px] bg-gradient-to-br from-[#1761a3] to-[#4daf83]\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: iconSrc,\n alt: \"\",\n className: \"h-[20px] w-[20px] md:h-[24px] md:w-[24px]\"\n }\n ) }) : avatarSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: avatarSrc,\n alt: \"User\",\n className: \"h-full w-full rounded-[10px] object-cover\"\n }\n ),\n badgeIconSrc && badgeType && /* @__PURE__ */ jsx33(\n \"div\",\n {\n className: \"absolute bottom-[-4px] right-[-4px] flex h-[24px] w-[24px] items-center justify-center rounded-full border-2 border-white\",\n style: { background: BADGE_BG_MAP[badgeType] },\n children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeIconSrc,\n alt: \"\",\n className: \"h-[12px] w-[12px]\"\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"mb-1 flex items-center gap-3\", children: [\n /* @__PURE__ */ jsx33(\"p\", { className: \"text-[14px] font-semibold text-[#111827] md:text-[16px]\", children: title }),\n time && /* @__PURE__ */ jsx33(\"span\", { className: \"whitespace-nowrap text-[10px] text-[#6b7280] md:text-[12px]\", children: time })\n ] }),\n description && /* @__PURE__ */ jsx33(\"p\", { className: \"mb-3 text-[12px] text-[#6b7280] md:text-[14px]\", children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ jsxs28(\"div\", { className: \"flex flex-col gap-3 sm:flex-row\", children: [\n primaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onPrimaryAction,\n className: \"flex-1 rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-[10px] text-[14px] font-medium text-white hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: primaryActionText\n }\n ),\n secondaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onSecondaryAction,\n className: \"flex-1 rounded-[8px] border-2 border-[#b7d9c9] bg-[#eaf6f1] py-[10px] text-[14px] font-medium text-[#2f6f5e] hover:bg-[#dff1ea]\",\n children: secondaryActionText\n }\n )\n ] })\n ] }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[24px] w-[24px] items-center justify-center rounded-full bg-[#d7e5ed] hover:bg-[#dcefe6] md:h-[32px] md:w-[32px]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n )\n ]\n }\n );\n};\nexport {\n Accordion,\n CardOverlayLoader,\n CardWithLoading,\n CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS,\n Filter,\n LoadingDots,\n LoadingDotsLinear,\n MahatiActivity,\n AsyncDropdown as MahatiAsyncDropdown,\n AvatarDropdown as MahatiAvatarDropdown,\n AvatarMultiSelectDropdown as MahatiAvatarMultiSelectDropdown,\n Button as MahatiButton,\n Calendar as MahatiCalendar,\n MahatiCameraAccessModal,\n Card as MahatiCard,\n CascadingDropdown as MahatiCascadingDropdown,\n MahatiChartAnalyticsWidget,\n ConfettiExplosion as MahatiConfettiExplosion,\n Dropdown as MahatiDropdown,\n FormContainer as MahatiFormContainer,\n GroupedDropdown as MahatiGroupedDropdown,\n Input as MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n Modal as MahatiModal,\n MultiSelectDropdown as MahatiMultiSelectDropdown,\n MahatiNotificationCard,\n MahatiPromotionModal as MahatiPromotionModal_V1,\n MahatiPromotionModalV2Modal as MahatiPromotionModal_V2,\n MahatiPromotionModalV3Modal as MahatiPromotionModal_V3,\n RealisticConfetti as MahatiRealisticConfetti,\n MahatiSearch,\n SearchableDropdown as MahatiSearchableDropdown,\n MahatiStatus,\n TabbedInterface as MahatiTabbedInterface,\n Table as MahatiTable,\n TableWithTab as MahatiTableWithTab,\n TexttoAudio as MahatiTexttoAudio,\n ToastMessage as MahatiToastMessage,\n Tooltip2 as MahatiTooltip,\n Spinner\n};\n"]}
1
+ {"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.mjs"],"names":["__getOwnPropNames","Object","getOwnPropertyNames","__commonJS","cb","mod","__require","exports","require_down_4","module","require_performance_peak_icon","require_calendar_3","require_increase","require_decrease","useState","ChevronDown","ChevronUp","jsx","jsxs","Accordion","title","children","items","defaultOpenIndex","defaultOpen","className","headerClassName","contentClassName","icon","iconPosition","multipleOpen","onToggle","accordionTestId","headerTestId","contentTestId","openIndexes","setOpenIndexes","normalizedItems","length","content","handleToggle","index","newIndexes","includes","filter","i","map","item","isOpen","disabled","onClick","displayName","React2","jsx2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","name","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","IconButtonGroup","forwardRef","direction","props","ref","gap","style","variantClasses","default","destructive","outline","ghost","link","dotted","pill","sizeClasses","sm","md","lg","ButtonBase","variant","size","iconButton","iconButtonHeightClass","iconButtonWidthClass","iconButtonBgClass","iconButtonRadiusClass","iconButtonBgPaddingClass","iconButtonHoverBgClass","iconButtonHoverIntensity","testId","color","height","width","minHeight","minWidth","startsWith","background","borderRadius","Button","React3","useState2","ChevronDown2","ChevronUp2","jsx3","jsxs2","Card","cardContent","cardBackContent","collapsible","flippable","backgroundColor","onFlip","open","setOpen","isFlipped","setIsFlipped","contentId","useId","handleFlip","newState","mainContent","variantStyles","elevated","outlined","subtle","figma","sizeStyles","type","e","stopPropagation","p","id","React4","X","Fragment","jsx4","jsxs3","MODAL_WIDTH_MAP","xl","getPositionClass","position","Modal","onClose","subtitle","customWidth","margin","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","key","document","addEventListener","removeEventListener","body","overflow","role","strokeWidth","label","jsx5","FormContainer","onSubmit","React5","Fragment2","jsx6","jsxs4","Input","hasError","errorMessage","onChange","handleChange","useState4","useEffect3","useRef","useRef2","X2","ChevronDown3","createPortal","useState3","useEffect2","HiOutlineClock","HiChevronDown","HiChevronLeft","HiChevronRight","HiCalendarDays","Fragment3","jsx7","jsxs5","convertToDateString","date","year","month","String","padStart","day","isSameDate","date1","date2","formatDate","formatDateWithFormat","format","monthNum","monthNames","monthAbbr","formatTime","time","hour24","hour","period","hour2","minute2","minute","getDaysInMonth","monthIndex","Date","getDate","getFirstDayOfMonth","getDay","getMonthName","toLocaleDateString","DATE_FORMAT_OPTIONS","TIME_ZONE_OPTIONS","compareInternalDates","a","b","addDaysInternal","start","daysToAdd","y","m","d","dim","isBlockedDateHelper","config","days","startInternal","startDate","endInternal","currentInternal","afterOrOnStart","beforeOrOnEnd","getLocalTimeZone","timeZoneString","Intl","DateTimeFormat","resolvedOptions","timeZone","shortTimeZone","toLocaleTimeString","timeZoneName","split","SIZE_SCALES","getDeviceScale","window","innerWidth","Calendar","calendartestId","value","enableRangeSelection","rangeValue","onRangeChange","enableTimeSelection","timeValue","onTimeChange","showTimeFormatToggle","timeFormat","onTimeFormatChange","autoHide","showTodayButton","showClearButton","placeholder","onShow","onHide","showIcon","enableYearDropdown","showDateFormatSelector","dateFormat","onDateFormatChange","showTimeZoneSelector","timeZoneFormat","onTimeZoneFormatChange","blockDateConfig","previewTextStyles","globalTypography","today","getFullYear","currentYear","setCurrentYear","getMonth","currentMonth","setCurrentMonth","end","internalRangeValue","setInternalRangeValue","setIsOpen","activeField","setActiveField","showTimeSelector","setShowTimeSelector","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedPeriod","setSelectedPeriod","internalTimeFormat","setInternalTimeFormat","showYearDropdown","setShowYearDropdown","internalDateFormat","setInternalDateFormat","internalTimeZoneFormat","setInternalTimeZoneFormat","deviceScale","setDeviceScale","positionAbove","setPositionAbove","containerRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","Math","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","target","daysInMonth","firstDay","monthName","previousMonth","nextMonth","selectDate","newRange","startTime","getTime","endTime","dateString","selectToday","todayDate","now","currentHour","getHours","currentMinute","getMinutes","hour12","localTZ","clearDate","toggleCalendar","handleStartFieldClick","handleEndFieldClick","handleChooseTimeClick","handleChooseDateClick","handleTimeFormatToggle","newFormat","handleTimeConfirm","handleDateConfirm","handleMonthYearClick","handleYearSelect","renderDays","isSelected","isInRange","currentTime","isToday","isBlocked","push","fontSize","totalCells","remainingCells","renderTimeSelector","hours12","Array","from","_","hours24","minutes","marginBottom","transform","paddingLeft","paddingRight","border","zone","marginTop","Number","paddingTop","flex","defaultIcon","readOnly","paddingBottom","cursor","opacity","padding","marginLeft","Fragment4","jsx8","jsxs6","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","SelectWrapper","opt","SelectIcon","MahatiActivity","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","MahatiStatus","MahatiSearch","useEffect4","useState5","Fragment5","jsx9","jsxs7","getFontFamily","font","lower","trim","TabbedInterface","tabs","defaultActiveTab","onTabChange","draggableTabs","onReorderTabs","orientation","verticalPosition","showTabCloseIconInHeader","tabCloseIconPosition","tabCloseIconContent","onCloseTab","tabHeaderFont","tabContentFont","sectionTitleFont","sectionDescriptionFont","activeIndex","setActiveIndex","draggingIndex","setDraggingIndex","effectiveCloseIconContent","tabHeaderFontFamily","tabContentFontFamily","handleTabClick","handleDragStart","handleDragOver","preventDefault","handleDrop","fromIndex","toIndex","prevActive","active","handleDragEnd","headerButtons","tab","isDragging","showClose","closeIcon","draggable","onDragStart","onDragOver","onDrop","onDragEnd","fontFamily","useState6","useRef3","useEffect5","jsx10","jsxs8","Dropdown","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","basic","dark","underline","shadow","glass","gradient","React10","useEffect6","useState7","XMarkIcon","Fragment6","jsx11","jsxs9","getFontFamily2","renderCellValue","isValidElement","isArray","some","v","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","TableWithTab","tableProps","tabProps","rearrange","getRowId","renderTabContent","onRowOpenInTab","description","tabLabelKey","data","setTabs","labelColumnKey","sectionTitleFontFamily","sectionDescriptionFontFamily","t","rawLabel","rowIndex","handleRowClick","existsIndex","findIndex","next2","splice","next","handleCloseTab","isRowSelected","handleReorderTabs","moved","tabbedInterfaceTabs","effectiveShowHeaderClose","header","colSpan","selected","rowId","React11","useState8","ArrowDownOnSquareIcon","XMarkIcon2","Fragment7","jsx12","jsxs10","Table","page","setPage","limit","setLimit","totalCount","highlightRowColor","actions","paginationRequired","paginationPosition","onDownloadPDF","onDownloadExcel","searchable","searchTerm","onResetSearch","onSearch","searchModeOptions","summary","summaryKey","summaryTitleField","summaryColumn","summaryColumnKey","summaryColumnMaxLength","textWrapColumns","textWrapMaxLength","textWrapColumnMaxLengths","tableTestId","searchMode","setSearchMode","expandedRowIndex","setExpandedRowIndex","Set","expandedRowIndexes","setExpandedRowIndexes","isPaginated","totalPages","max","ceil","currentPage","goToPage","clamped","min","renderPageNumbers","pages","siblings","summaryColKeyToUse","renderCell","truncated","substring","mode","idx","isExpanded","has","toggleRow","delete","add","useMemo","useMemo3","useState12","useEffect9","useEffect7","useRef4","useState9","jsx13","jsxs11","assetSrc","anyM","src","arrowDownIcon","getTriggerClasses","base","getMenuClasses","getOptionClasses","ChartDropdown","internalValue","setInternalValue","displayValue","optionValue","onKeyDown","alt","React13","Chart","ChartJS","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","Doughnut","Line","Bar","jsx14","register","makeAreaDataStraight","datasets","ds","tension","cubicInterpolationMode","PieLineBarChart","chartType","defaultOptions","isLineFamily","responsive","maintainAspectRatio","elements","line","plugins","legend","display","tooltip","intersect","titleColor","bodyColor","borderColor","borderWidth","displayColors","scales","x","grid","drawBorder","ticks","interaction","axis","cutout","chartOptions","renderChart","jsx15","jsxs12","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","jsx16","jsxs13","GaugeChart","gauges","fontWeight","gauge","percentage","angle","remaining","dailyAvg","viewBox","x1","y1","x2","y2","offset","stopColor","fill","stroke","strokeLinecap","transition","strokeDasharray","gradientUnits","stopOpacity","textAnchor","transformOrigin","DEFAULT_RISK_BANDS","rangeStart","rangeEnd","createRiskArcPath","centerX","centerY","radius","startAngle","endAngle","startRad","PI","endRad","cos","sin","largeArcFlag","getRiskLevel","score","bands","band","RiskGaugeChart","maxScore","currentLevel","bandIndex","arcPath","bandIdx","jsx17","jsxs14","HorizontalBarChart","bars","xAxisConfig","topPerformer","safeBars","bar","whiteSpace","labels","totalLabels","approxCharWidth","centerOffset","maxVal","barLengthPercentage","React14","jsx18","jsxs15","assetSrc2","arrowDownIcon2","GANTT_COLORS","emerald","GanttChart","selectedYear","selectedMonth","selectedProject","onProjectChange","isProjectDropdownOpen","setIsProjectDropdownOpen","projects","projectData","getMonthNames","monthRange","monthMap","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","month1","month2","getMonthNumber","monthNumberMap","getTodayPosition","currentDay","monthToNumber","selectedMonth1","selectedMonth2","selectedYearNum","dayPercent","positionInMonth","mobileLeft","desktopLeft","show","todayPosition","months","displayMonths","month1Num","month2Num","getTaskPosition","endDate","startDay","startMonth","endDay","endMonth","selectedMonth1Num","selectedMonth2Num","startPercent","isInSecondMonth","lineHeight","baseHeight","taskHeight","taskSpacing","tasks","DateRangeBoxes","alignItems","justifyContent","aspectRatio","boxShadow","project","smLeft","section","task","taskColor","React15","jsx19","jsxs16","LEGEND_COLORS","getActivityColor","getYearWeeks","calendarheatmapData","weeks","firstDayOfWeek","daysToMonday","firstMonday","currentDate","lastMonth","weekIndex","maxWeeks","MONTH_NAMES_FULL","MONTH_NAMES_SHORT","hasCurrentYearDate","dateStr","dayData","weekDays","setDate","dayIndex","thursday","weekMonth","monthLabel","CalendarHeatmapChart","selectedType","hoveredCell","setHoveredCell","visible","cellColor","tooltipData","setTooltipData","yearWeeks","dayRows","forEach","week","weekIdx","dayIdx","strokeLinejoin","rowIdx","cell","colIdx","isCurrentYear","cellKey","isHovered","onMouseEnter","currentTarget","onMouseLeave","marginRight","Fragment8","jsx20","jsxs17","DEFAULT_COLORS","LollipopChart","MenuButtonDots","maxValue","gridPositions","axisLabels","slice","textOverflow","reverse","maxWidth","jsx21","jsxs18","defaultGradient","ColumnChart","columns","yAxisConfig","safeColumns","minValue","yAxisLabels","formatValue","toFixed","calculateHeight","column","columnHeightPercentage","React16","useMemo2","useState10","useRef5","useEffect8","Fragment9","jsx22","jsxs19","createLinearPath","points","path","createAreaPath","linePath","lastPoint","firstPoint","calculatePercentageChange","firstValue","lastValue","abs","getTimeLabel","dataLength","timestamps","monthsDiff","daysDiff","years","floor","getDateRange","filteredTimestamps","allTimestamps","formatDateRange","formatSingleDate","sameYear","sd","sy","em","ed","ey","calculateSum","reduce","s","formatCurrencyValue","prefix","KPIChart","hoveredIndex","setHoveredIndex","tooltipPos","setTooltipPos","timePeriods","filteredData","cutoffDate","setMonth","setFullYear","filtered","filteredTS","timestamp","dataDate","percentageChange","isPositive","dynamicTimeLabel","dynamicDateRange","dynamicValue","chartWidth","chartHeight","calculatedPoints","linearPath","areaPath","gradientId","random","substr","handleMouseMove","svg","ownerSVGElement","clientX","nearestIndex","minDistance","point","distance","positiveGradientStop","trendColor","changeIndicatorBg","letterSpacing","preserveAspectRatio","isNaN","cx","cy","r","onMouseMove","borderTop","text","jsx23","jsxs20","DEFAULT_BAR_COLORS","revenue","profit","loss","cost","GroupBarChart","groups","legends","safeGroups","getColorMap","colorMap","BAR_COLORS","getProfitOrLoss","group","profitOrLoss","profitOrLossValue","isProfitable","profitLossColor","profitLossAbsValue","barIdx","textAlign","wordBreak","overflowWrap","useState11","jsx24","jsxs21","DEFAULT_COLORS2","aggregating","outstanding","writeOff","StackBarChart","setTooltip","safeData","COLORS","getLabel","l","defaultLabels","handleSegmentMouseEnter","total","totalHeight","aggregatingPercent","outstandingPercent","writeOffPercent","backdropFilter","Fragment10","jsx25","jsxs22","assetSrc3","FALLBACK_ICONS","performancePeakIcon","calendarIcon","increaseIcon","decreaseIcon","getIconSrc","imported","fallback","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MenuDotsButton","MahatiChartAnalyticsWidget","chartTypes","initialChartType","filters","chartFilters","selectedFilters","chartDataMap","bulletData","gaugeData","horizontalBarData","columnChartData","groupBarData","stackBarData","lollipopData","kpiData","riskGaugeData","ganttData","heatmapData","onApplyFilters","quickStats","actionButtons","onChartTypeChange","onFiltersChange","details","setChartType","selectedGanttProject","setSelectedGanttProject","selectedCalendarHeatmapProject","setSelectedCalendarHeatmapProject","localFilters","setLocalFilters","currentFilters","currentData","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","Revenue","isIncrease","cur","topProductData","category","Profit","needsFocus","change","calendarPeakAndActiveDay","empty","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","n","dateObj","dayNames","entries","stats","avg","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","currentKPIData","kpiKey","currentGauge","sp","productData","xAxis","Cost","st","yAxis","lYearData","ly","lm","lc","lo","lCatData","selectedCategory","currentRiskGauges","sw","selectedWeek","allData","isActive","zIndex","val","updated","statusColors","totalVolume","transactions","getBadgeBg","QuickInsightsCard","peakIconSrc","peakDate","peakEvents","calendarIconSrc","activeDayLabel","activeDayValue","activeAvg","dateLabel","sm2","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","formattedDate","currentRiskGauge","lastTask","TopPerformerCard","performer","totalRevenue","sum","contribution","ci","prevMonth","prevYear","prevTypeData","prevTop","growth","rank","sort","currentTotal","prevTotal","pctChange","bgColor","minimumFractionDigits","maximumFractionDigits","defaultLegends","getColor","revenueColor","profitColor","lossColor","g","topPL","isTopProfitable","prevGroups","lossProducts","needsFocusHasLoss","mt","ct","topTotal","mt2","ct2","weekNum","replace","prevWeek","prevDay","pt","ch","fid","f","f0","f1","f2","catData","bestItem","lowestItem","aboveAvg","React19","useState13","Fragment11","jsx26","jsxs23","Tooltip2","image","animation","setVisible","isReady","setIsReady","showAnimation","setShowAnimation","tooltipPosition","setTooltipPosition","adjustedPosition","setAdjustedPosition","tooltipRef","hasContent","tooltipRect","viewportWidth","viewportHeight","finalPosition","right","showTooltip","requestAnimationFrame","delay","triggerDelay","setTimeout","hideTooltip","handleUpdate","passive","renderTooltipContent","loading","renderAnimation","AnimationComponent","component","variantStyle","onFocus","onBlur","React20","useEffect10","ReactDOM","jsx27","jsxs24","getStripGradient","getGradient","getTitleColor","getIcon","objectFit","altText","ToastMessage","customTitle","message","duration","custom","action","rest","backgroundClass","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","titleFontFamily","messageFontFamily","messageColor","closeIconWidth","closeIconHeight","btn","useState14","useEffect11","useRef6","useMemo4","jsx28","ConfettiExplosion","particleCount","force","particleSize","stageHeight","particles","setParticles","animationFrameRef","timerRef","stableColors","newParticles","speed","fromLeft","startX","shape","rotation","rotationSpeed","vx","vy","gravity","life","animate","elapsed","prevParticles","particle","cancelAnimationFrame","starGradient","clipPath","useState15","useEffect12","useRef7","useMemo5","jsx29","RealisticConfetti","jsx30","jsxs25","SrOnly","Spinner","primaryColor","borderTopColor","CircularSpinner","ringCount","rings","ringSize","animationDelay","CardOverlayLoader","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","backdrop","LoadingDots","dots","LoadingDotsLinear","CardWithLoading","imageUrl","useEffect13","useRef8","useState16","ChevronDown4","X3","Loader2","Fragment12","jsx31","jsxs26","SearchableDropdown","search","setSearch","MultiSelectDropdown","removeValue","toggleValue","filteredOptions","lbl","checked","CascadingDropdown","level2","level1","level3","displayText","GroupedDropdown","isSectionSelected","isChildChecked","toggleSection","toggleChild","exists","flatMap","AvatarDropdown","AvatarMultiSelectDropdown","AsyncDropdown","loadOptions","setOptions","setLoading","then","finally","useEffect14","useRef9","useState17","jsx32","jsxs27","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","TexttoAudio","icons","WORDS_PER_SECOND","setText","setMode","playing","setPlaying","setCurrentTime","setDuration","volume","setVolume","setSpeed","loop","setLoop","utteranceRef","wordIndexRef","textAreaRef","highlightOnSkipRef","setSummary","loopMode","setLoopMode","loopCountRef","autoPlayRef","baseDurationRef","timerBaseRef","volumeRef","speedRef","categorizeText","input","text2","categories","Technology","keywords","Business","Education","Media","Human","Geography","Nature","Health","summaries","k","highlightWordAt","startIndex","ta","test","focus","setSelectionRange","formatTime2","sec","getSourceText","speakFromTime","speechSynthesis","cancel","source","words","startWordIndex","charOffset","stopTimer","u","SpeechSynthesisUtterance","rate","onboundary","charIndex","onend","speak","startTimer","fromTime","setInterval","togglePlay","resume","clearInterval","getQuickSummary","pageText","innerText","getPageContent","downloadAudio","alert","skip","baseDuration","newDuration","newCurrentTime","getVolumeIcon","step","accentColor","useEffect15","useRef10","useState18","createPortal2","X4","jsx33","jsxs28","MahatiLocationAccessModal","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","MahatiCameraAccessModal","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","console","error","MahatiMicrophoneAccessModal","requestMic","audio","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","MahatiPromotionModal","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","assign","MahatiPromotionModalV2Modal","showBadgeImage","badgeImageSrc","href","MahatiPromotionModalV3Modal","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","MahatiNotificationCard","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction","MahatiAsyncDropdown","MahatiAvatarDropdown","MahatiAvatarMultiSelectDropdown","MahatiButton","MahatiCalendar","MahatiCard","MahatiCascadingDropdown","MahatiConfettiExplosion","MahatiDropdown","MahatiFormContainer","MahatiGroupedDropdown","MahatiInput","MahatiModal","MahatiMultiSelectDropdown","MahatiPromotionModal_V1","MahatiPromotionModal_V2","MahatiPromotionModal_V3","MahatiRealisticConfetti","MahatiSearchableDropdown","MahatiTabbedInterface","MahatiTable","MahatiTableWithTab","MahatiTexttoAudio","MahatiToastMessage","MahatiTooltip"],"mappings":"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","sourcesContent":["var __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports, module) {\n module.exports = \"./down_4-X52SETBJ.png\";\n }\n});\n\n// src/assets/icons/performance-peak-icon.png\nvar require_performance_peak_icon = __commonJS({\n \"src/assets/icons/performance-peak-icon.png\"(exports, module) {\n module.exports = \"./performance-peak-icon-QXFZTZUB.png\";\n }\n});\n\n// src/assets/icons/calendar-3.png\nvar require_calendar_3 = __commonJS({\n \"src/assets/icons/calendar-3.png\"(exports, module) {\n module.exports = \"./calendar-3-SFJ52KIR.png\";\n }\n});\n\n// src/assets/icons/increase.png\nvar require_increase = __commonJS({\n \"src/assets/icons/increase.png\"(exports, module) {\n module.exports = \"./increase-QM2727GU.png\";\n }\n});\n\n// src/assets/icons/decrease.png\nvar require_decrease = __commonJS({\n \"src/assets/icons/decrease.png\"(exports, module) {\n module.exports = \"./decrease-SMWSBU7A.png\";\n }\n});\n\n// src/components/accordion.tsx\nimport { useState } from \"react\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nfunction Accordion({\n title,\n children,\n items = [],\n defaultOpenIndex = null,\n defaultOpen,\n className = \"\",\n headerClassName = \"\",\n contentClassName = \"\",\n icon,\n iconPosition = \"right\",\n multipleOpen = false,\n onToggle,\n accordionTestId,\n headerTestId,\n contentTestId\n}) {\n const [openIndexes, setOpenIndexes] = useState(\n defaultOpen ? [0] : defaultOpenIndex !== null && defaultOpenIndex !== void 0 ? [defaultOpenIndex] : []\n );\n const normalizedItems = items && items.length > 0 ? items : title !== void 0 ? [{ title, content: children }] : [];\n const handleToggle = (index) => {\n let newIndexes;\n if (multipleOpen) {\n if (openIndexes.includes(index)) {\n newIndexes = openIndexes.filter((i) => i !== index);\n } else {\n newIndexes = [...openIndexes, index];\n }\n } else {\n newIndexes = openIndexes.includes(index) ? [] : [index];\n }\n setOpenIndexes(newIndexes);\n };\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n \"data-testid\": accordionTestId,\n className: `w-full max-w-[684px] border border-slate-200 rounded-xl overflow-hidden bg-white ${className}`,\n children: normalizedItems.map((item, index) => {\n const isOpen = openIndexes.includes(index);\n return /* @__PURE__ */ jsxs(\"div\", { children: [\n /* @__PURE__ */ jsxs(\n \"button\",\n {\n \"data-testid\": headerTestId,\n disabled: item.disabled,\n onClick: () => handleToggle(index),\n className: `\n w-full flex items-center justify-between\n px-6 min-h-[60px]\n font-medium transition\n ${item.disabled ? \"opacity-50 cursor-not-allowed\" : \"cursor-pointer\"}\n ${isOpen ? \"text-white bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\" : \"text-slate-800 bg-white\"}\n ${headerClassName}\n `,\n children: [\n iconPosition === \"left\" && /* @__PURE__ */ jsx(\"span\", { className: \"mr-2\", children: icon || (isOpen ? /* @__PURE__ */ jsx(ChevronUp, {}) : /* @__PURE__ */ jsx(ChevronDown, {})) }),\n /* @__PURE__ */ jsx(\"span\", { className: \"flex-1 text-left\", children: item.title }),\n iconPosition === \"right\" && /* @__PURE__ */ jsx(\"span\", { children: icon || (isOpen ? /* @__PURE__ */ jsx(ChevronUp, {}) : /* @__PURE__ */ jsx(ChevronDown, {})) })\n ]\n }\n ),\n isOpen && !item.disabled && /* @__PURE__ */ jsx(\n \"div\",\n {\n \"data-testid\": contentTestId,\n className: `px-6 py-4 text-slate-600 border-t border-slate-200 ${contentClassName}`,\n children: item.content\n }\n ),\n index !== normalizedItems.length - 1 && /* @__PURE__ */ jsx(\"div\", { className: \"border-t border-slate-200\" })\n ] }, index);\n })\n }\n );\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nimport React2 from \"react\";\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar parseHeightWidth = (className) => {\n if (!className) return \"36px\";\n const match = className.match(/[hw]-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"36px\";\n};\nvar parseGap = (gapClass) => {\n if (!gapClass) return \"8px\";\n const match = gapClass.match(/gap-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"8px\";\n};\nvar getColorByName = (name) => {\n const colors = {\n blue: \"#3b82f6\",\n green: \"#10b981\",\n red: \"#ef4444\",\n orange: \"#f59e0b\",\n purple: \"#8b5cf6\",\n yellow: \"#f59e0b\",\n pink: \"#ec4899\",\n teal: \"#14b8a6\",\n indigo: \"#6366f1\",\n primary: \"linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1))\",\n secondary: \"#6b7280\",\n success: \"#10b981\",\n danger: \"#ef4444\",\n warning: \"#f59e0b\",\n info: \"#3b82f6\"\n };\n return colors[name?.toLowerCase()] || colors.primary;\n};\nvar IconButtonGroup = React2.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ jsx2(\n \"div\",\n {\n ref,\n style: { gap },\n className: `inline-flex ${direction === \"col\" ? \"flex-col items-start\" : \"flex-row items-center\"} ${className || \"\"}`,\n ...props,\n children\n }\n );\n }\n);\nIconButtonGroup.displayName = \"IconButtonGroup\";\nvar variantClasses = {\n // ✅ Fixed: was from-[31761A3] — missing #\n default: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white rounded-md hover:opacity-90 active:opacity-95\",\n destructive: \"bg-[#ef4444] text-white rounded-md hover:bg-[#dc2626] active:bg-[#b91c1c]\",\n outline: \"border border-[#e5e7eb] bg-white text-[#374151] rounded-md hover:bg-[#f9fafb] hover:border-[#d1d5db] active:bg-[#f3f4f6]\",\n // ✅ Fixed: was bg-gray-200 text-gray-700 — now matches CSS-in-JS blue\n secondary: \"bg-[#3b82f6] text-white rounded-md hover:bg-[#2563eb] active:bg-[#1d4ed8]\",\n ghost: \"bg-transparent text-[#374151] rounded-md hover:bg-[#f3f4f6] active:bg-[#e5e7eb]\",\n link: \"bg-transparent text-[#2563eb] underline underline-offset-4 p-0 h-auto hover:no-underline hover:text-[#1d4ed8]\",\n danger: \"bg-transparent text-[#ef4444] rounded-md hover:bg-[#ef44441a] active:bg-[#ef444433]\",\n dotted: \"relative [background:linear-gradient(to_right,#1e73be,#28a97d)] text-white rounded-lg border-2 border-dashed border-white/50 hover:opacity-90\",\n pill: \"[background:linear-gradient(to_right,#1761A3,#4DAF83)] text-white rounded-full hover:opacity-90 active:opacity-95\"\n};\nvar sizeClasses = {\n sm: \"h-[36px] px-3 text-[13px]\",\n md: \"h-[40px] px-4 text-[14px]\",\n lg: \"h-[44px] px-6 text-[15px]\",\n icon: \"h-[40px] w-[40px]\",\n default: \"h-[40px] px-4\"\n};\nvar ButtonBase = React2.forwardRef(\n ({\n className,\n variant = \"default\",\n size = \"default\",\n name,\n iconButton = false,\n iconButtonHeightClass,\n iconButtonWidthClass,\n iconButtonBgClass,\n iconButtonRadiusClass,\n iconButtonBgPaddingClass,\n iconButtonHoverBgClass,\n iconButtonHoverIntensity,\n children,\n testId,\n style,\n ...props\n }, ref) => {\n const color = getColorByName(name);\n if (iconButton) {\n const height = parseHeightWidth(iconButtonHeightClass);\n const width = parseHeightWidth(iconButtonWidthClass);\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n style: {\n height,\n width,\n minHeight: height,\n minWidth: width,\n color: color.startsWith(\"linear\") ? \"white\" : color,\n ...style\n },\n className: `\n inline-flex items-center justify-center\n transition-all duration-200\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-white\n ${iconButtonRadiusClass || \"rounded-md\"}\n ${iconButtonBgPaddingClass || \"p-[2px]\"}\n ${iconButtonBgClass || \"bg-white/10\"}\n hover:opacity-85 active:opacity-70\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n \"data-testid\": testId,\n style: name ? {\n background: color,\n color: \"white\",\n borderRadius: variant === \"pill\" ? \"9999px\" : \"6px\",\n ...style\n } : style,\n className: `\n inline-flex items-center justify-center\n whitespace-nowrap\n font-medium\n text-[14px]\n transition-all duration-200\n cursor-pointer\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-blue-400\n disabled:pointer-events-none disabled:opacity-50\n ${!name ? variantClasses[variant] : \"\"}\n ${sizeClasses[size]}\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n);\nButtonBase.displayName = \"Button\";\nvar Button = ButtonBase;\nButton.IconButtonGroup = IconButtonGroup;\n\n// src/components/card.tsx\nimport React3, { useState as useState2 } from \"react\";\nimport { ChevronDown as ChevronDown2, ChevronUp as ChevronUp2 } from \"lucide-react\";\nimport { jsx as jsx3, jsxs as jsxs2 } from \"react/jsx-runtime\";\nvar Card = React3.forwardRef(\n ({\n title,\n cardContent,\n cardBackContent,\n collapsible = false,\n flippable = false,\n backgroundColor,\n borderRadius,\n variant = \"default\",\n size = \"default\",\n className = \"\",\n children,\n defaultOpen = true,\n onFlip,\n style,\n testId,\n ...props\n }, ref) => {\n const [open, setOpen] = useState2(defaultOpen);\n const [isFlipped, setIsFlipped] = useState2(false);\n const contentId = React3.useId();\n const handleFlip = () => {\n if (!flippable) return;\n const newState = !isFlipped;\n setIsFlipped(newState);\n onFlip?.(newState);\n };\n const mainContent = cardContent || children;\n const variantStyles = {\n default: \"bg-white text-slate-800 border border-slate-200 hover:shadow-xl\",\n elevated: \"bg-white border border-transparent shadow-md\",\n outlined: \"bg-slate-50 border border-slate-200\",\n subtle: \"bg-slate-50 border border-transparent\",\n figma: \"border border-[#1761A3] shadow-[0_4px_4px_rgba(0,0,0,0.25)]\"\n };\n const sizeStyles = {\n sm: \"p-4\",\n default: \"p-6\",\n lg: \"p-8\",\n figma: \"w-full max-w-full p-5 box-border\"\n };\n return /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: flippable ? \"perspective-[1000px]\" : \"\",\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ jsxs2(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: `\n rounded-[14px]\n transition-all duration-300 ease-in-out\n shadow-[0_4px_4px_rgba(0,0,0,0.25)]\n ${variantStyles[variant]}\n ${sizeStyles[size]}\n ${flippable ? \"relative cursor-pointer transform-style-preserve-3d transition-transform duration-700 ease-in-out\" : \"\"}\n ${isFlipped ? \"rotate-y-180\" : \"\"}\n ${className}\n `,\n style: {\n backgroundColor: variant !== \"figma\" && backgroundColor ? backgroundColor : variant === \"figma\" ? backgroundColor || \"rgba(77,175,131,0.10)\" : void 0,\n borderRadius: borderRadius || \"14px\",\n ...style\n },\n ...props,\n children: [\n /* @__PURE__ */ jsxs2(\"div\", { className: flippable ? \"backface-hidden\" : \"\", children: [\n title && /* @__PURE__ */ jsxs2(\n \"div\",\n {\n className: `flex items-center justify-between ${open && mainContent ? \"mb-4\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx3(\"h4\", { className: \"text-xl font-semibold text-slate-800 leading-7\", children: title }),\n collapsible && /* @__PURE__ */ jsx3(\n \"button\",\n {\n type: \"button\",\n onClick: (e) => {\n if (flippable) e.stopPropagation();\n setOpen((p) => !p);\n },\n \"aria-label\": open ? \"Hide content\" : \"Show content\",\n \"aria-expanded\": open,\n \"aria-controls\": contentId,\n className: \"\\r\\n z-10 flex items-center justify-center\\r\\n w-8 h-8 rounded-full\\r\\n bg-[#1761A3]\\r\\n hover:opacity-80\\r\\n focus:outline-none\\r\\n focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-[#1761A3]\\r\\n \",\n children: open ? /* @__PURE__ */ jsx3(ChevronUp2, { className: \"w-5 h-5 text-white\" }) : /* @__PURE__ */ jsx3(ChevronDown2, { className: \"w-5 h-5 text-white\" })\n }\n )\n ]\n }\n ),\n mainContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n id: contentId,\n className: `\n grid overflow-hidden\n transition-[grid-template-rows,opacity]duration-500 ease-in-out\n ${open ? \"grid-rows-[1fr] opacity-100\" : \"grid-rows-[0fr] opacity-0\"}\n `,\n children: /* @__PURE__ */ jsx3(\"div\", { className: \"overflow-hidden\", children: mainContent })\n }\n )\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: \"\\r\\n absolute inset-0\\r\\n w-full h-full\\r\\n p-6\\r\\n rotate-y-180\\r\\n backface-hidden\\r\\n \",\n children: cardBackContent\n }\n )\n ]\n }\n )\n }\n );\n }\n);\nCard.displayName = \"Card\";\n\n// src/components/Modal.tsx\nimport * as React4 from \"react\";\nimport { X } from \"lucide-react\";\nimport { Fragment, jsx as jsx4, jsxs as jsxs3 } from \"react/jsx-runtime\";\nvar MODAL_WIDTH_MAP = {\n sm: \"360px\",\n default: \"562px\",\n md: \"720px\",\n lg: \"760px\",\n xl: \"800px\"\n};\nvar getPositionClass = (position) => {\n switch (position) {\n case \"top-left\":\n return \"items-start justify-start\";\n case \"top-right\":\n return \"items-start justify-end\";\n case \"top-center\":\n return \"items-start justify-center\";\n case \"bottom-left\":\n return \"items-end justify-start\";\n case \"bottom-right\":\n return \"items-end justify-end\";\n case \"bottom-center\":\n return \"items-end justify-center\";\n case \"center-left\":\n return \"items-center justify-start\";\n case \"center-right\":\n return \"items-center justify-end\";\n default:\n return \"items-center justify-center\";\n }\n};\nfunction Modal({\n testId,\n isOpen,\n onClose,\n title,\n subtitle,\n children,\n className = \"\",\n width: customWidth,\n height,\n margin,\n primaryAction,\n secondaryAction,\n headerIcon,\n showDivider = true,\n position = \"center\",\n size = \"default\"\n}) {\n const width = customWidth ?? MODAL_WIDTH_MAP[size];\n React4.useEffect(() => {\n if (!isOpen) return;\n const onKey = (e) => e.key === \"Escape\" && onClose();\n document.addEventListener(\"keydown\", onKey);\n return () => document.removeEventListener(\"keydown\", onKey);\n }, [isOpen, onClose]);\n React4.useEffect(() => {\n document.body.style.overflow = isOpen ? \"hidden\" : \"unset\";\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n if (!isOpen) return null;\n return /* @__PURE__ */ jsxs3(Fragment, { children: [\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-overlay` : void 0,\n onClick: onClose,\n className: \"fixed inset-0 bg-black/40 z-[9998] animate-[fadeIn_.2s_ease-out]\"\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n className: `fixed inset-0 z-[9999] pointer-events-none flex p-4 ${getPositionClass(\n position\n )}`,\n children: /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"dialog\",\n \"aria-modal\": \"true\",\n onClick: (e) => e.stopPropagation(),\n style: {\n width: typeof width === \"number\" ? `${width}px` : width,\n height: height ?? (position.includes(\"left\") || position.includes(\"right\") ? \"90vh\" : \"auto\"),\n margin: typeof margin === \"number\" ? `${margin}px` : margin\n },\n className: `pointer-events-auto relative bg-white border border-gray-200 rounded-lg shadow-[0px_4px_24px_rgba(0,0,0,0.15)] flex flex-col animate-[scaleIn_.2s_ease-out] ${!position.includes(\"left\") && !position.includes(\"right\") ? \"max-h-[90vh]\" : \"\"} ${className}`,\n children: [\n /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-header` : void 0,\n className: \"px-6 py-4 flex items-center justify-between border-b border-gray-200\",\n children: [\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex items-center gap-3 flex-1\", children: [\n headerIcon && /* @__PURE__ */ jsx4(\"div\", { children: headerIcon }),\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex-1\", children: [\n title && /* @__PURE__ */ jsx4(\n \"h3\",\n {\n \"data-testid\": testId ? `${testId}-title` : void 0,\n className: \"text-[#333] font-semibold text-[16px]\",\n children: title\n }\n ),\n subtitle && /* @__PURE__ */ jsx4(\n \"p\",\n {\n \"data-testid\": testId ? `${testId}-subtitle` : void 0,\n className: \"text-sm text-gray-500 mt-1\",\n children: subtitle\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-close-btn` : void 0,\n onClick: onClose,\n \"aria-label\": \"Close dialog\",\n className: \" p-1 text-gray-400 hover:text-gray-600 flex items-center justify-center transition-colors\",\n children: /* @__PURE__ */ jsx4(X, { size: 20, strokeWidth: 2 })\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-body` : void 0,\n className: \"flex-grow overflow-y-auto custom-scrollbar\",\n children\n }\n ),\n (primaryAction || secondaryAction) && /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-footer` : void 0,\n className: \"px-6 py-4 flex justify-center gap-3 border-t border-gray-200\",\n children: [\n secondaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-secondary-btn` : void 0,\n onClick: secondaryAction.onClick,\n className: \"min-w-[140px] h-[36px] px-4 rounded-md border border-[#1761A3] text-[#1761A3] bg-white text-sm font-medium hover:bg-gray-50 focus:ring-2 focus:ring-[#1761A3]/20\",\n children: secondaryAction.label ?? \"Cancel\"\n }\n ),\n primaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-primary-btn` : void 0,\n onClick: primaryAction.onClick,\n disabled: primaryAction.disabled,\n className: `min-w-[140px] h-[36px] px-4 rounded-md text-white text-sm font-medium ${primaryAction.disabled ? \"bg-blue-300 cursor-not-allowed\" : \"bg-[#1761A3] hover:bg-[#134a7a]\"} focus:ring-2 focus:ring-[#1761A3]/30`,\n children: primaryAction.label ?? \"Save\"\n }\n )\n ]\n }\n )\n ]\n }\n )\n }\n )\n ] });\n}\nModal.displayName = \"Modal\";\n\n// src/components/FormContainer.tsx\nimport { jsx as jsx5 } from \"react/jsx-runtime\";\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ jsx5(\n \"form\",\n {\n \"data-testid\": testId,\n onSubmit,\n style,\n className: `\n form-container\n flex flex-col gap-4\n w-full max-w-[560px] min-w-0\n mx-auto\n p-4 max-[480px]:p-3\n bg-white\n shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)]\n rounded-lg\n box-border\n ${className}\n `,\n children\n }\n );\n};\nFormContainer.displayName = \"FormContainer\";\n\n// src/components/Input.tsx\nimport React5 from \"react\";\nimport { Fragment as Fragment2, jsx as jsx6, jsxs as jsxs4 } from \"react/jsx-runtime\";\nvar Input = React5.forwardRef(\n ({\n hasError = false,\n errorMessage = \"\",\n className = \"\",\n onChange,\n children,\n testId,\n ...props\n }, ref) => {\n const handleChange = (e) => {\n if (props.disabled) return;\n onChange?.(e);\n };\n return /* @__PURE__ */ jsxs4(Fragment2, { children: [\n /* @__PURE__ */ jsx6(\n \"input\",\n {\n ref,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n onChange: handleChange,\n className: `\n w-full max-w-full min-w-0\n h-[44px]\n px-3\n text-base\n rounded-md\n border\n outline-none\n box-border\n transition-all duration-200\n\n ${hasError ? \"border-red-500 focus:border-red-600 focus:ring-2 focus:ring-red-100\" : \"border-[#D9D9D9] focus:border-blue-500 focus:ring-2 focus:ring-blue-100 hover:border-gray-400 focus:border-blue-500\"}\n\n disabled:bg-gray-100\n disabled:text-gray-400\n disabled:border-gray-200\n disabled:cursor-not-allowed\n\n file:py-2 file:px-3 file:cursor-pointer\n\n placeholder:text-gray-400\n\n ${className}\n `,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ jsx6(\n \"span\",\n {\n \"data-testid\": testId ? `${testId}-error` : void 0,\n className: \"text-red-500 text-sm mt-1 min-h-[1.25rem] block\",\n children: errorMessage\n }\n )\n ] });\n }\n);\nInput.displayName = \"Input\";\n\n// src/components/Filter.tsx\nimport { useState as useState4, useEffect as useEffect3, useRef as useRef2 } from \"react\";\nimport { X as X2, ChevronDown as ChevronDown3 } from \"lucide-react\";\nimport { createPortal } from \"react-dom\";\n\n// src/components/Calendar.tsx\nimport { useState as useState3, useEffect as useEffect2, useRef } from \"react\";\nimport { HiOutlineClock, HiChevronDown, HiChevronLeft, HiChevronRight } from \"react-icons/hi\";\nimport { HiCalendarDays } from \"react-icons/hi2\";\nimport { Fragment as Fragment3, jsx as jsx7, jsxs as jsxs5 } from \"react/jsx-runtime\";\nvar convertToDateString = (date) => {\n if (!date) return \"\";\n const year = date.year;\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n return `${year}-${month}-${day}`;\n};\nvar isSameDate = (date1, date2) => {\n if (!date1 || !date2) return false;\n return date1.year === date2.year && date1.month === date2.month && date1.day === date2.day;\n};\nvar formatDate = (date) => {\n if (!date) return \"\";\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n return `${month}-${day}-${year}`;\n};\nvar formatDateWithFormat = (date, format) => {\n if (!date) return \"\";\n const monthNum = date.month + 1;\n const month = String(monthNum).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n const monthNames = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\n const monthAbbr = monthNames[date.month];\n if (format === \"none\") {\n return `${month}-${day}-${year}`;\n }\n switch (format) {\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"MMM/DD/YYYY\":\n return `${monthAbbr}/${day}/${year}`;\n case \"DD/MMM/YYYY\":\n return `${day}/${monthAbbr}/${year}`;\n case \"YYYY/MMM/DD\":\n return `${year}/${monthAbbr}/${day}`;\n case \"MMM DD, YYYY\":\n return `${monthAbbr} ${day}, ${year}`;\n case \"DD MMM YYYY\":\n return `${day} ${monthAbbr} ${year}`;\n case \"YYYY MMM DD\":\n return `${year} ${monthAbbr} ${day}`;\n case \"MM-DD-YYYY\":\n return `${month}-${day}-${year}`;\n case \"DD-MM-YYYY\":\n return `${day}-${month}-${year}`;\n case \"YYYY-MM-DD\":\n return `${year}-${month}-${day}`;\n case \"MMM-DD-YYYY\":\n return `${monthAbbr}-${day}-${year}`;\n case \"DD-MMM-YYYY\":\n return `${day}-${monthAbbr}-${year}`;\n case \"YYYY-MMM-DD\":\n return `${year}-${monthAbbr}-${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n case \"MM.DD.YYYY\":\n return `${month}.${day}.${year}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n default:\n return `${month}-${day}-${year}`;\n }\n};\nvar formatTime = (time, format = \"12h\") => {\n if (!time) return \"\";\n if (format === \"24h\") {\n let hour24 = time.hour;\n if (time.period === \"PM\" && time.hour !== 12) {\n hour24 = time.hour + 12;\n } else if (time.period === \"AM\" && time.hour === 12) {\n hour24 = 0;\n }\n const hour2 = String(hour24).padStart(2, \"0\");\n const minute2 = String(time.minute).padStart(2, \"0\");\n return `${hour2}:${minute2}`;\n }\n const hour = String(time.hour).padStart(2, \"0\");\n const minute = String(time.minute).padStart(2, \"0\");\n return `${hour}:${minute} ${time.period}`;\n};\nvar getDaysInMonth = (year, monthIndex) => {\n return new Date(year, monthIndex + 1, 0).getDate();\n};\nvar getFirstDayOfMonth = (year, monthIndex) => {\n return new Date(year, monthIndex, 1).getDay();\n};\nvar getMonthName = (monthIndex) => {\n return new Date(2024, monthIndex, 1).toLocaleDateString(\"en-US\", {\n month: \"long\"\n });\n};\nvar DATE_FORMAT_OPTIONS = [\n \"none\",\n \"MM/DD/YYYY\",\n \"DD/MM/YYYY\",\n \"YYYY/MM/DD\",\n \"MMM/DD/YYYY\",\n \"DD/MMM/YYYY\",\n \"YYYY/MMM/DD\",\n \"MMM DD, YYYY\",\n \"DD MMM YYYY\",\n \"YYYY MMM DD\",\n \"MM-DD-YYYY\",\n \"DD-MM-YYYY\",\n \"YYYY-MM-DD\",\n \"MMM-DD-YYYY\",\n \"DD-MMM-YYYY\",\n \"YYYY-MMM-DD\",\n \"DD.MM.YYYY\",\n \"MM.DD.YYYY\",\n \"YYYY.MM.DD\"\n];\nvar TIME_ZONE_OPTIONS = [\n \"none\",\n \"UTC\",\n \"GMT\",\n \"EST\",\n \"EDT\",\n \"CST\",\n \"CDT\",\n \"MST\",\n \"MDT\",\n \"PST\",\n \"PDT\",\n \"IST\",\n \"JST\",\n \"KST\",\n \"AEST\",\n \"AEDT\",\n \"NZST\",\n \"NZDT\",\n \"CET\",\n \"CEST\",\n \"BST\",\n \"AST\",\n \"HST\",\n \"AKST\",\n \"AKDT\",\n \"SST\",\n \"NST\",\n \"WET\",\n \"WEST\",\n \"EET\",\n \"EEST\",\n \"MSK\",\n \"HKT\",\n \"SGT\",\n \"PKT\",\n \"BDT\",\n \"AWST\",\n \"ACST\",\n \"ACDT\",\n \"NFT\"\n];\nvar compareInternalDates = (a, b) => {\n if (a.year !== b.year) return a.year - b.year;\n if (a.monthIndex !== b.monthIndex) return a.monthIndex - b.monthIndex;\n return a.day - b.day;\n};\nvar addDaysInternal = (start, daysToAdd) => {\n let y = start.year;\n let m = start.monthIndex;\n let d = start.day + daysToAdd;\n while (true) {\n const dim = getDaysInMonth(y, m);\n if (d <= dim) break;\n d -= dim;\n m += 1;\n if (m > 11) {\n m = 0;\n y += 1;\n }\n }\n return { year: y, monthIndex: m, day: d };\n};\nvar isBlockedDateHelper = (date, config) => {\n if (!config || config.days <= 0) return false;\n const startInternal = {\n year: config.startDate.year,\n monthIndex: config.startDate.month,\n day: config.startDate.day\n };\n const endInternal = addDaysInternal(startInternal, config.days - 1);\n const currentInternal = {\n year: date.year,\n monthIndex: date.month,\n day: date.day\n };\n const afterOrOnStart = compareInternalDates(currentInternal, startInternal) >= 0;\n const beforeOrOnEnd = compareInternalDates(currentInternal, endInternal) <= 0;\n return afterOrOnStart && beforeOrOnEnd;\n};\nvar getLocalTimeZone = () => {\n const timeZoneString = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const date = /* @__PURE__ */ new Date();\n const shortTimeZone = date.toLocaleTimeString(\"en-us\", { timeZoneName: \"short\" }).split(\" \")[2];\n return shortTimeZone || timeZoneString;\n};\nvar SIZE_SCALES = {\n \"small\": 0.65,\n \"medium\": 0.8,\n \"large\": 0.9,\n \"extra-large\": 1\n};\nvar getDeviceScale = () => {\n if (typeof window === \"undefined\") return 1;\n const width = window.innerWidth;\n if (width < 640) return 0.7;\n if (width < 1024) return 0.85;\n return 1;\n};\nvar Calendar = ({\n calendartestId,\n value,\n onChange,\n enableRangeSelection = false,\n rangeValue,\n onRangeChange,\n enableTimeSelection = false,\n timeValue,\n onTimeChange,\n showTimeFormatToggle = false,\n timeFormat = \"12h\",\n onTimeFormatChange,\n autoHide = false,\n showTodayButton = false,\n showClearButton = false,\n placeholder = \"Select date\",\n className,\n disabled = false,\n onShow,\n onHide,\n icon,\n showIcon = true,\n size = \"extra-large\",\n enableYearDropdown = false,\n showDateFormatSelector = false,\n dateFormat = \"none\",\n onDateFormatChange,\n showTimeZoneSelector = false,\n timeZoneFormat = \"none\",\n onTimeZoneFormatChange,\n blockDateConfig,\n previewTextStyles = {},\n globalTypography = {}\n}) => {\n const today = /* @__PURE__ */ new Date();\n const [currentYear, setCurrentYear] = useState3(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = useState3(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = useState3({ start: null, end: null });\n const [isOpen, setIsOpen] = useState3(false);\n const [activeField, setActiveField] = useState3(\"start\");\n const [showTimeSelector, setShowTimeSelector] = useState3(false);\n const [selectedHour, setSelectedHour] = useState3(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = useState3(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = useState3(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = useState3(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = useState3(false);\n const [internalDateFormat, setInternalDateFormat] = useState3(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = useState3(timeZoneFormat);\n const [deviceScale, setDeviceScale] = useState3(1);\n const [positionAbove, setPositionAbove] = useState3(false);\n const containerRef = useRef(null);\n const calendarRef = useRef(null);\n const sizeScale = SIZE_SCALES[size];\n const scale = sizeScale * deviceScale;\n const finalRangeValue = rangeValue ?? internalRangeValue;\n const scaled = (value2) => Math.round(value2 * scale);\n useEffect2(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n useEffect2(() => {\n if (!isOpen || !containerRef.current || !calendarRef.current) return;\n const calculatePosition = () => {\n const containerRect = containerRef.current?.getBoundingClientRect();\n const calendarHeight = calendarRef.current?.offsetHeight || 580 * scale;\n if (!containerRect) return;\n const spaceBelow = window.innerHeight - containerRect.bottom;\n const spaceAbove = containerRect.top;\n const bufferSpace = 20;\n if (spaceBelow < calendarHeight + bufferSpace && spaceAbove > calendarHeight + bufferSpace) {\n setPositionAbove(true);\n } else {\n setPositionAbove(false);\n }\n };\n calculatePosition();\n window.addEventListener(\"resize\", calculatePosition);\n window.addEventListener(\"scroll\", calculatePosition, true);\n return () => {\n window.removeEventListener(\"resize\", calculatePosition);\n window.removeEventListener(\"scroll\", calculatePosition, true);\n };\n }, [isOpen, scale]);\n useEffect2(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n useEffect2(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n useEffect2(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n useEffect2(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n useEffect2(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n useEffect2(() => {\n const handleClickOutside = (event) => {\n if (containerRef.current && !containerRef.current.contains(event.target)) {\n if (isOpen) {\n setIsOpen(false);\n setShowTimeSelector(false);\n setShowYearDropdown(false);\n onHide?.();\n }\n }\n };\n if (isOpen) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpen, onHide]);\n const daysInMonth = getDaysInMonth(currentYear, currentMonth);\n const firstDay = getFirstDayOfMonth(currentYear, currentMonth);\n const monthName = getMonthName(currentMonth);\n const previousMonth = () => {\n if (currentMonth === 0) {\n setCurrentMonth(11);\n setCurrentYear(currentYear - 1);\n } else {\n setCurrentMonth(currentMonth - 1);\n }\n };\n const nextMonth = () => {\n if (currentMonth === 11) {\n setCurrentMonth(0);\n setCurrentYear(currentYear + 1);\n } else {\n setCurrentMonth(currentMonth + 1);\n }\n };\n const selectDate = (day) => {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n if (enableRangeSelection) {\n if (activeField === \"start\") {\n const newRange = { start: date, end: finalRangeValue?.end || null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n } else {\n const start = finalRangeValue?.start;\n if (start) {\n const startTime = new Date(start.year, start.month, start.day).getTime();\n const endTime = new Date(date.year, date.month, date.day).getTime();\n let newRange;\n if (endTime < startTime) {\n newRange = { start: date, end: start };\n } else {\n newRange = { start, end: date };\n }\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n } else {\n const newRange = { start: date, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n }\n }\n } else {\n const dateString = convertToDateString(date);\n onChange?.(date, dateString);\n }\n if (showTimeSelector) {\n setShowTimeSelector(false);\n }\n if (autoHide && (!enableRangeSelection || enableRangeSelection && activeField === \"end\" && finalRangeValue?.start)) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const selectToday = () => {\n const todayDate = {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n };\n setCurrentYear(todayDate.year);\n setCurrentMonth(todayDate.month);\n const dateString = convertToDateString(todayDate);\n onChange?.(todayDate, dateString);\n if (enableTimeSelection && showTimeSelector) {\n const now = /* @__PURE__ */ new Date();\n const currentHour = now.getHours();\n const currentMinute = now.getMinutes();\n let hour12;\n let period;\n if (currentHour === 0) {\n hour12 = 12;\n period = \"AM\";\n } else if (currentHour === 12) {\n hour12 = 12;\n period = \"PM\";\n } else if (currentHour > 12) {\n hour12 = currentHour - 12;\n period = \"PM\";\n } else {\n hour12 = currentHour;\n period = \"AM\";\n }\n setSelectedHour(hour12);\n setSelectedMinute(currentMinute);\n setSelectedPeriod(period);\n onTimeChange?.({\n hour: hour12,\n minute: currentMinute,\n period\n });\n if (showTimeZoneSelector) {\n const localTZ = getLocalTimeZone();\n setInternalTimeZoneFormat(localTZ);\n onTimeZoneFormatChange?.(localTZ);\n }\n }\n if (autoHide) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const clearDate = () => {\n if (enableRangeSelection) {\n const newRange = { start: null, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"start\");\n } else {\n onChange?.(null, \"\");\n }\n if (enableTimeSelection) {\n onTimeChange?.(null);\n setSelectedHour(12);\n setSelectedMinute(0);\n setSelectedPeriod(\"AM\");\n }\n };\n const toggleCalendar = () => {\n if (disabled) return;\n const newState = !isOpen;\n setIsOpen(newState);\n if (newState) {\n setShowTimeSelector(false);\n onShow?.();\n } else {\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const handleStartFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"start\");\n setShowTimeSelector(false);\n };\n const handleEndFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"end\");\n setShowTimeSelector(false);\n };\n const handleChooseTimeClick = () => {\n setShowTimeSelector(!showTimeSelector);\n };\n const handleChooseDateClick = () => {\n setShowTimeSelector(false);\n };\n const handleTimeFormatToggle = () => {\n const newFormat = internalTimeFormat === \"12h\" ? \"24h\" : \"12h\";\n setInternalTimeFormat(newFormat);\n onTimeFormatChange?.(newFormat);\n };\n const handleTimeConfirm = () => {\n onTimeChange?.({\n hour: selectedHour,\n minute: selectedMinute,\n period: selectedPeriod\n });\n setShowTimeSelector(false);\n };\n const handleDateConfirm = () => {\n setIsOpen(false);\n onHide?.();\n };\n const handleMonthYearClick = () => {\n if (enableYearDropdown) {\n setShowYearDropdown(!showYearDropdown);\n }\n };\n const handleYearSelect = (year) => {\n setCurrentYear(year);\n setShowYearDropdown(false);\n };\n const renderDays = () => {\n const days = [];\n for (let i = 0; i < firstDay; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-start-${i}`\n )\n );\n }\n for (let day = 1; day <= daysInMonth; day++) {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n const isSelected = enableRangeSelection ? isSameDate(finalRangeValue?.start, date) || isSameDate(finalRangeValue?.end, date) : isSameDate(value, date);\n const isInRange = enableRangeSelection && finalRangeValue?.start && finalRangeValue?.end ? (() => {\n const currentTime = new Date(date.year, date.month, date.day).getTime();\n const startTime = new Date(\n finalRangeValue.start.year,\n finalRangeValue.start.month,\n finalRangeValue.start.day\n ).getTime();\n const endTime = new Date(\n finalRangeValue.end.year,\n finalRangeValue.end.month,\n finalRangeValue.end.day\n ).getTime();\n return currentTime > startTime && currentTime < endTime;\n })() : false;\n const isToday = isSameDate(\n {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n },\n date\n );\n const isBlocked = isBlockedDateHelper(date, blockDateConfig);\n days.push(\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n if (!isBlocked) selectDate(day);\n },\n disabled: isBlocked,\n className: `\n flex items-center justify-center rounded\n font-semibold transition-all\n ${isSelected ? \"text-white shadow\" : \"\"}\n ${!isSelected && isToday ? \"border-2 border-[#1761A3] text-[#1761A3]\" : \"\"}\n ${!isSelected && !isToday && !isInRange ? \"bg-[rgba(0,123,255,0.05)] text-gray-700\" : \"\"}\n ${isInRange && !isSelected ? \"bg-[rgba(23,97,163,0.15)] text-gray-700\" : \"\"}\n ${!isBlocked && !isSelected ? \"hover:bg-[rgba(23,97,163,0.1)]\" : \"\"}\n ${isBlocked ? \"opacity-40 cursor-not-allowed text-gray-400\" : \"cursor-pointer\"}\n `,\n style: {\n width: scale * 32,\n height: scale * 30,\n fontSize: scale * 14,\n background: isSelected ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : void 0\n },\n children: day\n },\n `current-${day}`\n )\n );\n }\n const totalCells = firstDay + daysInMonth;\n const remainingCells = totalCells % 7 === 0 ? 0 : 7 - totalCells % 7;\n for (let i = 0; i < remainingCells; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-end-${i}`\n )\n );\n }\n return days;\n };\n const renderTimeSelector = () => {\n const hours12 = Array.from({ length: 12 }, (_, i) => i + 1);\n const hours24 = Array.from({ length: 24 }, (_, i) => i);\n const minutes = Array.from({ length: 60 }, (_, i) => i);\n return /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col h-full\", children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 overflow-y-auto\", children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\"div\", { style: { marginBottom: scaled(12) }, children: [\n showTimeFormatToggle && /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scaled(12) }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black\",\n style: { fontSize: scale * 12 },\n children: \"Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-center\",\n style: { gap: scale * 8 },\n children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"12h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"12h\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: handleTimeFormatToggle,\n role: \"switch\",\n \"aria-checked\": internalTimeFormat === \"24h\",\n className: \"relative inline-flex items-center rounded-lg transition-all\",\n style: {\n width: scale * 38,\n height: scale * 17,\n background: internalTimeFormat === \"24h\" ? \"#1761A3\" : \"#cbd5e1\"\n },\n children: /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"bg-white rounded-full shadow\",\n style: {\n width: scale * 13,\n height: scale * 13,\n transform: internalTimeFormat === \"24h\" ? `translateX(${scale * 23}px)` : `translateX(${scale * 2}px)`\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"24h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"24h\"\n }\n )\n ]\n }\n )\n ] }) }),\n (showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-start\",\n style: { gap: scale * 15 },\n children: [\n showDateFormatSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-center\",\n style: { fontSize: scale * 12 },\n children: \"Date Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalDateFormat,\n onChange: (e) => {\n setInternalDateFormat(e.target.value);\n onDateFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 36,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\",\n background: \"#F0F8FF\"\n },\n children: DATE_FORMAT_OPTIONS.map((format) => /* @__PURE__ */ jsx7(\"option\", { children: format }, format))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] }),\n showTimeZoneSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-right\",\n style: { fontSize: scale * 12 },\n children: \"Time Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalTimeZoneFormat,\n onChange: (e) => {\n setInternalTimeZoneFormat(e.target.value);\n onTimeZoneFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\"\n },\n children: TIME_ZONE_OPTIONS.map((zone) => /* @__PURE__ */ jsx7(\"option\", { children: zone }, zone))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 16 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block text-[#374151] font-semibold\",\n style: {\n marginBottom: scale * 12,\n fontSize: scale * 12\n },\n children: \"Time Select\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedHour,\n onChange: (e) => setSelectedHour(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: (internalTimeFormat === \"24h\" ? hours24 : hours12).map((hour) => /* @__PURE__ */ jsx7(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedMinute,\n onChange: (e) => setSelectedMinute(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: minutes.map((minute) => /* @__PURE__ */ jsx7(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n internalTimeFormat === \"12h\" && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs5(\n \"select\",\n {\n value: selectedPeriod,\n onChange: (e) => setSelectedPeriod(e.target.value),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: [\n /* @__PURE__ */ jsx7(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ jsx7(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 12 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block font-semibold text-[#374151]\",\n style: {\n marginBottom: scale * 8,\n fontSize: scale * 12\n },\n children: \"Preview\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"p\",\n {\n className: \"text-[#1761A3] font-semibold\",\n style: { fontSize: scale * 12 },\n children: [\n formatDateWithFormat(value ?? null, internalDateFormat),\n \" \",\n formatTime(\n { hour: selectedHour, minute: selectedMinute, period: selectedPeriod },\n internalTimeFormat\n ),\n internalTimeZoneFormat !== \"none\" ? ` ${internalTimeZoneFormat}` : \"\"\n ]\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"border-t border-[#e5e7eb]\",\n style: { paddingTop: scale * 15 },\n children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(23,97,163,0.15)\",\n color: \"#1761A3\",\n gap: scale * 8,\n flex: !showClearButton ? \"none\" : 1\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(239,68,68,0.15)\",\n color: \"#EF4444\",\n flex: !showTodayButton ? \"none\" : 1\n },\n children: \"Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleTimeConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Time\"\n }\n )\n ]\n }\n )\n ] });\n };\n const defaultIcon = /* @__PURE__ */ jsx7(HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ jsxs5(\n \"div\",\n {\n ref: containerRef,\n className: `relative ${className ?? \"\"}`,\n \"data-testid\": calendartestId,\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"relative\", children: [\n showIcon && /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"pointer-events-none absolute inset-y-0 left-0 flex items-center\",\n style: { paddingLeft: scaled(12) },\n children: icon || defaultIcon\n }\n ),\n /* @__PURE__ */ jsx7(\n \"input\",\n {\n type: \"text\",\n readOnly: true,\n disabled,\n placeholder,\n onClick: toggleCalendar,\n value: enableRangeSelection && finalRangeValue ? finalRangeValue.start && finalRangeValue.end ? `${formatDate(finalRangeValue.start)} - ${formatDate(finalRangeValue.end)}` : finalRangeValue.start ? `${formatDate(finalRangeValue.start)} - ...` : \"\" : enableTimeSelection && value && timeValue ? `${formatDate(value)} ${formatTime(timeValue, internalTimeFormat)}` : formatDate(value ?? null),\n className: \"block w-full rounded-full border border-gray-300 bg-gray-50 font-semibold text-gray-900 shadow-sm transition-all focus:outline-none focus:border-blue-500\",\n style: {\n paddingTop: scale * 10,\n paddingBottom: scale * 10,\n paddingLeft: showIcon ? scale * 40 : scale * 12,\n paddingRight: scale * 12,\n fontSize: scale * 12,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n opacity: disabled ? 0.5 : 1\n }\n }\n )\n ] }),\n isOpen && /* @__PURE__ */ jsx7(\n \"div\",\n {\n ref: calendarRef,\n className: \"absolute left-0 z-[9999] overflow-hidden bg-white\",\n style: {\n width: scale * 406,\n borderRadius: scale * 22,\n border: \"1px solid #1761A3\",\n marginTop: positionAbove ? void 0 : scale * 8,\n marginBottom: positionAbove ? scale * 8 : void 0\n },\n children: /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex flex-col\",\n style: {\n padding: scale * 24,\n background: \"linear-gradient(to bottom, rgba(23,97,163,0.08), rgba(77,175,131,0.08))\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"font-bold text-gray-900\",\n style: {\n fontSize: scale * 20,\n marginBottom: scale * 20\n },\n children: enableRangeSelection ? \"Select Date Range\" : \"Select Date & Time\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: `flex items-center ${!enableTimeSelection ? \"justify-center\" : \"justify-center\"}`,\n style: {\n gap: enableTimeSelection ? scale * 20 : 0,\n marginBottom: scale * 24,\n width: \"100%\"\n },\n children: enableRangeSelection ? /* @__PURE__ */ jsxs5(Fragment3, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleStartFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"start\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"start\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"text-gray-500\",\n style: {\n fontSize: scale * 12,\n gap: scale * 24\n },\n children: \"From Date\"\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleEndFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"end\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"end\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex flex-col items-start\",\n style: { gap: scale * 4 },\n children: [\n /* @__PURE__ */ jsx7(\"span\", { style: {\n fontSize: scale * 12\n }, children: \"To Date\" }),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ]\n }\n )\n ]\n }\n )\n ] }) : /* @__PURE__ */ jsxs5(Fragment3, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseDateClick,\n className: \"flex items-center justify-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n minWidth: enableTimeSelection ? scale * 140 : scale * 220,\n background: !showTimeSelector && enableTimeSelection ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: !showTimeSelector && enableTimeSelection ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseTimeClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n marginLeft: scale * 16,\n background: showTimeSelector ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: showTimeSelector ? \"white\" : \"#111827\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: timeValue ? formatTime(\n timeValue,\n internalTimeFormat\n ) : \"Choose Time\" })\n ]\n }\n )\n ] })\n }\n ),\n /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scale * 22 }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"relative flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Previous month\",\n onClick: previousMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(HiChevronLeft, { style: { width: scaled(10), height: scaled(10) } })\n }\n ),\n /* @__PURE__ */ jsxs5(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: handleMonthYearClick,\n className: \"font-bold text-[#1761A3]\",\n style: { fontSize: scale * 18 },\n children: [\n monthName,\n \" \",\n currentYear\n ]\n }\n ),\n showYearDropdown && /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"absolute bg-white border rounded-md shadow-md z-[9999] max-h-40 overflow-y-auto\",\n style: {\n marginTop: scale * 8,\n width: scale * 120\n },\n children: Array.from({ length: 100 }, (_, i) => currentYear - 50 + i).map((year) => /* @__PURE__ */ jsx7(\n \"div\",\n {\n onClick: () => handleYearSelect(year),\n className: \"px-3 py-2 cursor-pointer hover:bg-gray-100\",\n style: { fontSize: scale * 12 },\n children: year\n },\n year\n ))\n }\n )\n ] }),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Next month\",\n onClick: nextMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(HiChevronRight, { style: { width: scaled(10), height: scaled(10) } })\n }\n )\n ] }) }),\n !showTimeSelector ? /* @__PURE__ */ jsxs5(Fragment3, { children: [\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"grid grid-cols-7\",\n style: { gap: scale * 24 },\n children: renderDays()\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex justify-between\",\n style: {\n gap: scale * 12,\n marginTop: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center font-semibold\",\n style: {\n width: scale * 165,\n height: scale * 38,\n borderRadius: scale * 6,\n background: \"rgba(23, 97, 163, 0.15)\",\n color: \"#1761A3\",\n fontSize: scale * 12,\n gap: scale * 8\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiCalendarDays,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"flex items-center justify-center font-semibold\",\n style: {\n width: scale * 165,\n height: scale * 38,\n borderRadius: scale * 6,\n background: \"rgba(239, 68, 68, 0.15)\",\n color: \"#EF4444\",\n fontSize: scale * 12\n },\n children: \"\\u{1F5D1} Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleDateConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n marginTop: scale * 12,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Date\"\n }\n )\n ] }) : renderTimeSelector()\n ]\n }\n )\n }\n )\n ]\n }\n );\n};\nCalendar.displayName = \"Calendar\";\n\n// src/components/Filter.tsx\nimport { Fragment as Fragment4, jsx as jsx8, jsxs as jsxs6 } from \"react/jsx-runtime\";\nvar DEFAULT_ACTIVITY_OPTIONS = [\n { label: \"Select Activity\", value: \"\" },\n { label: \"Activity List\", value: \"Activity List\" },\n { label: \"Login\", value: \"Login\" },\n { label: \"Update\", value: \"Update\" },\n { label: \"Delete\", value: \"Delete\" }\n];\nvar DEFAULT_STATUS_OPTIONS = [\n { label: \"Select Status\", value: \"\" },\n { label: \"Pending\", value: \"Pending\" },\n { label: \"Approved\", value: \"Approved\" },\n { label: \"Rejected\", value: \"Rejected\" }\n];\nvar Filter = ({\n onApply,\n onReset,\n activityOptions = DEFAULT_ACTIVITY_OPTIONS,\n statusOptions = DEFAULT_STATUS_OPTIONS,\n searchPlaceholder = \"Search...\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const [values, setValues] = useState4({\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n });\n const handleChange = (name, value) => {\n setValues((prev) => ({ ...prev, [name]: value }));\n };\n const resetField = (name) => {\n if (name === \"date\") {\n setValues((prev) => ({\n ...prev,\n date: { start: null, end: null }\n }));\n } else {\n setValues((prev) => ({ ...prev, [name]: \"\" }));\n }\n };\n const resetAll = () => {\n const newValues = {\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n };\n setValues(newValues);\n if (onReset) onReset();\n else if (onApply) onApply(newValues);\n };\n const applyFilters = () => {\n if (onApply) onApply(values);\n setOpen(false);\n };\n return /* @__PURE__ */ jsxs6(\"div\", { className: \"relative\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-button` : void 0,\n onClick: () => setOpen((p) => !p),\n className: \"\\r\\n flex items-center gap-2\\r\\n px-5 py-3\\r\\n rounded-lg\\r\\n border border-[rgba(23,97,163,0.35)]\\r\\n bg-gradient-to-r from-[#f2fbf8] to-[#eef6fb]\\r\\n text-slate-900 font-semibold\\r\\n shadow-sm\\r\\n hover:from-[#e8f5f0] hover:to-[#e0f0f6]\\r\\n focus:outline-none focus:ring-2 focus:ring-[#1761a3]\\r\\n \",\n children: \"Filter\"\n }\n ),\n open && /* @__PURE__ */ jsx8(\n \"div\",\n {\n className: \"absolute right-0 mt-3 z-50\",\n \"data-testid\": testId ? `${testId}-model` : void 0,\n children: /* @__PURE__ */ jsxs6(\"div\", { className: \"w-[360px] bg-white border border-slate-200 rounded-lg shadow\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-3 border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsx8(\"h3\", { className: \"text-base font-semibold\", children: \"Add Filter\" }),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-close` : void 0,\n onClick: () => setOpen(false),\n className: \"w-8 h-8 rounded-full flex items-center justify-center bg-slate-100 hover:bg-slate-200\",\n children: /* @__PURE__ */ jsx8(X2, { className: \"w-4 h-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx8(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ jsx8(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.activity,\n onChange: (e) => handleChange(\"activity\", e.target.value),\n children: activityOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.status,\n onChange: (e) => handleChange(\"status\", e.target.value),\n children: statusOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsx8(\n \"input\",\n {\n className: \"w-full px-4 py-3 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.keyword,\n placeholder: searchPlaceholder,\n onChange: (e) => handleChange(\"keyword\", e.target.value)\n }\n ),\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb]\", children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-resetall` : void 0,\n onClick: resetAll,\n className: \"border border-[#1761a3] bg-[#f0f8ff] px-4 py-2 rounded-md hover:bg-[#e6f3ff]\",\n children: \"Reset all\"\n }\n ),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-apply` : void 0,\n onClick: applyFilters,\n className: \"px-4 py-2 rounded-md text-white bg-gradient-to-r from-[#1761a3] to-[#4daf83] hover:opacity-90\",\n children: \"Apply Now\"\n }\n )\n ] })\n ] })\n }\n )\n ] });\n};\nvar Section = ({\n title,\n onReset,\n children\n}) => /* @__PURE__ */ jsxs6(\"div\", { className: \"px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb] border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between mb-3\", children: [\n /* @__PURE__ */ jsx8(\"h6\", { className: \"font-semibold text-sm\", children: title }),\n /* @__PURE__ */ jsx8(\"button\", { type: \"button\", onClick: onReset, className: \"text-[#1761a3] text-sm font-semibold hover:opacity-80\", children: \"Reset\" })\n ] }),\n children\n] });\nvar SelectWrapper = ({ children }) => /* @__PURE__ */ jsx8(\"div\", { className: \"relative w-full mb-3\", children });\nvar SelectIcon = () => /* @__PURE__ */ jsx8(\"span\", { className: \"absolute right-3 top-1/2 -translate-y-1/2 text-slate-500 pointer-events-none\", children: /* @__PURE__ */ jsx8(ChevronDown3, { className: \"w-4 h-4\" }) });\nvar MahatiActivity = ({\n value,\n onChange,\n options = DEFAULT_ACTIVITY_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Activity\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) {\n return;\n }\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment4, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-option-${String(opt.value)}` : void 0,\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiStatus = ({\n value,\n onChange,\n options = DEFAULT_STATUS_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Status\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) return;\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment4, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiSearch = ({\n value,\n onChange,\n placeholder = \"Search...\",\n size = \"medium\",\n testId\n}) => /* @__PURE__ */ jsx8(\n \"input\",\n {\n \"data-testid\": testId,\n type: \"text\",\n value,\n placeholder,\n onChange: (e) => onChange(e.target.value),\n className: `\n w-full\n border border-slate-300\n rounded-md\n bg-white\n text-sm\n focus:outline-none\n focus:ring-2\n focus:ring-[#1761a3]\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `\n }\n);\nFilter.displayName = \"Filter\";\nMahatiActivity.displayName = \"MahatiActivity\";\nMahatiStatus.displayName = \"MahatiStatus\";\nMahatiSearch.displayName = \"MahatiSearch\";\n\n// src/components/TabbedInterface.tsx\nimport { useEffect as useEffect4, useState as useState5 } from \"react\";\nimport { Fragment as Fragment5, jsx as jsx9, jsxs as jsxs7 } from \"react/jsx-runtime\";\nvar getFontFamily = (font) => {\n if (!font) return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\")\n return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\")\n return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nvar TabbedInterface = ({\n tabs,\n variant = \"underline\",\n defaultActiveTab = 0,\n onTabChange,\n draggableTabs = false,\n onReorderTabs,\n orientation = \"horizontal\",\n verticalPosition = \"left\",\n showTabCloseIconInHeader = false,\n tabCloseIconPosition = \"right\",\n tabCloseIconContent,\n onCloseTab,\n tabHeaderFont,\n tabContentFont,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) => {\n const [activeIndex, setActiveIndex] = useState5(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = useState5(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n useEffect4(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n useEffect4(() => {\n if (!tabs.length) {\n setActiveIndex(0);\n return;\n }\n setActiveIndex(\n (prev) => prev < 0 ? 0 : prev >= tabs.length ? tabs.length - 1 : prev\n );\n }, [tabs.length]);\n const handleTabClick = (index) => {\n setActiveIndex(index);\n onTabChange?.(index);\n };\n const handleDragStart = (index) => {\n if (!draggableTabs) return;\n setDraggingIndex(index);\n };\n const handleDragOver = (event) => {\n if (!draggableTabs) return;\n event.preventDefault();\n };\n const handleDrop = (index) => {\n if (!draggableTabs) return;\n if (draggingIndex === null) {\n setDraggingIndex(null);\n return;\n }\n const fromIndex = draggingIndex;\n const toIndex = index;\n if (fromIndex === toIndex) {\n setDraggingIndex(null);\n return;\n }\n setActiveIndex((prevActive) => {\n let active = prevActive;\n if (active === fromIndex) return toIndex;\n if (fromIndex < toIndex) {\n if (active > fromIndex && active <= toIndex) return active - 1;\n } else if (fromIndex > toIndex) {\n if (active >= toIndex && active < fromIndex) return active + 1;\n }\n return active;\n });\n onReorderTabs?.(fromIndex, toIndex);\n setDraggingIndex(null);\n };\n const handleDragEnd = () => {\n if (!draggableTabs) return;\n setDraggingIndex(null);\n };\n const headerButtons = /* @__PURE__ */ jsx9(Fragment5, { children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n const isDragging = draggableTabs && draggingIndex === index;\n const showClose = showTabCloseIconInHeader && !!onCloseTab;\n const closeIcon = showClose ? /* @__PURE__ */ jsx9(\n \"span\",\n {\n role: \"button\",\n \"aria-label\": \"Close tab\",\n onClick: (e) => {\n e.stopPropagation();\n onCloseTab?.(index);\n },\n className: \"inline-flex h-6 w-6 items-center justify-center rounded-full text-lg font-bold hover:bg-[#e2e8f0] hover:text-[#334155]\",\n children: effectiveCloseIconContent\n }\n ) : null;\n return /* @__PURE__ */ jsxs7(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleTabClick(index),\n draggable: draggableTabs,\n onDragStart: () => handleDragStart(index),\n onDragOver: handleDragOver,\n onDrop: () => handleDrop(index),\n onDragEnd: handleDragEnd,\n className: `relative flex items-center px-4 py-2 text-sm font-semibold transition-all duration-300 select-none\n ${orientation === \"vertical\" ? \"text-left w-full\" : \"text-center\"}\n ${isDragging ? \"ring-2 ring-[#1761A3]\" : \"\"}\n ${variant === \"pill\" ? active ? \"rounded-full bg-[#1761A3] text-white shadow\" : \"rounded-full text-[#1761A3] hover:bg-[#1761A3]/10\" : variant === \"outline\" ? active ? \"rounded-md border-2 border-[#1761A3] bg-[#F3F8FF] text-[#1761A3]\" : \"rounded-md border-2 border-transparent text-slate-700 hover:border-slate-300\" : variant === \"filled\" ? active ? \"rounded-md bg-[#1761A3] text-white\" : \"rounded-md bg-[#EAF3FD] text-[#1761A3]\" : variant === \"gradient\" ? active ? \"rounded-md bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white\" : \"rounded-md bg-[#F0F4F8] text-[#1761A3]\" : variant === \"shadow\" ? active ? \"rounded-md bg-white text-[#1761A3] shadow-lg\" : \"rounded-md bg-[#F8FAFD]\" : variant === \"glass\" ? active ? \"rounded-md bg-[#1761A3]/40 text-white border border-white/30 backdrop-blur-[24px]\" : \"rounded-md bg-white/20 border border-white/30\" : variant === \"dark\" ? active ? \"text-blue-300 border-b-4 border-blue-400\" : \"text-slate-300 hover:text-blue-400\" : active ? \"text-[#1761A3]\" : \"text-slate-700 hover:text-[#1761A3]\"}`,\n children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex min-w-0 items-center gap-2\", children: [\n tabCloseIconPosition === \"left\" && closeIcon,\n tab.icon && /* @__PURE__ */ jsx9(\"span\", { children: tab.icon }),\n /* @__PURE__ */ jsx9(\"span\", { className: \"truncate\", children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon\n ] }),\n variant === \"underline\" && /* @__PURE__ */ jsx9(\n \"span\",\n {\n className: `absolute ${orientation === \"vertical\" ? \"left-0 top-0 h-full w-[3px]\" : \"bottom-[-2px] left-0 h-[3px] w-full\"}\n bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\n transition-transform duration-300\n ${active ? \"scale-x-100\" : \"scale-x-0\"}\n `\n }\n )\n ]\n },\n index\n );\n }) });\n const content = /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: \"relative min-h-[180px]\",\n style: { fontFamily: tabContentFontFamily },\n children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: `transition-opacity duration-300 ${active ? \"relative opacity-100\" : \"absolute inset-0 opacity-0 pointer-events-none\"}`,\n children: tab.content\n },\n index\n );\n })\n }\n );\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsxs7(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"mb-5 flex justify-around max-[600px]:flex-col max-[600px]:items-center\", children: headerButtons }),\n content\n ]\n }\n );\n }\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: verticalPosition === \"left\" ? /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[minmax(180px,220px)_1fr]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-r md:pr-4\", children: headerButtons }),\n /* @__PURE__ */ jsx9(\"div\", { children: content })\n ] }) : /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[1fr_minmax(180px,220px)]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { children: content }),\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-l md:pl-4\", children: headerButtons })\n ] })\n }\n );\n};\nTabbedInterface.displayName = \"TabbedInterface\";\n\n// src/components/Dropdown.tsx\nimport { useState as useState6, useRef as useRef3, useEffect as useEffect5 } from \"react\";\nimport { jsx as jsx10, jsxs as jsxs8 } from \"react/jsx-runtime\";\nvar Dropdown = ({\n options,\n value,\n onSelect,\n variant = \"basic\",\n className = \"\",\n placeholder = \"Select an option\",\n disabled = false,\n testId\n}) => {\n const [open, setOpen] = useState6(false);\n const [internalSelected, setInternalSelected] = useState6(null);\n const dropdownRef = useRef3(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n useEffect5(() => {\n function handleClickOutside(event) {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setOpen(false);\n }\n }\n if (open) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [open]);\n const handleSelect = (option) => {\n if (disabled) return;\n if (value === void 0) setInternalSelected(option);\n onSelect(option.value);\n setOpen(false);\n };\n const handleButtonClick = () => {\n if (!disabled) {\n setOpen(!open);\n }\n };\n return /* @__PURE__ */ jsxs8(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative w-full max-w-[14rem] min-w-0 box-border ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n /* @__PURE__ */ jsx10(\n \"button\",\n {\n onClick: handleButtonClick,\n disabled,\n type: \"button\",\n className: `\n w-full text-left px-4 py-2 rounded-[0.375rem] text-[1rem] leading-[1.5]\n transition-all duration-200 ease-in-out border-none\n ${disabled ? \"bg-[#e5e7eb] text-[#9ca3af] cursor-not-allowed opacity-50\" : \"\"}\n\n ${!disabled && {\n basic: \"bg-[#2563eb] text-white hover:bg-[#1d4ed8]\",\n outline: \"border border-[#2563eb] bg-transparent text-[#2563eb] hover:bg-[#eff6ff]\",\n pill: \"bg-[#2563eb] text-white rounded-full hover:bg-[#1d4ed8]\",\n dark: \"bg-[#1f2937] text-white hover:bg-[#374151]\",\n underline: \"border-none border-b-2 border-[#3b82f6] rounded-none bg-transparent text-[#1d4ed8] hover:bg-[#eff6ff]\",\n shadow: \"bg-white text-[#374151] border border-[#e5e7eb] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)] hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\",\n glass: \"bg-[rgba(255,255,255,0.2)] [backdrop-filter:blur(12px)][-webkit-backdrop-filter:blur(12px)] text-white border border-[rgba(255,255,255,0.4)] hover:bg-[rgba(255,255,255,0.3)]\",\n gradient: \"bg-gradient-to-r from-[#3b82f6] to-[#a855f7] text-white hover:opacity-90\"\n }[variant]}\n `,\n children: selectedOption?.key || placeholder\n }\n ),\n open && !disabled && /* @__PURE__ */ jsx10(\n \"div\",\n {\n className: `\n absolute mt-2 w-full rounded-[0.375rem] border border-[#e5e7eb]\n shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\n max-h-[16rem] overflow-y-auto scrollbar-thin scrollbar-thumb-slate-300 scrollbar-track-100 z-20\n ${variant === \"glass\" ? \"bg-[rgba(255,255,255,0.9)] backdrop-blur-[12px] border-[rgba(255,255,255,0.6)]\" : \"bg-white\"}\n `,\n children: options.map((opt, index) => /* @__PURE__ */ jsx10(\n \"div\",\n {\n onClick: () => handleSelect(opt),\n className: `\n px-4 py-2 cursor-pointer text-[#374151]\n transition-colors duration-150\n ${variant === \"glass\" ? \"hover:bg-[rgba(59,130,246,0.1)]\" : \"hover:bg-[#f3f4f6]\"}\n ${index === 0 ? \"rounded-t-[0.375rem]\" : \"\"}\n ${index === options.length - 1 ? \"rounded-b-[0.375rem]\" : \"\"}\n `,\n children: opt.key\n },\n opt.value\n ))\n }\n )\n ]\n }\n );\n};\nDropdown.displayName = \"Dropdown\";\n\n// src/components/TableWithTab.tsx\nimport React10, { useEffect as useEffect6, useState as useState7 } from \"react\";\nimport { XMarkIcon } from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment6, jsx as jsx11, jsxs as jsxs9 } from \"react/jsx-runtime\";\nvar getFontFamily2 = (font) => {\n if (!font)\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\") return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\") return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nfunction renderCellValue(value) {\n if (React10.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ jsx11(\"span\", { className: \"text-slate-300\", children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => React10.isValidElement(v))) return /* @__PURE__ */ jsx11(Fragment6, { children: value });\n return value.join(\", \");\n }\n if (value instanceof Date) return value.toLocaleString();\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (typeof value === \"number\") return value.toString();\n if (typeof value === \"object\") return JSON.stringify(value);\n return String(value);\n}\nfunction DefaultTabContent({\n headers,\n row\n}) {\n return /* @__PURE__ */ jsx11(\"div\", { className: \"flex flex-col gap-2\", children: headers.map((h) => /* @__PURE__ */ jsxs9(\n \"div\",\n {\n className: \"flex flex-col sm:flex-row sm:items-center gap-1 rounded-lg bg-white p-3 text-sm shadow-sm\",\n children: [\n /* @__PURE__ */ jsx11(\"span\", { className: \"w-full sm:w-48 text-xs font-semibold uppercase tracking-wide text-slate-500\", children: h.label }),\n /* @__PURE__ */ jsx11(\"span\", { className: \"flex-1 break-words text-slate-800\", children: renderCellValue(row[h.key]) })\n ]\n },\n h.key\n )) });\n}\nfunction TableWithTab({\n tableProps,\n tabProps,\n rearrange = false,\n getRowId,\n renderTabContent,\n onRowOpenInTab,\n title,\n description,\n tabLabelKey,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) {\n const { headers, data } = tableProps;\n const [tabs, setTabs] = useState7([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n useEffect6(() => {\n if (!tabs.length) return;\n setTabs(\n (prev) => prev.map((t) => {\n const row = t.row;\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : t.id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${t.rowIndex + 1}`;\n return { ...t, label };\n })\n );\n }, [tabLabelKey, headers]);\n const handleRowClick = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n setTabs((prev) => {\n const existsIndex = prev.findIndex((t) => t.id === id);\n if (existsIndex !== -1) {\n const next2 = [...prev];\n next2.splice(existsIndex, 1);\n return next2;\n }\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${index + 1}`;\n const next = [...prev, { id, label, row, rowIndex: index }];\n onRowOpenInTab?.(row);\n return next;\n });\n };\n const handleCloseTab = (id) => {\n setTabs((prev) => prev.filter((t) => t.id !== id));\n };\n const isRowSelected = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n return tabs.some((t) => t.id === id);\n };\n const handleReorderTabs = (fromIndex, toIndex) => {\n setTabs((prev) => {\n const next = [...prev];\n const [moved] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, moved);\n return next;\n });\n };\n const tabbedInterfaceTabs = tabs.map((t) => ({\n label: t.label,\n content: /* @__PURE__ */ jsxs9(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsx11(\"div\", { className: \"flex justify-end\", children: /* @__PURE__ */ jsxs9(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleCloseTab(t.id),\n className: \"inline-flex items-center gap-1 rounded-full bg-[#f1f5f9] px-3 py-1 text-xs font-medium text-[#334155] transition-colors hover:bg-[#e2e8f0]\",\n children: [\n /* @__PURE__ */ jsx11(XMarkIcon, { className: \"h-3 w-3\" }),\n /* @__PURE__ */ jsx11(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ jsx11(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ jsxs9(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full rounded-xl border border-slate-200 bg-white p-6 shadow-sm\",\n children: [\n (title || description) && /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-4\", children: [\n title && /* @__PURE__ */ jsx11(\n \"h2\",\n {\n className: \"text-xl font-semibold text-slate-900\",\n style: { fontFamily: sectionTitleFontFamily },\n children: title\n }\n ),\n description && /* @__PURE__ */ jsx11(\n \"p\",\n {\n className: \"mt-1 text-sm text-slate-500\",\n style: { fontFamily: sectionDescriptionFontFamily },\n children: description\n }\n )\n ] }),\n /* @__PURE__ */ jsx11(\"div\", { className: \"overflow-x-auto w-full rounded-xl border border-slate-200\", children: /* @__PURE__ */ jsx11(\"div\", { className: \"min-w-[900px]\", children: /* @__PURE__ */ jsxs9(\"table\", { className: \"min-w-full border-collapse text-sm\", children: [\n /* @__PURE__ */ jsx11(\"thead\", { className: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\", children: /* @__PURE__ */ jsx11(\"tr\", { children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"th\",\n {\n className: \"px-3 py-2 text-left text-xs font-semibold uppercase tracking-wide text-white\",\n children: header.label\n },\n header.key\n )) }) }),\n /* @__PURE__ */ jsxs9(\"tbody\", { className: \"bg-white\", children: [\n data.length === 0 && /* @__PURE__ */ jsx11(\"tr\", { children: /* @__PURE__ */ jsx11(\n \"td\",\n {\n colSpan: headers.length,\n className: \"px-4 py-6 text-center text-sm text-slate-500\",\n children: \"No records to display.\"\n }\n ) }),\n data.map((row, index) => {\n const selected = isRowSelected(row, index);\n const rowId = getRowId ? getRowId(row, index) : index;\n return /* @__PURE__ */ jsx11(\n \"tr\",\n {\n onClick: () => handleRowClick(row, index),\n className: `cursor-pointer border-b border-slate-100 transition hover:bg-slate-50 ${selected ? \"bg-blue-100/70\" : \"\"}`,\n children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"td\",\n {\n className: \"px-3 py-2 text-slate-800\",\n children: renderCellValue(\n row[header.key]\n )\n },\n header.key\n ))\n },\n String(rowId)\n );\n })\n ] })\n ] }) }) }),\n tabs.length > 0 && /* @__PURE__ */ jsxs9(\"div\", { className: \"mt-6\", children: [\n /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-3 flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs9(\"h3\", { className: \"text-sm font-semibold uppercase tracking-wide text-slate-500\", children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ jsx11(\"p\", { className: \"text-xs text-slate-500\", children: \"Drag the tab headers to change their order.\" })\n ] }),\n /* @__PURE__ */ jsx11(\n TabbedInterface,\n {\n ...tabProps,\n tabs: tabbedInterfaceTabs,\n draggableTabs: rearrange,\n onReorderTabs: rearrange ? handleReorderTabs : void 0,\n showTabCloseIconInHeader: effectiveShowHeaderClose,\n onCloseTab: (index) => {\n const target = tabs[index];\n if (!target) return;\n handleCloseTab(target.id);\n }\n }\n )\n ] })\n ]\n }\n );\n}\nTableWithTab.displayName = \"TableWithTab\";\n\n// src/components/Table.tsx\nimport React11, { useState as useState8 } from \"react\";\nimport {\n ArrowDownOnSquareIcon,\n XMarkIcon as XMarkIcon2\n} from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment7, jsx as jsx12, jsxs as jsxs10 } from \"react/jsx-runtime\";\nvar Table = ({\n headers,\n data,\n page,\n setPage,\n limit,\n setLimit,\n totalCount,\n highlightRowColor,\n actions,\n paginationRequired,\n paginationPosition = \"bottom-center\",\n onDownloadPDF,\n onDownloadExcel,\n searchable = false,\n searchTerm = \"\",\n onResetSearch,\n onSearch,\n searchModeOptions = [\"includes\", \"startsWith\"],\n summary,\n summaryKey = \"summary\",\n summaryTitleField = \"name\",\n summaryColumn = false,\n summaryColumnKey,\n summaryColumnMaxLength = 120,\n textWrapColumns,\n textWrapMaxLength = 120,\n textWrapColumnMaxLengths,\n tableTestId\n}) => {\n const [searchMode, setSearchMode] = useState8(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = useState8(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = useState8(\n /* @__PURE__ */ new Set()\n );\n const isPaginated = paginationRequired;\n const handleChange = (e) => {\n onSearch?.(e.target.value, searchMode);\n };\n const totalPages = isPaginated ? Math.max(1, Math.ceil((totalCount || 0) / (limit || 1))) : 0;\n const currentPage = isPaginated ? typeof page === \"number\" && page > 0 ? page : 1 : 1;\n const goToPage = (p) => {\n if (!isPaginated) return;\n const clamped = Math.max(1, Math.min(totalPages, p));\n setPage?.(clamped);\n };\n const renderPageNumbers = () => {\n if (!isPaginated || totalPages <= 1) return null;\n const pages = [];\n const siblings = 1;\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(1),\n disabled: currentPage === 1,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === 1 ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: \"1\"\n },\n 1\n )\n );\n const start = Math.max(2, currentPage - siblings);\n const end = Math.min(totalPages - 1, currentPage + siblings);\n if (start > 2) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"s\"));\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(i),\n disabled: currentPage === i,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === i ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: i\n },\n i\n )\n );\n }\n if (end < totalPages - 1) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"e\"));\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(totalPages),\n disabled: currentPage === totalPages,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === totalPages ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: totalPages\n },\n totalPages\n )\n );\n }\n return pages;\n };\n const summaryColKeyToUse = summaryColumnKey || summaryKey;\n const renderCell = (value, key) => {\n if (value == null) return \"-\";\n if (React11.isValidElement(value)) return value;\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (value instanceof Date) return value.toLocaleString();\n if (Array.isArray(value)) {\n if (value.some((item) => React11.isValidElement(item))) return /* @__PURE__ */ jsx12(Fragment7, { children: value });\n return value.join(\", \");\n }\n if (typeof value === \"object\") return JSON.stringify(value);\n if (typeof value === \"string\") {\n if (textWrapColumns?.includes(key)) {\n const max = textWrapColumnMaxLengths?.[key] ?? textWrapMaxLength ?? 120;\n const truncated = value.length <= max ? value : value.substring(0, max) + \"...\";\n return /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"text-sm text-slate-600 line-clamp-2\",\n title: value,\n children: truncated\n }\n );\n }\n }\n return String(value);\n };\n return /* @__PURE__ */ jsxs10(Fragment7, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ jsxs10(\"div\", { className: \"mb-3 flex flex-wrap justify-between gap-3\", children: [\n searchable && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsxs10(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsx12(\n \"input\",\n {\n value: searchTerm,\n onChange: handleChange,\n placeholder: \"Search...\",\n className: \"w-56 rounded-lg px-3 py-2 pr-8 text-sm text-[#1761A3] shadow focus:ring-2 focus:ring-emerald-500\"\n }\n ),\n searchTerm && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: onResetSearch,\n className: \"absolute right-2 top-2\",\n children: /* @__PURE__ */ jsx12(XMarkIcon2, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx12(\n \"select\",\n {\n value: searchMode,\n onChange: (e) => setSearchMode(e.target.value),\n className: \"rounded-lg px-2 py-2 text-sm shadow\",\n children: searchModeOptions.map((mode) => /* @__PURE__ */ jsx12(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex gap-2\", children: [\n onDownloadPDF && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadPDF(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: /* @__PURE__ */ jsx12(ArrowDownOnSquareIcon, { className: \"h-5 w-5\" })\n }\n ),\n onDownloadExcel && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadExcel(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: \"Excel\"\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"overflow-x-auto rounded-xl border border-[#1761A3] bg-white\",\n \"data-testid\": tableTestId,\n children: /* @__PURE__ */ jsxs10(\"table\", { className: \"w-full min-w-[900px] table-fixed\", children: [\n /* @__PURE__ */ jsx12(\"thead\", { className: \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\", children: /* @__PURE__ */ jsxs10(\"tr\", { children: [\n headers.map((header, idx) => /* @__PURE__ */ jsx12(\n \"th\",\n {\n className: \" h-[50px] px-3 py-2 text-left text-sm font-bold text-white\",\n children: header.label\n },\n idx\n )),\n actions && /* @__PURE__ */ jsx12(\"th\", { className: \"px-3 py-2 text-white font-bold\", children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ jsx12(\"tbody\", { children: data.length > 0 ? data.map((row, rowIndex) => {\n const isExpanded = summary === \"single\" ? expandedRowIndex === rowIndex : expandedRowIndexes.has(rowIndex);\n const toggleRow = () => {\n if (!summary) return;\n if (summary === \"single\") {\n setExpandedRowIndex((prev) => prev === rowIndex ? null : rowIndex);\n } else {\n setExpandedRowIndexes((prev) => {\n const next = new Set(prev);\n next.has(rowIndex) ? next.delete(rowIndex) : next.add(rowIndex);\n return next;\n });\n }\n };\n return /* @__PURE__ */ jsxs10(React11.Fragment, { children: [\n /* @__PURE__ */ jsxs10(\n \"tr\",\n {\n onClick: toggleRow,\n className: \" h-[57px] border-b even:bg-slate-50 hover:bg-slate-100\",\n style: highlightRowColor ? { backgroundColor: highlightRowColor } : void 0,\n children: [\n headers.map((header, i) => /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-sm whitespace-nowrap overflow-hidden text-ellipsis max-w-[1px] break-words\", children: renderCell(row[header.key], header.key) }, i)),\n actions && /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-center\", children: actions(row) })\n ]\n }\n ),\n summary && isExpanded && /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"px-4 py-4 bg-gradient-to-r from-[rgba(239,246,255,0.5)] to-[rgba(219,234,254,0.5)]\",\n children: row[summaryKey]\n }\n ) })\n ] }, rowIndex);\n }) : /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"text-center py-6 text-slate-500\",\n children: \"No records found\"\n }\n ) }) })\n ] })\n }\n ),\n paginationRequired && totalPages > 1 && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex justify-center mt-3 gap-2 items-center\", children: [\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage - 1),\n disabled: currentPage === 1,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Previous\"\n }\n ),\n renderPageNumbers(),\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage + 1),\n disabled: currentPage === totalPages,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Next\"\n }\n )\n ] })\n ] });\n};\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { useMemo as useMemo3, useState as useState12, useEffect as useEffect9 } from \"react\";\n\n// src/components/ChartDropdown.tsx\nimport { useEffect as useEffect7, useMemo, useRef as useRef4, useState as useState9 } from \"react\";\nimport { jsx as jsx13, jsxs as jsxs11 } from \"react/jsx-runtime\";\nvar assetSrc = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon = require_down_4();\nvar getTriggerClasses = (variant) => {\n const base = \"cursor-pointer outline-none transition-all duration-200\";\n switch (variant) {\n case \"mahatiFilter\":\n return `${base} w-[130px] h-[30px] rounded-[4px] border border-[rgba(210,210,210,1)] bg-gradient-to-r from-[rgba(23,97,163,0.07)] to-[rgba(77,175,131,0.07)] px-2 text-xs text-[rgba(17,24,39,1)] flex items-center justify-between gap-2 hover:opacity-95 focus:shadow-[0_0_0_2px_rgba(23,97,163,0.25)]`;\n case \"basic\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"outline\":\n return `${base} border border-[rgba(37,99,235,1)] text-[rgba(37,99,235,1)] bg-transparent rounded-md px-4 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"pill\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-full px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"dark\":\n return `${base} bg-[rgba(31,41,55,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(55,65,81,1)]`;\n case \"underline\":\n return `${base} border-b-2 border-[rgba(59,130,246,1)] bg-transparent text-[rgba(29,78,216,1)] rounded-none px-2 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"shadow\":\n return `${base} bg-white text-[rgba(55,65,81,1)] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1)] border border-[rgba(229,231,235,1)] rounded-md px-4 py-2 hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)]`;\n case \"glass\":\n return `${base} bg-[rgba(255,255,255,0.2)] backdrop-blur-md text-white border border-[rgba(255,255,255,0.4)] rounded-md px-4 py-2 hover:bg-[rgba(255,255,255,0.3)]`;\n case \"gradient\":\n return `${base} bg-gradient-to-r from-[rgba(59,130,246,1)] to-[rgba(168,85,247,1)] text-white border-none rounded-md px-4 py-2 hover:opacity-90`;\n default:\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n }\n};\nvar getMenuClasses = (variant) => {\n const base = \"absolute mt-1 z-20 bg-white rounded-md shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)] overflow-hidden\";\n if (variant === \"mahatiFilter\") {\n return `${base} w-[130px] rounded-[4px] border border-[rgba(210,210,210,1)] shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]`;\n }\n return `${base} min-w-[160px] border border-[rgba(229,231,235,1)]`;\n};\nvar getOptionClasses = (variant, isSelected) => {\n const base = \"w-full text-left cursor-pointer outline-none border-none transition-colors duration-200\";\n if (variant === \"mahatiFilter\") {\n return `${base} h-[30px] px-2 flex items-center text-xs text-[rgba(31,41,55,1)] rounded-none ${isSelected ? \"bg-[rgba(243,244,246,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(243,244,246,1)]`;\n }\n return `${base} px-3 py-2 text-sm text-[rgba(31,41,55,1)] ${isSelected ? \"bg-[rgba(239,246,255,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(239,246,255,1)]`;\n};\nvar ChartDropdown = ({\n options,\n value,\n onSelect,\n label,\n variant = \"basic\",\n className,\n testId\n}) => {\n const [isOpen, setIsOpen] = useState9(false);\n const [internalValue, setInternalValue] = useState9(value);\n const dropdownRef = useRef4(null);\n useEffect7(() => {\n if (value !== void 0) setInternalValue(value);\n }, [value]);\n const displayValue = value !== void 0 ? value : internalValue;\n const selectedOption = useMemo(\n () => options.find((opt) => opt.value === displayValue),\n [options, displayValue]\n );\n useEffect7(() => {\n const handleClickOutside = (event) => {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\n }, []);\n const handleSelect = (optionValue) => {\n onSelect(optionValue);\n if (value === void 0) {\n setInternalValue(optionValue);\n }\n setIsOpen(false);\n };\n return /* @__PURE__ */ jsxs11(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative inline-block ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ jsx13(\"label\", { className: \"block mb-1 text-xs font-medium text-[rgba(55,65,81,1)]\", children: label }),\n /* @__PURE__ */ jsxs11(\n \"button\",\n {\n type: \"button\",\n className: getTriggerClasses(variant),\n onClick: () => setIsOpen(!isOpen),\n onKeyDown: (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n setIsOpen(!isOpen);\n }\n },\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": isOpen,\n children: [\n /* @__PURE__ */ jsx13(\"span\", { className: \"overflow-hidden text-ellipsis whitespace-nowrap\", children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ jsx13(\n \"img\",\n {\n src: assetSrc(arrowDownIcon),\n alt: \"\",\n className: \"w-3 h-3 flex-shrink-0\"\n }\n )\n ]\n }\n ),\n isOpen && /* @__PURE__ */ jsx13(\"div\", { className: getMenuClasses(variant), role: \"listbox\", children: options.map((option) => /* @__PURE__ */ jsx13(\n \"button\",\n {\n type: \"button\",\n className: getOptionClasses(variant, option.value === displayValue),\n onClick: () => handleSelect(option.value),\n role: \"option\",\n \"aria-selected\": option.value === displayValue,\n children: option.key\n },\n option.key\n )) })\n ]\n }\n );\n};\nChartDropdown.displayName = \"ChartDropdown\";\n\n// src/components/PieLineBarChart.tsx\nimport React13 from \"react\";\nimport {\n Chart as ChartJS,\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n} from \"chart.js\";\nimport { Doughnut, Line, Bar } from \"react-chartjs-2\";\nimport { jsx as jsx14 } from \"react/jsx-runtime\";\nChartJS.register(\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n);\nvar makeAreaDataStraight = (data) => {\n const datasets = Array.isArray(data.datasets) ? data.datasets : [];\n return {\n ...data,\n datasets: datasets.map((ds) => ({\n ...ds,\n tension: 0,\n cubicInterpolationMode: \"default\"\n }))\n };\n};\nvar PieLineBarChart = ({\n chartType,\n data,\n options\n}) => {\n const defaultOptions = React13.useMemo(() => {\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n if (isLineFamily) {\n return {\n responsive: true,\n maintainAspectRatio: false,\n elements: { line: { tension: 0 } },\n plugins: {\n legend: { display: false },\n tooltip: {\n mode: \"index\",\n intersect: false,\n backgroundColor: \"rgba(255,255,255,0.95)\",\n titleColor: \"rgba(31,41,55,1)\",\n bodyColor: \"rgba(107,114,128,1)\",\n borderColor: \"rgba(229,231,235,1)\",\n borderWidth: 1,\n padding: 12,\n displayColors: true\n }\n },\n scales: {\n x: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } }\n },\n y: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } },\n min: 40,\n max: 90\n }\n },\n interaction: { mode: \"nearest\", axis: \"x\", intersect: false }\n };\n }\n return {\n responsive: true,\n maintainAspectRatio: false,\n cutout: chartType === \"pie\" || chartType === \"doughnut\" ? \"50%\" : void 0,\n plugins: { legend: { display: false } }\n };\n }, [chartType]);\n const chartOptions = options || defaultOptions;\n const renderChart = () => {\n switch (chartType) {\n case \"line\":\n case \"area\":\n return /* @__PURE__ */ jsx14(Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ jsx14(Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ jsx14(Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsx14(\"div\", { className: \"w-full h-full relative flex items-center justify-center\", children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nimport { jsx as jsx15, jsxs as jsxs12 } from \"react/jsx-runtime\";\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ jsxs12(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"mt-4 flex flex-col gap-[35px] sm:gap-[45px]\", children: bullets.map((b) => {\n const percentageAchieved = Math.round(b.achieved / b.target * 100);\n const achievedWidth = Math.min(b.achieved / b.target * 100, 100);\n const markerPosition = Math.min(b.marker / b.target * 100, 100);\n return /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"flex flex-col gap-[9px]\",\n \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0,\n children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-xs font-semibold leading-normal sm:text-sm\", children: b.name }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"flex flex-col gap-3 sm:flex-row sm:items-center sm:gap-4\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full sm:w-[500px]\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"absolute top-[-29px] right-0 text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal whitespace-nowrap sm:text-sm\", children: [\n \"$\",\n b.achieved.toLocaleString(),\n \"/$\",\n b.target.toLocaleString()\n ] }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full h-5 rounded-[20px] bg-[rgba(183,232,214,0.9)] overflow-hidden\", children: [\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"h-5 rounded-l-[20px] rounded-r-none bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\",\n style: { width: `${achievedWidth}%` },\n \"data-testid\": testId ? `${testId}-bar-${b.name}` : void 0\n }\n ),\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"absolute top-0 h-5 w-1 rounded-sm bg-[rgba(15,74,122,1)]\",\n style: { left: `${markerPosition}%`, transform: \"translateX(-50%)\" },\n \"data-testid\": testId ? `${testId}-marker-${b.name}` : void 0\n }\n )\n ] }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"absolute top-[29px] left-0 w-full\", children: /* @__PURE__ */ jsxs12(\"div\", { className: \"flex justify-between items-start\", children: [\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", children: \"0\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"2k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"4k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"6k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"8k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-8px\" }, children: \"10k\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"text-[rgba(115,115,115,1)] font-[Poppins,sans-serif] text-[9px] font-semibold leading-normal whitespace-nowrap sm:ml-[27px] sm:text-[10px]\",\n \"data-testid\": testId ? `${testId}-percentage-${b.name}` : void 0,\n children: [\n percentageAchieved,\n \"% of target achieved\"\n ]\n }\n )\n ] })\n ]\n },\n b.name\n );\n }) })\n ] });\n};\nBulletChart.displayName = \"BulletChart\";\n\n// src/components/GaugeChart.tsx\nimport { jsx as jsx16, jsxs as jsxs13 } from \"react/jsx-runtime\";\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: {\n color: \"rgba(23,97,163,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"18px\",\n fontWeight: 600\n },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const percentage = Math.min(gauge.value / gauge.max * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const remaining = gauge.max - gauge.value;\n const dailyAvg = Math.round(gauge.value / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"relative w-full flex-shrink-0 lg:w-[340px]\",\n style: { height: \"220px\" },\n children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\"linearGradient\", { id: `gaugeGradient${index}`, x1: \"0%\", y1: \"0%\", x2: \"100%\", y2: \"0%\", children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\" })\n ] }) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: \"rgba(230,230,230,1)\",\n strokeWidth: \"16\",\n strokeLinecap: \"round\"\n }\n ),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: `url(#gaugeGradient${index})`,\n strokeWidth: \"16\",\n strokeLinecap: \"round\",\n style: { transition: \"all 0.7s ease-in-out\" },\n strokeDasharray: `${percentage / 100 * 408.4} 408.4`\n }\n ),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"14px\",\n fontWeight: 500,\n fill: \"rgba(94,94,94,1)\"\n },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `centerGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#centerGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\n \"g\",\n {\n style: {\n transition: \"all 0.7s ease-in-out\",\n transform: `rotate(${angle}deg)`,\n transformOrigin: \"0 0\"\n },\n children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" })\n }\n ) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: {\n color: \"rgba(100,100,100,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400\n },\n children: [\n \"You've completed \",\n Math.round(percentage),\n \"% of the total target\"\n ]\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Target\", value: gauge.max.toLocaleString() },\n { label: \"Achieved\", value: gauge.value.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Remaining\", value: remaining.toLocaleString() },\n { label: \"Daily Avg Needed\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nGaugeChart.displayName = \"GaugeChart\";\nvar DEFAULT_RISK_BANDS = [\n { label: \"Critical Risk\", color: \"#DC2626\", rangeStart: 0, rangeEnd: 20 },\n { label: \"High Risk\", color: \"#F97316\", rangeStart: 20, rangeEnd: 40 },\n { label: \"Stable\", color: \"#FBBF24\", rangeStart: 40, rangeEnd: 60 },\n { label: \"Strong\", color: \"#4ADE80\", rangeStart: 60, rangeEnd: 80 },\n { label: \"Top Performer\", color: \"#059669\", rangeStart: 80, rangeEnd: 100 }\n];\nvar createRiskArcPath = (centerX, centerY, radius, startAngle, endAngle) => {\n const startRad = (startAngle - 180) * Math.PI / 180;\n const endRad = (endAngle - 180) * Math.PI / 180;\n const x1 = centerX + radius * Math.cos(startRad);\n const y1 = centerY + radius * Math.sin(startRad);\n const x2 = centerX + radius * Math.cos(endRad);\n const y2 = centerY + radius * Math.sin(endRad);\n const largeArcFlag = endAngle - startAngle > 180 ? 1 : 0;\n return `M ${x1} ${y1} A ${radius} ${radius} 0 ${largeArcFlag} 1 ${x2} ${y2}`;\n};\nvar getRiskLevel = (score, bands) => {\n for (const band of bands) {\n if (score >= band.rangeStart && score <= band.rangeEnd) return band.label;\n }\n return bands[0].label;\n};\nvar RiskGaugeChart = ({ title, gauges }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"18px\", fontWeight: 600 },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const bands = gauge.bands || DEFAULT_RISK_BANDS;\n const maxScore = gauge.max || 100;\n const percentage = Math.min(gauge.score / maxScore * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const currentLevel = getRiskLevel(percentage, bands);\n const remaining = maxScore - gauge.score;\n const dailyAvg = Math.round(gauge.score / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"relative w-full flex-shrink-0 lg:w-[340px]\", style: { height: \"220px\" }, children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n bands.map((band, bandIndex) => {\n const startAngle = band.rangeStart / 100 * 180;\n const endAngle = band.rangeEnd / 100 * 180;\n const arcPath = createRiskArcPath(170, 170, 130, startAngle, endAngle);\n return /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: arcPath,\n fill: \"none\",\n stroke: band.color,\n strokeWidth: \"16\",\n strokeLinecap: \"butt\",\n style: { transition: \"all 0.7s ease-in-out\" }\n },\n bandIndex\n );\n }),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 500, fill: \"rgba(94,94,94,1)\" },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `riskCenterGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(148,163,184,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(71,85,105,1)\", stopOpacity: \"0.05\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#riskCenterGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\"g\", { style: { transition: \"all 0.7s ease-in-out\", transform: `rotate(${angle}deg)`, transformOrigin: \"0 0\" }, children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" }) }) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: { color: \"rgba(100,100,100,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"11px\", fontWeight: 400 },\n children: [\n \"Current Status: \",\n currentLevel\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Maximum\", value: maxScore.toLocaleString() },\n { label: \"Current Score\", value: gauge.score.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Gap to Max\", value: remaining.toLocaleString() },\n { label: \"Daily Average\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-wrap gap-[30px] mt-[30px] justify-center\", children: bands.map((band, bandIdx) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"w-5 h-3 rounded-sm\",\n style: { backgroundColor: band.color }\n }\n ),\n /* @__PURE__ */ jsx16(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n color: \"rgba(75,85,99,1)\",\n fontWeight: 500\n },\n children: band.label\n }\n )\n ] }, bandIdx)) }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nRiskGaugeChart.displayName = \"RiskGaugeChart\";\n\n// src/components/HorizontalBarChart.tsx\nimport { jsx as jsx17, jsxs as jsxs14 } from \"react/jsx-runtime\";\nvar HorizontalBarChart = ({\n title,\n bars,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n return /* @__PURE__ */ jsxs14(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex items-center justify-end mb-[2px]\", children: /* @__PURE__ */ jsx17(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded transition-colors hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer\",\n \"data-testid\": testId ? `${testId}-menu-button` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx17(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) })\n }\n ) }),\n /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n \"data-testid\": testId ? `${testId}-title` : void 0,\n children: title\n }\n ),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex items-start gap-4\", children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col justify-start pt-1\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-label-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"12px\",\n fontWeight: 400,\n whiteSpace: \"nowrap\"\n },\n className: \"sm:text-sm\",\n children: bar.name\n }\n )\n },\n bar.name\n )) }),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs14(\"div\", { className: \"absolute inset-0 pointer-events-none\", style: { height: \"180px\" }, children: [\n xAxisConfig && xAxisConfig.labels.map((label, idx) => {\n const totalLabels = xAxisConfig.labels.length;\n const position = idx / (totalLabels - 1) * 100;\n const approxCharWidth = 7;\n const centerOffset = String(label).length * approxCharWidth / 2;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 w-px z-[1]\",\n style: {\n left: `calc(${position}% - ${centerOffset}px)`,\n height: \"165px\",\n backgroundColor: \"rgba(229,231,235,1)\"\n }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 top-0 w-[2px] z-[2]\", style: { height: \"165px\", backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 right-0 h-[2px] z-[2]\", style: { bottom: \"15px\", backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col pt-1 relative z-10\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => {\n const maxVal = xAxisConfig?.max || 250;\n const barLengthPercentage = bar.value / maxVal * 100;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-row-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"relative h-[30px] w-full\", children: /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 left-0 h-[30px] rounded\",\n style: { width: `${barLengthPercentage}%`, background: bar.color },\n \"data-testid\": testId ? `${testId}-bar-${index}` : void 0\n }\n ) })\n },\n bar.name\n );\n }) }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex justify-between items-start w-full relative z-10\", style: { marginTop: \"-8px\" }, children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) })\n ] })\n ] })\n ] });\n};\nHorizontalBarChart.displayName = \"HorizontalBarChart\";\n\n// src/components/GanttChart.tsx\nimport React14 from \"react\";\nimport { jsx as jsx18, jsxs as jsxs15 } from \"react/jsx-runtime\";\nvar assetSrc2 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon2 = require_down_4();\nvar GANTT_COLORS = {\n green: \"rgba(44, 160, 44, 1)\",\n blue: \"rgba(37, 99, 235, 1)\",\n orange: \"rgba(255, 127, 14, 1)\",\n red: \"rgba(239, 68, 68, 1)\",\n purple: \"rgba(147, 51, 234, 1)\",\n teal: \"rgba(20, 184, 166, 1)\",\n pink: \"rgba(236, 72, 153, 1)\",\n yellow: \"rgba(234, 179, 8, 1)\",\n indigo: \"rgba(99, 102, 241, 1)\",\n emerald: \"rgba(16, 185, 129, 1)\"\n};\nvar GanttChart = ({\n data,\n selectedYear,\n selectedMonth,\n selectedProject,\n onProjectChange,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React14.useState(false);\n const projects = [\"Project 1\", \"Project 2\"];\n const projectData = data;\n const getMonthNames = (monthRange) => {\n const monthMap = {\n Jan: \"January\",\n Feb: \"February\",\n Mar: \"March\",\n Apr: \"April\",\n May: \"May\",\n Jun: \"June\",\n Jul: \"July\",\n Aug: \"August\",\n Sep: \"September\",\n Oct: \"October\",\n Nov: \"November\",\n Dec: \"December\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthMap[month1], monthMap[month2]];\n };\n const getMonthNumber = (monthRange) => {\n const monthNumberMap = {\n Jan: \"01\",\n Feb: \"02\",\n Mar: \"03\",\n Apr: \"04\",\n May: \"05\",\n Jun: \"06\",\n Jul: \"07\",\n Aug: \"08\",\n Sep: \"09\",\n Oct: \"10\",\n Nov: \"11\",\n Dec: \"12\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthNumberMap[month1], monthNumberMap[month2]];\n };\n const getTodayPosition = () => {\n const today = /* @__PURE__ */ new Date();\n const currentYear = today.getFullYear();\n const currentMonth = today.getMonth() + 1;\n const currentDay = today.getDate();\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1 = monthToNumber[month1];\n const selectedMonth2 = monthToNumber[month2];\n const selectedYearNum = parseInt(selectedYear);\n if (currentYear !== selectedYearNum) return null;\n let monthIndex = -1;\n if (currentMonth === selectedMonth1) monthIndex = 0;\n else if (currentMonth === selectedMonth2) monthIndex = 1;\n else return null;\n const daysInMonth = 31;\n const dayPercent = (currentDay - 1) / daysInMonth;\n const positionInMonth = dayPercent * 320;\n const mobileLeft = monthIndex === 0 ? 120 + positionInMonth : 450 + positionInMonth;\n const desktopLeft = monthIndex === 0 ? 137 + positionInMonth : 467 + positionInMonth;\n return {\n show: true,\n mobileLeft: Math.round(mobileLeft * 100) / 100,\n desktopLeft: Math.round(desktopLeft * 100) / 100\n };\n };\n const todayPosition = getTodayPosition();\n const months = getMonthNames(selectedMonth);\n const displayMonths = months.map((m) => `${m} ${selectedYear}`);\n const [month1Num, month2Num] = getMonthNumber(selectedMonth);\n const getTaskPosition = (startDate, endDate) => {\n const [startDay, startMonth] = startDate.split(\"/\").map(Number);\n const [endDay, endMonth] = endDate.split(\"/\").map(Number);\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1Num = monthToNumber[month1];\n const selectedMonth2Num = monthToNumber[month2];\n const daysInMonth = 31;\n let monthIndex = -1;\n let startPercent = 0;\n let width = 0;\n let isInSecondMonth = false;\n if (startMonth === selectedMonth1Num && endMonth === selectedMonth1Num) {\n monthIndex = 0;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth2Num && endMonth === selectedMonth2Num) {\n monthIndex = 1;\n isInSecondMonth = true;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth1Num && endMonth === selectedMonth2Num) {\n monthIndex = 2;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = 100 + endDay / daysInMonth * 100 - startPercent;\n }\n return { startPercent, width, monthIndex, isInSecondMonth };\n };\n const lineHeight = React14.useMemo(() => {\n const baseHeight = 30;\n const taskHeight = 32;\n const taskSpacing = 24;\n return baseHeight + projectData.tasks.length * (taskHeight + taskSpacing);\n }, [projectData.tasks.length]);\n const DateRangeBoxes = ({ monthNum }) => /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-2\", children: [\n `01/${monthNum} - 10/${monthNum}`,\n `11/${monthNum} - 20/${monthNum}`,\n `21/${monthNum} - 25/${monthNum}`,\n `26/${monthNum} - 31/${monthNum}`\n ].map((range) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"w-[74px] h-6 rounded\",\n style: { background: \"rgba(225, 237, 241, 1)\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\" },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 600\n },\n children: range\n }\n )\n },\n range\n )) });\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center justify-between mb-4 sm:mb-6\", children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs15(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-2 py-1 rounded cursor-pointer border-none transition-colors hover:bg-[rgba(249,250,251,1)]\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: selectedProject\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n width: \"12px\",\n height: \"12px\",\n background: `url(${assetSrc2(arrowDownIcon2)}) transparent 50% / cover no-repeat`,\n aspectRatio: \"1/1\",\n transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\",\n transition: \"transform 0.2s\"\n }\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-full left-0 mt-1 bg-white border rounded-lg z-50 min-w-[150px]\",\n style: {\n border: \"1px solid rgba(229,231,235,1)\",\n boxShadow: \"0 10px 15px -3px rgba(0,0,0,0.1)\"\n },\n children: projects.map((project, idx) => /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: `w-full text-left px-4 py-2 bg-white border-none cursor-pointer transition-colors hover:bg-[rgba(249,250,251,1)] ${idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\"} ${idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"}`,\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: project\n }\n )\n },\n project\n ))\n }\n )\n ] }),\n /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\",\n style: { background: \"rgba(107,114,128,1)\" }\n },\n i\n )) })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-8 mb-4\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute left-0 w-[120px] sm:w-[137px] h-8\" }),\n [\n { left: \"120px\", smLeft: \"137px\", label: displayMonths[0] },\n { left: \"450px\", smLeft: \"467px\", label: displayMonths[1] }\n ].map(({ left, smLeft, label }) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-0 w-[320px] h-8 rounded flex items-center justify-center\",\n style: {\n left,\n background: \"linear-gradient(90deg, rgba(23,97,163,1) 0%, rgba(77,175,131,1) 100%)\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600,\n color: \"white\"\n },\n children: label\n }\n )\n },\n label\n ))\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-6 mb-6\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"120px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"450px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + section * 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m1-${section}`\n )),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + 8 * 40 + 20}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n }\n ),\n [1, 2, 3, 4, 5, 6, 7, 8, 9].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${450 + section * 40 - 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m2-${section}`\n )),\n todayPosition?.show && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-[2px] z-0\",\n style: {\n background: \"rgba(32,148,243,1)\",\n left: `${todayPosition.mobileLeft}px`,\n top: \"-24px\",\n height: `${lineHeight - 30}px`\n },\n children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-10 h-[18px] flex items-center justify-center rounded-r\",\n style: {\n background: \"rgba(32,148,243,1)\",\n top: \"10px\",\n left: \"0px\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"white\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 500\n },\n children: \"Today\"\n }\n )\n }\n )\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"flex flex-col gap-4 sm:gap-6 mt-6 sm:mt-8\", children: projectData.tasks.map((task) => {\n const { startPercent, width, monthIndex, isInSecondMonth } = getTaskPosition(\n task.startDate,\n task.endDate\n );\n if (monthIndex === -1) return null;\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center\", children: [\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"flex-shrink-0 pr-2 sm:pr-4 overflow-hidden text-ellipsis whitespace-nowrap\",\n style: {\n width: \"120px\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"relative flex-1 h-7 sm:h-8\", children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute h-full\",\n style: {\n left: isInSecondMonth ? \"330px\" : \"0\",\n width: \"320px\"\n },\n children: /* @__PURE__ */ jsxs15(\n \"div\",\n {\n className: \"absolute h-full rounded-full flex items-center justify-between px-2 sm:px-3\",\n \"data-testid\": `gantt-task-${task.id}`,\n style: {\n left: `${startPercent}%`,\n width: `${width}%`,\n backgroundColor: taskColor\n },\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"text-white overflow-hidden text-ellipsis whitespace-nowrap ml-5\",\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"rounded-full py-[2px] px-2 sm:px-3 sm:py-1 whitespace-nowrap\",\n style: {\n fontSize: \"8px\",\n fontFamily: \"Poppins, sans-serif\",\n fontWeight: 600,\n backgroundColor: \"rgba(255,255,255,1)\",\n color: taskColor\n },\n children: task.status\n }\n )\n ]\n }\n )\n }\n ) })\n ] }, task.id);\n }) })\n ] })\n ] });\n};\nGanttChart.displayName = \"GanttChart\";\n\n// src/components/CalendarHeatmapChart.tsx\nimport React15 from \"react\";\nimport { jsx as jsx19, jsxs as jsxs16 } from \"react/jsx-runtime\";\nvar LEGEND_COLORS = [\n \"rgba(224, 242, 254, 1)\",\n \"rgba(154, 219, 255, 1)\",\n \"rgba(102, 194, 241, 1)\",\n \"rgba(43, 160, 209, 1)\",\n \"rgba(23, 97, 163, 1)\"\n];\nfunction getActivityColor(value) {\n if (value === 0) return \"rgba(224, 242, 254, 1)\";\n if (value < 1e3) return \"rgba(154, 219, 255, 1)\";\n if (value < 3e3) return \"rgba(102, 194, 241, 1)\";\n if (value < 5e3) return \"rgba(43, 160, 209, 1)\";\n return \"rgba(23, 97, 163, 1)\";\n}\nfunction getYearWeeks(year, calendarheatmapData, project, type) {\n const weeks = [];\n const startDate = new Date(year, 0, 1);\n const firstDayOfWeek = startDate.getDay();\n const daysToMonday = firstDayOfWeek === 0 ? -6 : 1 - firstDayOfWeek;\n const firstMonday = new Date(year, 0, 1 + daysToMonday);\n const currentDate = new Date(firstMonday);\n let lastMonth = -1;\n let weekIndex = 0;\n const maxWeeks = 54;\n const MONTH_NAMES_FULL = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ];\n const MONTH_NAMES_SHORT = [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ];\n while (weekIndex < maxWeeks) {\n const weekDays = [];\n let hasCurrentYearDate = false;\n for (let dayIndex = 0; dayIndex < 7; dayIndex++) {\n const date = new Date(currentDate);\n if (date.getFullYear() === year) hasCurrentYearDate = true;\n let value = 0;\n if (date.getFullYear() === year) {\n const dateStr = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, \"0\")}-${String(date.getDate()).padStart(2, \"0\")}`;\n const monthName = MONTH_NAMES_FULL[date.getMonth()];\n if (calendarheatmapData?.[project]?.[String(year)]?.[type]?.[monthName]) {\n const dayData = calendarheatmapData[project][String(year)][type][monthName].data.find(\n (d) => d.date === dateStr\n );\n if (dayData) value = dayData.value;\n }\n }\n weekDays.push({ date, value });\n currentDate.setDate(currentDate.getDate() + 1);\n }\n if (hasCurrentYearDate) {\n const thursday = weekDays[3].date;\n const weekMonth = thursday.getMonth();\n let monthLabel;\n if (weekMonth !== lastMonth && thursday.getFullYear() === year) {\n monthLabel = MONTH_NAMES_SHORT[weekMonth];\n lastMonth = weekMonth;\n }\n weeks.push({ days: weekDays, monthLabel });\n }\n if (currentDate.getFullYear() > year && currentDate.getMonth() > 0) break;\n weekIndex++;\n }\n return weeks;\n}\nvar CalendarHeatmapChart = ({\n data,\n selectedProject,\n selectedYear,\n selectedType,\n onProjectChange,\n calendarheatmapData,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React15.useState(false);\n const [hoveredCell, setHoveredCell] = React15.useState(null);\n const [tooltipData, setTooltipData] = React15.useState({\n visible: false,\n month: \"\",\n day: 0,\n value: 0,\n position: { x: 0, y: 0 },\n cellColor: \"rgba(77, 175, 131, 1)\"\n });\n const projects = [\"Project 1\", \"Project 2\"];\n const year = parseInt(selectedYear);\n const yearWeeks = getYearWeeks(year, calendarheatmapData || {}, selectedProject, selectedType);\n const dayRows = [[], [], [], [], [], [], []];\n yearWeeks.forEach((week, weekIdx) => {\n week.days.forEach((day, dayIdx) => {\n dayRows[dayIdx].push({ ...day, weekIdx });\n });\n });\n return /* @__PURE__ */ jsxs16(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex items-center gap-3\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs16(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-3 py-1.5 rounded hover:bg-gray-50 transition-colors border-none cursor-pointer\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: selectedProject }),\n /* @__PURE__ */ jsx19(\n \"svg\",\n {\n width: \"12\",\n height: \"12\",\n viewBox: \"0 0 12 12\",\n fill: \"none\",\n className: \"transition-transform duration-200\",\n style: { transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\" },\n children: /* @__PURE__ */ jsx19(\n \"path\",\n {\n d: \"M2.5 4.5L6 8L9.5 4.5\",\n stroke: \"currentColor\",\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }\n )\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx19(\"div\", { className: \"absolute top-full left-0 mt-1 bg-white border border-gray-200 rounded-lg shadow-lg z-50 min-w-[150px]\", children: projects.map((project, idx) => /* @__PURE__ */ jsx19(\n \"button\",\n {\n className: [\n \"w-full text-left px-4 py-2 bg-white border-none hover:bg-gray-50 transition-colors cursor-pointer\",\n idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\",\n idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"\n ].join(\" \"),\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: project })\n },\n project\n )) })\n ] }) }),\n /* @__PURE__ */ jsx19(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-[rgba(224,242,229,1)] border-none cursor-pointer hover:bg-gray-100 transition-colors\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-end gap-2 mb-6 pr-2\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"Less\" }),\n LEGEND_COLORS.map((color) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px]\",\n style: { backgroundColor: color }\n },\n color\n )),\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"More\" })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex-1 flex\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex flex-col justify-start pr-2 pt-5 shrink-0\", children: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"].map((day, idx) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-3.5 flex items-center justify-end text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[9px] font-medium mb-0.5\",\n children: day\n },\n idx\n )) }),\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex-1\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"min-w-max\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-1 h-[18px]\", children: yearWeeks.map((week, idx) => /* @__PURE__ */ jsx19(\"div\", { className: \"w-3.5 text-center\", children: week.monthLabel && /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: week.monthLabel }) }, idx)) }),\n dayRows.map((row, rowIdx) => /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-0.5\", children: row.map((cell, colIdx) => {\n const { date, value } = cell;\n const color = getActivityColor(value);\n const isCurrentYear = date.getFullYear() === year;\n const cellKey = `${rowIdx}-${colIdx}`;\n const isHovered = hoveredCell === cellKey;\n return /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px] relative transition-all duration-100\",\n style: {\n backgroundColor: isCurrentYear ? color : \"rgba(240,240,240,1)\",\n opacity: isCurrentYear ? 1 : 0.3,\n cursor: isCurrentYear ? \"pointer\" : \"default\",\n transform: isHovered && isCurrentYear ? \"scale(1.05)\" : \"scale(1)\"\n },\n onMouseEnter: (e) => {\n if (isCurrentYear) {\n setHoveredCell(cellKey);\n const rect = e.currentTarget.getBoundingClientRect();\n const monthName = date.toLocaleDateString(\"en-US\", { month: \"long\" });\n setTooltipData({\n visible: true,\n month: `${monthName} ${date.getFullYear()}`,\n day: date.getDate(),\n value,\n cellColor: color,\n position: { x: rect.left + rect.width / 2, y: rect.top }\n });\n }\n },\n onMouseLeave: () => {\n setHoveredCell(null);\n setTooltipData((prev) => ({ ...prev, visible: false }));\n },\n children: isCurrentYear && value > 0 && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"absolute inset-0 flex items-center justify-center pointer-events-none transition-opacity duration-200\",\n style: { opacity: isHovered ? 1 : 0 },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[6px] font-bold text-white [text-shadow:0_1px_1px_rgba(0,0,0,0.8)]\", children: date.getDate() })\n }\n )\n },\n colIdx\n );\n }) }, rowIdx))\n ] }) })\n ] }),\n tooltipData.visible && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999]\",\n style: {\n left: tooltipData.position.x,\n top: tooltipData.position.y,\n transform: \"translate(-50%, -120%)\"\n },\n children: /* @__PURE__ */ jsxs16(\n \"div\",\n {\n className: \"flex flex-col min-w-[127px] max-w-[200px] w-max rounded-md bg-white\",\n style: {\n border: \"1px solid rgba(77, 175, 131, 0.72)\",\n boxShadow: \"0 4px 14px 0 rgba(77, 175, 131, 0.3)\",\n padding: \"8px 48px 11px 10px\"\n },\n children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal mb-1.5 whitespace-nowrap\", children: [\n tooltipData.month.split(\" \")[0],\n \" \",\n tooltipData.day\n ] }),\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-px bg-[rgba(234,234,234,1)] mb-1.5\",\n style: { marginLeft: \"-2px\", marginRight: \"-40px\", width: \"calc(100% + 42px)\" }\n }\n ),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"shrink-0 w-3 h-3 rounded-[2px]\",\n style: { backgroundColor: tooltipData.cellColor }\n }\n ),\n /* @__PURE__ */ jsxs16(\"span\", { className: \"text-[rgba(129,129,129,1)] font-[Poppins,sans-serif] text-[11px] font-medium leading-normal whitespace-nowrap\", children: [\n \"Total \",\n tooltipData.value.toLocaleString(),\n \" activity\"\n ] })\n ] })\n ]\n }\n )\n }\n )\n ] });\n};\nCalendarHeatmapChart.displayName = \"CalendarHeatmapChart\";\n\n// src/components/LollipopChart.tsx\nimport { Fragment as Fragment8, jsx as jsx20, jsxs as jsxs17 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS = [\n \"rgba(37,99,235,1)\",\n \"rgba(16,185,129,1)\",\n \"rgba(245,158,11,1)\",\n \"rgba(239,68,68,1)\",\n \"rgba(147,51,234,1)\",\n \"rgba(236,72,153,1)\"\n];\nvar LollipopChart = ({\n title,\n items,\n orientation = \"horizontal\"\n}) => {\n if (!items || items.length === 0) {\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex items-center justify-center\", style: { color: \"rgba(107,114,128,1)\", fontSize: \"14px\" }, children: \"No data available\" })\n ] });\n }\n const maxValue = Math.max(...items.map((item) => item.value), 1);\n const gridPositions = [0, 25, 50, 75, 100];\n const axisLabels = gridPositions.map((pos) => Math.round(pos / 100 * maxValue));\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex flex-col gap-4 py-4 min-h-[300px] relative overflow-visible\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"w-full overflow-x-visible lg:overflow-x-auto\", children: orientation === \"horizontal\" ? /* @__PURE__ */ jsxs17(Fragment8, { children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col gap-4 relative pl-[140px] w-full min-w-[800px] lg:min-w-0\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[140px] right-0 top-0 bottom-0 pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute top-0 bottom-0 w-px\", style: { left: `${pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-[140px] right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center gap-4 relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute text-right pr-4\", style: { width: \"120px\", left: \"-140px\" }, children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\", display: \"block\" }, className: \"sm:text-sm\", children: item.label }) }),\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex-1 relative h-10 flex items-center\", children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"relative rounded-[2px] transition-all\",\n style: { width: `${percentage}%`, height: \"4px\", background: color },\n children: /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute right-[-10px] top-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n transform: \"translateY(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"ml-4 min-w-[50px] text-sm sm:text-base font-semibold\",\n style: { color: \"rgba(17,24,39,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: item.value\n }\n )\n ] })\n ] }, `${item.label}-${index}`);\n })\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-between mt-2 pl-[140px]\", style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" }, children: axisLabels.map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx)) })\n ] }) : (\n /* Vertical Chart */\n /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"flex flex-col h-full w-full relative pb-[60px] pl-[50px] min-w-[800px] lg:min-w-0\",\n style: { minHeight: \"350px\" },\n children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[50px] right-0 top-0 bottom-[60px] pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 h-px\", style: { top: `${100 - pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-0 top-0 bottom-0 flex flex-col justify-between text-right pr-[5px] w-[45px]\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" },\n children: [...axisLabels].reverse().map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx))\n }\n ),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-around items-end w-full flex-1 gap-4 px-4 relative\", children: items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col items-center gap-2 flex-1 min-w-[60px] max-w-[100px] h-full relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 relative w-10 flex flex-col justify-end items-center h-full\", children: /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"relative w-1 rounded-[2px] transition-all\",\n style: {\n height: `${percentage}%`,\n background: color,\n minHeight: percentage > 0 ? \"8px\" : \"0px\"\n },\n children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n top: \"-10px\",\n transform: \"translateX(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"absolute left-1/2 whitespace-nowrap text-sm sm:text-base font-semibold text-center\",\n style: {\n top: \"-30px\",\n transform: \"translateX(-50%)\",\n color: \"rgba(17,24,39,1)\",\n fontFamily: \"Poppins, sans-serif\"\n },\n children: item.value\n }\n )\n ]\n }\n ) }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute text-center\",\n style: { bottom: \"-50px\", left: \"50%\", transform: \"translateX(-50%)\", maxWidth: \"100px\" },\n children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500 }, className: \"sm:text-sm\", children: item.label })\n }\n )\n ] }, `${item.label}-${index}`);\n }) })\n ]\n }\n )\n ) }) })\n ] });\n};\nvar MenuButtonDots = () => /* @__PURE__ */ jsx20(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"flex gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx20(\"span\", { className: \"w-1 h-1 rounded-full\", style: { background: \"rgba(107,114,128,1)\" } }, i)) }) });\nLollipopChart.displayName = \"LollipopChart\";\n\n// src/components/ColumnChart.tsx\nimport { jsx as jsx21, jsxs as jsxs18 } from \"react/jsx-runtime\";\nvar defaultGradient = \"linear-gradient(180deg, rgba(77, 175, 131, 1) 0%, rgba(23, 97, 163, 1) 100%)\";\nvar ColumnChart = ({\n title,\n columns,\n yAxisConfig\n}) => {\n const safeColumns = columns || [];\n const maxValue = yAxisConfig?.max || 8e3;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 2e3, 4e3, 6e3, 8e3];\n const formatValue = (value) => {\n if (value >= 1e3) return `${(value / 1e3).toFixed(1)}k`;\n return value.toString();\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n const percentage = (value - minValue) / (maxValue - minValue) * 100;\n return Math.max(0, Math.min(100, percentage));\n };\n return /* @__PURE__ */ jsxs18(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx21(\"button\", { className: \"w-6 h-6 flex items-center justify-center rounded hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer transition-colors sm:w-8 sm:h-8\", children: /* @__PURE__ */ jsxs18(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-col flex-1 relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-row w-full flex-1 relative\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"flex flex-col justify-between items-end pr-2 w-10 h-[250px] flex-shrink-0\", children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx21(\n \"span\",\n {\n className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-normal sm:text-xs\",\n children: label >= 1e3 ? `${label / 1e3}k` : label\n },\n `y-${idx}`\n )) }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex-1 relative flex flex-col h-[250px]\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n \"data-testid\": `column-${idx}`,\n className: \"absolute left-0 right-0 h-px bg-[rgba(229,231,235,1)] z-[1]\",\n style: { top: `${position}%` }\n },\n `grid-${idx}`\n );\n }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-0.5 bg-[rgba(125,125,125,1)] z-[2]\" }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-0.5 bg-[rgba(125,125,125,1)] z-[2]\" })\n ] }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10 gap-0\", children: safeColumns.map((column, index) => {\n const columnHeightPercentage = calculateHeight(column.value);\n const gradient = column.gradient || column.color || defaultGradient;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-1\",\n children: /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"w-full max-w-[60px] rounded-t-[4px] rounded-b-none relative transition-all duration-300 min-h-[2px] hover:opacity-85 hover:-translate-y-0.5\",\n style: {\n height: `${columnHeightPercentage}%`,\n background: gradient\n },\n children: /* @__PURE__ */ jsx21(\"div\", { className: \"absolute top-[-24px] left-1/2 -translate-x-1/2 text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-medium whitespace-nowrap sm:text-xs sm:top-[-26px]\", children: formatValue(column.value) })\n }\n )\n },\n `${column.name}-${index}`\n );\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex justify-start px-[10px] mt-3\",\n style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" },\n children: safeColumns.map((column, index) => /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex justify-center items-start max-w-[100px] px-1 min-w-0\",\n children: /* @__PURE__ */ jsx21(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-normal text-center break-words hyphens-auto leading-[1.3] max-w-full whitespace-normal sm:text-xs\", children: column.name })\n },\n `label-${index}`\n ))\n }\n )\n ] })\n ] });\n};\nColumnChart.displayName = \"ColumnChart\";\n\n// src/components/KPIChart.tsx\nimport React16, { useMemo as useMemo2, useState as useState10, useRef as useRef5, useEffect as useEffect8 } from \"react\";\nimport { Fragment as Fragment9, jsx as jsx22, jsxs as jsxs19 } from \"react/jsx-runtime\";\nvar createLinearPath = (points) => {\n if (points.length === 0) return \"\";\n if (points.length === 1) return `M ${points[0].x},${points[0].y}`;\n let path = `M ${points[0].x},${points[0].y}`;\n for (let i = 1; i < points.length; i++) path += ` L ${points[i].x},${points[i].y}`;\n return path;\n};\nvar createAreaPath = (points, height) => {\n if (points.length === 0) return \"\";\n const linePath = createLinearPath(points);\n const lastPoint = points[points.length - 1];\n const firstPoint = points[0];\n return `${linePath} L ${lastPoint.x},${height} L ${firstPoint.x},${height} Z`;\n};\nvar calculatePercentageChange = (data) => {\n if (!data || data.length < 2) return 0;\n const firstValue = data[0];\n const lastValue = data[data.length - 1];\n if (firstValue === 0) return lastValue > 0 ? 100 : lastValue < 0 ? -100 : 0;\n return Math.round((lastValue - firstValue) / Math.abs(firstValue) * 1e3) / 10;\n};\nvar getTimeLabel = (period, dataLength, timestamps) => {\n switch (period) {\n case \"1D\":\n return \"Last 1 Day\";\n case \"1W\":\n return \"Last 1 Week\";\n case \"1M\":\n return \"Last 1 Month\";\n case \"6M\":\n return \"Last 6 Months\";\n case \"1Y\":\n return \"Last 1 Year\";\n case \"MAX\":\n if (timestamps && timestamps.length >= 2) {\n const startDate = new Date(timestamps[0]);\n const endDate = new Date(timestamps[timestamps.length - 1]);\n const monthsDiff = (endDate.getFullYear() - startDate.getFullYear()) * 12 + (endDate.getMonth() - startDate.getMonth());\n if (monthsDiff === 0) {\n const daysDiff = Math.ceil((endDate.getTime() - startDate.getTime()) / 864e5);\n return `Last ${daysDiff} Day${daysDiff > 1 ? \"s\" : \"\"}`;\n } else if (monthsDiff < 12) {\n return `Last ${monthsDiff} Month${monthsDiff > 1 ? \"s\" : \"\"}`;\n } else {\n const years = Math.floor(monthsDiff / 12);\n const months = monthsDiff % 12;\n return months === 0 ? `Last ${years} Year${years > 1 ? \"s\" : \"\"}` : `Last ${years}y ${months}m`;\n }\n }\n return `All Data (${dataLength} points)`;\n default:\n return \"All Data\";\n }\n};\nvar getDateRange = (period, filteredTimestamps, allTimestamps) => {\n if (period === \"MAX\" && allTimestamps && allTimestamps.length >= 2) {\n return formatDateRange(new Date(allTimestamps[0]), new Date(allTimestamps[allTimestamps.length - 1]));\n }\n if (filteredTimestamps && filteredTimestamps.length >= 2) {\n return formatDateRange(new Date(filteredTimestamps[0]), new Date(filteredTimestamps[filteredTimestamps.length - 1]));\n } else if (filteredTimestamps && filteredTimestamps.length === 1) {\n return formatSingleDate(new Date(filteredTimestamps[0]));\n }\n return \"No Date Range\";\n};\nvar formatDateRange = (startDate, endDate) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const sameYear = startDate.getFullYear() === endDate.getFullYear();\n const sm = monthNames[startDate.getMonth()];\n const sd = String(startDate.getDate()).padStart(2, \"0\");\n const sy = startDate.getFullYear();\n const em = monthNames[endDate.getMonth()];\n const ed = String(endDate.getDate()).padStart(2, \"0\");\n const ey = endDate.getFullYear();\n return sameYear ? `${sm} ${sd} - ${em} ${ed}` : `${sm} ${sd} ${sy} - ${em} ${ed} ${ey}`;\n};\nvar formatSingleDate = (date) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n return `${monthNames[date.getMonth()]} ${String(date.getDate()).padStart(2, \"0\")}, ${date.getFullYear()}`;\n};\nvar calculateSum = (data) => data?.reduce((s, v) => s + v, 0) ?? 0;\nvar formatCurrencyValue = (value) => {\n if (value === 0) return \"$0\";\n const abs = Math.abs(value);\n const prefix = value < 0 ? \"-\" : \"\";\n if (abs >= 1e9) return `${prefix}$${(abs / 1e9).toFixed(1)}B`;\n if (abs >= 1e6) return `${prefix}$${(abs / 1e6).toFixed(1)}M`;\n if (abs >= 1e3) return `${prefix}$${(abs / 1e3).toFixed(1)}K`;\n return `${prefix}$${abs.toFixed(0)}`;\n};\nvar KPIChart = ({ data }) => {\n const [hoveredIndex, setHoveredIndex] = React16.useState(null);\n const [tooltipPos, setTooltipPos] = React16.useState({ x: 0, y: 0 });\n const [selectedPeriod, setSelectedPeriod] = React16.useState(\n data.timePeriods && data.timePeriods.length > 0 ? data.timePeriods[data.timePeriods.length - 1] : \"MAX\"\n );\n const containerRef = React16.useRef(null);\n const { filteredData, filteredTimestamps } = useMemo2(() => {\n if (!data.timePeriods || !data.timestamps || selectedPeriod === \"MAX\") {\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const now = /* @__PURE__ */ new Date();\n let cutoffDate = /* @__PURE__ */ new Date();\n switch (selectedPeriod) {\n case \"1D\":\n cutoffDate.setDate(now.getDate() - 1);\n break;\n case \"1W\":\n cutoffDate.setDate(now.getDate() - 7);\n break;\n case \"1M\":\n cutoffDate.setMonth(now.getMonth() - 1);\n break;\n case \"6M\":\n cutoffDate.setMonth(now.getMonth() - 6);\n break;\n case \"1Y\":\n cutoffDate.setFullYear(now.getFullYear() - 1);\n break;\n default:\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const filtered = [];\n const filteredTS = [];\n data.timestamps.forEach((timestamp, index) => {\n const dataDate = new Date(timestamp);\n if (dataDate >= cutoffDate && dataDate <= now && index < data.data.length) {\n filtered.push(data.data[index]);\n filteredTS.push(timestamp);\n }\n });\n return {\n filteredData: filtered.length > 0 ? filtered : data.data,\n filteredTimestamps: filteredTS.length > 0 ? filteredTS : data.timestamps || []\n };\n }, [data.data, data.timestamps, data.timePeriods, selectedPeriod]);\n const percentageChange = useMemo2(() => calculatePercentageChange(filteredData), [filteredData]);\n const isPositive = percentageChange >= 0;\n const dynamicTimeLabel = useMemo2(() => getTimeLabel(selectedPeriod, filteredData.length, data.timestamps), [selectedPeriod, filteredData.length, data.timestamps]);\n const dynamicDateRange = useMemo2(() => getDateRange(selectedPeriod, filteredTimestamps, data.timestamps), [selectedPeriod, filteredTimestamps, data.timestamps]);\n const dynamicValue = useMemo2(() => formatCurrencyValue(calculateSum(filteredData)), [filteredData]);\n const { points, chartWidth, chartHeight } = useMemo2(() => {\n const width = 400;\n const height = 100;\n const padding = 5;\n if (!filteredData || filteredData.length === 0) return { points: [], minValue: 0, maxValue: 0, chartWidth: width, chartHeight: height };\n const min = Math.min(...filteredData);\n const max = Math.max(...filteredData);\n const range = max - min || 1;\n const calculatedPoints = filteredData.map((value, index) => ({\n x: padding + index / (filteredData.length - 1) * (width - padding * 2),\n y: height - padding - (value - min) / range * (height - padding * 2),\n value\n }));\n return { points: calculatedPoints, minValue: min, maxValue: max, chartWidth: width, chartHeight: height };\n }, [filteredData]);\n const linearPath = useMemo2(() => createLinearPath(points), [points]);\n const areaPath = useMemo2(() => createAreaPath(points, chartHeight), [points, chartHeight]);\n const gradientId = useMemo2(\n () => `kpi-gradient-${isPositive ? \"positive\" : \"negative\"}-${Math.random().toString(36).substr(2, 9)}`,\n [isPositive]\n );\n const handleMouseMove = (event) => {\n if (!containerRef.current || points.length === 0) return;\n const svg = event.currentTarget.ownerSVGElement;\n if (!svg) return;\n const rect = svg.getBoundingClientRect();\n const x = (event.clientX - rect.left) / rect.width * chartWidth;\n let nearestIndex = 0;\n let minDistance = Math.abs(points[0].x - x);\n points.forEach((point, index) => {\n const distance = Math.abs(point.x - x);\n if (distance < minDistance) {\n minDistance = distance;\n nearestIndex = index;\n }\n });\n setHoveredIndex(nearestIndex);\n setTooltipPos({\n x: points[nearestIndex].x / chartWidth * rect.width,\n y: points[nearestIndex].y / chartHeight * rect.height\n });\n };\n const positiveGradientStop = isPositive ? [\n { offset: \"0%\", color: \"rgba(34,197,94,0.2)\" },\n { offset: \"50%\", color: \"rgba(34,197,94,0.1)\" },\n { offset: \"100%\", color: \"rgba(34,197,94,0.02)\" }\n ] : [\n { offset: \"0%\", color: \"rgba(239,68,68,0.2)\" },\n { offset: \"50%\", color: \"rgba(239,68,68,0.1)\" },\n { offset: \"100%\", color: \"rgba(239,68,68,0.02)\" }\n ];\n const trendColor = isPositive ? \"rgba(34,197,94,1)\" : \"rgba(239,68,68,1)\";\n const changeIndicatorBg = isPositive ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n return /* @__PURE__ */ jsxs19(\n \"div\",\n {\n ref: containerRef,\n className: \"w-full flex flex-col overflow-hidden rounded-[10px] p-4 sm:px-6 sm:pb-6 sm:pt-5\",\n style: {\n height: \"350px\",\n border: \"1px solid rgba(23,97,163,1)\",\n background: \"rgba(241,247,248,1)\",\n boxShadow: \"0 1px 2px 0 rgba(0,0,0,0.05)\"\n },\n children: [\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex items-start justify-between mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsx22(\"div\", { className: \"relative flex-1\", children: /* @__PURE__ */ jsx22(\n \"h3\",\n {\n className: \"text-[13px] sm:text-sm lg:text-[15px] font-medium leading-[1.4]\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.01em\" },\n children: data.title\n }\n ) }),\n data.timePeriods && data.timePeriods.length > 0 && /* @__PURE__ */ jsx22(\"div\", { className: \"absolute left-1/2 -translate-x-1/2 flex gap-[6px] sm:gap-2 items-center\", children: data.timePeriods.map((period) => /* @__PURE__ */ jsx22(\n \"button\",\n {\n type: \"button\",\n onClick: () => setSelectedPeriod(period),\n className: \"px-3 py-1 sm:px-[14px] sm:py-[5px] lg:px-4 lg:py-[6px] rounded-[20px] text-[11px] sm:text-xs lg:text-[13px] font-medium whitespace-nowrap border-none cursor-pointer transition-all\",\n style: {\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n backgroundColor: selectedPeriod === period ? \"rgba(23,97,163,1)\" : \"transparent\",\n color: selectedPeriod === period ? \"white\" : \"rgba(148,163,184,1)\"\n },\n children: period\n },\n period\n )) }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"flex-shrink-0\", children: /* @__PURE__ */ jsxs19(\n \"div\",\n {\n className: \"flex items-center gap-[3px] sm:gap-1 px-2 sm:px-[10px] py-[3px] sm:py-1 rounded-[6px]\",\n style: { backgroundColor: changeIndicatorBg, transition: \"background-color 0.3s ease-in-out\" },\n children: [\n /* @__PURE__ */ jsx22(\n \"svg\",\n {\n className: \"w-[11px] h-[11px] sm:w-3 sm:h-3 lg:w-[13px] lg:h-[13px]\",\n viewBox: \"0 0 12 12\",\n style: { fill: trendColor, transition: \"fill 0.3s ease-in-out\" },\n children: isPositive ? /* @__PURE__ */ jsx22(\"path\", { d: \"M6 2L10 6H8V10H4V6H2L6 2Z\" }) : /* @__PURE__ */ jsx22(\"path\", { d: \"M6 10L2 6H4V2H8V6H10L6 10Z\" })\n }\n ),\n /* @__PURE__ */ jsxs19(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-semibold\",\n style: { color: trendColor, fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"color 0.3s ease-in-out\" },\n children: [\n Math.abs(percentageChange),\n \"%\"\n ]\n }\n )\n ]\n }\n ) })\n ] }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"mb-[14px] sm:mb-4 lg:mb-[18px]\", children: /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"text-[28px] sm:text-[36px] md:text-[40px] lg:text-[42px] xl:text-[44px] font-bold leading-[1.1]\",\n style: { color: \"rgba(15,23,42,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.02em\", transition: \"opacity 0.3s ease-in-out\" },\n children: dynamicValue\n }\n ) }),\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex-1 relative min-h-[100px] sm:min-h-[110px] lg:min-h-[120px] mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsxs19(\n \"svg\",\n {\n className: \"w-full h-full overflow-visible\",\n viewBox: `0 0 ${chartWidth} ${chartHeight}`,\n preserveAspectRatio: \"none\",\n children: [\n /* @__PURE__ */ jsx22(\"defs\", { children: /* @__PURE__ */ jsx22(\"linearGradient\", { id: gradientId, x1: \"0%\", y1: \"0%\", x2: \"0%\", y2: \"100%\", children: positiveGradientStop.map((s) => /* @__PURE__ */ jsx22(\"stop\", { offset: s.offset, stopColor: s.color }, s.offset)) }) }),\n /* @__PURE__ */ jsx22(\"path\", { d: areaPath, fill: `url(#${gradientId})`, stroke: \"none\", style: { transition: \"d 0.4s ease-in-out, fill 0.3s ease-in-out\" } }),\n /* @__PURE__ */ jsx22(\n \"path\",\n {\n d: linearPath,\n fill: \"none\",\n stroke: trendColor,\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n style: { transition: \"d 0.4s ease-in-out, stroke 0.3s ease-in-out\" }\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && !isNaN(points[hoveredIndex].x) && /* @__PURE__ */ jsxs19(Fragment9, { children: [\n /* @__PURE__ */ jsx22(\n \"line\",\n {\n x1: points[hoveredIndex].x,\n y1: \"0\",\n x2: points[hoveredIndex].x,\n y2: chartHeight,\n stroke: \"rgba(148,163,184,0.3)\",\n strokeWidth: \"1\",\n strokeDasharray: \"4 4\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n ),\n /* @__PURE__ */ jsx22(\n \"circle\",\n {\n cx: points[hoveredIndex].x,\n cy: points[hoveredIndex].y,\n r: \"3.5\",\n fill: trendColor,\n stroke: \"white\",\n strokeWidth: \"1\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"rect\",\n {\n x: \"0\",\n y: \"0\",\n width: chartWidth,\n height: chartHeight,\n fill: \"transparent\",\n style: { cursor: \"crosshair\" },\n onMouseMove: handleMouseMove,\n onMouseLeave: () => setHoveredIndex(null)\n }\n )\n ]\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"absolute pointer-events-none z-10 rounded-[6px] text-xs sm:text-[13px] lg:text-sm font-semibold whitespace-nowrap px-[10px] py-[6px] sm:px-3 sm:py-2 lg:px-[14px] lg:py-[10px]\",\n style: {\n left: tooltipPos.x,\n top: tooltipPos.y,\n backgroundColor: \"rgba(220,235,238,1)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n transform: \"translate(-50%, -100%) translateY(-8px)\",\n boxShadow: \"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06)\",\n border: \"1px solid rgba(23,97,163,0.2)\",\n opacity: 1,\n transition: \"opacity 0.2s\"\n },\n children: points[hoveredIndex].value.toLocaleString()\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"flex items-center justify-between pt-[10px] sm:pt-3 lg:pt-[14px] flex-shrink-0\",\n style: { borderTop: \"1px solid rgba(226,232,240,0.6)\" },\n children: [dynamicTimeLabel, dynamicDateRange].map((text, i) => /* @__PURE__ */ jsx22(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-medium\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"opacity 0.3s ease-in-out\" },\n children: text\n },\n i\n ))\n }\n )\n ]\n }\n );\n};\nKPIChart.displayName = \"KPIChart\";\n\n// src/components/GroupBarChart.tsx\nimport { jsx as jsx23, jsxs as jsxs20 } from \"react/jsx-runtime\";\nvar DEFAULT_BAR_COLORS = {\n revenue: \"rgba(23,97,163,1)\",\n profit: \"rgba(77,175,131,1)\",\n loss: \"rgba(220,38,38,1)\",\n cost: \"rgba(47,164,169,1)\"\n};\nvar GroupBarChart = ({\n title,\n groups,\n legends,\n yAxisConfig\n}) => {\n const safeGroups = groups || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_BAR_COLORS;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const BAR_COLORS = getColorMap();\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const getProfitOrLoss = (group) => {\n if (group.profitOrLoss !== void 0 && group.profitOrLoss !== null) return group.profitOrLoss;\n return group.revenue - group.cost;\n };\n return /* @__PURE__ */ jsxs20(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx23(\n \"div\",\n {\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n className: \"sm:text-base\",\n children: title\n }\n ),\n /* @__PURE__ */ jsx23(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx23(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx23(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex flex-col justify-between items-end pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute left-0 right-0 h-px z-[1]\",\n style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeGroups.map((group, index) => {\n const profitOrLossValue = getProfitOrLoss(group);\n const isProfitable = profitOrLossValue >= 0;\n const profitLossColor = isProfitable ? BAR_COLORS.profit : BAR_COLORS.loss;\n const profitLossAbsValue = Math.abs(profitOrLossValue);\n return /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-row items-end justify-center relative h-full gap-1 px-2\", children: [\n { value: group.revenue, color: BAR_COLORS.revenue },\n { value: profitLossAbsValue, color: profitLossColor },\n { value: group.cost, color: BAR_COLORS.cost }\n ].map(({ value, color }, barIdx) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[30px] h-full\", children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"w-full rounded-t min-h-[2px] relative transition-all hover:opacity-85 hover:-translate-y-[2px]\",\n style: { height: `${calculateHeight(value)}%`, background: color },\n children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2\",\n style: {\n top: \"-24px\",\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: value.toString()\n }\n )\n }\n ) }, barIdx)) }, `${group.name}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeGroups.map((group, index) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex justify-center items-start px-2 min-w-0\", children: /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: group.name\n }\n ) }, index)) })\n ] })\n ] });\n};\nGroupBarChart.displayName = \"GroupBarChart\";\n\n// src/components/StackBarChart.tsx\nimport { useState as useState11 } from \"react\";\nimport { jsx as jsx24, jsxs as jsxs21 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS2 = {\n aggregating: \"rgba(37,99,235,1)\",\n outstanding: \"rgba(34,197,94,1)\",\n writeOff: \"rgba(239,68,68,1)\"\n};\nvar StackBarChart = ({\n title,\n data,\n legends,\n yAxisConfig\n}) => {\n const [tooltip, setTooltip] = useState11(null);\n const safeData = data || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_COLORS2;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const COLORS = getColorMap();\n const getLabel = (key) => {\n if (legends && legends.length > 0) {\n const legend = legends.find((l) => l.key === key);\n if (legend) return legend.label;\n }\n const defaultLabels = {\n aggregating: \"Aggregating Amount\",\n outstanding: \"Outstanding Amount\",\n writeOff: \"Write-Off Amount\"\n };\n return defaultLabels[key] || key;\n };\n const formatValue = (value) => {\n if (value >= 1e3) return `$${(value / 1e3).toFixed(0)}k`;\n return `$${value}`;\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const handleSegmentMouseEnter = (event, dayData, type) => {\n const rect = event.currentTarget.getBoundingClientRect();\n setTooltip({ day: dayData.day, type, value: dayData[type], label: getLabel(type), x: rect.left + rect.width / 2, y: rect.top });\n };\n return /* @__PURE__ */ jsxs21(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx24(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx24(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx24(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx24(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex flex-col justify-between items-start pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsxs21(\"span\", { style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 }, className: \"sm:text-xs\", children: [\n \"$\",\n label\n ] }, idx)) }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 right-0 h-px z-[1]\", style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" } }, idx);\n }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeData.map((dayData, index) => {\n const total = dayData.aggregating + dayData.outstanding + dayData.writeOff;\n const totalHeight = calculateHeight(total);\n const aggregatingPercent = total > 0 ? dayData.aggregating / total * 100 : 0;\n const outstandingPercent = total > 0 ? dayData.outstanding / total * 100 : 0;\n const writeOffPercent = total > 0 ? dayData.writeOff / total * 100 : 0;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-2\", children: /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"w-full max-w-[60px] relative flex flex-col-reverse rounded-t overflow-hidden transition-all\",\n style: { height: `${totalHeight}%` },\n children: [\n /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2 text-[11px] sm:text-xs font-medium\",\n style: { top: \"-24px\", color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: formatValue(total)\n }\n ),\n dayData.writeOff > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${writeOffPercent}%`, backgroundColor: COLORS.writeOff || DEFAULT_COLORS2.writeOff },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"writeOff\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.outstanding > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${outstandingPercent}%`, backgroundColor: COLORS.outstanding || DEFAULT_COLORS2.outstanding },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"outstanding\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.aggregating > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${aggregatingPercent}%`, backgroundColor: COLORS.aggregating || DEFAULT_COLORS2.aggregating },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"aggregating\"),\n onMouseLeave: () => setTooltip(null)\n }\n )\n ]\n }\n ) }, `${dayData.day}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeData.map((dayData, index) => /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex justify-center items-start max-w-[100px] px-2 min-w-0\", children: /* @__PURE__ */ jsx24(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: dayData.day\n }\n ) }, index)) })\n ] }),\n tooltip && /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999] rounded-lg text-xs sm:text-[13px] font-medium px-[14px] py-[10px] sm:px-4 sm:py-3 whitespace-nowrap\",\n style: {\n left: tooltip.x,\n top: tooltip.y,\n backgroundColor: \"rgba(158,153,153,0.75)\",\n backdropFilter: \"blur(10px)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n boxShadow: \"0 2px 12px rgba(0,0,0,0.06), 0 1px 4px rgba(0,0,0,0.04)\",\n border: \"1px solid rgba(209,213,219,0.94)\",\n transform: \"translate(-50%, -100%) translateY(-10px)\",\n opacity: 1\n },\n children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-[11px] sm:text-xs font-normal mb-1\", style: { color: \"rgba(0,0,0,0.7)\" }, children: [\n tooltip.day,\n \" - \",\n tooltip.label\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-sm sm:text-[15px] font-semibold\", style: { color: \"rgba(0,0,0,1)\" }, children: [\n \"$\",\n tooltip.value\n ] })\n ]\n }\n )\n ] });\n};\nStackBarChart.displayName = \"StackBarChart\";\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { Fragment as Fragment10, jsx as jsx25, jsxs as jsxs22 } from \"react/jsx-runtime\";\nvar assetSrc3 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar FALLBACK_ICONS = {\n performancePeakIcon: \"/chart-icons/performance-peak-icon.png\",\n calendarIcon: \"/chart-icons/calendar-3.png\",\n increaseIcon: \"/chart-icons/increase.png\",\n decreaseIcon: \"/chart-icons/decrease.png\"\n};\nvar getIconSrc = (imported, fallback) => {\n const src = assetSrc3(imported);\n return src || fallback;\n};\nvar performancePeakIcon = \"\";\nvar calendarIcon = \"\";\nvar increaseIcon = \"\";\nvar decreaseIcon = \"\";\ntry {\n performancePeakIcon = require_performance_peak_icon();\n calendarIcon = require_calendar_3();\n increaseIcon = require_increase();\n decreaseIcon = require_decrease();\n} catch (e) {\n}\nvar colorToClass = (color) => {\n const c = typeof color === \"string\" ? color.toLowerCase() : \"\";\n if (c.startsWith(\"rgba(\") || c.startsWith(\"rgb(\")) return c;\n const map = {\n \"#7dcfaf\": \"#7DCFAF\",\n \"#f28a18\": \"#F28A18\",\n \"#2094f3\": \"#2094F3\",\n \"#909592\": \"#909592\",\n \"#bcc6cb\": \"#BCC6CB\",\n \"#3b82f6\": \"#3B82F6\",\n \"#10b981\": \"#10B981\",\n \"#ef4444\": \"#EF4444\",\n \"#f97316\": \"#F97316\",\n \"#f59e0b\": \"#F59E0B\",\n \"#8b5cf6\": \"#8B5CF6\",\n \"#ec4899\": \"#EC4899\",\n \"#6366f1\": \"#6366F1\"\n };\n return map[c] || (typeof color === \"string\" ? color : \"#D1D5DB\");\n};\nvar getStatusColors = (status) => {\n const statusConfig = {\n \"In Progress\": { textColor: \"rgba(23,97,163,1)\", backgroundColor: \"rgba(23,97,163,0.15)\" },\n \"Overdue\": { textColor: \"rgba(220,38,38,1)\", backgroundColor: \"rgba(239,68,68,0.15)\" },\n \"On Target\": { textColor: \"rgba(46,158,120,1)\", backgroundColor: \"rgba(70,194,155,0.15)\" }\n };\n return statusConfig[status] || statusConfig[\"In Progress\"];\n};\nvar tabLabel = (type) => {\n if (type === \"area\") return \"Area Line Chart\";\n if (type === \"bullet\") return \"Bullet Chart\";\n if (type === \"gauge\") return \"Gauge Chart\";\n if (type === \"riskgauge\") return \"KPI Risk Gauge Chart\";\n if (type === \"gantt\") return \"Gantt Chart\";\n if (type === \"calendarheatmap\") return \"Calendar Heat Map\";\n if (type === \"horizontalbar\") return \"Horizontal Bar Chart\";\n if (type === \"columnchart\") return \"Column Chart\";\n if (type === \"groupbar\") return \"Group Bar Chart\";\n if (type === \"stackbar\") return \"Stacked Bar Chart\";\n if (type === \"lollipop\") return \"Lollipop Chart\";\n if (type === \"kpi\") return \"KPI Chart\";\n return `${type.charAt(0).toUpperCase() + type.slice(1)} Chart`;\n};\nvar MenuDotsButton = () => /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] })\n }\n);\nvar MahatiChartAnalyticsWidget = ({\n title,\n chartTypes,\n initialChartType,\n filters,\n chartFilters,\n selectedFilters,\n chartDataMap,\n bulletData,\n gaugeData,\n horizontalBarData,\n columnChartData,\n groupBarData,\n stackBarData,\n lollipopData,\n kpiData,\n riskGaugeData,\n ganttData,\n heatmapData,\n calendarheatmapData,\n onApplyFilters,\n quickStats,\n actionButtons,\n onChartTypeChange,\n onFiltersChange,\n details\n}) => {\n const [chartType, setChartType] = useState12(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = useState12(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = useState12(\"Project 1\");\n const [localFilters, setLocalFilters] = useState12(selectedFilters);\n useEffect9(() => {\n setLocalFilters(selectedFilters);\n }, [selectedFilters]);\n const currentFilters = useMemo3(() => {\n if (chartFilters && chartFilters[chartType]) return chartFilters[chartType] || [];\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = useMemo3(() => {\n const base = chartDataMap[chartType];\n if (chartType === \"area\" && base) return makeAreaDataStraight(base);\n return base;\n }, [chartDataMap, chartType]);\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n const isPieFamily = chartType === \"pie\" || chartType === \"doughnut\";\n const bulletDetails = useMemo3(() => {\n if (chartType === \"bullet\" && bulletData?.bullets) {\n return bulletData.bullets.map((bullet) => {\n const percentageAchieved = Math.round(bullet.achieved / bullet.target * 100);\n return { label: bullet.name, value: `${percentageAchieved}% Done`, description: `${percentageAchieved}% of target achieved`, color: \"rgba(183,232,214,0.9)\" };\n });\n }\n return [];\n }, [chartType, bulletData]);\n const currentGanttData = useMemo3(() => {\n if (chartType === \"gantt\" && ganttData) {\n const year = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") newStatus = \"In Progress\";\n return { ...task, progress: newProgress, status: newStatus };\n })\n };\n }\n return { ...baseData, title: `${baseData.title} - ${selectedGanttProject}`, projectName: `${baseData.projectName} - ${selectedGanttProject}` };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = useMemo3(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = localFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = localFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const currentMonthIndex = monthOrder.indexOf(selectedMonth);\n const previousMonth = currentMonthIndex > 0 ? monthOrder[currentMonthIndex - 1] : \"December\";\n const previousYear = currentMonthIndex > 0 ? selectedYear : String(Number(selectedYear) - 1);\n const previousYearData = horizontalBarData[previousYear];\n const previousMonthData = previousYearData?.[previousMonth];\n const products = Object.keys(monthData);\n let maxRevenue = 0, topProduct = \"\", minRevenue = Infinity, needsFocusProduct = \"\";\n products.forEach((product) => {\n const revenue = monthData[product].Revenue;\n if (revenue > maxRevenue) {\n maxRevenue = revenue;\n topProduct = product;\n }\n if (revenue < minRevenue) {\n minRevenue = revenue;\n needsFocusProduct = product;\n }\n });\n let percentageChange = 0, isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const cur = monthData[topProduct].Revenue, prev = previousMonthData[topProduct].Revenue;\n if (prev !== 0) {\n percentageChange = (cur - prev) / prev * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return { category: \"Category\", name: topProduct, revenue: `${topProductData.Revenue}k`, profit: `${topProductData.Profit}k`, needsFocus: needsFocusProduct, change: `${Math.abs(percentageChange).toFixed(0)}%`, isIncrease };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = useMemo3(() => {\n const empty = { peakDay: { date: \"\", dayName: \"\", value: 0 }, mostActiveDay: { dayName: \"\", count: 0, average: 0 } };\n if (chartType !== \"calendarheatmap\" || !calendarheatmapData) return empty;\n const year = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project]?.[year]?.[type]) return empty;\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = { Sunday: { total: 0, count: 0 }, Monday: { total: 0, count: 0 }, Tuesday: { total: 0, count: 0 }, Wednesday: { total: 0, count: 0 }, Thursday: { total: 0, count: 0 }, Friday: { total: 0, count: 0 }, Saturday: { total: 0, count: 0 } };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData?.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [y, m, d] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(y, m - 1, d);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({ date: item.date, value: item.value, dayName });\n if (dayOfWeekCounts[dayName]) {\n dayOfWeekCounts[dayName].total += item.value;\n dayOfWeekCounts[dayName].count += 1;\n }\n });\n }\n });\n let peakDay = { date: \"\", dayName: \"\", value: 0 };\n if (allDayData.length > 0) peakDay = allDayData.reduce((max, cur) => cur.value > max.value ? cur : max);\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const avg = stats.total / stats.count;\n if (avg > mostActiveDay.average) mostActiveDay = { dayName, count: stats.count, average: Math.round(avg) };\n }\n });\n return { peakDay, mostActiveDay };\n }, [chartType, calendarheatmapData, selectedFilters, selectedCalendarHeatmapProject]);\n const formatPeakDate = (dateStr) => {\n if (!dateStr) return \"Wed, 12 Jun\";\n try {\n return new Date(dateStr).toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = useMemo3(() => {\n if (!bulletData) return null;\n const year = localFilters.SelectYear || \"2026\";\n const month = localFilters.SelectMonth || \"January\";\n const type = localFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData?.bullets) return { title: monthData.title || bulletData.title, bullets: monthData.bullets };\n }\n }\n return { title: bulletData.title, bullets: bulletData.bullets };\n }, [bulletData, selectedFilters]);\n const currentKPIData = useMemo3(() => {\n if (chartType !== \"kpi\" || !kpiData) return null;\n const kpiKey = selectedFilters[\"SelectKPI\"];\n if (!kpiKey) return kpiData[Object.keys(kpiData)[0]] || null;\n return kpiData[kpiKey] || null;\n }, [chartType, kpiData, selectedFilters]);\n const renderChart = () => {\n switch (chartType) {\n case \"pie\":\n case \"doughnut\":\n case \"line\":\n case \"area\":\n case \"bar\":\n if (currentData) return /* @__PURE__ */ jsx25(PieLineBarChart, { chartType, data: currentData });\n return null;\n case \"bullet\":\n if (currentBulletData) return /* @__PURE__ */ jsx25(BulletChart, { title: currentBulletData.title, bullets: currentBulletData.bullets });\n return null;\n case \"gauge\": {\n if (gaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges || [];\n if (gaugeData[sy]?.[sm]) currentGauge = gaugeData[sy][sm];\n return /* @__PURE__ */ jsx25(GaugeChart, { title: \"Performance Metrics\", gauges: currentGauge });\n }\n return null;\n }\n case \"gantt\": {\n if (currentGanttData) {\n const month = selectedFilters[\"SelectMonth\"] || \"Jan - Feb\";\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n return /* @__PURE__ */ jsx25(GanttChart, { data: currentGanttData, selectedYear: year, selectedMonth: month, selectedProject: selectedGanttProject, onProjectChange: setSelectedGanttProject });\n }\n return null;\n }\n case \"calendarheatmap\": {\n if (calendarheatmapData?.[selectedCalendarHeatmapProject]) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const projectData = calendarheatmapData[selectedCalendarHeatmapProject];\n const yearData = projectData[year];\n if (!yearData?.[type]) return null;\n return /* @__PURE__ */ jsx25(CalendarHeatmapChart, { data: yearData[type], selectedProject: selectedCalendarHeatmapProject, selectedYear: year, selectedType: type, onProjectChange: setSelectedCalendarHeatmapProject, calendarheatmapData });\n }\n return null;\n }\n case \"horizontalbar\": {\n if (!horizontalBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sp = selectedFilters[\"SelectType\"] || \"Product 1\";\n const yearData = horizontalBarData[sy];\n const monthData = yearData?.[sm];\n const productData = monthData?.[sp];\n const xAxisConfig = horizontalBarData.xAxis?.[sy];\n const bars = productData ? [\n { name: \"Revenue\", value: productData.Revenue, color: \"rgba(23,97,163,1)\" },\n { name: \"Profit\", value: productData.Profit, color: \"rgba(70,194,155,1)\" },\n { name: \"Cost\", value: productData.Cost, color: \"rgba(47,164,169,1)\" }\n ] : [];\n return /* @__PURE__ */ jsx25(HorizontalBarChart, { title: horizontalBarData.title, bars, selectedYear: sy, selectedMonth: sm, selectedType: sp, xAxisConfig, topPerformer: currentHorizontalBarTopPerformer });\n }\n case \"columnchart\": {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const yearData = columnChartData?.[sy];\n const typeData = yearData?.[sm]?.[st] || [];\n const yAxisConfig = columnChartData.yAxis?.[sy];\n const columns = typeData.map((item) => ({ name: item.name, value: item.value, gradient: item.gradient || \"linear-gradient(180deg, rgba(77,175,131,1) 0%, rgba(23,97,163,1) 100%)\" }));\n return /* @__PURE__ */ jsx25(ColumnChart, { title: columnChartData.title, columns, selectedYear: sy, selectedMonth: sm, selectedType: st, yAxisConfig });\n }\n case \"lollipop\": {\n if (!lollipopData) return null;\n const ly = selectedFilters[\"SelectYear\"] || \"2026\";\n const lm = selectedFilters[\"SelectMonth\"] || \"January\";\n const lc = selectedFilters[\"SelectType\"] || \"Category A\";\n const lo = selectedFilters[\"SelectOrientation\"] || \"horizontal\";\n const lYearData = lollipopData[ly] || {};\n const lCatData = lYearData?.[lm]?.[lc] || [];\n return /* @__PURE__ */ jsx25(LollipopChart, { title: lollipopData.title, items: lCatData, selectedYear: ly, selectedMonth: lm, selectedCategory: lc, orientation: lo });\n }\n case \"kpi\":\n if (currentKPIData) return /* @__PURE__ */ jsx25(KPIChart, { data: currentKPIData });\n return null;\n case \"riskgauge\": {\n if (riskGaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauges = riskGaugeData.gauges || [];\n if (riskGaugeData[sy]?.[sm]?.[st]) currentRiskGauges = riskGaugeData[sy][sm][st];\n return /* @__PURE__ */ jsx25(RiskGaugeChart, { title: \"KPI Risk Assessment Metrics\", gauges: currentRiskGauges });\n }\n return null;\n }\n case \"groupbar\": {\n if (!groupBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm] || [];\n const yAxisConfig = groupBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(GroupBarChart, { title: groupBarData.title, groups, legends: groupBarData.legends, selectedYear: sy, selectedMonth: sm, yAxisConfig });\n }\n case \"stackbar\": {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm]?.[sw]?.[st] || [];\n const yAxisConfig = stackBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(StackBarChart, { title: stackBarData.title, data: typeData, legends: stackBarData.legends, selectedYear: sy, selectedMonth: sm, selectedWeek: sw, selectedType: st, yAxisConfig, allData: stackBarData });\n }\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"min-h-screen bg-white\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"bg-white p-4 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-wrap gap-2\", children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n setChartType(type);\n onChartTypeChange?.(type);\n },\n \"aria-pressed\": isActive,\n className: `\n relative px-4 py-2 text-xs font-medium transition-all duration-200 rounded-full outline-none border cursor-pointer\n sm:px-6 sm:py-2.5 sm:text-sm\n focus-visible:shadow-[0_0_0_2px_rgba(23,97,163,0.35)]\n ${isActive ? \"text-white shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] border-[rgba(23,97,163,0.45)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\" : \"text-[rgba(55,65,81,1)] border-transparent bg-transparent hover:border-[rgba(23,97,163,0.25)] hover:bg-[rgba(23,97,163,0.05)]\"}\n `,\n children: tabLabel(type)\n },\n type\n );\n }) }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"p-4 relative z-50 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-3 items-end flex-wrap relative sm:gap-4\", children: [\n currentFilters.map((filter, index) => {\n const options = filter.options.map((opt) => ({ key: opt, value: opt }));\n return /* @__PURE__ */ jsx25(\n \"div\",\n {\n className: \"relative\",\n style: { zIndex: 50 + (currentFilters.length - index) },\n children: /* @__PURE__ */ jsx25(\n ChartDropdown,\n {\n options,\n value: localFilters[filter.id],\n onSelect: (val) => {\n const updated = { ...localFilters, [filter.id]: String(val) };\n setLocalFilters(updated);\n },\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n onApplyFilters?.(localFilters);\n onFiltersChange(localFilters);\n },\n className: \"w-[77px] h-[30px] rounded border border-[rgba(23,97,163,1)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)] text-white text-sm font-medium cursor-pointer transition-opacity hover:opacity-90\",\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"p-4 overflow-y-visible sm:px-6 md:px-8\", children: [\n isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-visible sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-end mb-4\", children: /* @__PURE__ */ jsx25(MenuDotsButton, {}) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"h-48 p-2 rounded-2xl sm:h-56 md:h-64\", children: renderChart() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"mt-4 flex flex-col gap-2 text-sm sm:mt-6 sm:gap-3\", children: details.map((item, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-4 h-2 rounded-sm flex-shrink-0 sm:w-5 sm:h-2.5\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(55,65,81,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label })\n ] }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-black text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-base font-semibold text-[rgba(17,24,39,1)] mb-4 sm:text-lg sm:mb-6\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-3 sm:gap-5\", children: details.map((item, idx) => {\n const statusColors = item.status ? getStatusColors(item.status) : null;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"inline-block flex-shrink-0 w-[18px] h-[10px] rounded-sm\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-xs overflow-hidden text-ellipsis whitespace-nowrap sm:text-sm\", children: item.label }),\n item.status && statusColors && /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-center w-12 h-4 rounded px-1 py-0.5\", style: { backgroundColor: statusColors.backgroundColor }, children: /* @__PURE__ */ jsx25(\"span\", { className: \"font-[Poppins,sans-serif] font-semibold whitespace-nowrap text-[6px]\", style: { color: statusColors.textColor }, children: item.status }) })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-xs\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-bold text-[rgba(17,24,39,1)] text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 md:col-span-2 lg:col-span-1 sm:gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: `text-xs font-medium mt-1 sm:text-sm ${quickStats.totalVolume.change.startsWith(\"+\") ? \"text-[rgba(22,163,74,1)]\" : \"text-[rgba(220,38,38,1)]\"}`, children: quickStats.totalVolume.change }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] }),\n chartType === \"bullet\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { children: currentBulletData?.bullets.map((bullet, idx) => {\n const percentage = Math.round(bullet.achieved / bullet.target * 100);\n const getBadgeBg = (name) => {\n const n = name.toLowerCase();\n if (n.includes(\"revenue\")) return \"rgba(70,194,155,0.15)\";\n if (n.includes(\"profit\")) return \"rgba(239,68,68,0.15)\";\n if (n.includes(\"customer\")) return \"rgba(23,97,163,0.15)\";\n return \"rgba(229,231,235,1)\";\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center py-3 not-last:border-b border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-medium text-[rgba(17,24,39,1)]\", children: bullet.name }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs text-[rgba(107,114,128,1)]\", children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"px-2 py-1 rounded text-sm font-medium\", style: { backgroundColor: getBadgeBg(bullet.name) }, children: [\n percentage,\n \"%\"\n ] })\n ] }, idx);\n }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 pt-4 mt-4 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-full bg-[rgba(96,165,250,1)] flex items-center justify-center flex-shrink-0 mt-0.5\", children: /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-bold text-white\", children: \"i\" }) }),\n /* @__PURE__ */ jsxs22(\"p\", { className: \"text-xs text-[rgba(107,114,128,1)] m-0 leading-relaxed\", children: [\n \"Suggested Actions: \",\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-[rgba(17,24,39,1)]\", children: \"Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"gauge\" && gaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges?.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[sy]?.[sm2]?.length > 0) currentGauge = gaugeData[sy][sm2][0];\n if (!currentGauge) return null;\n const gauge = currentGauge;\n const dailyAvgNeeded = Math.round(gauge.value / 30);\n const currentPace = 360;\n const daysRemaining = 8;\n const yearNum = parseInt(sy);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const monthIndex = monthNames.indexOf(sm2);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday = lastDayWeekday === 5 ? lastDay : lastDayWeekday < 5 ? lastDay - (lastDayWeekday + 2) : lastDay - 1;\n const formattedDate = new Date(yearNum, monthIndex, lastFriday).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Goal Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4 mb-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", `${daysRemaining} days`], [\"Expected Finish\", formattedDate]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"riskgauge\" && riskGaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauge = riskGaugeData.gauges?.length > 0 ? riskGaugeData.gauges[0] : null;\n if (riskGaugeData[sy]?.[sm2]?.[st]?.length > 0) currentRiskGauge = riskGaugeData[sy][sm2][st][0];\n if (!currentRiskGauge) return null;\n const gauge = currentRiskGauge;\n const maxScore = gauge.max || 100;\n const dailyAvgNeeded = Math.round(gauge.score / 30);\n const currentPace = Math.round(gauge.score / 20);\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Risk Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", \"8 days\"], [\"Max Score\", String(maxScore)]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: `${selectedFilters[\"SelectYear\"] || \"2026\"} : ${selectedFilters[\"SelectMonth\"] || \"January\"}` })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Risk Score\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: riskGaugeData?.[selectedFilters[\"SelectYear\"] || \"2026\"]?.[selectedFilters[\"SelectMonth\"] || \"January\"]?.[selectedFilters[\"SelectType\"] || \"Credit Score\"]?.[0]?.score || 0 }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Performance\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"N/A\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"No data\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Assessment Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"Wednesday\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Avg Score: 0\" })\n ] })\n ] })\n ] }),\n chartType === \"gantt\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,205px)] lg:gap-1 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto sm:p-3 sm:min-h-[400px] lg:overflow-x-hidden lg:p-[22px_30px_55px_30px] lg:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[650px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[205px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] max-h-[400px] overflow-y-auto sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sticky top-0 bg-[rgba(241,247,248,1)] pb-2 sm:text-sm sm:mb-4\", children: \"Quick Insights - All Titles\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-3 sticky top-5 bg-[rgba(241,247,248,1)] pb-1 sm:text-[10px]\", children: [\n \"Showing data for: \",\n selectedGanttProject\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: currentGanttData?.tasks.map((task) => {\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pb-2 border-b border-[rgba(229,231,235,1)] last:border-none\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3 h-3 rounded-full flex-shrink-0\", style: { background: taskColor } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-medium text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: task.name }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[8px] text-[rgba(107,114,128,1)] mt-0.5\", children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[8px] font-semibold px-2 py-0.5 rounded whitespace-nowrap\", style: { backgroundColor: getStatusColors(task.status).backgroundColor, color: getStatusColors(task.status).textColor }, children: task.status })\n ] }, task.id);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Project Summary\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-2 sm:text-[10px]\", children: \"Overall Status\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(254,242,242,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(220,38,38,1)] text-[10px] font-semibold sm:text-xs\", children: \"Overdue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"Overdue\").length || 0 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(239,246,255,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(37,99,235,1)] text-[10px] font-semibold sm:text-xs\", children: \"In Progress\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"In Progress\").length || 0 })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-1 gap-2 mt-2\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(240,253,244,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(22,163,74,1)] text-[10px] font-semibold sm:text-xs\", children: \"On Target\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"On Target\").length || 0 })\n ] }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-2 sm:text-[10px] sm:mt-3\", children: (() => {\n if (!currentGanttData?.tasks?.length) return \"Expected by 25 Feb 2025\";\n const lastTask = currentGanttData.tasks[currentGanttData.tasks.length - 1];\n const [day, month] = lastTask.endDate.split(\"/\");\n const monthNames = { \"01\": \"Jan\", \"02\": \"Feb\", \"03\": \"Mar\", \"04\": \"Apr\", \"05\": \"May\", \"06\": \"Jun\", \"07\": \"Jul\", \"08\": \"Aug\", \"09\": \"Sep\", \"10\": \"Oct\", \"11\": \"Nov\", \"12\": \"Dec\" };\n return `Expected by ${day} ${monthNames[month] || \"Jan\"} ${selectedFilters[\"SelectYear\"] || \"2026\"}`;\n })() })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"calendarheatmap\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,280px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto lg:overflow-x-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[750px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[280px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Activity Legend\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2\", children: [[\"rgba(154,219,255,1)\", \"<1K: Low activity\"], [\"rgba(102,194,241,1)\", \"1K - 3K: Moderate activity\"], [\"rgba(43,160,209,1)\", \"3K - 5K: High activity\"], [\"rgba(23,97,163,1)\", \">5K: Very high activity\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-sm flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] whitespace-nowrap sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full max-w-[280px] min-h-[210px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] p-3 flex flex-col gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium text-right\", children: [\n selectedFilters[\"SelectYear\"] || \"2026\",\n \", \",\n selectedCalendarHeatmapProject,\n \", \",\n selectedFilters[\"SelectType\"] || \"Development\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[17px] font-semibold mt-2\", children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"w-[11px] h-[11px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: calendarPeakAndActiveDay.peakDay.value ? `${calendarPeakAndActiveDay.peakDay.value.toLocaleString()} events` : \"5,600 events\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: [\n \"Avg \",\n calendarPeakAndActiveDay.mostActiveDay.average || 920,\n \" / day\"\n ] })\n ] })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"horizontalbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Demo Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(70,194,155,1)\", \"Profit\"], [\"rgba(47,164,169,1)\", \"Cost\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded bg-transparent flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ jsx25(TopPerformerCard, { performer: currentHorizontalBarTopPerformer })\n ] })\n ] }),\n chartType === \"columnchart\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center bg-[rgba(77,175,131,0.15)] px-3 py-1 rounded-xl text-[10px] font-semibold text-[rgba(77,175,131,1)] font-[Poppins,sans-serif]\", children: \"Leading\" })\n ] }),\n (() => {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, item) => item.value > max.value ? item : max, typeData[0]);\n const totalRevenue = typeData.reduce((sum, item) => sum + item.value, 0);\n const contribution = totalRevenue > 0 ? Math.round(topPerformer.value / totalRevenue * 100) : 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTop = prevTypeData.find((i) => i.name === topPerformer.name);\n const growth = prevTop?.value > 0 ? Math.round((topPerformer.value - prevTop.value) / prevTop.value * 100) : 14;\n const rank = [...typeData].sort((a, b) => b.value - a.value).findIndex((i) => i.name === topPerformer.name) + 1;\n return /* @__PURE__ */ jsxs22(Fragment10, { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-semibold text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] mb-5\", children: topPerformer.name }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-3\", children: [[\"Revenue\", topPerformer.value >= 1e3 ? `${(topPerformer.value / 1e3).toFixed(1)}k` : topPerformer.value, void 0], [\"Contribution\", `${contribution}%`, void 0], [\"Growth\", `${growth >= 0 ? \"+\" : \"\"}${growth}%`, growth >= 0 ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\"], [\"Rank\", `#${rank}`, void 0]].map(([label, value, color]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold\", style: { color: color || \"rgba(17,24,39,1)\" }, children: String(value) })\n ] }, String(label))) })\n ] });\n })()\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] flex flex-col justify-center sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center mb-10\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: [\n selectedFilters[\"SelectMonth\"] || \"January\",\n \" \",\n selectedFilters[\"SelectYear\"] || \"2026\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-8 font-[Poppins,sans-serif]\", children: \"Total Volume\" }),\n (() => {\n if (!columnChartData) return null;\n const sy = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n const currentTotal = typeData.reduce((sum, item) => sum + item.value, 0);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTotal = prevTypeData.reduce((sum, item) => sum + item.value, 0);\n const pctChange = prevTotal > 0 ? Math.round((currentTotal - prevTotal) / prevTotal * 100) : 0;\n const isIncrease = pctChange >= 0;\n const bgColor = isIncrease ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n const textColor = isIncrease ? \"rgba(5,150,105,1)\" : \"rgba(220,38,38,1)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif] tracking-tight\", children: [\n \"$\",\n currentTotal.toLocaleString(\"en-US\", { minimumFractionDigits: 2, maximumFractionDigits: 2 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"inline-flex items-center gap-1 px-2.5 py-1.5 rounded-md flex-shrink-0\", style: { background: bgColor }, children: [\n /* @__PURE__ */ jsx25(\"img\", { src: isIncrease ? getIconSrc(increaseIcon, FALLBACK_ICONS.increaseIcon) : getIconSrc(decreaseIcon, FALLBACK_ICONS.decreaseIcon), alt: isIncrease ? \"increase\" : \"decrease\", className: \"w-3.5 h-3.5 object-contain\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold font-[Poppins,sans-serif]\", style: { color: textColor }, children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"groupbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!groupBarData) return null;\n const legends = groupBarData.legends || [];\n const defaultLegends = [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(77,175,131,1)\", \"Profit\"], [\"rgba(220,38,38,1)\", \"Loss\"], [\"rgba(47,164,169,1)\", \"Cost\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col h-[130px] gap-4 sm:gap-5\", children: legends.length > 0 ? legends.map((legend, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: legend.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: legend.label })\n ] }, legend.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!groupBarData) return null;\n const sy = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm2] || [];\n if (!groups.length) return null;\n const legends = groupBarData.legends || [];\n const getColor = (key, fallback) => legends.find((l) => l.key === key)?.color || fallback;\n const revenueColor = getColor(\"revenue\", \"rgba(37,99,235,1)\");\n const profitColor = getColor(\"profit\", \"rgba(77,175,131,1)\");\n const lossColor = getColor(\"loss\", \"rgba(220,38,38,1)\");\n const getProfitOrLoss = (g) => g.profitOrLoss !== void 0 && g.profitOrLoss !== null ? g.profitOrLoss : g.revenue - g.cost;\n const topPerformer = groups.reduce((max, item) => item.revenue > max.revenue ? item : max, groups[0]);\n const topPL = getProfitOrLoss(topPerformer);\n const isTopProfitable = topPL >= 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevGroups = groupBarData?.[prevYear]?.[prevMonth] || [];\n const prevTop = prevGroups.find((i) => i.name === topPerformer.name);\n const pctChange = prevTop && prevTop.revenue > 0 ? Math.round((topPerformer.revenue - prevTop.revenue) / prevTop.revenue * 100) : 12;\n const isIncrease = pctChange >= 0;\n const lossProducts = groups.filter((i) => getProfitOrLoss(i) < 0);\n const needsFocus = lossProducts.length > 0 ? lossProducts.reduce((max, i) => getProfitOrLoss(i) < getProfitOrLoss(max) ? i : max, lossProducts[0]) : groups.reduce((min, i) => i.revenue < min.revenue ? i : min, groups[0]);\n const needsFocusHasLoss = getProfitOrLoss(needsFocus) < 0;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: revenueColor }, children: [\n topPerformer.revenue,\n \"k\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: isTopProfitable ? \"Profit\" : \"Loss\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: isTopProfitable ? profitColor : lossColor }, children: [\n Math.abs(topPL),\n \"k\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: [\n needsFocus.name,\n \" \",\n needsFocusHasLoss ? \"(Loss)\" : \"(Low Revenue)\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"stackbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!stackBarData) return null;\n const legends = stackBarData.legends || [];\n const defaultLegends = [[\"rgba(37,99,235,1)\", \"Aggregating Amount\"], [\"rgba(34,197,94,1)\", \"Outstanding Amount\"], [\"rgba(239,68,68,1)\", \"Write-Off Amount\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: legends.length > 0 ? legends.map((l, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: l.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: l.label })\n ] }, l.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm2]?.[sw]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, day) => {\n const mt = max.aggregating + max.outstanding + max.writeOff;\n const ct = day.aggregating + day.outstanding + day.writeOff;\n return ct > mt ? day : max;\n }, typeData[0]);\n const topTotal = topPerformer.aggregating + topPerformer.outstanding + topPerformer.writeOff;\n const needsFocus = typeData.reduce((min, day) => {\n const mt2 = min.aggregating + min.outstanding + min.writeOff;\n const ct2 = day.aggregating + day.outstanding + day.writeOff;\n return ct2 < mt2 ? day : min;\n }, typeData[0]);\n const weekNum = parseInt(sw.replace(\"Week \", \"\"));\n let percentageChange = 12, isIncrease = true;\n const prevWeek = weekNum > 1 ? `Week ${weekNum - 1}` : null;\n if (prevWeek) {\n const prevTypeData = stackBarData?.[sy]?.[sm2]?.[prevWeek]?.[st] || [];\n const prevDay = prevTypeData.find((d) => d.day === topPerformer.day);\n if (prevDay) {\n const pt = prevDay.aggregating + prevDay.outstanding + prevDay.writeOff;\n if (pt > 0) {\n const ch = (topTotal - pt) / pt * 100;\n percentageChange = Math.abs(Math.round(ch));\n isIncrease = ch >= 0;\n }\n }\n }\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n percentageChange,\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.day })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Aggregating\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: [\n \"$\",\n topPerformer.aggregating\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Outstanding\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(34,197,94,1)]\", children: [\n \"$\",\n topPerformer.outstanding\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: needsFocus.day })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"lollipop\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n return currentFilters.find((f) => f.id === fid)?.label || \"Categories\";\n })() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n const filter = currentFilters.find((f) => f.id === fid);\n const colors = [\"rgba(37,99,235,1)\", \"rgba(16,185,129,1)\", \"rgba(245,158,11,1)\", \"rgba(239,68,68,1)\", \"rgba(147,51,234,1)\"];\n return (filter?.options || []).map((opt, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3.5 h-3.5 rounded-full flex-shrink-0\", style: { backgroundColor: colors[idx % colors.length] } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: opt })\n ] }, opt));\n })() })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: \"Monthly Summary\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-5 h-5 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] }),\n (() => {\n const f0 = currentFilters[0]?.id, f1 = currentFilters[1]?.id, f2 = currentFilters[2]?.id;\n const year = localFilters[f0] || currentFilters[0]?.options[0] || \"2026\";\n const month = localFilters[f1] || currentFilters[1]?.options[0] || \"January\";\n const category = localFilters[f2] || currentFilters[2]?.options[0] || \"Category A\";\n const yearData = lollipopData?.[year] || {};\n const catData = yearData?.[month]?.[category] || [];\n const bestItem = catData.length ? catData.reduce((max, i) => i.value > max.value ? i : max, catData[0]) : null;\n const lowestItem = catData.length ? catData.reduce((min, i) => i.value < min.value ? i : min, catData[0]) : null;\n const avg = catData.length ? Math.round(catData.reduce((s, i) => s + i.value, 0) / catData.length) : 0;\n const aboveAvg = catData.filter((i) => i.value > avg).length;\n const isPositive = aboveAvg > catData.length - aboveAvg;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Best Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: bestItem?.label || \"N/A\" })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Lowest Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Average\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: avg })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Trend\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isPositive ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isPositive ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-semibold font-[Poppins,sans-serif]\", children: isPositive ? \"Positive\" : \"Negative\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 text-xs font-[Poppins,sans-serif]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(107,114,128,1)] font-medium\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(220,38,38,1)] font-semibold\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"kpi\" && currentKPIData && /* @__PURE__ */ jsx25(\"div\", { className: \"w-full\", children: renderChart() }),\n (chartType === \"line\" || chartType === \"area\" || chartType === \"bar\") && !isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: details.map((item, idx) => {\n let bgColor = \"rgba(229,231,235,0.5)\";\n if (item.label === \"Revenue\") bgColor = \"rgba(70,194,155,0.15)\";\n else if (item.label === \"Profit\") bgColor = \"rgba(239,68,68,0.15)\";\n else if (item.label === \"New Customers\") bgColor = \"rgba(23,97,163,0.15)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-[10px]\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"inline-flex items-center justify-center px-2 py-1 rounded text-[10px] font-bold text-[rgba(17,24,39,1)] whitespace-nowrap flex-shrink-0 sm:text-xs sm:px-2.5 sm:py-1.5\", style: { backgroundColor: bgColor }, children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Quick Stats\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"mb-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] })\n ] })\n ] })\n ] });\n};\nMahatiChartAnalyticsWidget.displayName = \"MahatiChartAnalyticsWidget\";\nvar QuickInsightsCard = ({\n totalVolume,\n peakIconSrc,\n peakDate,\n peakEvents,\n calendarIconSrc,\n activeDayLabel,\n activeDayValue,\n activeAvg,\n dateLabel\n}) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: dateLabel })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: totalVolume }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: peakIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: peakDate }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: peakEvents }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: calendarIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeDayLabel }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: activeDayValue }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeAvg })\n] });\nvar TopPerformerCard = ({ performer }) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: performer.isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: performer.isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-semibold\", children: performer.change })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: performer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: performer.revenue })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Profit\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(77,175,131,1)]\", children: performer.profit })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: performer.needsFocus })\n ] })\n] });\n\n// src/components/Tooltip.tsx\nimport React19, { useState as useState13 } from \"react\";\nimport { Fragment as Fragment11, jsx as jsx26, jsxs as jsxs23 } from \"react/jsx-runtime\";\nvar Tooltip2 = ({\n text,\n position = \"top\",\n children,\n variant = \"default\",\n className = \"\",\n textColor,\n backgroundColor,\n image,\n testId,\n animation\n}) => {\n const [visible, setVisible] = useState13(false);\n const [isReady, setIsReady] = useState13(false);\n const [showAnimation, setShowAnimation] = useState13(false);\n const [tooltipPosition, setTooltipPosition] = useState13({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = useState13(position);\n const triggerRef = React19.useRef(null);\n const tooltipRef = React19.useRef(null);\n const hasContent = !!(text || image);\n const calculatePosition = () => {\n if (!triggerRef.current || !tooltipRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n const tooltipRect = tooltipRef.current.getBoundingClientRect();\n const scrollY = window.scrollY;\n const scrollX = window.scrollX;\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n let top = 0;\n let left = 0;\n let finalPosition = position;\n const offset = 12;\n const padding = 10;\n switch (position) {\n case \"top\":\n top = rect.top + scrollY - tooltipRect.height - offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.top < tooltipRect.height + offset + padding) {\n finalPosition = \"bottom\";\n top = rect.bottom + scrollY + offset;\n }\n break;\n case \"right\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.right + scrollX + offset;\n if (rect.right + tooltipRect.width + offset + padding > viewportWidth) {\n finalPosition = \"left\";\n left = rect.left + scrollX - tooltipRect.width - offset;\n }\n break;\n case \"bottom\":\n top = rect.bottom + scrollY + offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.bottom + tooltipRect.height + offset + padding > viewportHeight) {\n finalPosition = \"top\";\n top = rect.top + scrollY - tooltipRect.height - offset;\n }\n break;\n case \"left\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.left + scrollX - tooltipRect.width - offset;\n if (rect.left < tooltipRect.width + offset + padding) {\n finalPosition = \"right\";\n left = rect.right + scrollX + offset;\n }\n break;\n }\n if (left < padding) left = padding;\n else if (left + tooltipRect.width > viewportWidth - padding)\n left = viewportWidth - tooltipRect.width - padding;\n if (top < scrollY + padding) top = scrollY + padding;\n else if (top + tooltipRect.height > scrollY + viewportHeight - padding)\n top = scrollY + viewportHeight - tooltipRect.height - padding;\n setTooltipPosition({ top, left });\n setAdjustedPosition(finalPosition);\n setIsReady(true);\n };\n const showTooltip = () => {\n if (!hasContent) return;\n setIsReady(false);\n setVisible(true);\n requestAnimationFrame(() => calculatePosition());\n if (animation) {\n const delay = animation.triggerDelay || 100;\n setTimeout(() => setShowAnimation(true), delay);\n }\n };\n const hideTooltip = () => {\n setVisible(false);\n setIsReady(false);\n setShowAnimation(false);\n setAdjustedPosition(position);\n };\n React19.useEffect(() => {\n if (visible) {\n const handleUpdate = () => {\n requestAnimationFrame(calculatePosition);\n };\n window.addEventListener(\"scroll\", handleUpdate, { passive: true });\n window.addEventListener(\"resize\", handleUpdate);\n return () => {\n window.removeEventListener(\"scroll\", handleUpdate);\n window.removeEventListener(\"resize\", handleUpdate);\n };\n }\n }, [visible]);\n const renderTooltipContent = () => {\n if (image) {\n return /* @__PURE__ */ jsx26(\n \"img\",\n {\n src: image.src,\n alt: image.alt || \"Tooltip image\",\n width: image.width || 200,\n height: image.height || 150,\n loading: \"lazy\",\n className: \"max-w-full h-auto rounded object-cover block\"\n }\n );\n }\n return text;\n };\n const renderAnimation = () => {\n if (!animation || !showAnimation) return null;\n const AnimationComponent = animation.component;\n return /* @__PURE__ */ jsx26(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) return /* @__PURE__ */ jsx26(Fragment11, { children });\n const variantStyle = variant === \"default\" ? \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white text-[11px]\" : \"bg-white/95 text-gray-700 border border-gray-200 text-[13px]\";\n return /* @__PURE__ */ jsxs23(\n \"div\",\n {\n \"data-testid\": testId,\n ref: triggerRef,\n className: `relative inline-block ${className}`,\n onMouseEnter: showTooltip,\n onMouseLeave: hideTooltip,\n onFocus: showTooltip,\n onBlur: hideTooltip,\n children: [\n children,\n renderAnimation(),\n /* @__PURE__ */ jsxs23(\n \"div\",\n {\n ref: tooltipRef,\n role: \"tooltip\",\n style: {\n top: tooltipPosition.top,\n left: tooltipPosition.left,\n color: textColor,\n background: backgroundColor\n },\n className: `\nfixed z-[99999]\nmax-w-[calc(100vw-16px)]\nmin-w-0\nbox-border\nfont-[Poppins]\nfont-medium\nrounded-[6px]\nwhitespace-normal\nbreak-words [overflow-wrap:anywhere]\nflex flex-wrap\ntransition-all duration-200\n${variantStyle}\n${visible && isReady ? \"opacity-100 visible scale-100\" : \"opacity-0 invisible scale-95 pointer-events-none\"}\n${image ? \"p-1\" : \"px-3 py-2\"}\n`,\n children: [\n renderTooltipContent(),\n variant === \"default\" && !image && /* @__PURE__ */ jsx26(\n \"div\",\n {\n className: \"absolute w-0 h-0 border-solid\",\n style: {\n ...adjustedPosition === \"top\" && {\n bottom: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"6px 6px 0 6px\",\n borderColor: \"#1761A3 transparent transparent transparent\"\n },\n ...adjustedPosition === \"bottom\" && {\n top: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"0 6px 6px 6px\",\n borderColor: \"transparent transparent #1761A3 transparent\"\n },\n ...adjustedPosition === \"left\" && {\n right: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 0 6px 6px\",\n borderColor: \"transparent transparent transparent #1761A3\"\n },\n ...adjustedPosition === \"right\" && {\n left: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 6px 6px 0\",\n borderColor: \"transparent #1761A3 transparent transparent\"\n }\n }\n }\n )\n ]\n }\n )\n ]\n }\n );\n};\nTooltip2.displayName = \"Tooltip\";\n\n// src/components/ToastMessage.tsx\nimport React20, { useEffect as useEffect10 } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { jsx as jsx27, jsxs as jsxs24 } from \"react/jsx-runtime\";\nvar getStripGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 22.5%, rgba(58, 208, 125, 1) 130%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 22.5%, rgba(183, 28, 28, 1) 130%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 22.5%, rgba(255, 191, 92, 1) 130%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 22.5%, rgba(77, 175, 131, 1) 130%)\";\n }\n};\nvar getGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 0%, rgba(58, 208, 125, 1) 100%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 0%, rgba(183, 28, 28, 1) 100%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 0%, rgba(255, 191, 92, 1) 100%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 0%, rgba(77, 175, 131, 1) 100%)\";\n }\n};\nvar getTitleColor = (type) => {\n switch (type) {\n case \"success\":\n return \"rgba(40, 167, 69, 1)\";\n case \"error\":\n return \"rgba(220, 53, 69, 1)\";\n case \"warning\":\n return \"rgba(245, 158, 11, 1)\";\n case \"notification\":\n default:\n return \"rgba(23, 97, 163, 1)\";\n }\n};\nvar getIcon = (type, background) => {\n const style = { width: \"28px\", height: \"28px\", objectFit: \"contain\" };\n const altText = type.charAt(0).toUpperCase() + type.slice(1);\n if (background === \"transparent\") {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/check-mark_2.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_2.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/notification_2.png\", alt: altText, style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/check-mark_1.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: \"/icons/notification_1.png\", alt: altText, style });\n }\n }\n};\nvar ToastMessage = React20.forwardRef(\n ({\n type = \"notification\",\n title: customTitle,\n message,\n onClose,\n showClose = true,\n duration = 5e3,\n background = \"solid\",\n custom,\n action,\n className,\n testId,\n ...rest\n }, ref) => {\n const backgroundClass = background === \"transparent\" ? \"bg-white\" : \"\";\n const displayTitle = customTitle ?? type.charAt(0).toUpperCase() + type.slice(1);\n const hasActions = action && action.length > 0;\n useEffect10(() => {\n if (!onClose) return;\n if (duration <= 0) return;\n const timer = setTimeout(onClose, duration);\n return () => clearTimeout(timer);\n }, [duration, onClose]);\n const closeIconSrc = custom?.closeIconSrc || (background === \"transparent\" ? \"icons/close_copy_1.png\" : \"/icons/close.png\");\n const iconElement = custom?.iconSrc ? /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: custom.iconSrc,\n alt: type,\n style: {\n width: custom.iconWidth || \"28px\",\n height: custom.iconHeight || \"28px\",\n objectFit: \"contain\"\n }\n }\n ) : getIcon(type, background);\n const content = /* @__PURE__ */ jsxs24(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n style: {\n background: background === \"transparent\" ? \"#ffffff\" : getGradient(type)\n },\n className: `fixed top-[20px] right-[20px] w-[325px] rounded-[12px] shadow-md z-[9999] overflow-hidden flex \n${hasActions ? \"flex-col p-[10px]\" : \"flex-row items-center pl-[10px]\"} \n${backgroundClass}\n${className || \"\"}`,\n role: \"alert\",\n \"aria-live\": \"assertive\",\n ...rest,\n children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"absolute left-[5px] top-0 w-[5px] h-full rounded-[20px_0_0_20px]\",\n style: { background: getStripGradient(type) }\n }\n ),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex items-center flex-1 min-h-[50px]\", children: [\n /* @__PURE__ */ jsx27(\"div\", { className: \"flex items-center justify-center w-[40px] h-[40px] mr-[12px] flex-shrink-0 z-[1]\", children: iconElement }),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex-1 min-w-0 z-[1]\", children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"font-semibold text-[16px] truncate\",\n style: {\n fontFamily: custom?.titleFontFamily || \"Poppins\",\n color: custom?.titleColor || (background === \"transparent\" ? getTitleColor(type) : \"white\")\n },\n children: displayTitle\n }\n ),\n message && /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"text-[10px] mt-[2px] truncate\",\n style: {\n fontFamily: custom?.messageFontFamily || \"Poppins\",\n color: custom?.messageColor || (background === \"transparent\" ? \"#555\" : \"white\")\n },\n children: message\n }\n )\n ] }),\n showClose && onClose && /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: onClose,\n \"aria-label\": \"Close toast\",\n className: \"ml-[8px] p-[4px] opacity-80 hover:opacity-100 flex-shrink-0\",\n children: /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: closeIconSrc,\n alt: \"Close\",\n style: {\n width: custom?.closeIconWidth || \"20px\",\n height: custom?.closeIconHeight || \"20px\",\n objectFit: \"contain\"\n }\n }\n )\n }\n )\n ] }),\n hasActions && /* @__PURE__ */ jsx27(\"div\", { className: \"flex gap-[8px] mt-[10px] pl-[5px] justify-end\", children: action?.map((btn, index) => /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: btn.onClick,\n className: \"text-[12px] font-semibold px-[16px] py-[6px] rounded-[6px] transition-all active:scale-95\",\n children: btn.label\n },\n index\n )) })\n ]\n }\n );\n return ReactDOM.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nimport { useState as useState14, useEffect as useEffect11, useRef as useRef6, useMemo as useMemo4 } from \"react\";\nimport { jsx as jsx28 } from \"react/jsx-runtime\";\nvar ConfettiExplosion = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState14([]);\n const animationFrameRef = useRef6(void 0);\n const timerRef = useRef6(void 0);\n const stableColors = useMemo4(() => colors, [JSON.stringify(colors)]);\n useEffect11(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx28(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nConfettiExplosion.displayName = \"ConfettiExplosion\";\n\n// src/components/RealisticConfetti.tsx\nimport { useState as useState15, useEffect as useEffect12, useRef as useRef7, useMemo as useMemo5 } from \"react\";\nimport { jsx as jsx29 } from \"react/jsx-runtime\";\nvar RealisticConfetti = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState15([]);\n const animationFrameRef = useRef7(void 0);\n const timerRef = useRef7(void 0);\n const stableColors = useMemo5(() => colors, [JSON.stringify(colors)]);\n useEffect12(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx29(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx29(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nRealisticConfetti.displayName = \"RealisticConfetti\";\n\n// src/components/Spinner.tsx\nimport { jsx as jsx30, jsxs as jsxs25 } from \"react/jsx-runtime\";\nvar SrOnly = ({ children }) => /* @__PURE__ */ jsx30(\"span\", { className: \"absolute w-[1px] h-[1px] p-0 m-[-1px] overflow-hidden whitespace-nowrap border-0 clip-[rect(0,0,0,0)]\", children });\nvar Spinner = ({\n size = 24,\n borderWidth = 4,\n borderRadius = 50,\n primaryColor = \"#007bff\",\n backgroundColor = \"rgba(0,123,255,0.2)\",\n speed = 1,\n testId\n}) => {\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: {\n width: size,\n height: size,\n borderWidth,\n borderRadius,\n borderColor: backgroundColor,\n borderTopColor: primaryColor,\n animation: `spin ${speed}s linear infinite`\n },\n className: \"border-solid\",\n children: /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n }\n );\n};\nvar CircularSpinner = ({\n size = 48,\n color = \"rgba(37,99,235,1)\",\n speed = 1.5,\n ringCount = 1,\n testId\n}) => {\n const rings = Array.from({ length: Math.max(1, ringCount) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n className: \"relative\",\n style: { width: size, height: size },\n children: [\n rings.map((_, i) => {\n const ringSize = size - i * (size / (ringCount + 1));\n const offset = (size - ringSize) / 2;\n const opacity = 1 - i * 0.3;\n return /* @__PURE__ */ jsx30(\n \"span\",\n {\n style: {\n width: ringSize,\n height: ringSize,\n top: offset,\n left: offset,\n opacity,\n borderWidth: Math.max(2, ringSize / 12),\n borderColor: \"rgba(0,0,0,0.1)\",\n borderTopColor: color,\n animation: `spin ${speed + i * 0.3}s linear infinite`,\n animationDelay: `${i * 0.2}s`\n },\n className: \"absolute border border-solid rounded-full\"\n },\n i\n );\n }),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n ]\n }\n );\n};\nvar CardOverlayLoader = ({\n show = true,\n spinnerSize = 32,\n spinnerBorderWidth = 4,\n spinnerPrimary = \"rgba(37,99,235,1)\",\n spinnerTrack = \"rgba(229,231,235,1)\",\n backdrop = \"rgba(255,255,255,0.65)\",\n label = \"Loading...\",\n testId\n}) => {\n if (!show) return null;\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: { backgroundColor: backdrop },\n className: \"absolute inset-0 grid place-content-center rounded-xl backdrop-blur-[1px]\",\n children: /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col items-center gap-3\", children: [\n /* @__PURE__ */ jsx30(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack\n }\n ),\n /* @__PURE__ */ jsx30(\"span\", { className: \"text-sm font-medium text-gray-800\", children: label })\n ] })\n }\n );\n};\nvar LoadingDots = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 3,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(0, count) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsBounce ${speed}s ease-in-out ${i * (speed / dots.length)}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar LoadingDotsLinear = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 5,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(1, count) });\n const delay = speed / count;\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsLinear ${speed}s ease-in-out ${i * delay}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar CardWithLoading = ({\n loading = true,\n imageUrl = \"https://upload.wikimedia.org/wikipedia/commons/c/cb/Adirondacks_2016_Cascade_mountain_hike.jpg\",\n title = \"Amazing Landscape\",\n content = \"Discover breathtaking views and natural wonders from around the world.\",\n testId\n}) => {\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"rounded-xl overflow-hidden shadow-lg bg-white border border-gray-200 max-w-[28rem] relative\",\n children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-64 bg-gray-100 overflow-hidden relative\", children: !loading ? /* @__PURE__ */ jsx30(\"img\", { src: imageUrl, alt: title, className: \"w-full h-full object-cover\" }) : /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-full shimmer\" }) }),\n /* @__PURE__ */ jsxs25(\"div\", { className: \"p-6\", children: [\n !loading ? /* @__PURE__ */ jsx30(\"h3\", { className: \"text-xl font-semibold text-gray-900 mb-3\", children: title }) : /* @__PURE__ */ jsx30(\"div\", { className: \"h-7 w-[70%] shimmer rounded mb-3\" }),\n !loading ? /* @__PURE__ */ jsx30(\"p\", { className: \"text-sm text-gray-500 leading-relaxed\", children: content }) : /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-full shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[95%] shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[80%] shimmer rounded\" })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/NestedDropdown.tsx\nimport { useEffect as useEffect13, useRef as useRef8, useState as useState16 } from \"react\";\nimport { ChevronDown as ChevronDown4, X as X3, Loader2 } from \"lucide-react\";\nimport { Fragment as Fragment12, jsx as jsx31, jsxs as jsxs26 } from \"react/jsx-runtime\";\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const ref = useRef8(null);\n useEffect13(() => {\n const h = (e) => ref.current && !ref.current.contains(e.target) && setOpen(false);\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, []);\n const filtered = (options ?? []).filter(\n (o) => o.label.toLowerCase().includes(search.toLowerCase())\n );\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px] \\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n (options ?? []).find((o) => o.value === value)?.label || placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white rounded-[12px]\\r\\n border border-[rgba(23,97,163,0.3)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n placeholder: \"search..\",\n value: search,\n onChange: (e) => setSearch(e.target.value),\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filtered.map((o) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => {\n onChange(o.value);\n setOpen(false);\n setSearch(\"\");\n },\n className: \"px-4 py-[10px] text-[14px] cursor-pointer hover:bg-[#f1f5f9]\",\n children: o.label\n },\n o.value\n )),\n filtered.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\nfunction MultiSelectDropdown({\n label = \"Multi Select\",\n options,\n values,\n onChange,\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const ref = useRef8(null);\n const removeValue = (val) => {\n onChange(values.filter((v) => v !== val));\n };\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const toggleValue = (value) => {\n if (values.includes(value)) {\n onChange(values.filter((v) => v !== value));\n } else {\n onChange([...values, value]);\n }\n };\n const filteredOptions = options.filter(\n (o) => o.label.toLowerCase().includes(search.toLowerCase())\n );\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen(!open),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px]\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n values.length === 0 ? \"Multi Select\" : \"Multi Select\",\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"flex flex-wrap gap-2 mt-3\", children: values.map((val) => {\n const lbl = options.find((o) => o.value === val)?.label;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"flex items-center gap-[6px] px-[10px] py-[6px]\\r\\n bg-white border border-[#cde3f1] rounded-[10px] text-[13px]\",\n children: [\n lbl,\n /* @__PURE__ */ jsx31(\n X3,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n value: search,\n onChange: (e) => setSearch(e.target.value),\n placeholder: \"Search...\",\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filteredOptions.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => toggleValue(opt.value),\n className: `px-4 py-[10px] text-[14px] flex items-center gap-2 cursor-pointer\n hover:bg-[#f1f5f9] ${values.includes(opt.value) ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: values.includes(opt.value),\n readOnly: true\n }\n ),\n opt.label\n ]\n },\n opt.value\n )),\n filteredOptions.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\nfunction CascadingDropdown({\n label = \"Cascading Dropdown\",\n data,\n value,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const level1 = data;\n const level2 = data.find((d) => d.value === value.level1)?.children || [];\n const level3 = level2.find((d) => d.value === value.level2)?.children || [];\n const displayText = value.level3 || value.level2 || value.level1 || \"Select location\";\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px]\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n displayText,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: level1.map((opt) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => onChange({ level1: opt.value }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level1 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: opt.label\n },\n opt.value\n )) }),\n level2.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level2.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => onChange({\n level1: value.level1,\n level2: opt.value\n }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level2 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n \"\\u2514 \",\n opt.label\n ]\n },\n opt.value\n )) }),\n level3.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level3.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => onChange({\n level1: value.level1,\n level2: value.level2,\n level3: opt.value\n }),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n hover:bg-[#f1f5f9] ${value.level3 === opt.value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n \"\\u2514\\u2500 \",\n opt.label\n ]\n },\n opt.value\n )) })\n ]\n }\n )\n ]\n }\n );\n}\nfunction GroupedDropdown({\n label = \"Grouped Dropdown\",\n groups,\n values,\n onChange,\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const isSectionSelected = (group) => values?.section === group.label;\n const isChildChecked = (value) => values?.values.includes(value) ?? false;\n const toggleSection = (group) => {\n if (values?.section === group.label) {\n onChange(null);\n } else {\n onChange({\n section: group.label,\n values: group.options.map((o) => o.value)\n });\n }\n };\n const toggleChild = (group, value) => {\n if (values?.section !== group.label) {\n onChange({ section: group.label, values: [value] });\n return;\n }\n const exists = values.values.includes(value);\n const newValues = exists ? values.values.filter((v) => v !== value) : [...values.values, value];\n onChange(\n newValues.length === 0 ? null : { section: group.label, values: newValues }\n );\n };\n const displayValue = !values ? \"Select options\" : `${values.section} (${values.values.map(\n (v) => groups.flatMap((g) => g.options).find((o) => o.value === v)?.label\n ).join(\", \")})`;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n displayValue,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(23,97,163,0.3)] z-[100]\",\n children: groups.map((group) => /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3\", children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"flex items-center gap-2 font-semibold\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: isSectionSelected(group),\n onChange: () => toggleSection(group)\n }\n ),\n group.label\n ] }),\n group.options.map((opt) => /* @__PURE__ */ jsxs26(\n \"label\",\n {\n className: \"flex items-center gap-2 text-[14px] mt-[6px] ml-[22px]\",\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: isChildChecked(opt.value),\n onChange: () => toggleChild(group, opt.value)\n }\n ),\n opt.label\n ]\n },\n opt.value\n ))\n ] }, group.label))\n }\n )\n ]\n }\n );\n}\nfunction AvatarDropdown({\n label = \"Select Avatar\",\n placeholder = \"Choose user\",\n options,\n value,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const selected = options.find((o) => o.value === value);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n /* @__PURE__ */ jsx31(\"span\", { className: \"flex items-center gap-[10px]\", children: selected ? /* @__PURE__ */ jsxs26(Fragment12, { children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: selected.image,\n alt: selected.label,\n className: \"w-[28px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n selected.label\n ] }) : placeholder }),\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n flex items-center gap-[12px]\n hover:bg-[#f1f5f9]\n ${opt.value === value ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[36px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n /* @__PURE__ */ jsxs26(\"div\", { children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ jsx31(\"div\", { className: \"text-[12px] text-[#64748b]\", children: opt.subtitle })\n ] })\n ]\n },\n opt.value\n )) })\n }\n )\n ]\n }\n );\n}\nfunction AvatarMultiSelectDropdown({\n label = \"Avatar Multi Select\",\n placeholder = \"Select users\",\n options,\n values,\n testId,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const ref = useRef8(null);\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n const toggleValue = (value) => {\n if (values.includes(value)) {\n onChange(values.filter((v) => v !== value));\n } else {\n onChange([...values, value]);\n }\n };\n const removeValue = (value) => {\n onChange(values.filter((v) => v !== value));\n };\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full px-4 py-3 rounded-[8px] text-white font-semibold\\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\\r\\n flex justify-between items-center\",\n children: [\n placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"flex flex-wrap gap-2 mt-3\", children: values.map((val) => {\n const opt = options.find((o) => o.value === val);\n if (!opt) return null;\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"flex items-center gap-2 px-[10px] py-[6px]\\r\\n bg-white border border-[#cde3f1] rounded-[10px] text-[13px]\",\n children: [\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[24px] h-[24px] rounded-[6px] object-cover\"\n }\n ),\n opt.label,\n /* @__PURE__ */ jsx31(\n X3,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ jsx31(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: /* @__PURE__ */ jsx31(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => {\n const active = values.includes(opt.value);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n onClick: () => toggleValue(opt.value),\n className: `px-4 py-[10px] text-[14px] cursor-pointer\n flex items-center gap-[12px]\n hover:bg-[#f1f5f9]\n ${active ? \"bg-[#e6f3ef]\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n type: \"checkbox\",\n checked: active,\n readOnly: true,\n className: \"accent-[#1761a3]\"\n }\n ),\n /* @__PURE__ */ jsx31(\n \"img\",\n {\n src: opt.image,\n alt: opt.label,\n className: \"w-[36px] h-[28px] rounded-[6px] object-cover\"\n }\n ),\n /* @__PURE__ */ jsxs26(\"div\", { children: [\n /* @__PURE__ */ jsx31(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ jsx31(\"div\", { className: \"text-[12px] text-[#64748b]\", children: opt.subtitle })\n ] })\n ]\n },\n opt.value\n );\n }) })\n }\n )\n ]\n }\n );\n}\nfunction AsyncDropdown({\n label = \"Async Dropdown\",\n placeholder = \"Search...\",\n value,\n disabled,\n testId,\n loadOptions,\n onChange\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const [options, setOptions] = useState16([]);\n const [loading, setLoading] = useState16(false);\n const ref = useRef8(null);\n useEffect13(() => {\n const handler = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n setOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n useEffect13(() => {\n if (!open) return;\n setLoading(true);\n loadOptions(search).then(setOptions).finally(() => setLoading(false));\n }, [open, search, loadOptions]);\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n disabled,\n onClick: () => !disabled && setOpen((o) => !o),\n className: `w-full px-4 py-3 rounded-[8px] text-white font-semibold\n bg-gradient-to-r from-[#1761a3] to-[#4daf83]\n flex justify-between items-center\n ${disabled ? \"opacity-60 cursor-not-allowed\" : \"cursor-pointer\"}`,\n children: [\n value || placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && !disabled && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white\\r\\n rounded-[12px] border border-[rgba(77,175,131,0.4)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n value: search,\n placeholder: \"Search...\",\n onChange: (e) => setSearch(e.target.value),\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n loading && /* @__PURE__ */ jsxs26(\"div\", { className: \"px-4 py-[10px] text-[14px] flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx31(Loader2, { size: 14, className: \"mr-2 animate-spin\" }),\n \"Loading...\"\n ] }),\n !loading && /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n options.map((opt) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n setSearch(\"\");\n },\n className: \"px-4 py-[10px] text-[14px] cursor-pointer hover:bg-[#f1f5f9]\",\n children: opt.label\n },\n opt.value\n )),\n options.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nimport { useEffect as useEffect14, useRef as useRef9, useState as useState17 } from \"react\";\nimport { jsx as jsx32, jsxs as jsxs27 } from \"react/jsx-runtime\";\nvar ControlIcon = ({ src }) => /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${src})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\"\n }\n }\n);\nvar defaultIcons = {\n play: \"/icons/play-btn.png\",\n pause: \"/icons/pause-btn.png\",\n stop: \"/icons/hard-stop.png\",\n repeat: \"/icons/repeat-icon.png\",\n skipForward: \"/icons/skip-forward.png\",\n skipBackward: \"/icons/Backward-icon.png\",\n tenForward: \"/icons/ten-skip-forward.png\",\n tenBackward: \"/icons/ten-skip-backward.png\"\n};\nvar TexttoAudio = ({ icons = defaultIcons }) => {\n const WORDS_PER_SECOND = 2.5;\n const [text, setText] = useState17(\"\");\n const [mode, setMode] = useState17(\"textarea\");\n const [playing, setPlaying] = useState17(false);\n const [currentTime, setCurrentTime] = useState17(0);\n const [duration, setDuration] = useState17(1);\n const [volume, setVolume] = useState17(1);\n const [speed, setSpeed] = useState17(1);\n const [loop, setLoop] = useState17(false);\n const utteranceRef = useRef9(null);\n const timerRef = useRef9(null);\n const wordIndexRef = useRef9(0);\n const textAreaRef = useRef9(null);\n const highlightOnSkipRef = useRef9(false);\n const [summary, setSummary] = useState17(\"\");\n const [loopMode, setLoopMode] = useState17(0);\n const loopCountRef = useRef9(0);\n const autoPlayRef = useRef9(false);\n const baseDurationRef = useRef9(0);\n const timerBaseRef = useRef9(0);\n const volumeRef = useRef9(volume);\n const speedRef = useRef9(speed);\n const categorizeText = (input) => {\n if (!input.trim()) return \"This content covers general topics.\";\n const text2 = input.toLowerCase();\n const categories = {\n Technology: {\n keywords: [\n \"technology\",\n \"software\",\n \"hardware\",\n \"ai\",\n \"artificial intelligence\",\n \"machine learning\",\n \"computer\",\n \"internet\",\n \"digital\",\n \"platform\",\n \"app\"\n ],\n summary: \"This content focuses on technology, software systems, and digital innovation.\"\n },\n Business: {\n keywords: [\n \"business\",\n \"marketing\",\n \"sales\",\n \"brand\",\n \"strategy\",\n \"market\",\n \"customer\",\n \"startup\",\n \"company\",\n \"growth\"\n ],\n summary: \"This content discusses business concepts, strategies, and market growth.\"\n },\n Education: {\n keywords: [\n \"education\",\n \"learning\",\n \"teaching\",\n \"students\",\n \"training\",\n \"course\",\n \"knowledge\",\n \"research\",\n \"study\"\n ],\n summary: \"This content is related to education, learning processes, and knowledge sharing.\"\n },\n Media: {\n keywords: [\n \"content\",\n \"video\",\n \"audio\",\n \"blog\",\n \"podcast\",\n \"social media\",\n \"youtube\",\n \"linkedin\",\n \"posts\"\n ],\n summary: \"This content explains media, communication formats, and content creation.\"\n },\n Human: {\n keywords: [\n \"human\",\n \"people\",\n \"communication\",\n \"engagement\",\n \"interaction\",\n \"society\",\n \"culture\",\n \"behavior\"\n ],\n summary: \"This content highlights human behavior, interaction, and social aspects.\"\n },\n Geography: {\n keywords: [\n \"geography\",\n \"location\",\n \"region\",\n \"country\",\n \"city\",\n \"map\",\n \"area\",\n \"population\"\n ],\n summary: \"This content relates to geographical regions and location-based information.\"\n },\n Nature: {\n keywords: [\n \"nature\",\n \"environment\",\n \"climate\",\n \"earth\",\n \"ecosystem\",\n \"forest\",\n \"water\",\n \"animals\",\n \"plants\"\n ],\n summary: \"This content focuses on nature, environment, and ecological systems.\"\n },\n Health: {\n keywords: [\n \"health\",\n \"medical\",\n \"fitness\",\n \"wellness\",\n \"mental\",\n \"physical\",\n \"disease\"\n ],\n summary: \"This content discusses health, wellness, and medical-related topics.\"\n }\n };\n const summaries = [];\n for (const key in categories) {\n if (categories[key].keywords.some((k) => text2.includes(k))) {\n summaries.push(categories[key].summary);\n }\n }\n return summaries.length ? summaries.slice(0, 2).join(\" \") : \"This content provides general informational insights.\";\n };\n const highlightWordAt = (startIndex) => {\n const ta = textAreaRef.current;\n if (!ta) return;\n const value = ta.value;\n let start = startIndex;\n while (start > 0 && /\\S/.test(value[start - 1])) {\n start--;\n }\n let end = startIndex;\n while (end < value.length && /\\S/.test(value[end])) {\n end++;\n }\n ta.focus();\n ta.setSelectionRange(start, end);\n };\n const formatTime2 = (sec) => {\n const m = Math.floor(sec / 60);\n const s = Math.floor(sec % 60);\n return `${m}:${s.toString().padStart(2, \"0\")}`;\n };\n const getSourceText = () => text;\n const speakFromTime = (time) => {\n window.speechSynthesis.cancel();\n const source = text;\n if (!source.trim()) return;\n const words = source.split(/\\s+/);\n const startWordIndex = Math.floor(time * WORDS_PER_SECOND);\n const charOffset = words.slice(0, startWordIndex).join(\" \").length + (startWordIndex > 0 ? 1 : 0);\n window.speechSynthesis.cancel();\n stopTimer();\n const u = new SpeechSynthesisUtterance(source.slice(charOffset));\n u.rate = speedRef.current;\n u.volume = volumeRef.current;\n u.onboundary = (e) => {\n if (e.name === \"word\" && highlightOnSkipRef.current) {\n highlightWordAt(charOffset + e.charIndex);\n }\n };\n u.onend = () => {\n stopTimer();\n highlightOnSkipRef.current = false;\n if (loopMode === 1 && loopCountRef.current === 0) {\n loopCountRef.current = 1;\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n if (loopMode === 2) {\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(duration);\n };\n utteranceRef.current = u;\n window.speechSynthesis.speak(u);\n setPlaying(true);\n startTimer(time);\n };\n const startTimer = (fromTime) => {\n stopTimer();\n const start = Date.now() - fromTime * 1e3;\n timerRef.current = setInterval(() => {\n const elapsed = (Date.now() - start) / 1e3;\n setCurrentTime(Math.min(elapsed, duration));\n }, 100);\n };\n const togglePlay = () => {\n if (!utteranceRef.current) {\n window.speechSynthesis.cancel();\n loopCountRef.current = 0;\n speakFromTime(currentTime);\n return;\n }\n if (playing) {\n window.speechSynthesis.pause();\n stopTimer();\n setPlaying(false);\n } else {\n window.speechSynthesis.resume();\n startTimer(currentTime);\n setPlaying(true);\n }\n };\n const stopTimer = () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n const getQuickSummary = () => {\n if (mode === \"page\") {\n const pageText = document.body.innerText.replace(/\\s+/g, \" \").trim();\n return pageText ? \"This page provides key information and functionality related to the current module.\" : \"No content available on this page.\";\n }\n return categorizeText(text);\n };\n const getPageContent = () => {\n return document.body.innerText.replace(/\\s+/g, \" \").trim();\n };\n const downloadAudio = () => {\n alert(\"Download audio requires Backend TTS integration\");\n };\n const skip = (sec) => {\n const next = Math.max(0, Math.min(currentTime + sec, duration));\n highlightOnSkipRef.current = true;\n window.speechSynthesis.cancel();\n stopTimer();\n setCurrentTime(next);\n speakFromTime(next);\n startTimer(next);\n };\n const stop = () => {\n window.speechSynthesis.cancel();\n stopTimer();\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(0);\n textAreaRef.current?.setSelectionRange(0, 0);\n utteranceRef.current = null;\n };\n useEffect14(() => {\n return () => {\n window.speechSynthesis.cancel();\n stopTimer();\n };\n }, []);\n useEffect14(() => {\n volumeRef.current = volume;\n }, [volume]);\n useEffect14(() => {\n speedRef.current = speed;\n }, [speed]);\n useEffect14(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n useEffect14(() => {\n if (!text.trim()) {\n setDuration(0);\n setCurrentTime(0);\n return;\n }\n const words = text.trim().split(/\\s+/).length;\n const baseDuration = words / WORDS_PER_SECOND;\n baseDurationRef.current = baseDuration;\n setDuration(baseDuration / speed);\n setCurrentTime(0);\n }, [text]);\n useEffect14(() => {\n if (!baseDurationRef.current) return;\n const progress = duration === 0 ? 0 : currentTime / duration;\n const newDuration = baseDurationRef.current / speed;\n const newCurrentTime = progress * newDuration;\n setDuration(newDuration);\n setCurrentTime(newCurrentTime);\n if (playing) {\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(newCurrentTime);\n }\n }, [speed]);\n useEffect14(() => {\n if (!autoPlayRef.current) return;\n if (!text.trim()) return;\n autoPlayRef.current = false;\n speakFromTime(0);\n }, [text]);\n const getVolumeIcon = () => {\n return volume === 0 ? \"/icons/mute-icon.png\" : \"/icons/sound-icon.png\";\n };\n return /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-container\",\n className: \"grid grid-cols-[4fr_1fr] gap-[10px] max-[900px]:grid-cols-1\",\n children: [\n /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-card\",\n className: \"border border-[#8ed1b2] bg-[#f1f7f7] rounded-[16px] overflow-hidden flex flex-col h-full\",\n children: [\n /* @__PURE__ */ jsx32(\"div\", { className: \"px-[16px] py-[12px] bg-[#e2ecf1] border-b border-[#8ed1b2] font-semibold\", children: \"Text to Speech\" }),\n /* @__PURE__ */ jsx32(\"div\", { className: \"flex flex-1 overflow-hidden\", children: /* @__PURE__ */ jsx32(\n \"textarea\",\n {\n ref: textAreaRef,\n placeholder: \"Enter text here...\",\n value: text,\n onChange: (e) => setText(e.target.value),\n className: \"w-full flex-1 h-[240px] min-h-[240px] max-h-[240px] border-none bg-transparent p-[16px] resize-none outline-none overflow-y-auto leading-[1.6]\"\n }\n ) }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex flex-wrap items-center gap-[10px] p-[12px] bg-[#eaf6f1] border-t border-[#8ed1b2] flex-shrink-0\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[8px] bg-[#d1e4e7] px-[12px] py-[8px] rounded-full overflow-x-auto\", children: [\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ jsx32(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${icons.skipBackward})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\",\n transform: \"scaleX(-1)\"\n }\n }\n ) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\",\n \"data-testid\": \"on-loop-btn\",\n onClick: () => {\n setLoopMode((prev) => prev === 2 ? 0 : prev + 1);\n },\n title: loopMode === 0 ? \"Loop off\" : loopMode === 1 ? \"Loop once\" : \"Loop continuously\",\n children: /* @__PURE__ */ jsxs27(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ jsx32(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n width: 6,\n height: 6,\n borderRadius: \"50%\",\n background: \"#1761a3\"\n }\n }\n ),\n loopMode === 2 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n fontSize: 10,\n fontWeight: 700,\n color: \"#1761a3\"\n },\n children: \"1\"\n }\n )\n ] })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[6px] w-[180px]\", children: [\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n className: \"flex-1 appearance-none h-[6px] rounded-[5px] cursor-pointer\",\n \"data-testid\": \"seek-bar\",\n type: \"range\",\n min: 0,\n max: duration,\n step: 0.01,\n value: currentTime,\n onChange: (e) => {\n const t = Number(e.target.value);\n setCurrentTime(t);\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(t);\n },\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg,\n rgba(23,97,163,1) 0%,\n rgba(77,175,131,1) ${currentTime / duration * 100}%,\n #e5e7eb ${currentTime / duration * 100}%,\n #e5e7eb 100%)`\n }\n }\n ),\n /* @__PURE__ */ jsxs27(\n \"span\",\n {\n style: {\n fontSize: 10,\n color: \"#4a5c57\",\n minWidth: 5,\n textAlign: \"right\"\n },\n children: [\n formatTime2(currentTime),\n \".\",\n formatTime2(duration)\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white border-none px-[12px] py-[6px] rounded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-entire-page-btn\",\n onClick: () => {\n const pageText = getPageContent();\n loopCountRef.current = 0;\n setText(pageText);\n setMode(\"page\");\n setCurrentTime(0);\n speakFromTime(0);\n },\n children: \"Reads Entire page\"\n }\n ),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white border-none px-[12px] py-[6px] rounded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-given-input\",\n onClick: () => {\n loopCountRef.current = 0;\n setMode(\"textarea\");\n setCurrentTime(0);\n setSummary(categorizeText(text));\n speakFromTime(0);\n },\n children: \"Reads input text\"\n }\n )\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex flex-col gap-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between items-center text-[13px] font-semibold text-[#243a36] mb-[10px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[10px]\", children: [\n /* @__PURE__ */ jsx32(\n \"div\",\n {\n onClick: () => setVolume(volume === 0 ? 1 : 0),\n style: {\n width: 18,\n height: 18,\n backgroundImage: `url(${getVolumeIcon()})`,\n backgroundSize: \"contain\",\n backgroundRepeat: \"no-repeat\",\n cursor: \"pointer\"\n }\n }\n ),\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n \"data-testid\": \"text-to-audio-volume\",\n type: \"range\",\n min: 0,\n max: 1,\n step: 0.01,\n value: volume,\n onChange: (e) => setVolume(Number(e.target.value)),\n className: \"w-full appearance-none h-[6px] rounded-[5px]\",\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg, \n rgba(23,97,163,1) 0%, \n rgba(77,175,131,1) ${volume * 100}%, \n #e5e7eb ${volume * 100}%, \n #e5e7eb 100%)`\n }\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between text-[13px] font-semibold mb-[10px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n \"data-testid\": \"test-to-audio-playbackspeed\",\n type: \"range\",\n min: 0.5,\n max: 2,\n step: 0.25,\n value: speed,\n className: \"w-full appearance-none h-[6px] rounded-[5px]\",\n onChange: (e) => setSpeed(Number(e.target.value)),\n style: {\n accentColor: \"#4daf83\",\n background: `linear-gradient(90deg,\n rgba(23,97,163,1) 0%,\n rgba(77,175,131,1) ${(speed - 0.5) / 1.5 * 100}%,\n #e5e7eb ${(speed - 0.5) / 1.5 * 100}%,\n #e5e7eb 100%)`\n }\n }\n ),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between text-xs text-gray-500 mt-1\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ jsx32(\"span\", { children: \"Faster\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsx32(\"div\", { \"data-testid\": \"quick-summary\", className: \"font-semibold mb-[8px]\", children: \"Quick Summary\" }),\n /* @__PURE__ */ jsx32(\"p\", { className: \"text-sm text-[#4a5c57] leading-[1.5]\", children: mode === \"textarea\" ? categorizeText(text) : getQuickSummary() })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/Notifications.tsx\nimport { useEffect as useEffect15, useRef as useRef10, useState as useState18 } from \"react\";\nimport { createPortal as createPortal2 } from \"react-dom\";\nimport { X as X4 } from \"lucide-react\";\nimport { jsx as jsx33, jsxs as jsxs28 } from \"react/jsx-runtime\";\nvar MahatiLocationAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const ref = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const [location, setLocation] = useState18(null);\n useEffect15(() => {\n if (!navigator.permissions) return;\n navigator.permissions.query({ name: \"geolocation\" }).then((res) => {\n setStatus(res.state);\n res.onchange = () => setStatus(res.state);\n });\n }, []);\n useEffect15(() => {\n if (status === \"granted\" && location) {\n onAllow?.(location.coords);\n onClose();\n }\n }, [status, location]);\n const requestLocation = () => {\n navigator.geolocation.getCurrentPosition(\n (pos) => {\n setLocation(pos);\n setStatus(\"granted\");\n },\n () => setStatus(\"denied\"),\n { enableHighAccuracy: true }\n );\n };\n useEffect15(() => {\n if (!isOpen) return;\n const h = (e) => !ref.current?.contains(e.target) && onClose();\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, [isOpen]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-sm\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n className: \"w-[144px] object-contain\",\n alt: \"location\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestLocation,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Location Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiCameraAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestCamera = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n video: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Camera error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect15(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Camera Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestCamera,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Camera Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiMicrophoneAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestMic = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n audio: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Microphone error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect15(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Microphone Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestMic,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Microphone Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionCard = ({\n headerTitle,\n title,\n testId,\n description,\n ctaText,\n onCtaClick,\n showInput = false,\n inputPlaceholder,\n onInputChange,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full max-w-[420px] overflow-hidden rounded-[16px] border-2 border-[#c5d9e6] bg-[#f1f7f7] shadow-[0_6px_16px_rgba(0,0,0,0.15)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between bg-gradient-to-r from-[#1761a3] to-[#4daf83] px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium text-white\", children: headerTitle }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-5 py-6\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-2 text-[18px] font-semibold text-[#111827]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-6 text-[14px] text-[#878787]\", children: description }),\n showInput && /* @__PURE__ */ jsx33(\n \"input\",\n {\n type: \"email\",\n placeholder: inputPlaceholder,\n onChange: (e) => onInputChange?.(e.target.value),\n className: \"mb-4 w-full rounded-[8px] border-2 border-[#c2dae8] bg-[#eaf2f6] px-[14px] py-[12px] text-[14px] focus:border-[#1b5fa7] focus:outline-none\"\n }\n ),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onCtaClick,\n className: \"w-full rounded-[8px] bg-[#1761a3] py-[12px] text-[14px] font-medium text-white hover:bg-[#174f8a] hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: ctaText\n }\n )\n ] })\n ]\n }\n );\n};\nvar MahatiPromotionModal = ({\n isOpen,\n onClose,\n ctaLink,\n openInNewTab,\n onCtaClick,\n testId,\n ...cardProps\n}) => {\n const ref = useRef10(null);\n const [email, setEmail] = useState18(\"\");\n useEffect15(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.(email);\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.assign(ctaLink);\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsx33(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: /* @__PURE__ */ jsx33(\n MahatiPromotionCard,\n {\n ...cardProps,\n onClose,\n onInputChange: setEmail,\n onCtaClick: handleCta\n }\n )\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV2Modal = ({\n isOpen,\n testId,\n onClose,\n headerTitle,\n title,\n description,\n ctaText,\n onCtaClick,\n ctaLink,\n openInNewTab = false,\n showBadgeImage = false,\n badgeImageSrc\n}) => {\n const ref = useRef10(null);\n useEffect15(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] overflow-hidden rounded-[16px] bg-gradient-to-b from-[#4daf83] via-[#2f8fa0] to-[#1761a3] text-white shadow-[0_20px_40px_rgba(0,0,0,0.35)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium\", children: headerTitle }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-6 py-10\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-4 text-[28px] font-semibold\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-10 max-w-[80%] text-[14px] opacity-90\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"rounded-[8px] bg-white px-8 py-3 text-[14px] font-semibold text-[#1761a3] hover:bg-[#f2f6fa] hover:shadow-[0_6px_18px_rgba(0,0,0,0.3)]\",\n children: ctaText\n }\n )\n ] }),\n showBadgeImage && badgeImageSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeImageSrc,\n alt: \"Promotion Badge\",\n className: \"absolute bottom-6 right-[-24px] h-[120px] w-[120px] object-contain\"\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV3Modal = ({\n isOpen,\n testId,\n onClose,\n title,\n description,\n ctaText,\n onCtaClick,\n secondaryText = \"Later\",\n onSecondaryClick,\n imageSrc,\n ctaLink,\n openInNewTab = false\n}) => {\n const ref = useRef10(null);\n useEffect15(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-[20px] top-[20px] flex h-[28px] w-[28px] items-center justify-center rounded-full bg-[#f1f5f9] hover:bg-[#e5e7eb]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n ),\n imageSrc && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-6 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: imageSrc,\n alt: \"Promotion\",\n className: \"h-[130px] w-[160px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h3\", { className: \"mb-3 text-[22px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 text-[14px] text-[#6b7280]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: ctaText\n }\n ),\n secondaryText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n onSecondaryClick?.();\n onClose();\n },\n className: \"mt-4 text-[14px] font-medium text-[#1761a3] hover:underline\",\n children: secondaryText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar BADGE_BG_MAP = {\n like: \"#F9595F\",\n mention: \"#E02424\",\n follow: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n comment: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n add: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\"\n};\nvar MahatiNotificationCard = ({\n title,\n testId,\n description,\n time,\n iconSrc,\n avatarSrc,\n badgeIconSrc,\n badgeType,\n primaryActionText,\n onPrimaryAction,\n secondaryActionText,\n onSecondaryAction,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex w-full max-w-[640px] items-start gap-4 rounded-[16px] border-2 border-[#c2e2d5] bg-[#f1f7f7] px-4 py-3 shadow-[0_2px_6px_rgba(0,0,0,0.08)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"relative h-[56px] w-[56px] flex-shrink-0 md:h-[64px] md:w-[64px]\", children: [\n iconSrc ? /* @__PURE__ */ jsx33(\"div\", { className: \"flex h-full w-full items-center justify-center rounded-[10px] bg-gradient-to-br from-[#1761a3] to-[#4daf83]\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: iconSrc,\n alt: \"\",\n className: \"h-[20px] w-[20px] md:h-[24px] md:w-[24px]\"\n }\n ) }) : avatarSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: avatarSrc,\n alt: \"User\",\n className: \"h-full w-full rounded-[10px] object-cover\"\n }\n ),\n badgeIconSrc && badgeType && /* @__PURE__ */ jsx33(\n \"div\",\n {\n className: \"absolute bottom-[-4px] right-[-4px] flex h-[24px] w-[24px] items-center justify-center rounded-full border-2 border-white\",\n style: { background: BADGE_BG_MAP[badgeType] },\n children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeIconSrc,\n alt: \"\",\n className: \"h-[12px] w-[12px]\"\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"mb-1 flex items-center gap-3\", children: [\n /* @__PURE__ */ jsx33(\"p\", { className: \"text-[14px] font-semibold text-[#111827] md:text-[16px]\", children: title }),\n time && /* @__PURE__ */ jsx33(\"span\", { className: \"whitespace-nowrap text-[10px] text-[#6b7280] md:text-[12px]\", children: time })\n ] }),\n description && /* @__PURE__ */ jsx33(\"p\", { className: \"mb-3 text-[12px] text-[#6b7280] md:text-[14px]\", children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ jsxs28(\"div\", { className: \"flex flex-col gap-3 sm:flex-row\", children: [\n primaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onPrimaryAction,\n className: \"flex-1 rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-[10px] text-[14px] font-medium text-white hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: primaryActionText\n }\n ),\n secondaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onSecondaryAction,\n className: \"flex-1 rounded-[8px] border-2 border-[#b7d9c9] bg-[#eaf6f1] py-[10px] text-[14px] font-medium text-[#2f6f5e] hover:bg-[#dff1ea]\",\n children: secondaryActionText\n }\n )\n ] })\n ] }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[24px] w-[24px] items-center justify-center rounded-full bg-[#d7e5ed] hover:bg-[#dcefe6] md:h-[32px] md:w-[32px]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n )\n ]\n }\n );\n};\nexport {\n Accordion,\n CardOverlayLoader,\n CardWithLoading,\n CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS,\n Filter,\n LoadingDots,\n LoadingDotsLinear,\n MahatiActivity,\n AsyncDropdown as MahatiAsyncDropdown,\n AvatarDropdown as MahatiAvatarDropdown,\n AvatarMultiSelectDropdown as MahatiAvatarMultiSelectDropdown,\n Button as MahatiButton,\n Calendar as MahatiCalendar,\n MahatiCameraAccessModal,\n Card as MahatiCard,\n CascadingDropdown as MahatiCascadingDropdown,\n MahatiChartAnalyticsWidget,\n ConfettiExplosion as MahatiConfettiExplosion,\n Dropdown as MahatiDropdown,\n FormContainer as MahatiFormContainer,\n GroupedDropdown as MahatiGroupedDropdown,\n Input as MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n Modal as MahatiModal,\n MultiSelectDropdown as MahatiMultiSelectDropdown,\n MahatiNotificationCard,\n MahatiPromotionModal as MahatiPromotionModal_V1,\n MahatiPromotionModalV2Modal as MahatiPromotionModal_V2,\n MahatiPromotionModalV3Modal as MahatiPromotionModal_V3,\n RealisticConfetti as MahatiRealisticConfetti,\n MahatiSearch,\n SearchableDropdown as MahatiSearchableDropdown,\n MahatiStatus,\n TabbedInterface as MahatiTabbedInterface,\n Table as MahatiTable,\n TableWithTab as MahatiTableWithTab,\n TexttoAudio as MahatiTexttoAudio,\n ToastMessage as MahatiToastMessage,\n Tooltip2 as MahatiTooltip,\n Spinner\n};\n"]}