@mahatisystems/mahati-ui-components 5.2.1 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +17 -24
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +24 -3
- package/dist/index.d.ts +24 -3
- package/dist/index.js +305 -300
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +305 -300
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/dist/check-mark_1-6GNY6HFY.png +0 -0
- package/dist/check-mark_2-YWM2KQA2.png +0 -0
- package/dist/close-EEDOIEDC.png +0 -0
- package/dist/close_copy_1-PFFNUORV.png +0 -0
- package/dist/danger_1-LUIFNS2J.png +0 -0
- package/dist/danger_1_1-PHLDGYEA.png +0 -0
- package/dist/danger_2-YTNTGWQA.png +0 -0
- package/dist/notification_1-K2I7DVDH.png +0 -0
- package/dist/notification_2-KFI6MN7T.png +0 -0
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.js"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__commonJS","cb","mod","__require","exports","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","isNodeMode","__esModule","value","__toCommonJS","require_down_4","exports2","module2","require_performance_peak_icon","require_calendar_3","require_increase","require_decrease","require_check_mark_1","require_danger_1","require_notification_1","require_close","require_check_mark_2","require_danger_2","require_danger_1_1","require_notification_2","require_close_copy_1","index_exports","Accordion","CardOverlayLoader","CardWithLoading","CircularSpinner","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","LoadingDots","LoadingDotsLinear","MahatiActivity","MahatiAsyncDropdown","AsyncDropdown","MahatiAvatarDropdown","AvatarDropdown","MahatiAvatarMultiSelectDropdown","AvatarMultiSelectDropdown","MahatiButton","Button","MahatiCalendar","Calendar","MahatiCameraAccessModal","MahatiCard","Card","MahatiCascadingDropdown","CascadingDropdown","MahatiChartAnalyticsWidget","MahatiConfettiExplosion","ConfettiExplosion","MahatiDropdown","Dropdown","MahatiFormContainer","FormContainer","MahatiGroupedDropdown","GroupedDropdown","MahatiInput","Input","MahatiLocationAccessModal","MahatiMicrophoneAccessModal","MahatiModal","Modal","MahatiMultiSelectDropdown","MultiSelectDropdown","MahatiNotificationCard","MahatiPromotionModal_V1","MahatiPromotionModal","MahatiPromotionModal_V2","MahatiPromotionModalV2Modal","MahatiPromotionModal_V3","MahatiPromotionModalV3Modal","MahatiRealisticConfetti","RealisticConfetti","MahatiSearch","MahatiSearchableDropdown","SearchableDropdown","MahatiStatus","MahatiTabbedInterface","TabbedInterface","MahatiTable","Table","MahatiTableWithTab","TableWithTab","MahatiTexttoAudio","TexttoAudio","MahatiToastMessage","ToastMessage","MahatiTooltip","Tooltip2","Spinner","module","import_react","require","import_lucide_react","import_jsx_runtime","title","children","defaultOpen","accordionTestId","headerTestId","contentTestId","useState","open","setOpen","jsxs","className","onClick","jsx","ChevronUp","ChevronDown","displayName","import_react2","import_jsx_runtime2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","IconButtonGroup","default","forwardRef","direction","props","ref","gap","style","variantClasses","destructive","outline","ghost","link","dotted","pill","sizeClasses","sm","md","lg","icon","ButtonBase","variant","size","iconButton","iconButtonHeightClass","iconButtonWidthClass","iconButtonBgClass","iconButtonRadiusClass","iconButtonBgPaddingClass","iconButtonHoverBgClass","iconButtonHoverIntensity","testId","color","height","width","minHeight","minWidth","startsWith","background","borderRadius","import_react3","import_lucide_react2","import_jsx_runtime3","cardContent","cardBackContent","collapsible","flippable","backgroundColor","onFlip","isFlipped","setIsFlipped","contentId","useId","handleFlip","newState","mainContent","variantStyles","elevated","outlined","subtle","figma","sizeStyles","type","e","stopPropagation","p","id","React4","import_lucide_react3","import_jsx_runtime4","MODAL_WIDTH_MAP","xl","getPositionClass","position","isOpen","onClose","subtitle","customWidth","margin","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","document","addEventListener","removeEventListener","body","overflow","Fragment","role","includes","X","strokeWidth","label","disabled","import_jsx_runtime5","onSubmit","import_react4","import_jsx_runtime6","hasError","errorMessage","onChange","handleChange","import_react6","import_lucide_react4","import_react_dom","import_react5","import_hi","import_hi2","import_jsx_runtime7","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","calendartestId","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","useRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","Math","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","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","i","totalCells","remainingCells","renderTimeSelector","hours12","Array","length","_","hours24","minutes","marginBottom","transform","paddingLeft","paddingRight","border","map","HiChevronDown","zone","marginTop","Number","paddingTop","flex","HiOutlineClock","defaultIcon","HiCalendarDays","readOnly","paddingBottom","cursor","opacity","padding","HiChevronLeft","HiChevronRight","import_jsx_runtime8","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","SelectWrapper","opt","SelectIcon","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","createPortal","import_react7","import_jsx_runtime9","getFontFamily","font","lower","trim","tabs","defaultActiveTab","onTabChange","draggableTabs","onReorderTabs","orientation","verticalPosition","showTabCloseIconInHeader","tabCloseIconPosition","tabCloseIconContent","onCloseTab","tabHeaderFont","tabContentFont","sectionTitleFont","sectionDescriptionFont","activeIndex","setActiveIndex","draggingIndex","setDraggingIndex","effectiveCloseIconContent","tabHeaderFontFamily","tabContentFontFamily","handleTabClick","index","handleDragStart","handleDragOver","preventDefault","handleDrop","fromIndex","toIndex","prevActive","active","handleDragEnd","headerButtons","tab","isDragging","showClose","closeIcon2","draggable","onDragStart","onDragOver","onDrop","onDragEnd","content","fontFamily","import_react8","import_jsx_runtime10","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","basic","dark","underline","shadow","glass","gradient","import_react9","import_outline","import_jsx_runtime11","getFontFamily2","renderCellValue","isValidElement","isArray","some","v","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","tableProps","tabProps","rearrange","getRowId","renderTabContent","onRowOpenInTab","description","tabLabelKey","data","setTabs","labelColumnKey","sectionTitleFontFamily","sectionDescriptionFontFamily","t","rawLabel","rowIndex","handleRowClick","existsIndex","findIndex","next2","splice","next","handleCloseTab","filter","isRowSelected","handleReorderTabs","moved","tabbedInterfaceTabs","XMarkIcon","effectiveShowHeaderClose","header","colSpan","selected","rowId","import_react10","import_outline2","import_jsx_runtime12","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","item","truncated","substring","mode","ArrowDownOnSquareIcon","idx","isExpanded","has","toggleRow","delete","add","import_react17","import_react11","import_jsx_runtime13","assetSrc","anyM","src","arrowDownIcon","getTriggerClasses","base","getMenuClasses","getOptionClasses","ChartDropdown","internalValue","setInternalValue","displayValue","useMemo","optionValue","onKeyDown","alt","import_react12","import_chart","import_react_chartjs_2","import_jsx_runtime14","Chart","register","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","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","Line","Bar","Doughnut","import_jsx_runtime15","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","marginLeft","import_jsx_runtime16","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","import_jsx_runtime17","HorizontalBarChart","bars","xAxisConfig","topPerformer","safeBars","bar","whiteSpace","labels","totalLabels","approxCharWidth","centerOffset","maxVal","barLengthPercentage","import_react13","import_jsx_runtime18","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","import_react14","import_jsx_runtime19","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","import_jsx_runtime20","DEFAULT_COLORS","LollipopChart","items","MenuButtonDots","maxValue","gridPositions","axisLabels","slice","textOverflow","reverse","maxWidth","import_jsx_runtime21","defaultGradient","ColumnChart","columns","yAxisConfig","safeColumns","minValue","yAxisLabels","formatValue","toFixed","calculateHeight","column","columnHeightPercentage","import_react15","import_jsx_runtime22","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","import_jsx_runtime23","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","import_react16","import_jsx_runtime24","DEFAULT_COLORS2","aggregating","outstanding","writeOff","StackBarChart","setTooltip","safeData","COLORS","getLabel","l","defaultLabels","handleSegmentMouseEnter","total","totalHeight","aggregatingPercent","outstandingPercent","writeOffPercent","backdropFilter","import_jsx_runtime25","assetSrc3","FALLBACK_ICONS","performancePeakIcon","calendarIcon","increaseIcon","decreaseIcon","getIconSrc","imported","fallback","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MenuDotsButton","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","import_react18","import_jsx_runtime26","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","import_react19","import_react_dom2","import_jsx_runtime27","assetSrc4","checkMarkIcon","dangerIcon","notificationIcon","closeIcon","checkMarkIcon2","dangerIcon2","dangerIcon1_1","notificationIcon2","closeIconCopy","FALLBACK_ICONS2","getIconSrc2","getStripGradient","getTitleColor","getIcon","objectFit","customTitle","message","duration","custom","action","rest","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","titleFontFamily","messageFontFamily","messageColor","closeIconWidth","closeIconHeight","btn","import_react20","import_jsx_runtime28","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","import_react21","import_jsx_runtime29","import_jsx_runtime30","SrOnly","primaryColor","borderTopColor","ringCount","rings","ringSize","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","backdrop","dots","imageUrl","import_react22","import_lucide_react5","import_jsx_runtime31","search","setSearch","removeValue","toggleValue","filteredOptions","lbl","checked","level2","level1","level3","displayText","isSectionSelected","isChildChecked","toggleSection","toggleChild","exists","flatMap","loadOptions","setOptions","setLoading","then","finally","Loader2","import_react23","import_jsx_runtime32","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","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","source","words","startWordIndex","charOffset","speechSynthesis","cancel","stopTimer","u","SpeechSynthesisUtterance","rate","onboundary","charIndex","onend","speak","startTimer","fromTime","setInterval","togglePlay","resume","clearInterval","getQuickSummary","pageText","innerText","getPageContent","downloadAudio","alert","skip","baseDuration","newDuration","newCurrentTime","step","import_react24","import_react_dom3","import_lucide_react6","import_jsx_runtime33","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","console","error","requestMic","audio","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","href","showBadgeImage","badgeImageSrc","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction"],"mappings":"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C,EAAE;IAChD,IAAMwmC,YAAY,AAAC,CAAA,GAAGxC,eAAehkC,MAAK,AAAC,EAAEwlC;IAC7C,IAAMiB,WAAW,AAAC,CAAA,GAAGzC,eAAehkC,MAAK,AAAC,EAAEqgC;IAC5C,IAAMqG,iBAAiB,wBAACC;QACtB,IAAI,CAACA,MAAMj+B,IAAI,IAAI,OAAO;QAC1B,IAAMk+B,QAAQD,MAAM51C,WAAW;QAC/B,IAAM81C,aAAa;YACjBC,YAAY;gBACVC,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAk2B,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAm2B,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAo2B,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAq2B,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAs2B,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAu2B,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;YACAw2B,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDj2B,SAAS;YACX;QACF;QACA,IAAMy2B,YAAY,EAAE;QACpB,IAAK,IAAMj/C,OAAOu+C,WAAY;YAC5B,IAAIA,UAAU,CAACv+C,IAAI,CAACy+C,QAAQ,CAACj6B,IAAI,CAAC,SAAC0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","sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports2, module2) {\n module2.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\"(exports2, module2) {\n module2.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\"(exports2, module2) {\n module2.exports = \"./calendar-3-SFJ52KIR.png\";\n }\n});\n\n// src/assets/icons/increase.png\nvar require_increase = __commonJS({\n \"src/assets/icons/increase.png\"(exports2, module2) {\n module2.exports = \"./increase-QM2727GU.png\";\n }\n});\n\n// src/assets/icons/decrease.png\nvar require_decrease = __commonJS({\n \"src/assets/icons/decrease.png\"(exports2, module2) {\n module2.exports = \"./decrease-SMWSBU7A.png\";\n }\n});\n\n// src/assets/icons/check-mark_1.png\nvar require_check_mark_1 = __commonJS({\n \"src/assets/icons/check-mark_1.png\"(exports2, module2) {\n module2.exports = \"./check-mark_1-6GNY6HFY.png\";\n }\n});\n\n// src/assets/icons/danger_1.png\nvar require_danger_1 = __commonJS({\n \"src/assets/icons/danger_1.png\"(exports2, module2) {\n module2.exports = \"./danger_1-LUIFNS2J.png\";\n }\n});\n\n// src/assets/icons/notification_1.png\nvar require_notification_1 = __commonJS({\n \"src/assets/icons/notification_1.png\"(exports2, module2) {\n module2.exports = \"./notification_1-K2I7DVDH.png\";\n }\n});\n\n// src/assets/icons/close.png\nvar require_close = __commonJS({\n \"src/assets/icons/close.png\"(exports2, module2) {\n module2.exports = \"./close-EEDOIEDC.png\";\n }\n});\n\n// src/assets/icons/check-mark_2.png\nvar require_check_mark_2 = __commonJS({\n \"src/assets/icons/check-mark_2.png\"(exports2, module2) {\n module2.exports = \"./check-mark_2-YWM2KQA2.png\";\n }\n});\n\n// src/assets/icons/danger_2.png\nvar require_danger_2 = __commonJS({\n \"src/assets/icons/danger_2.png\"(exports2, module2) {\n module2.exports = \"./danger_2-YTNTGWQA.png\";\n }\n});\n\n// src/assets/icons/danger_1_1.png\nvar require_danger_1_1 = __commonJS({\n \"src/assets/icons/danger_1_1.png\"(exports2, module2) {\n module2.exports = \"./danger_1_1-PHLDGYEA.png\";\n }\n});\n\n// src/assets/icons/notification_2.png\nvar require_notification_2 = __commonJS({\n \"src/assets/icons/notification_2.png\"(exports2, module2) {\n module2.exports = \"./notification_2-KFI6MN7T.png\";\n }\n});\n\n// src/assets/icons/close_copy_1.png\nvar require_close_copy_1 = __commonJS({\n \"src/assets/icons/close_copy_1.png\"(exports2, module2) {\n module2.exports = \"./close_copy_1-PFFNUORV.png\";\n }\n});\n\n// src/index.ts\nvar index_exports = {};\n__export(index_exports, {\n Accordion: () => Accordion,\n CardOverlayLoader: () => CardOverlayLoader,\n CardWithLoading: () => CardWithLoading,\n CircularSpinner: () => CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS: () => DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS: () => DEFAULT_STATUS_OPTIONS,\n Filter: () => Filter,\n LoadingDots: () => LoadingDots,\n LoadingDotsLinear: () => LoadingDotsLinear,\n MahatiActivity: () => MahatiActivity,\n MahatiAsyncDropdown: () => AsyncDropdown,\n MahatiAvatarDropdown: () => AvatarDropdown,\n MahatiAvatarMultiSelectDropdown: () => AvatarMultiSelectDropdown,\n MahatiButton: () => Button,\n MahatiCalendar: () => Calendar,\n MahatiCameraAccessModal: () => MahatiCameraAccessModal,\n MahatiCard: () => Card,\n MahatiCascadingDropdown: () => CascadingDropdown,\n MahatiChartAnalyticsWidget: () => MahatiChartAnalyticsWidget,\n MahatiConfettiExplosion: () => ConfettiExplosion,\n MahatiDropdown: () => Dropdown,\n MahatiFormContainer: () => FormContainer,\n MahatiGroupedDropdown: () => GroupedDropdown,\n MahatiInput: () => Input,\n MahatiLocationAccessModal: () => MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal: () => MahatiMicrophoneAccessModal,\n MahatiModal: () => Modal,\n MahatiMultiSelectDropdown: () => MultiSelectDropdown,\n MahatiNotificationCard: () => MahatiNotificationCard,\n MahatiPromotionModal_V1: () => MahatiPromotionModal,\n MahatiPromotionModal_V2: () => MahatiPromotionModalV2Modal,\n MahatiPromotionModal_V3: () => MahatiPromotionModalV3Modal,\n MahatiRealisticConfetti: () => RealisticConfetti,\n MahatiSearch: () => MahatiSearch,\n MahatiSearchableDropdown: () => SearchableDropdown,\n MahatiStatus: () => MahatiStatus,\n MahatiTabbedInterface: () => TabbedInterface,\n MahatiTable: () => Table,\n MahatiTableWithTab: () => TableWithTab,\n MahatiTexttoAudio: () => TexttoAudio,\n MahatiToastMessage: () => ToastMessage,\n MahatiTooltip: () => Tooltip2,\n Spinner: () => Spinner\n});\nmodule.exports = __toCommonJS(index_exports);\n\n// src/components/accordion.tsx\nvar import_react = require(\"react\");\nvar import_lucide_react = require(\"lucide-react\");\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nfunction Accordion({\n title,\n children,\n defaultOpen = false,\n accordionTestId,\n headerTestId,\n contentTestId\n}) {\n const [open, setOpen] = (0, import_react.useState)(defaultOpen);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(\n \"div\",\n {\n \"data-testid\": accordionTestId,\n className: \"\\r\\n w-full\\r\\n max-w-full\\r\\n border border-slate-200\\r\\n overflow-hidden\\r\\n bg-white\\r\\n rounded-xl\\r\\n sm:max-w-[684px]\\r\\n \",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(\n \"button\",\n {\n \"data-testid\": headerTestId,\n onClick: () => setOpen(!open),\n className: `\n w-full\n flex items-center justify-between\n font-medium\n border-none\n cursor-pointer\n min-h-[52px]\n px-4\n transition\n hover:opacity-95\n focus:outline-none\n sm:min-h-[60px]\n sm:px-6\n ${open ? \"text-white bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\" : \"text-slate-800 bg-white\"}\n `,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", { children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", { className: \"inline-flex items-center justify-center\", children: open ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronUp, { className: \"w-5 h-5\" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronDown, { className: \"w-5 h-5\" }) })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\n \"div\",\n {\n \"data-testid\": contentTestId,\n className: \"\\r\\n w-full\\r\\n overflow-hidden\\r\\n px-6 py-4\\r\\n text-slate-600\\r\\n border-t border-slate-200\\r\\n \",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"div\", { className: \"w-full box-border\", children })\n }\n )\n ]\n }\n );\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nvar import_react2 = __toESM(require(\"react\"));\nvar import_jsx_runtime2 = require(\"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 = import_react2.default.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\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 = import_react2.default.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__ */ (0, import_jsx_runtime2.jsx)(\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__ */ (0, import_jsx_runtime2.jsx)(\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\nvar import_react3 = __toESM(require(\"react\"));\nvar import_lucide_react2 = require(\"lucide-react\");\nvar import_jsx_runtime3 = require(\"react/jsx-runtime\");\nvar Card = import_react3.default.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] = (0, import_react3.useState)(defaultOpen);\n const [isFlipped, setIsFlipped] = (0, import_react3.useState)(false);\n const contentId = import_react3.default.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__ */ (0, import_jsx_runtime3.jsx)(\n \"div\",\n {\n className: flippable ? \"perspective-[1000px]\" : \"\",\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(\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__ */ (0, import_jsx_runtime3.jsxs)(\"div\", { className: flippable ? \"backface-hidden\" : \"\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(\n \"div\",\n {\n className: `flex items-center justify-between ${open && mainContent ? \"mb-4\" : \"\"}`,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\"h4\", { className: \"text-xl font-semibold text-slate-800 leading-7\", children: title }),\n collapsible && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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__ */ (0, import_jsx_runtime3.jsx)(import_lucide_react2.ChevronUp, { className: \"w-5 h-5 text-white\" }) : /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_lucide_react2.ChevronDown, { className: \"w-5 h-5 text-white\" })\n }\n )\n ]\n }\n ),\n mainContent && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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__ */ (0, import_jsx_runtime3.jsx)(\"div\", { className: \"overflow-hidden\", children: mainContent })\n }\n )\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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\nvar React4 = __toESM(require(\"react\"));\nvar import_lucide_react3 = require(\"lucide-react\");\nvar import_jsx_runtime4 = require(\"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__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\n \"div\",\n {\n className: `fixed inset-0 z-[9999] pointer-events-none flex p-4 ${getPositionClass(\n position\n )}`,\n children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsxs)(\"div\", { className: \"flex items-center gap-3 flex-1\", children: [\n headerIcon && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\"div\", { children: headerIcon }),\n /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(\"div\", { className: \"flex-1\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react3.X, { size: 20, strokeWidth: 2 })\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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\nvar import_jsx_runtime5 = require(\"react/jsx-runtime\");\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(\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\nvar import_react4 = __toESM(require(\"react\"));\nvar import_jsx_runtime6 = require(\"react/jsx-runtime\");\nvar Input = import_react4.default.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__ */ (0, import_jsx_runtime6.jsxs)(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex flex-col w-full mb-4\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(\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__ */ (0, import_jsx_runtime6.jsx)(\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\nvar import_react6 = require(\"react\");\nvar import_lucide_react4 = require(\"lucide-react\");\nvar import_react_dom = require(\"react-dom\");\n\n// src/components/Calendar.tsx\nvar import_react5 = require(\"react\");\nvar import_hi = require(\"react-icons/hi\");\nvar import_hi2 = require(\"react-icons/hi2\");\nvar import_jsx_runtime7 = require(\"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] = (0, import_react5.useState)(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = (0, import_react5.useState)(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = (0, import_react5.useState)({ start: null, end: null });\n const [isOpen, setIsOpen] = (0, import_react5.useState)(false);\n const [activeField, setActiveField] = (0, import_react5.useState)(\"start\");\n const [showTimeSelector, setShowTimeSelector] = (0, import_react5.useState)(false);\n const [selectedHour, setSelectedHour] = (0, import_react5.useState)(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = (0, import_react5.useState)(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = (0, import_react5.useState)(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = (0, import_react5.useState)(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = (0, import_react5.useState)(false);\n const [internalDateFormat, setInternalDateFormat] = (0, import_react5.useState)(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = (0, import_react5.useState)(timeZoneFormat);\n const [deviceScale, setDeviceScale] = (0, import_react5.useState)(1);\n const [positionAbove, setPositionAbove] = (0, import_react5.useState)(false);\n const containerRef = (0, import_react5.useRef)(null);\n const calendarRef = (0, import_react5.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 (0, import_react5.useEffect)(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n (0, import_react5.useEffect)(() => {\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 (0, import_react5.useEffect)(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n (0, import_react5.useEffect)(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n (0, import_react5.useEffect)(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n (0, import_react5.useEffect)(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n (0, import_react5.useEffect)(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n (0, import_react5.useEffect)(() => {\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?.({ hour: 12, minute: 0, period: \"AM\" });\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col h-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 overflow-y-auto\", children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginBottom: scaled(12) }, children: [\n showTimeFormatToggle && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"div\", { style: { marginBottom: scaled(12) }, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black\",\n style: { fontSize: scale * 12 },\n children: \"Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex items-center\",\n style: { gap: scale * 8 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex items-start\",\n style: { gap: scale * 15 },\n children: [\n showDateFormatSelector && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black text-center\",\n style: { fontSize: scale * 12 },\n children: \"Date Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { children: format }, format))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black text-right\",\n style: { fontSize: scale * 12 },\n children: \"Time Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { children: zone }, zone))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginTop: scale * 16 }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginTop: scale * 12 }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"border-t border-[#e5e7eb]\",\n style: { paddingTop: scale * 15 },\n children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(import_hi2.HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n ref: containerRef,\n className: `relative ${className ?? \"\"}`,\n \"data-testid\": calendartestId,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"relative\", children: [\n showIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 24\n },\n children: enableRangeSelection ? /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"text-gray-500\",\n style: { fontSize: scale * 12 },\n children: \"From Date\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 12 }, children: \"To Date\" }),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ] })\n ]\n }\n )\n ] }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseDateClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: !showTimeSelector && enableTimeSelection ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: !showTimeSelector && enableTimeSelection ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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 background: showTimeSelector ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: showTimeSelector ? \"white\" : \"#111827\"\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: timeValue ? formatTime(\n timeValue,\n internalTimeFormat\n ) : \"Choose Time\" })\n ]\n }\n )\n ] })\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"div\", { style: { marginBottom: scale * 22 }, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiChevronLeft,\n {\n style: {\n width: scaled(10),\n height: scaled(10)\n }\n }\n )\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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 /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiChevronRight,\n {\n style: {\n width: scaled(10),\n height: scaled(10)\n }\n }\n )\n }\n )\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"div\",\n {\n className: \"grid grid-cols-7\",\n style: { gap: scale * 8 },\n children: renderDays()\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"border-t border-gray-200\",\n style: { padding: scale * 8 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n showTodayButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center rounded-md font-semibold\",\n style: {\n height: scale * 38,\n background: \"rgba(23,97,163,0.15)\",\n color: \"#1761A3\"\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi2.HiCalendarDays,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"button\",\n {\n onClick: clearDate,\n className: \"rounded-md font-semibold\",\n style: {\n height: scale * 38,\n background: \"rgba(239,68,68,0.15)\",\n color: \"#EF4444\"\n },\n children: \"Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"button\",\n {\n onClick: handleDateConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Date\"\n }\n )\n ]\n }\n )\n ]\n }\n )\n }\n )\n ]\n }\n );\n};\nCalendar.displayName = \"Calendar\";\n\n// src/components/Filter.tsx\nvar import_jsx_runtime8 = require(\"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] = (0, import_react6.useState)(false);\n const [values, setValues] = (0, import_react6.useState)({\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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"relative\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\n \"div\",\n {\n className: \"absolute right-0 mt-3 z-50\",\n \"data-testid\": testId ? `${testId}-model` : void 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"w-[360px] bg-white border border-slate-200 rounded-lg shadow\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between items-center px-5 py-3 border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"h3\", { className: \"text-base font-semibold\", children: \"Add Filter\" }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.X, { className: \"w-4 h-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SelectWrapper, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SelectIcon, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SelectWrapper, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SelectIcon, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between items-center px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsxs)(\"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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"h6\", { className: \"font-semibold text-sm\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"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__ */ (0, import_jsx_runtime8.jsx)(\"div\", { className: \"relative w-full mb-3\", children });\nvar SelectIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"absolute right-3 top-1/2 -translate-y-1/2 text-slate-500 pointer-events-none\", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.ChevronDown, { 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] = (0, import_react6.useState)(false);\n const triggerRef = (0, import_react6.useRef)(null);\n const dropdownRef = (0, import_react6.useRef)(null);\n const [pos, setPos] = (0, import_react6.useState)(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 (0, import_react6.useEffect)(() => {\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 (0, import_react6.useEffect)(() => {\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__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\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__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n import_lucide_react4.ChevronDown,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && (0, import_react_dom.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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] = (0, import_react6.useState)(false);\n const triggerRef = (0, import_react6.useRef)(null);\n const dropdownRef = (0, import_react6.useRef)(null);\n const [pos, setPos] = (0, import_react6.useState)(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 (0, import_react6.useEffect)(() => {\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 (0, import_react6.useEffect)(() => {\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__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\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__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n import_lucide_react4.ChevronDown,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && (0, import_react_dom.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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\nvar import_react7 = require(\"react\");\nvar import_jsx_runtime9 = require(\"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] = (0, import_react7.useState)(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = (0, import_react7.useState)(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n (0, import_react7.useEffect)(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n (0, import_react7.useEffect)(() => {\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__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n const isDragging = draggableTabs && draggingIndex === index;\n const showClose = showTabCloseIconInHeader && !!onCloseTab;\n const closeIcon2 = showClose ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\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__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"flex min-w-0 items-center gap-2\", children: [\n tabCloseIconPosition === \"left\" && closeIcon2,\n tab.icon && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"span\", { children: tab.icon }),\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"span\", { className: \"truncate\", children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon2\n ] }),\n variant === \"underline\" && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\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__ */ (0, import_jsx_runtime9.jsx)(\"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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"grid gap-6 md:grid-cols-[minmax(180px,220px)_1fr]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"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__ */ (0, import_jsx_runtime9.jsx)(\"div\", { children: content })\n ] }) : /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"grid gap-6 md:grid-cols-[1fr_minmax(180px,220px)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"div\", { children: content }),\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"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\nvar import_react8 = require(\"react\");\nvar import_jsx_runtime10 = require(\"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] = (0, import_react8.useState)(false);\n const [internalSelected, setInternalSelected] = (0, import_react8.useState)(null);\n const dropdownRef = (0, import_react8.useRef)(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n (0, import_react8.useEffect)(() => {\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__ */ (0, import_jsx_runtime10.jsxs)(\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__ */ (0, import_jsx_runtime10.jsx)(\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__ */ (0, import_jsx_runtime10.jsx)(\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__ */ (0, import_jsx_runtime10.jsx)(\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\nvar import_react9 = __toESM(require(\"react\"));\nvar import_outline = require(\"@heroicons/react/24/outline\");\nvar import_jsx_runtime11 = require(\"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 (import_react9.default.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"span\", { className: \"text-slate-300\", children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => import_react9.default.isValidElement(v))) return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_jsx_runtime11.Fragment, { 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__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"flex flex-col gap-2\", children: headers.map((h) => /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsx)(\"span\", { className: \"w-full sm:w-48 text-xs font-semibold uppercase tracking-wide text-slate-500\", children: h.label }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"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] = (0, import_react9.useState)([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n (0, import_react9.useEffect)(() => {\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"flex justify-end\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsx)(import_outline.XMarkIcon, { className: \"h-3 w-3\" }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mb-4\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\n \"h2\",\n {\n className: \"text-xl font-semibold text-slate-900\",\n style: { fontFamily: sectionTitleFontFamily },\n children: title\n }\n ),\n description && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\n \"p\",\n {\n className: \"mt-1 text-sm text-slate-500\",\n style: { fontFamily: sectionDescriptionFontFamily },\n children: description\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"overflow-x-auto w-full rounded-xl border border-slate-200\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"min-w-[900px]\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"table\", { className: \"min-w-full border-collapse text-sm\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"thead\", { className: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"tr\", { children: headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"tbody\", { className: \"bg-white\", children: [\n data.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mt-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mb-3 flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"h3\", { className: \"text-sm font-semibold uppercase tracking-wide text-slate-500\", children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"p\", { className: \"text-xs text-slate-500\", children: \"Drag the tab headers to change their order.\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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\nvar import_react10 = __toESM(require(\"react\"));\nvar import_outline2 = require(\"@heroicons/react/24/outline\");\nvar import_jsx_runtime12 = require(\"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] = (0, import_react10.useState)(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = (0, import_react10.useState)(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = (0, import_react10.useState)(\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__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"span\", { children: \"...\" }, \"s\"));\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"span\", { children: \"...\" }, \"e\"));\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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 (import_react10.default.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) => import_react10.default.isValidElement(item))) return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_jsx_runtime12.Fragment, { 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__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"mb-3 flex flex-wrap justify-between gap-3\", children: [\n searchable && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\n \"button\",\n {\n onClick: onResetSearch,\n className: \"absolute right-2 top-2\",\n children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_outline2.XMarkIcon, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex gap-2\", children: [\n onDownloadPDF && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(import_outline2.ArrowDownOnSquareIcon, { className: \"h-5 w-5\" })\n }\n ),\n onDownloadExcel && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\n \"div\",\n {\n className: \"overflow-x-auto rounded-xl border border-[#1761A3] bg-white\",\n \"data-testid\": tableTestId,\n children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"table\", { className: \"w-full min-w-[900px] table-fixed\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"thead\", { className: \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"tr\", { children: [\n headers.map((header, idx) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"th\", { className: \"px-3 py-2 text-white font-bold\", children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"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__ */ (0, import_jsx_runtime12.jsxs)(import_react10.default.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\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__ */ (0, import_jsx_runtime12.jsx)(\"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__ */ (0, import_jsx_runtime12.jsx)(\"td\", { className: \"px-3 py-2 text-center\", children: actions(row) })\n ]\n }\n ),\n summary && isExpanded && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex justify-center mt-3 gap-2 items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\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\nvar import_react17 = require(\"react\");\n\n// src/components/ChartDropdown.tsx\nvar import_react11 = require(\"react\");\nvar import_jsx_runtime13 = require(\"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] = (0, import_react11.useState)(false);\n const [internalValue, setInternalValue] = (0, import_react11.useState)(value);\n const dropdownRef = (0, import_react11.useRef)(null);\n (0, import_react11.useEffect)(() => {\n if (value !== void 0) setInternalValue(value);\n }, [value]);\n const displayValue = value !== void 0 ? value : internalValue;\n const selectedOption = (0, import_react11.useMemo)(\n () => options.find((opt) => opt.value === displayValue),\n [options, displayValue]\n );\n (0, import_react11.useEffect)(() => {\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__ */ (0, import_jsx_runtime13.jsxs)(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative inline-block ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\"label\", { className: \"block mb-1 text-xs font-medium text-[rgba(55,65,81,1)]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(\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__ */ (0, import_jsx_runtime13.jsx)(\"span\", { className: \"overflow-hidden text-ellipsis whitespace-nowrap\", children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\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__ */ (0, import_jsx_runtime13.jsx)(\"div\", { className: getMenuClasses(variant), role: \"listbox\", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\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\nvar import_react12 = __toESM(require(\"react\"));\nvar import_chart = require(\"chart.js\");\nvar import_react_chartjs_2 = require(\"react-chartjs-2\");\nvar import_jsx_runtime14 = require(\"react/jsx-runtime\");\nimport_chart.Chart.register(\n import_chart.ArcElement,\n import_chart.Tooltip,\n import_chart.Legend,\n import_chart.CategoryScale,\n import_chart.LinearScale,\n import_chart.PointElement,\n import_chart.LineElement,\n import_chart.BarElement,\n import_chart.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 = import_react12.default.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__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(\"div\", { className: \"w-full h-full relative flex items-center justify-center\", children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nvar import_jsx_runtime15 = require(\"react/jsx-runtime\");\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\n \"div\",\n {\n className: \"flex flex-col gap-[9px]\",\n \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"flex flex-col gap-3 sm:flex-row sm:items-center sm:gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"relative w-full sm:w-[500px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"relative w-full h-5 rounded-[20px] bg-[rgba(183,232,214,0.9)] overflow-hidden\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\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__ */ (0, import_jsx_runtime15.jsx)(\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__ */ (0, import_jsx_runtime15.jsx)(\"div\", { className: \"absolute top-[29px] left-0 w-full\", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"flex justify-between items-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\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\nvar import_jsx_runtime16 = require(\"react/jsx-runtime\");\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\n \"div\",\n {\n className: \"relative w-full flex-shrink-0 lg:w-[340px]\",\n style: { height: \"220px\" },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"linearGradient\", { id: `gaugeGradient${index}`, x1: \"0%\", y1: \"0%\", x2: \"100%\", y2: \"0%\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\" })\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"relative w-full flex-shrink-0 lg:w-[340px]\", style: { height: \"220px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(148,163,184,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(71,85,105,1)\", stopOpacity: \"0.05\" })\n ]\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"g\", { style: { transition: \"all 0.7s ease-in-out\", transform: `rotate(${angle}deg)`, transformOrigin: \"0 0\" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" }) }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"div\", { className: \"flex flex-wrap gap-[30px] mt-[30px] justify-center\", children: bands.map((band, bandIdx) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\n \"div\",\n {\n className: \"w-5 h-3 rounded-sm\",\n style: { backgroundColor: band.color }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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\nvar import_jsx_runtime17 = require(\"react/jsx-runtime\");\nvar HorizontalBarChart = ({\n title,\n bars,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex items-center justify-end mb-[2px]\", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"flex items-start gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex flex-col justify-start pt-1\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"absolute left-0 top-0 w-[2px] z-[2]\", style: { height: \"165px\", backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"absolute left-0 right-0 h-[2px] z-[2]\", style: { bottom: \"15px\", backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"relative h-[30px] w-full\", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex justify-between items-start w-full relative z-10\", style: { marginTop: \"-8px\" }, children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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\nvar import_react13 = __toESM(require(\"react\"));\nvar import_jsx_runtime18 = require(\"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] = import_react13.default.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 = import_react13.default.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__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4 sm:mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative h-8 mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative h-6 mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"absolute\", style: { left: \"120px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"absolute\", style: { left: \"450px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative\", children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"flex items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"relative flex-1 h-7 sm:h-8\", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\n \"div\",\n {\n className: \"absolute h-full\",\n style: {\n left: isInSecondMonth ? \"330px\" : \"0\",\n width: \"320px\"\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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\nvar import_react14 = __toESM(require(\"react\"));\nvar import_jsx_runtime19 = require(\"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] = import_react14.default.useState(false);\n const [hoveredCell, setHoveredCell] = import_react14.default.useState(null);\n const [tooltipData, setTooltipData] = import_react14.default.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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex items-center gap-3\", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\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__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: selectedProject }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center justify-end gap-2 mb-6 pr-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px]\",\n style: { backgroundColor: color }\n },\n color\n )),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"More\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex-1 flex\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex-1\", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"min-w-max\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex gap-0.5 mb-1 h-[18px]\", children: yearWeeks.map((week, idx) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"w-3.5 text-center\", children: week.monthLabel && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsxs)(\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__ */ (0, import_jsx_runtime19.jsxs)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\n \"div\",\n {\n className: \"shrink-0 w-3 h-3 rounded-[2px]\",\n style: { backgroundColor: tooltipData.cellColor }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"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\nvar import_jsx_runtime20 = require(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex-1 flex flex-col gap-4 py-4 min-h-[300px] relative overflow-visible\", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"w-full overflow-x-visible lg:overflow-x-auto\", children: orientation === \"horizontal\" ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex flex-col gap-4 relative pl-[140px] w-full min-w-[800px] lg:min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"absolute left-[140px] right-0 top-0 bottom-0 pointer-events-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute top-0 bottom-0 w-px\", style: { left: `${pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center gap-4 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute text-right pr-4\", style: { width: \"120px\", left: \"-140px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex-1 relative h-10 flex items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\n \"div\",\n {\n className: \"relative rounded-[2px] transition-all\",\n style: { width: `${percentage}%`, height: \"4px\", background: color },\n children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"span\", { children: label }, idx)) })\n ] }) : (\n /* Vertical Chart */\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"absolute left-[50px] right-0 top-0 bottom-[60px] pointer-events-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute left-0 right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute left-0 right-0 h-px\", style: { top: `${100 - pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\"span\", { children: label }, idx))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex flex-col items-center gap-2 flex-1 min-w-[60px] max-w-[100px] h-full relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex-1 relative w-10 flex flex-col justify-end items-center h-full\", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\n \"div\",\n {\n className: \"absolute text-center\",\n style: { bottom: \"-50px\", left: \"50%\", transform: \"translateX(-50%)\", maxWidth: \"100px\" },\n children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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\nvar import_jsx_runtime21 = require(\"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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex flex-col flex-1 relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex flex-row w-full flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col h-[250px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-0.5 bg-[rgba(125,125,125,1)] z-[2]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-0.5 bg-[rgba(125,125,125,1)] z-[2]\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\n \"div\",\n {\n className: \"flex-1 flex justify-center items-start max-w-[100px] px-1 min-w-0\",\n children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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\nvar import_react15 = __toESM(require(\"react\"));\nvar import_jsx_runtime22 = require(\"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] = import_react15.default.useState(null);\n const [tooltipPos, setTooltipPos] = import_react15.default.useState({ x: 0, y: 0 });\n const [selectedPeriod, setSelectedPeriod] = import_react15.default.useState(\n data.timePeriods && data.timePeriods.length > 0 ? data.timePeriods[data.timePeriods.length - 1] : \"MAX\"\n );\n const containerRef = import_react15.default.useRef(null);\n const { filteredData, filteredTimestamps } = (0, import_react15.useMemo)(() => {\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 = (0, import_react15.useMemo)(() => calculatePercentageChange(filteredData), [filteredData]);\n const isPositive = percentageChange >= 0;\n const dynamicTimeLabel = (0, import_react15.useMemo)(() => getTimeLabel(selectedPeriod, filteredData.length, data.timestamps), [selectedPeriod, filteredData.length, data.timestamps]);\n const dynamicDateRange = (0, import_react15.useMemo)(() => getDateRange(selectedPeriod, filteredTimestamps, data.timestamps), [selectedPeriod, filteredTimestamps, data.timestamps]);\n const dynamicValue = (0, import_react15.useMemo)(() => formatCurrencyValue(calculateSum(filteredData)), [filteredData]);\n const { points, chartWidth, chartHeight } = (0, import_react15.useMemo)(() => {\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 = (0, import_react15.useMemo)(() => createLinearPath(points), [points]);\n const areaPath = (0, import_react15.useMemo)(() => createAreaPath(points, chartHeight), [points, chartHeight]);\n const gradientId = (0, import_react15.useMemo)(\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__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsxs)(\"div\", { className: \"flex items-start justify-between mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"relative flex-1\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"absolute left-1/2 -translate-x-1/2 flex gap-[6px] sm:gap-2 items-center\", children: data.timePeriods.map((period) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: \"M6 2L10 6H8V10H4V6H2L6 2Z\" }) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: \"M6 10L2 6H4V2H8V6H10L6 10Z\" })\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"mb-[14px] sm:mb-4 lg:mb-[18px]\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsxs)(\"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__ */ (0, import_jsx_runtime22.jsxs)(\n \"svg\",\n {\n className: \"w-full h-full overflow-visible\",\n viewBox: `0 0 ${chartWidth} ${chartHeight}`,\n preserveAspectRatio: \"none\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"linearGradient\", { id: gradientId, x1: \"0%\", y1: \"0%\", x2: \"0%\", y2: \"100%\", children: positiveGradientStop.map((s) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"stop\", { offset: s.offset, stopColor: s.color }, s.offset)) }) }),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: areaPath, fill: `url(#${gradientId})`, stroke: \"none\", style: { transition: \"d 0.4s ease-in-out, fill 0.3s ease-in-out\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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\nvar import_jsx_runtime23 = require(\"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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[30px] h-full\", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeGroups.map((group, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex-1 flex justify-center items-start px-2 min-w-0\", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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\nvar import_react16 = require(\"react\");\nvar import_jsx_runtime24 = require(\"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] = (0, import_react16.useState)(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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute left-0 right-0 h-px z-[1]\", style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" } }, idx);\n }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-2\", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeData.map((dayData, index) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex-1 flex justify-center items-start max-w-[100px] px-2 min-w-0\", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsxs)(\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__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"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\nvar import_jsx_runtime25 = require(\"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__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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] = (0, import_react17.useState)(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = (0, import_react17.useState)(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = (0, import_react17.useState)(\"Project 1\");\n const currentFilters = (0, import_react17.useMemo)(() => {\n if (chartFilters && chartFilters[chartType]) return chartFilters[chartType] || [];\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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__ */ (0, import_jsx_runtime25.jsx)(PieLineBarChart, { chartType, data: currentData });\n return null;\n case \"bullet\":\n if (currentBulletData) return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(LollipopChart, { title: lollipopData.title, items: lCatData, selectedYear: ly, selectedMonth: lm, selectedCategory: lc, orientation: lo });\n }\n case \"kpi\":\n if (currentKPIData) return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"min-h-screen bg-white\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"bg-white p-4 sm:px-6 md:px-8\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-wrap gap-2\", children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"p-4 relative z-50 sm:px-6 md:px-8\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\n \"div\",\n {\n className: \"relative\",\n style: { zIndex: 50 + (currentFilters.length - index) },\n children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"p-4 overflow-y-visible sm:px-6 md:px-8\", children: [\n isPieFamily && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex items-center justify-end mb-4\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(MenuDotsButton, {}) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-48 p-2 rounded-2xl sm:h-56 md:h-64\", children: renderChart() }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"mt-4 flex flex-col gap-2 text-sm sm:mt-6 sm:gap-3\", children: details.map((item, idx) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-semibold text-black text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-base font-semibold text-[rgba(17,24,39,1)] mb-4 sm:text-lg sm:mb-6\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"inline-block flex-shrink-0 w-[18px] h-[10px] rounded-sm\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex items-center justify-center w-12 h-4 rounded px-1 py-0.5\", style: { backgroundColor: statusColors.backgroundColor }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-[Poppins,sans-serif] font-semibold whitespace-nowrap text-[6px]\", style: { color: statusColors.textColor }, children: item.status }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 md:col-span-2 lg:col-span-1 sm:gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between items-center py-3 not-last:border-b border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-sm font-medium text-[rgba(17,24,39,1)]\", children: bullet.name }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-xs text-[rgba(107,114,128,1)]\", children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 pt-4 mt-4 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-bold text-white\", children: \"i\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"p\", { className: \"text-xs text-[rgba(107,114,128,1)] m-0 leading-relaxed\", children: [\n \"Suggested Actions: \",\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-semibold text-[rgba(17,24,39,1)]\", children: \"Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Goal Health\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Risk Health\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Risk Score\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"N/A\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"Wednesday\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col min-w-[650px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[205px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pb-2 border-b border-[rgba(229,231,235,1)] last:border-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-3 h-3 rounded-full flex-shrink-0\", style: { background: taskColor } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-[8px] text-[rgba(107,114,128,1)] mt-0.5\", children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-2 sm:text-[10px]\", children: \"Overall Status\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(254,242,242,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(220,38,38,1)] text-[10px] font-semibold sm:text-xs\", children: \"Overdue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(239,246,255,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(37,99,235,1)] text-[10px] font-semibold sm:text-xs\", children: \"In Progress\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"grid grid-cols-1 gap-2 mt-2\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(240,253,244,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(22,163,74,1)] text-[10px] font-semibold sm:text-xs\", children: \"On Target\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col min-w-[750px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[280px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-4 h-4 rounded-sm flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] whitespace-nowrap sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[17px] font-semibold mt-2\", children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-full h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"w-[11px] h-[11px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Peak Day\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded bg-transparent flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(TopPerformerCard, { performer: currentHorizontalBarTopPerformer })\n ] })\n ] }),\n chartType === \"columnchart\" && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-base font-semibold text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] mb-5\", children: topPerformer.name }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between items-center mb-10\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-col h-[130px] gap-4 sm:gap-5\", children: legends.length > 0 ? legends.map((legend, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: legend.color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-[10px] font-semibold\", children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.name })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold\", style: { color: revenueColor }, children: [\n topPerformer.revenue,\n \"k\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: isTopProfitable ? \"Profit\" : \"Loss\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold\", style: { color: isTopProfitable ? profitColor : lossColor }, children: [\n Math.abs(topPL),\n \"k\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: legends.length > 0 ? legends.map((l, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: l.color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-[10px] font-semibold\", children: [\n percentageChange,\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Day\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.day })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Aggregating\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: [\n \"$\",\n topPerformer.aggregating\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Outstanding\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold text-[rgba(34,197,94,1)]\", children: [\n \"$\",\n topPerformer.outstanding\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: needsFocus.day })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"lollipop\" && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-3.5 h-3.5 rounded-full flex-shrink-0\", style: { backgroundColor: colors[idx % colors.length] } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: opt })\n ] }, opt));\n })() })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: \"Monthly Summary\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Best Product\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: bestItem?.label || \"N/A\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Lowest Product\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Average\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: avg })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Trend\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isPositive ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isPositive ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-sm font-semibold font-[Poppins,sans-serif]\", children: isPositive ? \"Positive\" : \"Negative\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 text-xs font-[Poppins,sans-serif]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[rgba(107,114,128,1)] font-medium\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-full\", children: renderChart() }),\n (chartType === \"line\" || chartType === \"area\" || chartType === \"bar\") && !isPieFamily && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.transactions.value }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: dateLabel })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: totalVolume }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: peakIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: peakDate }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: calendarIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: activeDayValue }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: performer.isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: performer.isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-semibold\", children: performer.change })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: performer.name })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: performer.revenue })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Profit\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(77,175,131,1)]\", children: performer.profit })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: performer.needsFocus })\n ] })\n] });\n\n// src/components/Tooltip.tsx\nvar import_react18 = __toESM(require(\"react\"));\nvar import_jsx_runtime26 = require(\"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] = (0, import_react18.useState)(false);\n const [isReady, setIsReady] = (0, import_react18.useState)(false);\n const [showAnimation, setShowAnimation] = (0, import_react18.useState)(false);\n const [tooltipPosition, setTooltipPosition] = (0, import_react18.useState)({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = (0, import_react18.useState)(position);\n const triggerRef = import_react18.default.useRef(null);\n const tooltipRef = import_react18.default.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 import_react18.default.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__ */ (0, import_jsx_runtime26.jsx)(\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__ */ (0, import_jsx_runtime26.jsx)(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { 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__ */ (0, import_jsx_runtime26.jsxs)(\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__ */ (0, import_jsx_runtime26.jsxs)(\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__ */ (0, import_jsx_runtime26.jsx)(\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\nvar import_react19 = __toESM(require(\"react\"));\nvar import_react_dom2 = __toESM(require(\"react-dom\"));\nvar import_jsx_runtime27 = require(\"react/jsx-runtime\");\nvar assetSrc4 = (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 checkMarkIcon = \"\";\nvar dangerIcon = \"\";\nvar notificationIcon = \"\";\nvar closeIcon = \"\";\nvar checkMarkIcon2 = \"\";\nvar dangerIcon2 = \"\";\nvar dangerIcon1_1 = \"\";\nvar notificationIcon2 = \"\";\nvar closeIconCopy = \"\";\ntry {\n checkMarkIcon = require_check_mark_1();\n dangerIcon = require_danger_1();\n notificationIcon = require_notification_1();\n closeIcon = require_close();\n checkMarkIcon2 = require_check_mark_2();\n dangerIcon2 = require_danger_2();\n dangerIcon1_1 = require_danger_1_1();\n notificationIcon2 = require_notification_2();\n closeIconCopy = require_close_copy_1();\n} catch (e) {\n}\nvar FALLBACK_ICONS2 = {\n checkMarkIcon: \"/toast-icons/check-mark_1.png\",\n dangerIcon: \"/toast-icons/danger_1.png\",\n notificationIcon: \"/toast-icons/notification_1.png\",\n closeIcon: \"/toast-icons/close.png\",\n checkMarkIcon2: \"/toast-icons/check-mark_2.png\",\n dangerIcon2: \"/toast-icons/danger_2.png\",\n dangerIcon1_1: \"/toast-icons/danger_1_1.png\",\n notificationIcon2: \"/toast-icons/notification_2.png\",\n closeIconCopy: \"/toast-icons/close_copy_1.png\"\n};\nvar getIconSrc2 = (imported, fallback) => {\n const src = assetSrc4(imported);\n return src || fallback;\n};\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 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 if (background === \"transparent\") {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(checkMarkIcon2, FALLBACK_ICONS2.checkMarkIcon2), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(dangerIcon2, FALLBACK_ICONS2.dangerIcon2), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(dangerIcon1_1, FALLBACK_ICONS2.dangerIcon1_1), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(notificationIcon2, FALLBACK_ICONS2.notificationIcon2), alt: \"Notification\", style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(checkMarkIcon, FALLBACK_ICONS2.checkMarkIcon), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(dangerIcon, FALLBACK_ICONS2.dangerIcon), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(dangerIcon, FALLBACK_ICONS2.dangerIcon), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: getIconSrc2(notificationIcon, FALLBACK_ICONS2.notificationIcon), alt: \"Notification\", style });\n }\n }\n};\nvar ToastMessage = import_react19.default.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 displayTitle = customTitle ?? type.charAt(0).toUpperCase() + type.slice(1);\n const hasActions = action && action.length > 0;\n (0, import_react19.useEffect)(() => {\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\" ? getIconSrc2(closeIconCopy, FALLBACK_ICONS2.closeIconCopy) : getIconSrc2(closeIcon, FALLBACK_ICONS2.closeIcon));\n const iconElement = custom?.iconSrc ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\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 ${background === \"transparent\" ? \"bg-white text-[#555]\" : \"text-white\"}\n ${className || \"\"}`,\n role: \"alert\",\n \"aria-live\": \"assertive\",\n ...rest,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsxs)(\"div\", { className: \"flex items-center flex-1 min-h-[50px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"div\", { className: \"flex items-center justify-center w-[40px] h-[40px] mr-[12px] flex-shrink-0 z-[1]\", children: iconElement }),\n /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(\"div\", { className: \"flex-1 min-w-0 z-[1]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\"div\", { className: \"flex gap-[8px] mt-[10px] pl-[5px] justify-end\", children: action?.map((btn, index) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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 style: {\n background: btn.backgroundColor || (btn.variant === \"secondary\" ? \"transparent\" : \"rgba(255,255,255,0.9)\"),\n color: btn.textColor || (btn.variant === \"secondary\" ? \"white\" : \"black\"),\n border: btn.borderColor ? `1px solid ${btn.borderColor}` : \"none\"\n },\n children: btn.label\n },\n index\n )) })\n ]\n }\n );\n return import_react_dom2.default.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nvar import_react20 = require(\"react\");\nvar import_jsx_runtime28 = require(\"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] = (0, import_react20.useState)([]);\n const animationFrameRef = (0, import_react20.useRef)(void 0);\n const timerRef = (0, import_react20.useRef)(void 0);\n const stableColors = (0, import_react20.useMemo)(() => colors, [JSON.stringify(colors)]);\n (0, import_react20.useEffect)(() => {\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__ */ (0, import_jsx_runtime28.jsx)(\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__ */ (0, import_jsx_runtime28.jsx)(\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\nvar import_react21 = require(\"react\");\nvar import_jsx_runtime29 = require(\"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] = (0, import_react21.useState)([]);\n const animationFrameRef = (0, import_react21.useRef)(void 0);\n const timerRef = (0, import_react21.useRef)(void 0);\n const stableColors = (0, import_react21.useMemo)(() => colors, [JSON.stringify(colors)]);\n (0, import_react21.useEffect)(() => {\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__ */ (0, import_jsx_runtime29.jsx)(\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__ */ (0, import_jsx_runtime29.jsx)(\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\nvar import_jsx_runtime30 = require(\"react/jsx-runtime\");\nvar SrOnly = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"flex flex-col items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"w-full h-64 bg-gray-100 overflow-hidden relative\", children: !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"img\", { src: imageUrl, alt: title, className: \"w-full h-full object-cover\" }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"w-full h-full shimmer\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"p-6\", children: [\n !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"h3\", { className: \"text-xl font-semibold text-gray-900 mb-3\", children: title }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-7 w-[70%] shimmer rounded mb-3\" }),\n !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"p\", { className: \"text-sm text-gray-500 leading-relaxed\", children: content }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-full shimmer rounded\" }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-[95%] shimmer rounded\" }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-[80%] shimmer rounded\" })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/NestedDropdown.tsx\nvar import_react22 = require(\"react\");\nvar import_lucide_react5 = require(\"lucide-react\");\nvar import_jsx_runtime31 = require(\"react/jsx-runtime\");\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filtered.map((o) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const ref = (0, import_react22.useRef)(null);\n const removeValue = (val) => {\n onChange(values.filter((v) => v !== val));\n };\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\n import_lucide_react5.X,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filteredOptions.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: level1.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level2.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level3.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"flex items-center gap-2 font-semibold\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"label\",\n {\n className: \"flex items-center gap-2 text-[14px] mt-[6px] ml-[22px]\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"span\", { className: \"flex items-center gap-[10px]\", children: selected ? /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\n import_lucide_react5.X,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => {\n const active = values.includes(opt.value);\n return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\n \"input\",\n {\n type: \"checkbox\",\n checked: active,\n readOnly: true,\n className: \"accent-[#1761a3]\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const [options, setOptions] = (0, import_react22.useState)([]);\n const [loading, setLoading] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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 (0, import_react22.useEffect)(() => {\n if (!open) return;\n setLoading(true);\n loadOptions(search).then(setOptions).finally(() => setLoading(false));\n }, [open, search, loadOptions]);\n return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && !disabled && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"px-4 py-[10px] text-[14px] flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.Loader2, { size: 14, className: \"mr-2 animate-spin\" }),\n \"Loading...\"\n ] }),\n !loading && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nvar import_react23 = require(\"react\");\nvar import_jsx_runtime32 = require(\"react/jsx-runtime\");\nvar ControlIcon = ({ src }) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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] = (0, import_react23.useState)(\"\");\n const [mode, setMode] = (0, import_react23.useState)(\"textarea\");\n const [playing, setPlaying] = (0, import_react23.useState)(false);\n const [currentTime, setCurrentTime] = (0, import_react23.useState)(0);\n const [duration, setDuration] = (0, import_react23.useState)(1);\n const [volume, setVolume] = (0, import_react23.useState)(1);\n const [speed, setSpeed] = (0, import_react23.useState)(1);\n const [loop, setLoop] = (0, import_react23.useState)(false);\n const utteranceRef = (0, import_react23.useRef)(null);\n const timerRef = (0, import_react23.useRef)(null);\n const wordIndexRef = (0, import_react23.useRef)(0);\n const textAreaRef = (0, import_react23.useRef)(null);\n const highlightOnSkipRef = (0, import_react23.useRef)(false);\n const [summary, setSummary] = (0, import_react23.useState)(\"\");\n const [loopMode, setLoopMode] = (0, import_react23.useState)(0);\n const loopCountRef = (0, import_react23.useRef)(0);\n const autoPlayRef = (0, import_react23.useRef)(false);\n const baseDurationRef = (0, import_react23.useRef)(0);\n const timerBaseRef = (0, import_react23.useRef)(0);\n const volumeRef = (0, import_react23.useRef)(volume);\n const speedRef = (0, import_react23.useRef)(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 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 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 };\n (0, import_react23.useEffect)(() => {\n volumeRef.current = volume;\n }, [volume]);\n (0, import_react23.useEffect)(() => {\n speedRef.current = speed;\n }, [speed]);\n (0, import_react23.useEffect)(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n (0, import_react23.useEffect)(() => {\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 (0, import_react23.useEffect)(() => {\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 (0, import_react23.useEffect)(() => {\n if (!autoPlayRef.current) return;\n if (!text.trim()) return;\n autoPlayRef.current = false;\n speakFromTime(0);\n }, [text]);\n return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"px-[16px] py-[12px] bg-[#e2ecf1] border-b border-[#8ed1b2] font-semibold\", children: \"Text to Speech\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"flex flex-1 overflow-hidden\", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex flex-wrap items-center gap-[10px] p-[12px] bg-[#eaf6f1] border-t border-[#8ed1b2] flex-shrink-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex items-center gap-[8px] bg-[#d1e4e7] px-[12px] py-[8px] rounded-full overflow-x-auto\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex items-center gap-[6px] w-[180px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\n \"input\",\n {\n className: \"flex-1 appearance-none h-[6px] rounded-full cursor-pointer\",\n \"data-testid\": \"seek-bar\",\n type: \"range\",\n min: 0,\n max: duration,\n step: 0.01,\n value: currentTime,\n style: {\n \"--progress\": `${currentTime / duration * 100}%`\n },\n onChange: (e) => {\n const t = Number(e.target.value);\n setCurrentTime(t);\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(t);\n }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text white border-none px-[12px] py-[6px] ronded-[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__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"flex flex-col gap-[16px]\", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px] mb-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex justify-between items-center text-[13px] font-semibold text-[#243a36] mb-[10px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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 style: { \"--value\": `${volume * 100}%` },\n onChange: (e) => setVolume(Number(e.target.value))\n }\n )\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"text-[13px] font-semibold text-[#243a36] flex justify-between mb-[12px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"bg-[#eef5f2] rounded-[12px] p-[12px]\", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\n \"input\",\n {\n className: \"w-full appearance-none h-[6px] rounded-full\",\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 style: {\n \"--value\": `${(speed - 0.5) / 1.5 * 100}%`\n },\n onChange: (e) => setSpeed(Number(e.target.value))\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\n \"div\",\n {\n style: {\n fontSize: 12,\n color: \"#7a8b86\",\n marginTop: 6,\n display: \"flex\",\n justifyContent: \"space-between\"\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Faster\" })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"text-[13px] font-semibold text-[#243a36] flex justify-between mb-[12px]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { \"data-testid\": \"quick-summary\", children: \"Quick Summary\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"p\", { style: { fontSize: 13, color: \"#4a5c57\", lineHeight: 1.5 }, children: mode === \"textarea\" ? categorizeText(text) : getQuickSummary() })\n ]\n }\n );\n};\n\n// src/components/Notifications.tsx\nvar import_react24 = require(\"react\");\nvar import_react_dom3 = require(\"react-dom\");\nvar import_lucide_react6 = require(\"lucide-react\");\nvar import_jsx_runtime33 = require(\"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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"prompt\");\n const [location, setLocation] = (0, import_react24.useState)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react24.useEffect)(() => {\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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-sm\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n className: \"w-[144px] object-contain\",\n alt: \"location\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n alt: \"Camera Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n alt: \"Microphone Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex items-center justify-between bg-gradient-to-r from-[#1761a3] to-[#4daf83] px-5 py-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"text-[16px] font-medium text-white\", children: headerTitle }),\n onClose && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"px-5 py-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h4\", { className: \"mb-2 text-[18px] font-semibold text-[#111827]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-6 text-[14px] text-[#878787]\", children: description }),\n showInput && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [email, setEmail] = (0, import_react24.useState)(\"\");\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex items-center justify-between px-5 py-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"text-[16px] font-medium\", children: headerTitle }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"px-6 py-10\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h4\", { className: \"mb-4 text-[28px] font-semibold\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-10 max-w-[80%] text-[14px] opacity-90\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14 })\n }\n ),\n imageSrc && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-6 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: imageSrc,\n alt: \"Promotion\",\n className: \"h-[130px] w-[160px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"mb-3 text-[22px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 text-[14px] text-[#6b7280]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"relative h-[56px] w-[56px] flex-shrink-0 md:h-[64px] md:w-[64px]\", children: [\n iconSrc ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"flex h-full w-full items-center justify-center rounded-[10px] bg-gradient-to-br from-[#1761a3] to-[#4daf83]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: iconSrc,\n alt: \"\",\n className: \"h-[20px] w-[20px] md:h-[24px] md:w-[24px]\"\n }\n ) }) : avatarSrc && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: badgeIconSrc,\n alt: \"\",\n className: \"h-[12px] w-[12px]\"\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"mb-1 flex items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"text-[14px] font-semibold text-[#111827] md:text-[16px]\", children: title }),\n time && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"span\", { className: \"whitespace-nowrap text-[10px] text-[#6b7280] md:text-[12px]\", children: time })\n ] }),\n description && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-3 text-[12px] text-[#6b7280] md:text-[14px]\", children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex flex-col gap-3 sm:flex-row\", children: [\n primaryActionText && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14 })\n }\n )\n ]\n }\n );\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\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 MahatiAsyncDropdown,\n MahatiAvatarDropdown,\n MahatiAvatarMultiSelectDropdown,\n MahatiButton,\n MahatiCalendar,\n MahatiCameraAccessModal,\n MahatiCard,\n MahatiCascadingDropdown,\n MahatiChartAnalyticsWidget,\n MahatiConfettiExplosion,\n MahatiDropdown,\n MahatiFormContainer,\n MahatiGroupedDropdown,\n MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n MahatiModal,\n MahatiMultiSelectDropdown,\n MahatiNotificationCard,\n MahatiPromotionModal_V1,\n MahatiPromotionModal_V2,\n MahatiPromotionModal_V3,\n MahatiRealisticConfetti,\n MahatiSearch,\n MahatiSearchableDropdown,\n MahatiStatus,\n MahatiTabbedInterface,\n MahatiTable,\n MahatiTableWithTab,\n MahatiTexttoAudio,\n MahatiToastMessage,\n MahatiTooltip,\n Spinner\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.js"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__commonJS","cb","mod","__require","exports","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","isNodeMode","__esModule","value","__toCommonJS","require_down_4","exports2","module2","require_performance_peak_icon","require_calendar_3","require_increase","require_decrease","index_exports","Accordion","CardOverlayLoader","CardWithLoading","CircularSpinner","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","LoadingDots","LoadingDotsLinear","MahatiActivity","MahatiAsyncDropdown","AsyncDropdown","MahatiAvatarDropdown","AvatarDropdown","MahatiAvatarMultiSelectDropdown","AvatarMultiSelectDropdown","MahatiButton","Button","MahatiCalendar","Calendar","MahatiCameraAccessModal","MahatiCard","Card","MahatiCascadingDropdown","CascadingDropdown","MahatiChartAnalyticsWidget","MahatiConfettiExplosion","ConfettiExplosion","MahatiDropdown","Dropdown","MahatiFormContainer","FormContainer","MahatiGroupedDropdown","GroupedDropdown","MahatiInput","Input","MahatiLocationAccessModal","MahatiMicrophoneAccessModal","MahatiModal","Modal","MahatiMultiSelectDropdown","MultiSelectDropdown","MahatiNotificationCard","MahatiPromotionModal_V1","MahatiPromotionModal","MahatiPromotionModal_V2","MahatiPromotionModalV2Modal","MahatiPromotionModal_V3","MahatiPromotionModalV3Modal","MahatiRealisticConfetti","RealisticConfetti","MahatiSearch","MahatiSearchableDropdown","SearchableDropdown","MahatiStatus","MahatiTabbedInterface","TabbedInterface","MahatiTable","Table","MahatiTableWithTab","TableWithTab","MahatiTexttoAudio","TexttoAudio","MahatiToastMessage","ToastMessage","MahatiTooltip","Tooltip2","Spinner","module","import_react","require","import_lucide_react","import_jsx_runtime","title","children","items","defaultOpenIndex","defaultOpen","className","headerClassName","contentClassName","icon","iconPosition","multipleOpen","onToggle","accordionTestId","headerTestId","contentTestId","useState","openIndexes","setOpenIndexes","normalizedItems","length","content","handleToggle","index","newIndexes","includes","filter","i","jsx","map","item","isOpen","jsxs","disabled","onClick","ChevronUp","ChevronDown","displayName","import_react2","import_jsx_runtime2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","IconButtonGroup","default","forwardRef","direction","props","ref","gap","style","variantClasses","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","import_react3","import_lucide_react2","import_jsx_runtime3","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","import_lucide_react3","import_jsx_runtime4","MODAL_WIDTH_MAP","xl","getPositionClass","position","onClose","subtitle","customWidth","margin","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","document","addEventListener","removeEventListener","body","overflow","Fragment","role","X","strokeWidth","label","import_jsx_runtime5","onSubmit","import_react4","import_jsx_runtime6","hasError","errorMessage","onChange","handleChange","import_react6","import_lucide_react4","import_react_dom","import_react5","import_hi","import_hi2","import_jsx_runtime7","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","calendartestId","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","useRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","Math","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","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","_","hours24","minutes","marginBottom","transform","paddingLeft","paddingRight","border","HiChevronDown","zone","marginTop","Number","paddingTop","flex","HiOutlineClock","defaultIcon","HiCalendarDays","readOnly","paddingBottom","cursor","opacity","padding","marginLeft","HiChevronLeft","HiChevronRight","import_jsx_runtime8","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","SelectWrapper","opt","SelectIcon","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","createPortal","import_react7","import_jsx_runtime9","getFontFamily","font","lower","trim","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","import_react8","import_jsx_runtime10","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","basic","dark","underline","shadow","glass","gradient","import_react9","import_outline","import_jsx_runtime11","getFontFamily2","renderCellValue","isValidElement","isArray","some","v","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","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","XMarkIcon","effectiveShowHeaderClose","header","colSpan","selected","rowId","import_react10","import_outline2","import_jsx_runtime12","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","ArrowDownOnSquareIcon","idx","isExpanded","has","toggleRow","delete","add","import_react17","import_react11","import_jsx_runtime13","assetSrc","anyM","src","arrowDownIcon","getTriggerClasses","base","getMenuClasses","getOptionClasses","ChartDropdown","internalValue","setInternalValue","displayValue","useMemo","optionValue","onKeyDown","alt","import_react12","import_chart","import_react_chartjs_2","import_jsx_runtime14","Chart","register","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","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","Line","Bar","Doughnut","import_jsx_runtime15","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","import_jsx_runtime16","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","import_jsx_runtime17","HorizontalBarChart","bars","xAxisConfig","topPerformer","safeBars","bar","whiteSpace","labels","totalLabels","approxCharWidth","centerOffset","maxVal","barLengthPercentage","import_react13","import_jsx_runtime18","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","import_react14","import_jsx_runtime19","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","import_jsx_runtime20","DEFAULT_COLORS","LollipopChart","MenuButtonDots","maxValue","gridPositions","axisLabels","slice","textOverflow","reverse","maxWidth","import_jsx_runtime21","defaultGradient","ColumnChart","columns","yAxisConfig","safeColumns","minValue","yAxisLabels","formatValue","toFixed","calculateHeight","column","columnHeightPercentage","import_react15","import_jsx_runtime22","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","import_jsx_runtime23","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","import_react16","import_jsx_runtime24","DEFAULT_COLORS2","aggregating","outstanding","writeOff","StackBarChart","setTooltip","safeData","COLORS","getLabel","l","defaultLabels","handleSegmentMouseEnter","total","totalHeight","aggregatingPercent","outstandingPercent","writeOffPercent","backdropFilter","import_jsx_runtime25","assetSrc3","FALLBACK_ICONS","performancePeakIcon","calendarIcon","increaseIcon","decreaseIcon","getIconSrc","imported","fallback","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MenuDotsButton","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","import_react18","import_jsx_runtime26","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","import_react19","import_react_dom2","import_jsx_runtime27","getStripGradient","getGradient","getTitleColor","getIcon","objectFit","altText","customTitle","message","duration","custom","action","rest","backgroundClass","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","titleFontFamily","messageFontFamily","messageColor","closeIconWidth","closeIconHeight","btn","import_react20","import_jsx_runtime28","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","import_react21","import_jsx_runtime29","import_jsx_runtime30","SrOnly","primaryColor","borderTopColor","ringCount","rings","ringSize","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","backdrop","dots","imageUrl","import_react22","import_lucide_react5","import_jsx_runtime31","search","setSearch","removeValue","toggleValue","filteredOptions","lbl","checked","level2","level1","level3","displayText","isSectionSelected","isChildChecked","toggleSection","toggleChild","exists","flatMap","loadOptions","setOptions","setLoading","then","finally","Loader2","import_react23","import_jsx_runtime32","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","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","import_react24","import_react_dom3","import_lucide_react6","import_jsx_runtime33","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","console","error","requestMic","audio","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","href","showBadgeImage","badgeImageSrc","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction"],"mappings":"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AAC,CAAA,GAAGxC,eAAe/iC,MAAK,AAAC,EAAEukC;IAC7C,IAAMiB,WAAW,AAAC,CAAA,GAAGzC,eAAe/iC,MAAK,AAAC,EAAEo/B;IAC5C,IAAMqG,iBAAiB,wBAACC;QACtB,IAAI,CAACA,MAAMl9B,IAAI,IAAI,OAAO;QAC1B,IAAMm9B,QAAQD,MAAMz0C,WAAW;QAC/B,IAAM20C,aAAa;YACjBC,YAAY;gBACVC,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACAs1B,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACAu1B,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACAw1B,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACAy1B,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACA01B,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACA21B,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;YACA41B,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDr1B,SAAS;YACX;QACF;QACA,IAAM61B,YAAY,EAAE;QACpB,IAAK,IAAM1+C,OAAOg+C,WAAY;YAC5B,IAAIA,UAAU,CAACh+C,IAAI,CAACk+C,QAAQ,CAACp5B,IAAI,CAAC,SAAC65B;uBAAMZ,MAAM/2C,QAAQ,CAAC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","sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports2, module2) {\n module2.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\"(exports2, module2) {\n module2.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\"(exports2, module2) {\n module2.exports = \"./calendar-3-SFJ52KIR.png\";\n }\n});\n\n// src/assets/icons/increase.png\nvar require_increase = __commonJS({\n \"src/assets/icons/increase.png\"(exports2, module2) {\n module2.exports = \"./increase-QM2727GU.png\";\n }\n});\n\n// src/assets/icons/decrease.png\nvar require_decrease = __commonJS({\n \"src/assets/icons/decrease.png\"(exports2, module2) {\n module2.exports = \"./decrease-SMWSBU7A.png\";\n }\n});\n\n// src/index.ts\nvar index_exports = {};\n__export(index_exports, {\n Accordion: () => Accordion,\n CardOverlayLoader: () => CardOverlayLoader,\n CardWithLoading: () => CardWithLoading,\n CircularSpinner: () => CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS: () => DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS: () => DEFAULT_STATUS_OPTIONS,\n Filter: () => Filter,\n LoadingDots: () => LoadingDots,\n LoadingDotsLinear: () => LoadingDotsLinear,\n MahatiActivity: () => MahatiActivity,\n MahatiAsyncDropdown: () => AsyncDropdown,\n MahatiAvatarDropdown: () => AvatarDropdown,\n MahatiAvatarMultiSelectDropdown: () => AvatarMultiSelectDropdown,\n MahatiButton: () => Button,\n MahatiCalendar: () => Calendar,\n MahatiCameraAccessModal: () => MahatiCameraAccessModal,\n MahatiCard: () => Card,\n MahatiCascadingDropdown: () => CascadingDropdown,\n MahatiChartAnalyticsWidget: () => MahatiChartAnalyticsWidget,\n MahatiConfettiExplosion: () => ConfettiExplosion,\n MahatiDropdown: () => Dropdown,\n MahatiFormContainer: () => FormContainer,\n MahatiGroupedDropdown: () => GroupedDropdown,\n MahatiInput: () => Input,\n MahatiLocationAccessModal: () => MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal: () => MahatiMicrophoneAccessModal,\n MahatiModal: () => Modal,\n MahatiMultiSelectDropdown: () => MultiSelectDropdown,\n MahatiNotificationCard: () => MahatiNotificationCard,\n MahatiPromotionModal_V1: () => MahatiPromotionModal,\n MahatiPromotionModal_V2: () => MahatiPromotionModalV2Modal,\n MahatiPromotionModal_V3: () => MahatiPromotionModalV3Modal,\n MahatiRealisticConfetti: () => RealisticConfetti,\n MahatiSearch: () => MahatiSearch,\n MahatiSearchableDropdown: () => SearchableDropdown,\n MahatiStatus: () => MahatiStatus,\n MahatiTabbedInterface: () => TabbedInterface,\n MahatiTable: () => Table,\n MahatiTableWithTab: () => TableWithTab,\n MahatiTexttoAudio: () => TexttoAudio,\n MahatiToastMessage: () => ToastMessage,\n MahatiTooltip: () => Tooltip2,\n Spinner: () => Spinner\n});\nmodule.exports = __toCommonJS(index_exports);\n\n// src/components/accordion.tsx\nvar import_react = require(\"react\");\nvar import_lucide_react = require(\"lucide-react\");\nvar import_jsx_runtime = require(\"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] = (0, import_react.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__ */ (0, import_jsx_runtime.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__ */ (0, import_jsx_runtime.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime.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__ */ (0, import_jsx_runtime.jsx)(\"span\", { className: \"mr-2\", children: icon || (isOpen ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronDown, {})) }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", { className: \"flex-1 text-left\", children: item.title }),\n iconPosition === \"right\" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", { children: icon || (isOpen ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.ChevronDown, {})) })\n ]\n }\n ),\n isOpen && !item.disabled && /* @__PURE__ */ (0, import_jsx_runtime.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__ */ (0, import_jsx_runtime.jsx)(\"div\", { className: \"border-t border-slate-200\" })\n ] }, index);\n })\n }\n );\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nvar import_react2 = __toESM(require(\"react\"));\nvar import_jsx_runtime2 = require(\"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 = import_react2.default.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\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 = import_react2.default.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__ */ (0, import_jsx_runtime2.jsx)(\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__ */ (0, import_jsx_runtime2.jsx)(\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\nvar import_react3 = __toESM(require(\"react\"));\nvar import_lucide_react2 = require(\"lucide-react\");\nvar import_jsx_runtime3 = require(\"react/jsx-runtime\");\nvar Card = import_react3.default.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] = (0, import_react3.useState)(defaultOpen);\n const [isFlipped, setIsFlipped] = (0, import_react3.useState)(false);\n const contentId = import_react3.default.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__ */ (0, import_jsx_runtime3.jsx)(\n \"div\",\n {\n className: flippable ? \"perspective-[1000px]\" : \"\",\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(\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__ */ (0, import_jsx_runtime3.jsxs)(\"div\", { className: flippable ? \"backface-hidden\" : \"\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(\n \"div\",\n {\n className: `flex items-center justify-between ${open && mainContent ? \"mb-4\" : \"\"}`,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\"h4\", { className: \"text-xl font-semibold text-slate-800 leading-7\", children: title }),\n collapsible && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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__ */ (0, import_jsx_runtime3.jsx)(import_lucide_react2.ChevronUp, { className: \"w-5 h-5 text-white\" }) : /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_lucide_react2.ChevronDown, { className: \"w-5 h-5 text-white\" })\n }\n )\n ]\n }\n ),\n mainContent && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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__ */ (0, import_jsx_runtime3.jsx)(\"div\", { className: \"overflow-hidden\", children: mainContent })\n }\n )\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(\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\nvar React4 = __toESM(require(\"react\"));\nvar import_lucide_react3 = require(\"lucide-react\");\nvar import_jsx_runtime4 = require(\"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__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\n \"div\",\n {\n className: `fixed inset-0 z-[9999] pointer-events-none flex p-4 ${getPositionClass(\n position\n )}`,\n children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsxs)(\"div\", { className: \"flex items-center gap-3 flex-1\", children: [\n headerIcon && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\"div\", { children: headerIcon }),\n /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(\"div\", { className: \"flex-1\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react3.X, { size: 20, strokeWidth: 2 })\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsxs)(\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__ */ (0, import_jsx_runtime4.jsx)(\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__ */ (0, import_jsx_runtime4.jsx)(\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\nvar import_jsx_runtime5 = require(\"react/jsx-runtime\");\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(\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\nvar import_react4 = __toESM(require(\"react\"));\nvar import_jsx_runtime6 = require(\"react/jsx-runtime\");\nvar Input = import_react4.default.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__ */ (0, import_jsx_runtime6.jsxs)(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex flex-col w-full mb-4\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(\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__ */ (0, import_jsx_runtime6.jsx)(\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\nvar import_react6 = require(\"react\");\nvar import_lucide_react4 = require(\"lucide-react\");\nvar import_react_dom = require(\"react-dom\");\n\n// src/components/Calendar.tsx\nvar import_react5 = require(\"react\");\nvar import_hi = require(\"react-icons/hi\");\nvar import_hi2 = require(\"react-icons/hi2\");\nvar import_jsx_runtime7 = require(\"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] = (0, import_react5.useState)(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = (0, import_react5.useState)(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = (0, import_react5.useState)({ start: null, end: null });\n const [isOpen, setIsOpen] = (0, import_react5.useState)(false);\n const [activeField, setActiveField] = (0, import_react5.useState)(\"start\");\n const [showTimeSelector, setShowTimeSelector] = (0, import_react5.useState)(false);\n const [selectedHour, setSelectedHour] = (0, import_react5.useState)(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = (0, import_react5.useState)(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = (0, import_react5.useState)(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = (0, import_react5.useState)(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = (0, import_react5.useState)(false);\n const [internalDateFormat, setInternalDateFormat] = (0, import_react5.useState)(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = (0, import_react5.useState)(timeZoneFormat);\n const [deviceScale, setDeviceScale] = (0, import_react5.useState)(1);\n const [positionAbove, setPositionAbove] = (0, import_react5.useState)(false);\n const containerRef = (0, import_react5.useRef)(null);\n const calendarRef = (0, import_react5.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 (0, import_react5.useEffect)(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n (0, import_react5.useEffect)(() => {\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 (0, import_react5.useEffect)(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n (0, import_react5.useEffect)(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n (0, import_react5.useEffect)(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n (0, import_react5.useEffect)(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n (0, import_react5.useEffect)(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n (0, import_react5.useEffect)(() => {\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col h-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 overflow-y-auto\", children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginBottom: scaled(12) }, children: [\n showTimeFormatToggle && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"div\", { style: { marginBottom: scaled(12) }, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black\",\n style: { fontSize: scale * 12 },\n children: \"Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex items-center\",\n style: { gap: scale * 8 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex items-start\",\n style: { gap: scale * 15 },\n children: [\n showDateFormatSelector && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black text-center\",\n style: { fontSize: scale * 12 },\n children: \"Date Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { children: format }, format))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"span\",\n {\n className: \"font-semibold text-black text-right\",\n style: { fontSize: scale * 12 },\n children: \"Time Format\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { children: zone }, zone))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginTop: scale * 16 }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { style: { marginTop: scale * 12 }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"border-t border-[#e5e7eb]\",\n style: { paddingTop: scale * 15 },\n children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(import_hi2.HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n ref: containerRef,\n className: `relative ${className ?? \"\"}`,\n \"data-testid\": calendartestId,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"relative\", children: [\n showIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex flex-col items-start\",\n style: { gap: scale * 4 },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: {\n fontSize: scale * 12\n }, children: \"To Date\" }),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ]\n }\n )\n ]\n }\n )\n ] }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi.HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"span\", { style: { fontSize: scale * 14 }, children: timeValue ? formatTime(\n timeValue,\n internalTimeFormat\n ) : \"Choose Time\" })\n ]\n }\n )\n ] })\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\"div\", { style: { marginBottom: scale * 22 }, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"relative flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(import_hi.HiChevronLeft, { style: { width: scaled(10), height: scaled(10) } })\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(import_hi.HiChevronRight, { style: { width: scaled(10), height: scaled(10) } })\n }\n )\n ] }) }),\n !showTimeSelector ? /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\n \"div\",\n {\n className: \"grid grid-cols-7\",\n style: { gap: scale * 24 },\n children: renderDays()\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\n \"div\",\n {\n className: \"flex justify-between\",\n style: {\n gap: scale * 12,\n marginTop: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(\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__ */ (0, import_jsx_runtime7.jsx)(\n import_hi2.HiCalendarDays,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(\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__ */ (0, import_jsx_runtime7.jsx)(\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\nvar import_jsx_runtime8 = require(\"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] = (0, import_react6.useState)(false);\n const [values, setValues] = (0, import_react6.useState)({\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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"relative\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\n \"div\",\n {\n className: \"absolute right-0 mt-3 z-50\",\n \"data-testid\": testId ? `${testId}-model` : void 0,\n children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"w-[360px] bg-white border border-slate-200 rounded-lg shadow\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between items-center px-5 py-3 border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"h3\", { className: \"text-base font-semibold\", children: \"Add Filter\" }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.X, { className: \"w-4 h-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SelectWrapper, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SelectIcon, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(SelectWrapper, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SelectIcon, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between items-center px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsxs)(\"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__ */ (0, import_jsx_runtime8.jsxs)(\"div\", { className: \"flex justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"h6\", { className: \"font-semibold text-sm\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"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__ */ (0, import_jsx_runtime8.jsx)(\"div\", { className: \"relative w-full mb-3\", children });\nvar SelectIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"absolute right-3 top-1/2 -translate-y-1/2 text-slate-500 pointer-events-none\", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react4.ChevronDown, { 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] = (0, import_react6.useState)(false);\n const triggerRef = (0, import_react6.useRef)(null);\n const dropdownRef = (0, import_react6.useRef)(null);\n const [pos, setPos] = (0, import_react6.useState)(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 (0, import_react6.useEffect)(() => {\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 (0, import_react6.useEffect)(() => {\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__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\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__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n import_lucide_react4.ChevronDown,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && (0, import_react_dom.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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] = (0, import_react6.useState)(false);\n const triggerRef = (0, import_react6.useRef)(null);\n const dropdownRef = (0, import_react6.useRef)(null);\n const [pos, setPos] = (0, import_react6.useState)(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 (0, import_react6.useEffect)(() => {\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 (0, import_react6.useEffect)(() => {\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__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(\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__ */ (0, import_jsx_runtime8.jsx)(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\n import_lucide_react4.ChevronDown,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && (0, import_react_dom.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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__ */ (0, import_jsx_runtime8.jsx)(\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\nvar import_react7 = require(\"react\");\nvar import_jsx_runtime9 = require(\"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] = (0, import_react7.useState)(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = (0, import_react7.useState)(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n (0, import_react7.useEffect)(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n (0, import_react7.useEffect)(() => {\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__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { 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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\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__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"flex min-w-0 items-center gap-2\", children: [\n tabCloseIconPosition === \"left\" && closeIcon,\n tab.icon && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"span\", { children: tab.icon }),\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"span\", { className: \"truncate\", children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon\n ] }),\n variant === \"underline\" && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\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__ */ (0, import_jsx_runtime9.jsx)(\"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__ */ (0, import_jsx_runtime9.jsx)(\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__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"grid gap-6 md:grid-cols-[minmax(180px,220px)_1fr]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"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__ */ (0, import_jsx_runtime9.jsx)(\"div\", { children: content })\n ] }) : /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(\"div\", { className: \"grid gap-6 md:grid-cols-[1fr_minmax(180px,220px)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"div\", { children: content }),\n /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(\"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\nvar import_react8 = require(\"react\");\nvar import_jsx_runtime10 = require(\"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] = (0, import_react8.useState)(false);\n const [internalSelected, setInternalSelected] = (0, import_react8.useState)(null);\n const dropdownRef = (0, import_react8.useRef)(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n (0, import_react8.useEffect)(() => {\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__ */ (0, import_jsx_runtime10.jsxs)(\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__ */ (0, import_jsx_runtime10.jsx)(\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__ */ (0, import_jsx_runtime10.jsx)(\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__ */ (0, import_jsx_runtime10.jsx)(\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\nvar import_react9 = __toESM(require(\"react\"));\nvar import_outline = require(\"@heroicons/react/24/outline\");\nvar import_jsx_runtime11 = require(\"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 (import_react9.default.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"span\", { className: \"text-slate-300\", children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => import_react9.default.isValidElement(v))) return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_jsx_runtime11.Fragment, { 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__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"flex flex-col gap-2\", children: headers.map((h) => /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsx)(\"span\", { className: \"w-full sm:w-48 text-xs font-semibold uppercase tracking-wide text-slate-500\", children: h.label }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"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] = (0, import_react9.useState)([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n (0, import_react9.useEffect)(() => {\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"flex justify-end\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsx)(import_outline.XMarkIcon, { className: \"h-3 w-3\" }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mb-4\", children: [\n title && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\n \"h2\",\n {\n className: \"text-xl font-semibold text-slate-900\",\n style: { fontFamily: sectionTitleFontFamily },\n children: title\n }\n ),\n description && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\n \"p\",\n {\n className: \"mt-1 text-sm text-slate-500\",\n style: { fontFamily: sectionDescriptionFontFamily },\n children: description\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"overflow-x-auto w-full rounded-xl border border-slate-200\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"div\", { className: \"min-w-[900px]\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"table\", { className: \"min-w-full border-collapse text-sm\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"thead\", { className: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"tr\", { children: headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"tbody\", { className: \"bg-white\", children: [\n data.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsx)(\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__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mt-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"div\", { className: \"mb-3 flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(\"h3\", { className: \"text-sm font-semibold uppercase tracking-wide text-slate-500\", children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\"p\", { className: \"text-xs text-slate-500\", children: \"Drag the tab headers to change their order.\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(\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\nvar import_react10 = __toESM(require(\"react\"));\nvar import_outline2 = require(\"@heroicons/react/24/outline\");\nvar import_jsx_runtime12 = require(\"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] = (0, import_react10.useState)(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = (0, import_react10.useState)(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = (0, import_react10.useState)(\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__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"span\", { children: \"...\" }, \"s\"));\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"span\", { children: \"...\" }, \"e\"));\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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 (import_react10.default.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) => import_react10.default.isValidElement(item))) return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_jsx_runtime12.Fragment, { 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__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsxs)(import_jsx_runtime12.Fragment, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"mb-3 flex flex-wrap justify-between gap-3\", children: [\n searchable && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\n \"button\",\n {\n onClick: onResetSearch,\n className: \"absolute right-2 top-2\",\n children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_outline2.XMarkIcon, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex gap-2\", children: [\n onDownloadPDF && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(import_outline2.ArrowDownOnSquareIcon, { className: \"h-5 w-5\" })\n }\n ),\n onDownloadExcel && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\n \"div\",\n {\n className: \"overflow-x-auto rounded-xl border border-[#1761A3] bg-white\",\n \"data-testid\": tableTestId,\n children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"table\", { className: \"w-full min-w-[900px] table-fixed\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"thead\", { className: \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\"tr\", { children: [\n headers.map((header, idx) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"th\", { className: \"px-3 py-2 text-white font-bold\", children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"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__ */ (0, import_jsx_runtime12.jsxs)(import_react10.default.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(\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__ */ (0, import_jsx_runtime12.jsx)(\"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__ */ (0, import_jsx_runtime12.jsx)(\"td\", { className: \"px-3 py-2 text-center\", children: actions(row) })\n ]\n }\n ),\n summary && isExpanded && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\"tr\", { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsxs)(\"div\", { className: \"flex justify-center mt-3 gap-2 items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(\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__ */ (0, import_jsx_runtime12.jsx)(\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\nvar import_react17 = require(\"react\");\n\n// src/components/ChartDropdown.tsx\nvar import_react11 = require(\"react\");\nvar import_jsx_runtime13 = require(\"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] = (0, import_react11.useState)(false);\n const [internalValue, setInternalValue] = (0, import_react11.useState)(value);\n const dropdownRef = (0, import_react11.useRef)(null);\n (0, import_react11.useEffect)(() => {\n if (value !== void 0) setInternalValue(value);\n }, [value]);\n const displayValue = value !== void 0 ? value : internalValue;\n const selectedOption = (0, import_react11.useMemo)(\n () => options.find((opt) => opt.value === displayValue),\n [options, displayValue]\n );\n (0, import_react11.useEffect)(() => {\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__ */ (0, import_jsx_runtime13.jsxs)(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative inline-block ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\"label\", { className: \"block mb-1 text-xs font-medium text-[rgba(55,65,81,1)]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(\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__ */ (0, import_jsx_runtime13.jsx)(\"span\", { className: \"overflow-hidden text-ellipsis whitespace-nowrap\", children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\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__ */ (0, import_jsx_runtime13.jsx)(\"div\", { className: getMenuClasses(variant), role: \"listbox\", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(\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\nvar import_react12 = __toESM(require(\"react\"));\nvar import_chart = require(\"chart.js\");\nvar import_react_chartjs_2 = require(\"react-chartjs-2\");\nvar import_jsx_runtime14 = require(\"react/jsx-runtime\");\nimport_chart.Chart.register(\n import_chart.ArcElement,\n import_chart.Tooltip,\n import_chart.Legend,\n import_chart.CategoryScale,\n import_chart.LinearScale,\n import_chart.PointElement,\n import_chart.LineElement,\n import_chart.BarElement,\n import_chart.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 = import_react12.default.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__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_react_chartjs_2.Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(\"div\", { className: \"w-full h-full relative flex items-center justify-center\", children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nvar import_jsx_runtime15 = require(\"react/jsx-runtime\");\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\n \"div\",\n {\n className: \"flex flex-col gap-[9px]\",\n \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"flex flex-col gap-3 sm:flex-row sm:items-center sm:gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"relative w-full sm:w-[500px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"relative w-full h-5 rounded-[20px] bg-[rgba(183,232,214,0.9)] overflow-hidden\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\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__ */ (0, import_jsx_runtime15.jsx)(\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__ */ (0, import_jsx_runtime15.jsx)(\"div\", { className: \"absolute top-[29px] left-0 w-full\", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(\"div\", { className: \"flex justify-between items-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsx)(\"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__ */ (0, import_jsx_runtime15.jsxs)(\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\nvar import_jsx_runtime16 = require(\"react/jsx-runtime\");\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\n \"div\",\n {\n className: \"relative w-full flex-shrink-0 lg:w-[340px]\",\n style: { height: \"220px\" },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"linearGradient\", { id: `gaugeGradient${index}`, x1: \"0%\", y1: \"0%\", x2: \"100%\", y2: \"0%\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\" })\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"relative w-full flex-shrink-0 lg:w-[340px]\", style: { height: \"220px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"0%\", stopColor: \"rgba(148,163,184,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"stop\", { offset: \"100%\", stopColor: \"rgba(71,85,105,1)\", stopOpacity: \"0.05\" })\n ]\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsx)(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"g\", { style: { transition: \"all 0.7s ease-in-out\", transform: `rotate(${angle}deg)`, transformOrigin: \"0 0\" }, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" }) }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"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__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\"div\", { className: \"flex flex-wrap gap-[30px] mt-[30px] justify-center\", children: bands.map((band, bandIdx) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\n \"div\",\n {\n className: \"w-5 h-3 rounded-sm\",\n style: { backgroundColor: band.color }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(\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__ */ (0, import_jsx_runtime16.jsx)(\"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\nvar import_jsx_runtime17 = require(\"react/jsx-runtime\");\nvar HorizontalBarChart = ({\n title,\n bars,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex items-center justify-end mb-[2px]\", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"flex items-start gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex flex-col justify-start pt-1\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsxs)(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"absolute left-0 top-0 w-[2px] z-[2]\", style: { height: \"165px\", backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"absolute left-0 right-0 h-[2px] z-[2]\", style: { bottom: \"15px\", backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\"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__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"relative h-[30px] w-full\", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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__ */ (0, import_jsx_runtime17.jsx)(\"div\", { className: \"flex justify-between items-start w-full relative z-10\", style: { marginTop: \"-8px\" }, children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(\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\nvar import_react13 = __toESM(require(\"react\"));\nvar import_jsx_runtime18 = require(\"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] = import_react13.default.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 = import_react13.default.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__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4 sm:mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative h-8 mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative h-6 mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"absolute\", style: { left: \"120px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"absolute\", style: { left: \"450px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"relative\", children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"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__ */ (0, import_jsx_runtime18.jsxs)(\"div\", { className: \"flex items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\"div\", { className: \"relative flex-1 h-7 sm:h-8\", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(\n \"div\",\n {\n className: \"absolute h-full\",\n style: {\n left: isInSecondMonth ? \"330px\" : \"0\",\n width: \"320px\"\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(\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__ */ (0, import_jsx_runtime18.jsx)(\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__ */ (0, import_jsx_runtime18.jsx)(\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\nvar import_react14 = __toESM(require(\"react\"));\nvar import_jsx_runtime19 = require(\"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] = import_react14.default.useState(false);\n const [hoveredCell, setHoveredCell] = import_react14.default.useState(null);\n const [tooltipData, setTooltipData] = import_react14.default.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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex items-center gap-3\", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\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__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: selectedProject }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center justify-end gap-2 mb-6 pr-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px]\",\n style: { backgroundColor: color }\n },\n color\n )),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"More\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex-1 flex\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex-1\", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"min-w-max\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"flex gap-0.5 mb-1 h-[18px]\", children: yearWeeks.map((week, idx) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"div\", { className: \"w-3.5 text-center\", children: week.monthLabel && /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsx)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsxs)(\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__ */ (0, import_jsx_runtime19.jsxs)(\"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__ */ (0, import_jsx_runtime19.jsx)(\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__ */ (0, import_jsx_runtime19.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(\n \"div\",\n {\n className: \"shrink-0 w-3 h-3 rounded-[2px]\",\n style: { backgroundColor: tooltipData.cellColor }\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(\"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\nvar import_jsx_runtime20 = require(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex-1 flex flex-col gap-4 py-4 min-h-[300px] relative overflow-visible\", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"w-full overflow-x-visible lg:overflow-x-auto\", children: orientation === \"horizontal\" ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_jsx_runtime20.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex flex-col gap-4 relative pl-[140px] w-full min-w-[800px] lg:min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"absolute left-[140px] right-0 top-0 bottom-0 pointer-events-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute top-0 bottom-0 w-px\", style: { left: `${pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex items-center gap-4 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute text-right pr-4\", style: { width: \"120px\", left: \"-140px\" }, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex-1 relative h-10 flex items-center\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\n \"div\",\n {\n className: \"relative rounded-[2px] transition-all\",\n style: { width: `${percentage}%`, height: \"4px\", background: color },\n children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"span\", { children: label }, idx)) })\n ] }) : (\n /* Vertical Chart */\n /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"absolute left-[50px] right-0 top-0 bottom-[60px] pointer-events-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute left-0 right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"absolute left-0 right-0 h-px\", style: { top: `${100 - pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\"span\", { children: label }, idx))\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsxs)(\"div\", { className: \"flex flex-col items-center gap-2 flex-1 min-w-[60px] max-w-[100px] h-full relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex-1 relative w-10 flex flex-col justify-end items-center h-full\", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\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__ */ (0, import_jsx_runtime20.jsx)(\n \"div\",\n {\n className: \"absolute text-center\",\n style: { bottom: \"-50px\", left: \"50%\", transform: \"translateX(-50%)\", maxWidth: \"100px\" },\n children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"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__ */ (0, import_jsx_runtime20.jsx)(\"div\", { className: \"flex gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(\"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\nvar import_jsx_runtime21 = require(\"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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex flex-col flex-1 relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex flex-row w-full flex-1 relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col h-[250px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-0.5 bg-[rgba(125,125,125,1)] z-[2]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-0.5 bg-[rgba(125,125,125,1)] z-[2]\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\"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__ */ (0, import_jsx_runtime21.jsx)(\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__ */ (0, import_jsx_runtime21.jsx)(\n \"div\",\n {\n className: \"flex-1 flex justify-center items-start max-w-[100px] px-1 min-w-0\",\n children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(\"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\nvar import_react15 = __toESM(require(\"react\"));\nvar import_jsx_runtime22 = require(\"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] = import_react15.default.useState(null);\n const [tooltipPos, setTooltipPos] = import_react15.default.useState({ x: 0, y: 0 });\n const [selectedPeriod, setSelectedPeriod] = import_react15.default.useState(\n data.timePeriods && data.timePeriods.length > 0 ? data.timePeriods[data.timePeriods.length - 1] : \"MAX\"\n );\n const containerRef = import_react15.default.useRef(null);\n const { filteredData, filteredTimestamps } = (0, import_react15.useMemo)(() => {\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 = (0, import_react15.useMemo)(() => calculatePercentageChange(filteredData), [filteredData]);\n const isPositive = percentageChange >= 0;\n const dynamicTimeLabel = (0, import_react15.useMemo)(() => getTimeLabel(selectedPeriod, filteredData.length, data.timestamps), [selectedPeriod, filteredData.length, data.timestamps]);\n const dynamicDateRange = (0, import_react15.useMemo)(() => getDateRange(selectedPeriod, filteredTimestamps, data.timestamps), [selectedPeriod, filteredTimestamps, data.timestamps]);\n const dynamicValue = (0, import_react15.useMemo)(() => formatCurrencyValue(calculateSum(filteredData)), [filteredData]);\n const { points, chartWidth, chartHeight } = (0, import_react15.useMemo)(() => {\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 = (0, import_react15.useMemo)(() => createLinearPath(points), [points]);\n const areaPath = (0, import_react15.useMemo)(() => createAreaPath(points, chartHeight), [points, chartHeight]);\n const gradientId = (0, import_react15.useMemo)(\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__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsxs)(\"div\", { className: \"flex items-start justify-between mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"relative flex-1\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"absolute left-1/2 -translate-x-1/2 flex gap-[6px] sm:gap-2 items-center\", children: data.timePeriods.map((period) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: \"M6 2L10 6H8V10H4V6H2L6 2Z\" }) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: \"M6 10L2 6H4V2H8V6H10L6 10Z\" })\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(\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__ */ (0, import_jsx_runtime22.jsx)(\"div\", { className: \"mb-[14px] sm:mb-4 lg:mb-[18px]\", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsxs)(\"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__ */ (0, import_jsx_runtime22.jsxs)(\n \"svg\",\n {\n className: \"w-full h-full overflow-visible\",\n viewBox: `0 0 ${chartWidth} ${chartHeight}`,\n preserveAspectRatio: \"none\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"defs\", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"linearGradient\", { id: gradientId, x1: \"0%\", y1: \"0%\", x2: \"0%\", y2: \"100%\", children: positiveGradientStop.map((s) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"stop\", { offset: s.offset, stopColor: s.color }, s.offset)) }) }),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\"path\", { d: areaPath, fill: `url(#${gradientId})`, stroke: \"none\", style: { transition: \"d 0.4s ease-in-out, fill 0.3s ease-in-out\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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__ */ (0, import_jsx_runtime22.jsx)(\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\nvar import_jsx_runtime23 = require(\"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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(\"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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[30px] h-full\", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\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__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeGroups.map((group, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\"div\", { className: \"flex-1 flex justify-center items-start px-2 min-w-0\", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(\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\nvar import_react16 = require(\"react\");\nvar import_jsx_runtime24 = require(\"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] = (0, import_react16.useState)(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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute left-0 right-0 h-px z-[1]\", style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" } }, idx);\n }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-2\", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeData.map((dayData, index) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\"div\", { className: \"flex-1 flex justify-center items-start max-w-[100px] px-2 min-w-0\", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(\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__ */ (0, import_jsx_runtime24.jsxs)(\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__ */ (0, import_jsx_runtime24.jsxs)(\"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__ */ (0, import_jsx_runtime24.jsxs)(\"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\nvar import_jsx_runtime25 = require(\"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__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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] = (0, import_react17.useState)(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = (0, import_react17.useState)(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = (0, import_react17.useState)(\"Project 1\");\n const currentFilters = (0, import_react17.useMemo)(() => {\n if (chartFilters && chartFilters[chartType]) return chartFilters[chartType] || [];\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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 = (0, import_react17.useMemo)(() => {\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__ */ (0, import_jsx_runtime25.jsx)(PieLineBarChart, { chartType, data: currentData });\n return null;\n case \"bullet\":\n if (currentBulletData) return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(LollipopChart, { title: lollipopData.title, items: lCatData, selectedYear: ly, selectedMonth: lm, selectedCategory: lc, orientation: lo });\n }\n case \"kpi\":\n if (currentKPIData) return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsx)(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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"min-h-screen bg-white\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"bg-white p-4 sm:px-6 md:px-8\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-wrap gap-2\", children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"p-4 relative z-50 sm:px-6 md:px-8\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\n \"div\",\n {\n className: \"relative\",\n style: { zIndex: 50 + (currentFilters.length - index) },\n children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"p-4 overflow-y-visible sm:px-6 md:px-8\", children: [\n isPieFamily && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex items-center justify-end mb-4\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(MenuDotsButton, {}) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-48 p-2 rounded-2xl sm:h-56 md:h-64\", children: renderChart() }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"mt-4 flex flex-col gap-2 text-sm sm:mt-6 sm:gap-3\", children: details.map((item, idx) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-semibold text-black text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-base font-semibold text-[rgba(17,24,39,1)] mb-4 sm:text-lg sm:mb-6\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"inline-block flex-shrink-0 w-[18px] h-[10px] rounded-sm\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex items-center justify-center w-12 h-4 rounded px-1 py-0.5\", style: { backgroundColor: statusColors.backgroundColor }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-[Poppins,sans-serif] font-semibold whitespace-nowrap text-[6px]\", style: { color: statusColors.textColor }, children: item.status }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 md:col-span-2 lg:col-span-1 sm:gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between items-center py-3 not-last:border-b border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-sm font-medium text-[rgba(17,24,39,1)]\", children: bullet.name }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-xs text-[rgba(107,114,128,1)]\", children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 pt-4 mt-4 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-bold text-white\", children: \"i\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"p\", { className: \"text-xs text-[rgba(107,114,128,1)] m-0 leading-relaxed\", children: [\n \"Suggested Actions: \",\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"font-semibold text-[rgba(17,24,39,1)]\", children: \"Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Goal Health\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Risk Health\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Risk Score\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"N/A\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"Wednesday\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col min-w-[650px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[205px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pb-2 border-b border-[rgba(229,231,235,1)] last:border-none\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-3 h-3 rounded-full flex-shrink-0\", style: { background: taskColor } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-[8px] text-[rgba(107,114,128,1)] mt-0.5\", children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-2 sm:text-[10px]\", children: \"Overall Status\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(254,242,242,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(220,38,38,1)] text-[10px] font-semibold sm:text-xs\", children: \"Overdue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(239,246,255,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(37,99,235,1)] text-[10px] font-semibold sm:text-xs\", children: \"In Progress\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"grid grid-cols-1 gap-2 mt-2\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"bg-[rgba(240,253,244,1)] p-2 rounded\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(22,163,74,1)] text-[10px] font-semibold sm:text-xs\", children: \"On Target\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col min-w-[750px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[280px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-4 h-4 rounded-sm flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] whitespace-nowrap sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[17px] font-semibold mt-2\", children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-full h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"w-[11px] h-[11px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Peak Day\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded bg-transparent flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(TopPerformerCard, { performer: currentHorizontalBarTopPerformer })\n ] })\n ] }),\n chartType === \"columnchart\" && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-base font-semibold text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] mb-5\", children: topPerformer.name }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between items-center mb-10\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-col h-[130px] gap-4 sm:gap-5\", children: legends.length > 0 ? legends.map((legend, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: legend.color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-[10px] font-semibold\", children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.name })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold\", style: { color: revenueColor }, children: [\n topPerformer.revenue,\n \"k\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: isTopProfitable ? \"Profit\" : \"Loss\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold\", style: { color: isTopProfitable ? profitColor : lossColor }, children: [\n Math.abs(topPL),\n \"k\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: legends.length > 0 ? legends.map((l, i) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: l.color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"span\", { className: \"text-[10px] font-semibold\", children: [\n percentageChange,\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Day\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.day })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Aggregating\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: [\n \"$\",\n topPerformer.aggregating\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Outstanding\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"text-sm font-semibold text-[rgba(34,197,94,1)]\", children: [\n \"$\",\n topPerformer.outstanding\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: needsFocus.day })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"lollipop\" && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-3.5 h-3.5 rounded-full flex-shrink-0\", style: { backgroundColor: colors[idx % colors.length] } }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: opt })\n ] }, opt));\n })() })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: \"Monthly Summary\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Best Product\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: bestItem?.label || \"N/A\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Lowest Product\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Average\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: avg })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Trend\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: isPositive ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isPositive ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-sm font-semibold font-[Poppins,sans-serif]\", children: isPositive ? \"Positive\" : \"Negative\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 text-xs font-[Poppins,sans-serif]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[rgba(107,114,128,1)] font-medium\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"w-full\", children: renderChart() }),\n (chartType === \"line\" || chartType === \"area\" || chartType === \"bar\") && !isPieFamily && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-start gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.transactions.value }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: dateLabel })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: totalVolume }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: peakIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: peakDate }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"img\", { src: calendarIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: activeDayValue }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"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__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-1\", style: { color: performer.isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: performer.isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[10px] font-semibold\", children: performer.change })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: performer.name })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: performer.revenue })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Profit\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"div\", { className: \"text-sm font-semibold text-[rgba(77,175,131,1)]\", children: performer.profit })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: performer.needsFocus })\n ] })\n] });\n\n// src/components/Tooltip.tsx\nvar import_react18 = __toESM(require(\"react\"));\nvar import_jsx_runtime26 = require(\"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] = (0, import_react18.useState)(false);\n const [isReady, setIsReady] = (0, import_react18.useState)(false);\n const [showAnimation, setShowAnimation] = (0, import_react18.useState)(false);\n const [tooltipPosition, setTooltipPosition] = (0, import_react18.useState)({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = (0, import_react18.useState)(position);\n const triggerRef = import_react18.default.useRef(null);\n const tooltipRef = import_react18.default.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 import_react18.default.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__ */ (0, import_jsx_runtime26.jsx)(\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__ */ (0, import_jsx_runtime26.jsx)(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { 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__ */ (0, import_jsx_runtime26.jsxs)(\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__ */ (0, import_jsx_runtime26.jsxs)(\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__ */ (0, import_jsx_runtime26.jsx)(\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\nvar import_react19 = __toESM(require(\"react\"));\nvar import_react_dom2 = __toESM(require(\"react-dom\"));\nvar import_jsx_runtime27 = require(\"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__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/check-mark_2.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/danger_2.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/danger_1_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/notification_2.png\", alt: altText, style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/check-mark_1.png\", alt: altText, style });\n case \"error\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n case \"warning\":\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/danger_1.png\", alt: altText, style });\n default:\n return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"img\", { src: \"/icons/notification_1.png\", alt: altText, style });\n }\n }\n};\nvar ToastMessage = import_react19.default.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 (0, import_react19.useEffect)(() => {\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsxs)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsxs)(\"div\", { className: \"flex items-center flex-1 min-h-[50px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\"div\", { className: \"flex items-center justify-center w-[40px] h-[40px] mr-[12px] flex-shrink-0 z-[1]\", children: iconElement }),\n /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(\"div\", { className: \"flex-1 min-w-0 z-[1]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\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__ */ (0, import_jsx_runtime27.jsx)(\"div\", { className: \"flex gap-[8px] mt-[10px] pl-[5px] justify-end\", children: action?.map((btn, index) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(\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 import_react_dom2.default.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nvar import_react20 = require(\"react\");\nvar import_jsx_runtime28 = require(\"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] = (0, import_react20.useState)([]);\n const animationFrameRef = (0, import_react20.useRef)(void 0);\n const timerRef = (0, import_react20.useRef)(void 0);\n const stableColors = (0, import_react20.useMemo)(() => colors, [JSON.stringify(colors)]);\n (0, import_react20.useEffect)(() => {\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__ */ (0, import_jsx_runtime28.jsx)(\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__ */ (0, import_jsx_runtime28.jsx)(\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\nvar import_react21 = require(\"react\");\nvar import_jsx_runtime29 = require(\"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] = (0, import_react21.useState)([]);\n const animationFrameRef = (0, import_react21.useRef)(void 0);\n const timerRef = (0, import_react21.useRef)(void 0);\n const stableColors = (0, import_react21.useMemo)(() => colors, [JSON.stringify(colors)]);\n (0, import_react21.useEffect)(() => {\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__ */ (0, import_jsx_runtime29.jsx)(\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__ */ (0, import_jsx_runtime29.jsx)(\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\nvar import_jsx_runtime30 = require(\"react/jsx-runtime\");\nvar SrOnly = ({ children }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"flex flex-col items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\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__ */ (0, import_jsx_runtime30.jsx)(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__ */ (0, import_jsx_runtime30.jsxs)(\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__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"w-full h-64 bg-gray-100 overflow-hidden relative\", children: !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"img\", { src: imageUrl, alt: title, className: \"w-full h-full object-cover\" }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"w-full h-full shimmer\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"p-6\", children: [\n !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"h3\", { className: \"text-xl font-semibold text-gray-900 mb-3\", children: title }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-7 w-[70%] shimmer rounded mb-3\" }),\n !loading ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"p\", { className: \"text-sm text-gray-500 leading-relaxed\", children: content }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-full shimmer rounded\" }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-[95%] shimmer rounded\" }),\n /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(\"div\", { className: \"h-4 w-[80%] shimmer rounded\" })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/NestedDropdown.tsx\nvar import_react22 = require(\"react\");\nvar import_lucide_react5 = require(\"lucide-react\");\nvar import_jsx_runtime31 = require(\"react/jsx-runtime\");\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filtered.map((o) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const ref = (0, import_react22.useRef)(null);\n const removeValue = (val) => {\n onChange(values.filter((v) => v !== val));\n };\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\n import_lucide_react5.X,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filteredOptions.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: level1.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level2.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto border-t border-[#e5e7eb]\", children: level3.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"flex items-center gap-2 font-semibold\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"label\",\n {\n className: \"flex items-center gap-2 text-[14px] mt-[6px] ml-[22px]\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\"span\", { className: \"flex items-center gap-[10px]\", children: selected ? /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n values.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\n import_lucide_react5.X,\n {\n size: 14,\n className: \"cursor-pointer\",\n onClick: () => removeValue(val)\n }\n )\n ]\n },\n val\n );\n }) }),\n open && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: options.map((opt) => {\n const active = values.includes(opt.value);\n return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(\n \"input\",\n {\n type: \"checkbox\",\n checked: active,\n readOnly: true,\n className: \"accent-[#1761a3]\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"font-medium\", children: opt.label }),\n opt.subtitle && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"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] = (0, import_react22.useState)(false);\n const [search, setSearch] = (0, import_react22.useState)(\"\");\n const [options, setOptions] = (0, import_react22.useState)([]);\n const [loading, setLoading] = (0, import_react22.useState)(false);\n const ref = (0, import_react22.useRef)(null);\n (0, import_react22.useEffect)(() => {\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 (0, import_react22.useEffect)(() => {\n if (!open) return;\n setLoading(true);\n loadOptions(search).then(setOptions).finally(() => setLoading(false));\n }, [open, search, loadOptions]);\n return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.ChevronDown, { size: 16 })\n ]\n }\n ),\n open && !disabled && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"px-4 py-[10px] text-[14px] flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react5.Loader2, { size: 14, className: \"mr-2 animate-spin\" }),\n \"Loading...\"\n ] }),\n !loading && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n options.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(\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__ */ (0, import_jsx_runtime31.jsx)(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nvar import_react23 = require(\"react\");\nvar import_jsx_runtime32 = require(\"react/jsx-runtime\");\nvar ControlIcon = ({ src }) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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] = (0, import_react23.useState)(\"\");\n const [mode, setMode] = (0, import_react23.useState)(\"textarea\");\n const [playing, setPlaying] = (0, import_react23.useState)(false);\n const [currentTime, setCurrentTime] = (0, import_react23.useState)(0);\n const [duration, setDuration] = (0, import_react23.useState)(1);\n const [volume, setVolume] = (0, import_react23.useState)(1);\n const [speed, setSpeed] = (0, import_react23.useState)(1);\n const [loop, setLoop] = (0, import_react23.useState)(false);\n const utteranceRef = (0, import_react23.useRef)(null);\n const timerRef = (0, import_react23.useRef)(null);\n const wordIndexRef = (0, import_react23.useRef)(0);\n const textAreaRef = (0, import_react23.useRef)(null);\n const highlightOnSkipRef = (0, import_react23.useRef)(false);\n const [summary, setSummary] = (0, import_react23.useState)(\"\");\n const [loopMode, setLoopMode] = (0, import_react23.useState)(0);\n const loopCountRef = (0, import_react23.useRef)(0);\n const autoPlayRef = (0, import_react23.useRef)(false);\n const baseDurationRef = (0, import_react23.useRef)(0);\n const timerBaseRef = (0, import_react23.useRef)(0);\n const volumeRef = (0, import_react23.useRef)(volume);\n const speedRef = (0, import_react23.useRef)(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 (0, import_react23.useEffect)(() => {\n return () => {\n window.speechSynthesis.cancel();\n stopTimer();\n };\n }, []);\n (0, import_react23.useEffect)(() => {\n volumeRef.current = volume;\n }, [volume]);\n (0, import_react23.useEffect)(() => {\n speedRef.current = speed;\n }, [speed]);\n (0, import_react23.useEffect)(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n (0, import_react23.useEffect)(() => {\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 (0, import_react23.useEffect)(() => {\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 (0, import_react23.useEffect)(() => {\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__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"px-[16px] py-[12px] bg-[#e2ecf1] border-b border-[#8ed1b2] font-semibold\", children: \"Text to Speech\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"div\", { className: \"flex flex-1 overflow-hidden\", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex flex-wrap items-center gap-[10px] p-[12px] bg-[#eaf6f1] border-t border-[#8ed1b2] flex-shrink-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex items-center gap-[8px] bg-[#d1e4e7] px-[12px] py-[8px] rounded-full overflow-x-auto\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex items-center gap-[6px] w-[180px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex flex-col gap-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex justify-between items-center text-[13px] font-semibold text-[#243a36] mb-[10px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex items-center gap-[10px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex justify-between text-[13px] font-semibold mb-[10px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\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__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"flex justify-between text-xs text-gray-500 mt-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"span\", { children: \"Faster\" })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"div\", { \"data-testid\": \"quick-summary\", className: \"font-semibold mb-[8px]\", children: \"Quick Summary\" }),\n /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(\"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\nvar import_react24 = require(\"react\");\nvar import_react_dom3 = require(\"react-dom\");\nvar import_lucide_react6 = require(\"lucide-react\");\nvar import_jsx_runtime33 = require(\"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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"prompt\");\n const [location, setLocation] = (0, import_react24.useState)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react24.useEffect)(() => {\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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-sm\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n className: \"w-[144px] object-contain\",\n alt: \"location\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n alt: \"Camera Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [status, setStatus] = (0, import_react24.useState)(\"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 (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: image,\n alt: \"Microphone Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex items-center justify-between bg-gradient-to-r from-[#1761a3] to-[#4daf83] px-5 py-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"text-[16px] font-medium text-white\", children: headerTitle }),\n onClose && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"px-5 py-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h4\", { className: \"mb-2 text-[18px] font-semibold text-[#111827]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-6 text-[14px] text-[#878787]\", children: description }),\n showInput && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n const [email, setEmail] = (0, import_react24.useState)(\"\");\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex items-center justify-between px-5 py-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"text-[16px] font-medium\", children: headerTitle }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"px-6 py-10\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h4\", { className: \"mb-4 text-[28px] font-semibold\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-10 max-w-[80%] text-[14px] opacity-90\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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 = (0, import_react24.useRef)(null);\n (0, import_react24.useEffect)(() => {\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 (0, import_react_dom3.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14 })\n }\n ),\n imageSrc && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"mb-6 flex justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: imageSrc,\n alt: \"Promotion\",\n className: \"h-[130px] w-[160px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"h3\", { className: \"mb-3 text-[22px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-8 text-[14px] text-[#6b7280]\", children: description }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsxs)(\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__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"relative h-[56px] w-[56px] flex-shrink-0 md:h-[64px] md:w-[64px]\", children: [\n iconSrc ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"div\", { className: \"flex h-full w-full items-center justify-center rounded-[10px] bg-gradient-to-br from-[#1761a3] to-[#4daf83]\", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: iconSrc,\n alt: \"\",\n className: \"h-[20px] w-[20px] md:h-[24px] md:w-[24px]\"\n }\n ) }) : avatarSrc && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\n \"img\",\n {\n src: badgeIconSrc,\n alt: \"\",\n className: \"h-[12px] w-[12px]\"\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"mb-1 flex items-center gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"text-[14px] font-semibold text-[#111827] md:text-[16px]\", children: title }),\n time && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"span\", { className: \"whitespace-nowrap text-[10px] text-[#6b7280] md:text-[12px]\", children: time })\n ] }),\n description && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\"p\", { className: \"mb-3 text-[12px] text-[#6b7280] md:text-[14px]\", children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(\"div\", { className: \"flex flex-col gap-3 sm:flex-row\", children: [\n primaryActionText && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(\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__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react6.X, { size: 14 })\n }\n )\n ]\n }\n );\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\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 MahatiAsyncDropdown,\n MahatiAvatarDropdown,\n MahatiAvatarMultiSelectDropdown,\n MahatiButton,\n MahatiCalendar,\n MahatiCameraAccessModal,\n MahatiCard,\n MahatiCascadingDropdown,\n MahatiChartAnalyticsWidget,\n MahatiConfettiExplosion,\n MahatiDropdown,\n MahatiFormContainer,\n MahatiGroupedDropdown,\n MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n MahatiModal,\n MahatiMultiSelectDropdown,\n MahatiNotificationCard,\n MahatiPromotionModal_V1,\n MahatiPromotionModal_V2,\n MahatiPromotionModal_V3,\n MahatiRealisticConfetti,\n MahatiSearch,\n MahatiSearchableDropdown,\n MahatiStatus,\n MahatiTabbedInterface,\n MahatiTable,\n MahatiTableWithTab,\n MahatiTexttoAudio,\n MahatiToastMessage,\n MahatiTooltip,\n Spinner\n});\n"]}
|