@mahatisystems/mahati-ui-components 5.3.2 → 6.0.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 +337 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +22 -1
- package/dist/index.d.ts +22 -1
- package/dist/index.js +525 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +518 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["c:\\Users\\akhil\\OneDrive\\Desktop\\Mahati Systems\\Ui-components\\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","getHoverStyles","opacity","Math","min","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","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","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","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","localFilters","setLocalFilters","currentFilters","currentData","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","Revenue","isIncrease","cur","topProductData","category","Profit","needsFocus","change","calendarPeakAndActiveDay","empty","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","n","dateObj","dayNames","entries","stats","avg","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","currentKPIData","kpiKey","currentGauge","sp","productData","xAxis","Cost","st","yAxis","lYearData","ly","lm","lc","lo","lCatData","selectedCategory","currentRiskGauges","sw","selectedWeek","allData","isActive","zIndex","val","updated","statusColors","totalVolume","transactions","getBadgeBg","QuickInsightsCard","peakIconSrc","peakDate","peakEvents","calendarIconSrc","activeDayLabel","activeDayValue","activeAvg","dateLabel","sm2","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","formattedDate","currentRiskGauge","lastTask","TopPerformerCard","performer","totalRevenue","sum","contribution","ci","prevMonth","prevYear","prevTypeData","prevTop","growth","rank","sort","currentTotal","prevTotal","pctChange","bgColor","minimumFractionDigits","maximumFractionDigits","defaultLegends","getColor","revenueColor","profitColor","lossColor","g","topPL","isTopProfitable","prevGroups","lossProducts","needsFocusHasLoss","mt","ct","topTotal","mt2","ct2","weekNum","replace","prevWeek","prevDay","pt","ch","fid","f","f0","f1","f2","catData","bestItem","lowestItem","aboveAvg","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","animationDelay","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","assign","showBadgeImage","badgeImageSrc","href","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction"],"mappings":"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CX;YACAy1B,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA01B,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA21B,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA41B,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA61B,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA81B,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA+1B,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;QACF;QACA,IAAMg2B,YAAY,EAAE;QACpB,IAAK,IAAM/+C,OAAOq+C,WAAY;YAC5B,IAAIA,UAAU,CAACr+C,IAAI,CAACu+C,QAAQ,CAACv5B,IAAI,CAAC,SAACg6B;uBAAMZ,MAAMp3C,QAAQ,CAACg4C;gBAAK;gBAC3DD,UAAUziC,IAAI,CAAC+hC,UAAU,CAACr+C,IAAI,CAAC+oB,OAAO;YACxC;QACF;QACA,OAAOg2B,UAAUp4C,MAAM,GAAGo4C,UAAUviB,KAAK,CAAC,GAAG,GAAGtX,IAAI,CAAC,OAAO;IAC9D;IACA,IAAM+5B,kBAAkB,yBAACC;QACvB,IAAMC,KAAK5B,YAAYtkC,OAAO;QAC9B,IAAI,CAACkmC,IAAI;QACT,IAAM9+C,QAAQ8+C,GAAG9+C,KAAK;QACtB,IAAIyS,QAAQosC;QACZ,MAAOpsC,QAAQ,KAAK,KAAKssC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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 const getHoverStyles = () => {\n if (iconButtonHoverBgClass) return {};\n if (iconButtonHoverIntensity) {\n const opacity = iconButtonHoverIntensity / 100;\n return {\n \"--hover-bg\": `rgba(0,0,0,${opacity})`,\n \"--active-bg\": `rgba(0,0,0,${Math.min(opacity + 0.2, 1)})`\n };\n }\n return {};\n };\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 ...iconButtonHoverIntensity && {\n \"--hover-bg\": `rgba(0,0,0,${iconButtonHoverIntensity / 100})`,\n \"--active-bg\": `rgba(0,0,0,${Math.min(\n iconButtonHoverIntensity / 100 + 0.2,\n 1\n )})`\n },\n ...style\n },\n className: `\n inline-flex items-center justify-center\n transition-all duration-200\n ${iconButtonRadiusClass || \"rounded-md\"}\n ${iconButtonBgPaddingClass || \"p-[2px]\"}\n ${iconButtonBgClass || \"bg-white/10\"}\n\n ${iconButtonHoverBgClass ? iconButtonHoverBgClass : iconButtonHoverIntensity ? \"hover:bg-[var(--hover-bg)] active:bg-[var(--active-bg)]\" : \"hover:opacity-85 active:opacity-70\"}\n\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: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\n \"span\",\n {\n className: `${iconButtonBgPaddingClass || \"p-[2px]\"} flex items-center justify-center`,\n children\n }\n )\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)(import_jsx_runtime6.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(\n \"input\",\n {\n ref,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n onChange: handleChange,\n className: `\n w-full max-w-full min-w-0\n h-[44px]\n px-3\n text-base\n rounded-md\n border\n outline-none\n box-border\n transition-all duration-200\n\n ${hasError ? \"border-red-500 focus:border-red-600 focus:ring-2 focus:ring-red-100\" : \"border-[#D9D9D9] focus:border-blue-500 focus:ring-2 focus:ring-blue-100 hover:border-gray-400 focus:border-blue-500\"}\n\n disabled:bg-gray-100\n disabled:text-gray-400\n disabled:border-gray-200\n disabled:cursor-not-allowed\n\n file:py-2 file:px-3 file:cursor-pointer\n\n placeholder:text-gray-400\n\n ${className}\n `,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ (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);\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 [localFilters, setLocalFilters] = (0, import_react17.useState)(selectedFilters);\n (0, import_react17.useEffect)(() => {\n setLocalFilters(selectedFilters);\n }, [selectedFilters]);\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 = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") newStatus = \"In Progress\";\n return { ...task, progress: newProgress, status: newStatus };\n })\n };\n }\n return { ...baseData, title: `${baseData.title} - ${selectedGanttProject}`, projectName: `${baseData.projectName} - ${selectedGanttProject}` };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = (0, import_react17.useMemo)(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = localFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = localFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const currentMonthIndex = monthOrder.indexOf(selectedMonth);\n const previousMonth = currentMonthIndex > 0 ? monthOrder[currentMonthIndex - 1] : \"December\";\n const previousYear = currentMonthIndex > 0 ? selectedYear : String(Number(selectedYear) - 1);\n const previousYearData = horizontalBarData[previousYear];\n const previousMonthData = previousYearData?.[previousMonth];\n const products = Object.keys(monthData);\n let maxRevenue = 0, topProduct = \"\", minRevenue = Infinity, needsFocusProduct = \"\";\n products.forEach((product) => {\n const revenue = monthData[product].Revenue;\n if (revenue > maxRevenue) {\n maxRevenue = revenue;\n topProduct = product;\n }\n if (revenue < minRevenue) {\n minRevenue = revenue;\n needsFocusProduct = product;\n }\n });\n let percentageChange = 0, isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const cur = monthData[topProduct].Revenue, prev = previousMonthData[topProduct].Revenue;\n if (prev !== 0) {\n percentageChange = (cur - prev) / prev * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return { category: \"Category\", name: topProduct, revenue: `${topProductData.Revenue}k`, profit: `${topProductData.Profit}k`, needsFocus: needsFocusProduct, change: `${Math.abs(percentageChange).toFixed(0)}%`, isIncrease };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = (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 = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project]?.[year]?.[type]) return empty;\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = { Sunday: { total: 0, count: 0 }, Monday: { total: 0, count: 0 }, Tuesday: { total: 0, count: 0 }, Wednesday: { total: 0, count: 0 }, Thursday: { total: 0, count: 0 }, Friday: { total: 0, count: 0 }, Saturday: { total: 0, count: 0 } };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData?.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [y, m, d] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(y, m - 1, d);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({ date: item.date, value: item.value, dayName });\n if (dayOfWeekCounts[dayName]) {\n dayOfWeekCounts[dayName].total += item.value;\n dayOfWeekCounts[dayName].count += 1;\n }\n });\n }\n });\n let peakDay = { date: \"\", dayName: \"\", value: 0 };\n if (allDayData.length > 0) peakDay = allDayData.reduce((max, cur) => cur.value > max.value ? cur : max);\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const avg = stats.total / stats.count;\n if (avg > mostActiveDay.average) mostActiveDay = { dayName, count: stats.count, average: Math.round(avg) };\n }\n });\n return { peakDay, mostActiveDay };\n }, [chartType, calendarheatmapData, selectedFilters, selectedCalendarHeatmapProject]);\n const formatPeakDate = (dateStr) => {\n if (!dateStr) return \"Wed, 12 Jun\";\n try {\n return new Date(dateStr).toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = (0, import_react17.useMemo)(() => {\n if (!bulletData) return null;\n const year = localFilters.SelectYear || \"2026\";\n const month = localFilters.SelectMonth || \"January\";\n const type = localFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData?.bullets) return { title: monthData.title || bulletData.title, bullets: monthData.bullets };\n }\n }\n return { title: bulletData.title, bullets: bulletData.bullets };\n }, [bulletData, selectedFilters]);\n const currentKPIData = (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: localFilters[filter.id],\n onSelect: (val) => {\n const updated = { ...localFilters, [filter.id]: String(val) };\n setLocalFilters(updated);\n },\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n onApplyFilters?.(localFilters);\n onFiltersChange(localFilters);\n },\n className: \"w-[77px] h-[30px] rounded border border-[rgba(23,97,163,1)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)] text-white text-sm font-medium cursor-pointer transition-opacity hover:opacity-90\",\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges?.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[sy]?.[sm2]?.length > 0) currentGauge = gaugeData[sy][sm2][0];\n if (!currentGauge) return null;\n const gauge = currentGauge;\n const dailyAvgNeeded = Math.round(gauge.value / 30);\n const currentPace = 360;\n const daysRemaining = 8;\n const yearNum = parseInt(sy);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const monthIndex = monthNames.indexOf(sm2);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday = lastDayWeekday === 5 ? lastDay : lastDayWeekday < 5 ? lastDay - (lastDayWeekday + 2) : lastDay - 1;\n const formattedDate = new Date(yearNum, monthIndex, lastFriday).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauge = riskGaugeData.gauges?.length > 0 ? riskGaugeData.gauges[0] : null;\n if (riskGaugeData[sy]?.[sm2]?.[st]?.length > 0) currentRiskGauge = riskGaugeData[sy][sm2][st][0];\n if (!currentRiskGauge) return null;\n const gauge = currentRiskGauge;\n const maxScore = gauge.max || 100;\n const dailyAvgNeeded = Math.round(gauge.score / 30);\n const currentPace = Math.round(gauge.score / 20);\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n const currentTotal = typeData.reduce((sum, item) => sum + item.value, 0);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTotal = prevTypeData.reduce((sum, item) => sum + item.value, 0);\n const pctChange = prevTotal > 0 ? Math.round((currentTotal - prevTotal) / prevTotal * 100) : 0;\n const isIncrease = pctChange >= 0;\n const bgColor = isIncrease ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n const textColor = isIncrease ? \"rgba(5,150,105,1)\" : \"rgba(220,38,38,1)\";\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm2] || [];\n if (!groups.length) return null;\n const legends = groupBarData.legends || [];\n const getColor = (key, fallback) => legends.find((l) => l.key === key)?.color || fallback;\n const revenueColor = getColor(\"revenue\", \"rgba(37,99,235,1)\");\n const profitColor = getColor(\"profit\", \"rgba(77,175,131,1)\");\n const lossColor = getColor(\"loss\", \"rgba(220,38,38,1)\");\n const getProfitOrLoss = (g) => g.profitOrLoss !== void 0 && g.profitOrLoss !== null ? g.profitOrLoss : g.revenue - g.cost;\n const topPerformer = groups.reduce((max, item) => item.revenue > max.revenue ? item : max, groups[0]);\n const topPL = getProfitOrLoss(topPerformer);\n const isTopProfitable = topPL >= 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevGroups = groupBarData?.[prevYear]?.[prevMonth] || [];\n const prevTop = prevGroups.find((i) => i.name === topPerformer.name);\n const pctChange = prevTop && prevTop.revenue > 0 ? Math.round((topPerformer.revenue - prevTop.revenue) / prevTop.revenue * 100) : 12;\n const isIncrease = pctChange >= 0;\n const lossProducts = groups.filter((i) => getProfitOrLoss(i) < 0);\n const needsFocus = lossProducts.length > 0 ? lossProducts.reduce((max, i) => getProfitOrLoss(i) < getProfitOrLoss(max) ? i : max, lossProducts[0]) : groups.reduce((min, i) => i.revenue < min.revenue ? i : min, groups[0]);\n const needsFocusHasLoss = getProfitOrLoss(needsFocus) < 0;\n return /* @__PURE__ */ (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 = localFilters[f0] || currentFilters[0]?.options[0] || \"2026\";\n const month = localFilters[f1] || currentFilters[1]?.options[0] || \"January\";\n const category = localFilters[f2] || currentFilters[2]?.options[0] || \"Category A\";\n const yearData = lollipopData?.[year] || {};\n const catData = yearData?.[month]?.[category] || [];\n const bestItem = catData.length ? catData.reduce((max, i) => i.value > max.value ? i : max, catData[0]) : null;\n const lowestItem = catData.length ? catData.reduce((min, i) => i.value < min.value ? i : min, catData[0]) : null;\n const avg = catData.length ? Math.round(catData.reduce((s, i) => s + i.value, 0) / catData.length) : 0;\n const aboveAvg = catData.filter((i) => i.value > avg).length;\n const isPositive = aboveAvg > catData.length - aboveAvg;\n return /* @__PURE__ */ (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 borderColor: \"rgba(0,0,0,0.1)\",\n borderTopColor: color,\n animation: `spin ${speed + i * 0.3}s linear infinite`,\n animationDelay: `${i * 0.2}s`\n },\n className: \"absolute border border-solid rounded-full\"\n },\n i\n );\n }),\n /* @__PURE__ */ (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, color: \"black\" })\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.assign(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":["c:\\Users\\akhil\\OneDrive\\Desktop\\Mahati Systems\\Ui-components\\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","MahatiAdvancedChatbotModal","Chatbot","MahatiAdvancedFeedbackModal","AdvancedFeedbackModal","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","getHoverStyles","opacity","Math","min","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","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","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","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","localFilters","setLocalFilters","currentFilters","currentData","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","Revenue","isIncrease","cur","topProductData","category","Profit","needsFocus","change","calendarPeakAndActiveDay","empty","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","n","dateObj","dayNames","entries","stats","avg","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","currentKPIData","kpiKey","currentGauge","sp","productData","xAxis","Cost","st","yAxis","lYearData","ly","lm","lc","lo","lCatData","selectedCategory","currentRiskGauges","sw","selectedWeek","allData","isActive","zIndex","val","updated","statusColors","totalVolume","transactions","getBadgeBg","QuickInsightsCard","peakIconSrc","peakDate","peakEvents","calendarIconSrc","activeDayLabel","activeDayValue","activeAvg","dateLabel","sm2","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","formattedDate","currentRiskGauge","lastTask","TopPerformerCard","performer","totalRevenue","sum","contribution","ci","prevMonth","prevYear","prevTypeData","prevTop","growth","rank","sort","currentTotal","prevTotal","pctChange","bgColor","minimumFractionDigits","maximumFractionDigits","defaultLegends","getColor","revenueColor","profitColor","lossColor","g","topPL","isTopProfitable","prevGroups","lossProducts","needsFocusHasLoss","mt","ct","topTotal","mt2","ct2","weekNum","replace","prevWeek","prevDay","pt","ch","fid","f","f0","f1","f2","catData","bestItem","lowestItem","aboveAvg","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","animationDelay","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","assign","showBadgeImage","badgeImageSrc","href","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction","import_react25","import_lucide_react7","import_jsx_runtime34","ratings","Angry","Frown","Meh","Smile","Laugh","maxChars","ratingType","optionalRating","setStep","rating","setRating","setMessage","showConfirm","setShowConfirm","showForm","setShowForm","emojiRating","setEmojiRating","isValid","handleSubmit","feedback","resetAndClose","mid","firstPart","secondPart","star","CheckCircle2","import_react26","import_react_dom4","import_jsx_runtime35","messages","setMessages","setInput","handleSend","msg"],"mappings":"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ACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACAy1B,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA01B,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA21B,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA41B,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA61B,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA81B,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;YACA+1B,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDx1B,SAAS;YACX;QACF;QACA,IAAMg2B,YAAY,EAAE;QACpB,IAAK,IAAMn/C,OAAOy+C,WAAY;YAC5B,IAAIA,UAAU,CAACz+C,IAAI,CAAC2+C,QAAQ,CAACv5B,IAAI,CAAC,SAACg6B;uBAAMZ,MAAMp3C,QAAQ,CAACg4C;gBAAK;gBAC3DD,UAAUziC,IAAI,CAAC+hC,UAAU,CAACz+C,IAAI,CAACmpB,OAAO;YACxC;QACF;QACA,OAAOg2B,UAAUp4C,MAAM,GAAGo4C,UAAUviB,KAAK,CAAC,GAAG,GAAGtX,IAAI,CAAC,OAAO;IAC9D;IACA,IAAM+5B,kBAAkB,yBAACC;QACvB,IAAMC,KAAK5B,YAAYtkC,OAAO;QAC9B,IAAI,CAACkmC,IAAI;QACT,IAAMl/C,QAAQ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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 MahatiAdvancedChatbotModal: () => Chatbot,\n MahatiAdvancedFeedbackModal: () => AdvancedFeedbackModal,\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 const getHoverStyles = () => {\n if (iconButtonHoverBgClass) return {};\n if (iconButtonHoverIntensity) {\n const opacity = iconButtonHoverIntensity / 100;\n return {\n \"--hover-bg\": `rgba(0,0,0,${opacity})`,\n \"--active-bg\": `rgba(0,0,0,${Math.min(opacity + 0.2, 1)})`\n };\n }\n return {};\n };\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 ...iconButtonHoverIntensity && {\n \"--hover-bg\": `rgba(0,0,0,${iconButtonHoverIntensity / 100})`,\n \"--active-bg\": `rgba(0,0,0,${Math.min(\n iconButtonHoverIntensity / 100 + 0.2,\n 1\n )})`\n },\n ...style\n },\n className: `\n inline-flex items-center justify-center\n transition-all duration-200\n ${iconButtonRadiusClass || \"rounded-md\"}\n ${iconButtonBgPaddingClass || \"p-[2px]\"}\n ${iconButtonBgClass || \"bg-white/10\"}\n\n ${iconButtonHoverBgClass ? iconButtonHoverBgClass : iconButtonHoverIntensity ? \"hover:bg-[var(--hover-bg)] active:bg-[var(--active-bg)]\" : \"hover:opacity-85 active:opacity-70\"}\n\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: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(\n \"span\",\n {\n className: `${iconButtonBgPaddingClass || \"p-[2px]\"} flex items-center justify-center`,\n children\n }\n )\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)(import_jsx_runtime6.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(\n \"input\",\n {\n ref,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n onChange: handleChange,\n className: `\n w-full max-w-full min-w-0\n h-[44px]\n px-3\n text-base\n rounded-md\n border\n outline-none\n box-border\n transition-all duration-200\n\n ${hasError ? \"border-red-500 focus:border-red-600 focus:ring-2 focus:ring-red-100\" : \"border-[#D9D9D9] focus:border-blue-500 focus:ring-2 focus:ring-blue-100 hover:border-gray-400 focus:border-blue-500\"}\n\n disabled:bg-gray-100\n disabled:text-gray-400\n disabled:border-gray-200\n disabled:cursor-not-allowed\n\n file:py-2 file:px-3 file:cursor-pointer\n\n placeholder:text-gray-400\n\n ${className}\n `,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ (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);\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 [localFilters, setLocalFilters] = (0, import_react17.useState)(selectedFilters);\n (0, import_react17.useEffect)(() => {\n setLocalFilters(selectedFilters);\n }, [selectedFilters]);\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 = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") newStatus = \"In Progress\";\n return { ...task, progress: newProgress, status: newStatus };\n })\n };\n }\n return { ...baseData, title: `${baseData.title} - ${selectedGanttProject}`, projectName: `${baseData.projectName} - ${selectedGanttProject}` };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = (0, import_react17.useMemo)(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = localFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = localFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const currentMonthIndex = monthOrder.indexOf(selectedMonth);\n const previousMonth = currentMonthIndex > 0 ? monthOrder[currentMonthIndex - 1] : \"December\";\n const previousYear = currentMonthIndex > 0 ? selectedYear : String(Number(selectedYear) - 1);\n const previousYearData = horizontalBarData[previousYear];\n const previousMonthData = previousYearData?.[previousMonth];\n const products = Object.keys(monthData);\n let maxRevenue = 0, topProduct = \"\", minRevenue = Infinity, needsFocusProduct = \"\";\n products.forEach((product) => {\n const revenue = monthData[product].Revenue;\n if (revenue > maxRevenue) {\n maxRevenue = revenue;\n topProduct = product;\n }\n if (revenue < minRevenue) {\n minRevenue = revenue;\n needsFocusProduct = product;\n }\n });\n let percentageChange = 0, isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const cur = monthData[topProduct].Revenue, prev = previousMonthData[topProduct].Revenue;\n if (prev !== 0) {\n percentageChange = (cur - prev) / prev * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return { category: \"Category\", name: topProduct, revenue: `${topProductData.Revenue}k`, profit: `${topProductData.Profit}k`, needsFocus: needsFocusProduct, change: `${Math.abs(percentageChange).toFixed(0)}%`, isIncrease };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = (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 = localFilters[\"SelectYear\"] || \"2026\";\n const type = localFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project]?.[year]?.[type]) return empty;\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = { Sunday: { total: 0, count: 0 }, Monday: { total: 0, count: 0 }, Tuesday: { total: 0, count: 0 }, Wednesday: { total: 0, count: 0 }, Thursday: { total: 0, count: 0 }, Friday: { total: 0, count: 0 }, Saturday: { total: 0, count: 0 } };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData?.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [y, m, d] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(y, m - 1, d);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({ date: item.date, value: item.value, dayName });\n if (dayOfWeekCounts[dayName]) {\n dayOfWeekCounts[dayName].total += item.value;\n dayOfWeekCounts[dayName].count += 1;\n }\n });\n }\n });\n let peakDay = { date: \"\", dayName: \"\", value: 0 };\n if (allDayData.length > 0) peakDay = allDayData.reduce((max, cur) => cur.value > max.value ? cur : max);\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const avg = stats.total / stats.count;\n if (avg > mostActiveDay.average) mostActiveDay = { dayName, count: stats.count, average: Math.round(avg) };\n }\n });\n return { peakDay, mostActiveDay };\n }, [chartType, calendarheatmapData, selectedFilters, selectedCalendarHeatmapProject]);\n const formatPeakDate = (dateStr) => {\n if (!dateStr) return \"Wed, 12 Jun\";\n try {\n return new Date(dateStr).toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = (0, import_react17.useMemo)(() => {\n if (!bulletData) return null;\n const year = localFilters.SelectYear || \"2026\";\n const month = localFilters.SelectMonth || \"January\";\n const type = localFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData?.bullets) return { title: monthData.title || bulletData.title, bullets: monthData.bullets };\n }\n }\n return { title: bulletData.title, bullets: bulletData.bullets };\n }, [bulletData, selectedFilters]);\n const currentKPIData = (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: localFilters[filter.id],\n onSelect: (val) => {\n const updated = { ...localFilters, [filter.id]: String(val) };\n setLocalFilters(updated);\n },\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n onApplyFilters?.(localFilters);\n onFiltersChange(localFilters);\n },\n className: \"w-[77px] h-[30px] rounded border border-[rgba(23,97,163,1)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)] text-white text-sm font-medium cursor-pointer transition-opacity hover:opacity-90\",\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges?.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[sy]?.[sm2]?.length > 0) currentGauge = gaugeData[sy][sm2][0];\n if (!currentGauge) return null;\n const gauge = currentGauge;\n const dailyAvgNeeded = Math.round(gauge.value / 30);\n const currentPace = 360;\n const daysRemaining = 8;\n const yearNum = parseInt(sy);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const monthIndex = monthNames.indexOf(sm2);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday = lastDayWeekday === 5 ? lastDay : lastDayWeekday < 5 ? lastDay - (lastDayWeekday + 2) : lastDay - 1;\n const formattedDate = new Date(yearNum, monthIndex, lastFriday).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauge = riskGaugeData.gauges?.length > 0 ? riskGaugeData.gauges[0] : null;\n if (riskGaugeData[sy]?.[sm2]?.[st]?.length > 0) currentRiskGauge = riskGaugeData[sy][sm2][st][0];\n if (!currentRiskGauge) return null;\n const gauge = currentRiskGauge;\n const maxScore = gauge.max || 100;\n const dailyAvgNeeded = Math.round(gauge.score / 30);\n const currentPace = Math.round(gauge.score / 20);\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const st = localFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n const currentTotal = typeData.reduce((sum, item) => sum + item.value, 0);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTotal = prevTypeData.reduce((sum, item) => sum + item.value, 0);\n const pctChange = prevTotal > 0 ? Math.round((currentTotal - prevTotal) / prevTotal * 100) : 0;\n const isIncrease = pctChange >= 0;\n const bgColor = isIncrease ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n const textColor = isIncrease ? \"rgba(5,150,105,1)\" : \"rgba(220,38,38,1)\";\n return /* @__PURE__ */ (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 = localFilters[\"SelectYear\"] || \"2026\";\n const sm2 = localFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm2] || [];\n if (!groups.length) return null;\n const legends = groupBarData.legends || [];\n const getColor = (key, fallback) => legends.find((l) => l.key === key)?.color || fallback;\n const revenueColor = getColor(\"revenue\", \"rgba(37,99,235,1)\");\n const profitColor = getColor(\"profit\", \"rgba(77,175,131,1)\");\n const lossColor = getColor(\"loss\", \"rgba(220,38,38,1)\");\n const getProfitOrLoss = (g) => g.profitOrLoss !== void 0 && g.profitOrLoss !== null ? g.profitOrLoss : g.revenue - g.cost;\n const topPerformer = groups.reduce((max, item) => item.revenue > max.revenue ? item : max, groups[0]);\n const topPL = getProfitOrLoss(topPerformer);\n const isTopProfitable = topPL >= 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevGroups = groupBarData?.[prevYear]?.[prevMonth] || [];\n const prevTop = prevGroups.find((i) => i.name === topPerformer.name);\n const pctChange = prevTop && prevTop.revenue > 0 ? Math.round((topPerformer.revenue - prevTop.revenue) / prevTop.revenue * 100) : 12;\n const isIncrease = pctChange >= 0;\n const lossProducts = groups.filter((i) => getProfitOrLoss(i) < 0);\n const needsFocus = lossProducts.length > 0 ? lossProducts.reduce((max, i) => getProfitOrLoss(i) < getProfitOrLoss(max) ? i : max, lossProducts[0]) : groups.reduce((min, i) => i.revenue < min.revenue ? i : min, groups[0]);\n const needsFocusHasLoss = getProfitOrLoss(needsFocus) < 0;\n return /* @__PURE__ */ (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 = localFilters[f0] || currentFilters[0]?.options[0] || \"2026\";\n const month = localFilters[f1] || currentFilters[1]?.options[0] || \"January\";\n const category = localFilters[f2] || currentFilters[2]?.options[0] || \"Category A\";\n const yearData = lollipopData?.[year] || {};\n const catData = yearData?.[month]?.[category] || [];\n const bestItem = catData.length ? catData.reduce((max, i) => i.value > max.value ? i : max, catData[0]) : null;\n const lowestItem = catData.length ? catData.reduce((min, i) => i.value < min.value ? i : min, catData[0]) : null;\n const avg = catData.length ? Math.round(catData.reduce((s, i) => s + i.value, 0) / catData.length) : 0;\n const aboveAvg = catData.filter((i) => i.value > avg).length;\n const isPositive = aboveAvg > catData.length - aboveAvg;\n return /* @__PURE__ */ (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 borderColor: \"rgba(0,0,0,0.1)\",\n borderTopColor: color,\n animation: `spin ${speed + i * 0.3}s linear infinite`,\n animationDelay: `${i * 0.2}s`\n },\n className: \"absolute border border-solid rounded-full\"\n },\n i\n );\n }),\n /* @__PURE__ */ (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, color: \"black\" })\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.assign(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: \"relative w-[420px] max-w-[90%] rounded-[16px] bg-white p-6 text-center shadow-[0_10px_30px_rgba(0,0,0,0.2)] border border-[#CFE8DC]\",\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\n// src/components/AdvancedFeedbackModal.tsx\nvar import_react25 = require(\"react\");\nvar import_lucide_react7 = require(\"lucide-react\");\nvar import_jsx_runtime34 = require(\"react/jsx-runtime\");\nvar ratings = [\n { id: 1, label: \"Terrible\", icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.Angry, { size: 34 }) },\n { id: 2, label: \"Bad\", icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.Frown, { size: 34 }) },\n { id: 3, label: \"Okay\", icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.Meh, { size: 34 }) },\n { id: 4, label: \"Good\", icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.Smile, { size: 34 }) },\n { id: 5, label: \"Amazing\", icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.Laugh, { size: 34 }) }\n];\nfunction AdvancedFeedbackModal({\n isOpen,\n onClose,\n onSubmit,\n maxChars = 200,\n title = \"Share Your Feedback\",\n ratingType = \"emoji\",\n optionalRating = false\n}) {\n const [step, setStep] = (0, import_react25.useState)(\"rating\");\n const [rating, setRating] = (0, import_react25.useState)(null);\n const [message, setMessage] = (0, import_react25.useState)(\"\");\n const [showConfirm, setShowConfirm] = (0, import_react25.useState)(false);\n const [showForm, setShowForm] = (0, import_react25.useState)(false);\n const [emojiRating, setEmojiRating] = (0, import_react25.useState)(null);\n const remaining = maxChars - message.length;\n const isValid = optionalRating ? message.trim().length > 0 : rating !== null && message.trim().length > 0;\n const handleSubmit = () => {\n if (!optionalRating && !rating) return;\n onSubmit?.({\n rating: rating ?? 0,\n feedback: message\n });\n setStep(\"success\");\n };\n const resetAndClose = () => {\n setStep(\"rating\");\n setRating(null);\n setMessage(\"\");\n onClose();\n };\n (0, import_react25.useEffect)(() => {\n if (isOpen) {\n setStep(\"rating\");\n setRating(null);\n setShowConfirm(false);\n setEmojiRating(null);\n setShowForm(false);\n setMessage(\"\");\n }\n }, [isOpen]);\n const words = title.trim().split(/\\s+/);\n const mid = Math.floor(words.length / 2);\n const firstPart = words.slice(0, mid).join(\" \");\n const secondPart = words.slice(mid).join(\" \");\n return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: `fixed inset-0 z-[9999] flex items-center justify-center transition-opacity duration-300 ${isOpen ? \"opacity-100 visible\" : \"opacity-0 invisible\"} bg-black/40 backdrop-blur-sm`, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"w-full max-w-xl relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"absolute inset-0 opacity-[0.05] pointer-events-none\", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"div\",\n {\n className: \"w-full h-full\",\n style: {\n backgroundImage: `linear-gradient(#1761a3 1px, transparent 1px), linear-gradient(to right, #1761a3 1px, transparent 1px)`,\n backgroundSize: \"40px 40px\"\n }\n }\n ) }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"w-full min-h-[430px] relative rounded-2xl p-[2px] bg-gradient-to-r from-[#16a34a]/50 via-transparent to-[#1761a3]/50 shadow-[0_10px_40px_rgba(23,97,163,0.15)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"absolute inset-0 rounded-2xl bg-gradient-to-r from-[#1761a3]/20 via-transparent to-[#16a34a]/20 blur-xl opacity-60\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"relative overflow-hidden rounded-2xl bg-gradient-to-br from-white/90 to-white/70 backdrop-blur-xl border border-white/20 min-h-[430px]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: resetAndClose,\n className: \"absolute top-4 right-4 text-gray-500 hover:text-black z-10\",\n children: \"\\u2715\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"absolute -top-20 -left-20 w-60 h-60 bg-[#1761a3]/20 rounded-full blur-3xl\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"absolute -bottom-20 -right-20 w-60 h-60 bg-[#1761a3]/20 rounded-full blur-3xl\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"relative p-6 md:p-8 min-h-[350px] flex flex-col justify-start\", children: [\n step !== \"success\" && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"h2\", { className: \"text-2xl md:text-3xl font-bold text-center mb-6\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"span\", { className: \"text-[#0f2a44]\", children: firstPart }),\n \" \",\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"span\", { className: \"bg-gradient-to-r from-[#16a34a] to-[#1761a3] bg-clip-text text-transparent\", children: secondPart })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"flex flex-col items-center gap-4 mb-6\", children: [\n (ratingType === \"star\" || optionalRating) && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"flex justify-center gap-6 mb-6 w-full\", children: [1, 2, 3, 4, 5].map((star) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: () => {\n setRating(star);\n },\n className: \"transition-transform hover:scale-110\",\n children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"div\",\n {\n className: `w-8 h-8 bg-center bg-no-repeat transition-all duration-200 ${star <= (rating || 0) ? \"opacity-100 scale-110\" : \"opacity-70 hover:opacity-100\"}`,\n style: {\n backgroundImage: `url(${star <= (rating || 0) ? \"/icons/yellowstaremoji.png\" : \"/icons/staremoji.png\"})`,\n backgroundSize: \"contain\"\n }\n }\n )\n },\n star\n )) }),\n (ratingType === \"emoji\" || rating !== null) && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"flex justify-center gap-4 mb-4 w-full\", children: ratings.map((item) => {\n const isActive = emojiRating === item.id;\n return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\n \"button\",\n {\n onClick: () => {\n setEmojiRating(item.id);\n setShowConfirm(true);\n },\n className: `flex flex-col items-center gap-1 flex-1 py-3 rounded-xl transition-all duration-300\n ${isActive ? \"bg-gradient-to-r from-[#16a34a] to-[#1761a3] text-white scale-105 shadow-md\" : \"text-gray-500 hover:bg-mahati-light\"}`,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: `${isActive ? \"scale-110 text-white\" : \"text-[#1761a3]\"}`, children: item.icon }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"span\", { className: \"text-xs font-medium\", children: item.label })\n ]\n },\n item.id\n );\n }) })\n ] }),\n showConfirm && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"text-center mt-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"p\", { className: \"bg-gradient-to-r from-[#16a34a] to-[#1761a3] bg-clip-text text-transparent\", children: \"Would you like to give feedback?\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"flex gap-4 justify-center mt-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: () => setShowForm(true),\n className: \"px-6 py-2 rounded-xl text-white bg-gradient-to-r from-[#16a34a] to-[#1761a3]\",\n children: \"Yes\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: () => setStep(\"success\"),\n className: \"px-6 py-2 rounded-xl text-white bg-gradient-to-r from-[#16a34a] to-[#1761a3]\",\n children: \"No\"\n }\n )\n ] })\n ] }),\n showForm && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"textarea\",\n {\n value: message,\n onChange: (e) => {\n if (e.target.value.length <= maxChars) {\n setMessage(e.target.value);\n }\n },\n placeholder: \"Tell us about your experience...\",\n className: \"w-full h-28 mt-4 rounded-xl border border-gray-300 p-4\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: handleSubmit,\n disabled: !isValid,\n className: `w-full mt-4 py-3 rounded-xl font-medium transition-all duration-300\n ${isValid ? \"text-white bg-gradient-to-r from-[#16a34a] to-[#1761a3] hover:scale-[1.02] shadow-md\" : \"bg-gray-300 text-gray-500 cursor-not-allowed\"}\n `,\n children: \"Submit Feedback\"\n }\n )\n ] })\n ] }),\n step === \"success\" && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"flex flex-col items-center justify-center text-center h-full\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(\"div\", { className: \"mb-4 text-[#16a34a] relative\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"div\", { className: \"absolute inset-0 bg-[#16a34a]/20 blur-xl rounded-full\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_lucide_react7.CheckCircle2, { size: 56, className: \"relative\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"h3\", { className: \"text-2xl font-bold mb-2 bg-gradient-to-r from-[#16a34a] to-[#1761a3] bg-clip-text text-transparent\", children: \"Thank You!\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\"p\", { className: \"text-black mb-4\", children: \"Your feedback has been successfully submitted.\" }),\n /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(\n \"button\",\n {\n onClick: resetAndClose,\n className: \"px-5 py-2 rounded-lg bg-gray-200 hover:bg-gray-300\",\n children: \"Close\"\n }\n )\n ] })\n ] })\n ] })\n ] })\n ] }) });\n}\n\n// src/components/AdvancedChatbot.tsx\nvar import_react26 = require(\"react\");\nvar import_react_dom4 = require(\"react-dom\");\nvar import_jsx_runtime35 = require(\"react/jsx-runtime\");\nfunction Chatbot({ isOpen, onClose }) {\n const [step, setStep] = (0, import_react26.useState)(\"form\");\n const [messages, setMessages] = (0, import_react26.useState)([\n {\n type: \"bot\",\n text: \"Welcome! I'm your Mahati Virtual Assistant. How can I help you today?\"\n }\n ]);\n const [input, setInput] = (0, import_react26.useState)(\"\");\n (0, import_react26.useEffect)(() => {\n if (isOpen) {\n setStep(\"form\");\n setMessages([\n {\n type: \"bot\",\n text: \"Welcome! I'm your Mahati Virtual Assistant. How can I help you today?\"\n }\n ]);\n }\n }, [isOpen]);\n if (!isOpen) return null;\n const handleSend = () => {\n if (!input.trim()) return;\n setMessages((prev) => [\n ...prev,\n { type: \"user\", text: input }\n ]);\n setTimeout(() => {\n setMessages((prev) => [\n ...prev,\n { type: \"bot\", text: \"Got it! Let me help you with that.\" }\n ]);\n }, 500);\n setInput(\"\");\n };\n return (0, import_react_dom4.createPortal)(\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(import_jsx_runtime35.Fragment, { children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\n \"div\",\n {\n onClick: onClose,\n className: \"fixed inset-0 bg-black/30 backdrop-blur-[2px] z-40\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"fixed bottom-6 right-6 w-[420px] h-[620px] bg-[#eef2f4] rounded-2xl shadow-2xl overflow-hidden flex flex-col z-[9999]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"px-5 py-4 text-white flex justify-between items-center bg-gradient-to-r from-[#4daf83] to-[#1761a3]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"h3\", { className: \"text-md font-semibold\", children: \"Mahati Virtual Assistant\" }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"p\", { className: \"text-xs opacity-80\", children: \"Ask anything. We're here to help.\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\n \"button\",\n {\n onClick: onClose,\n className: \"w-9 h-9 rounded-full bg-white/20 flex items-center justify-center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/close-icon.png\", className: \"w-3 h-3\" })\n }\n )\n ] }),\n step === \"form\" && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex flex-col h-full bg-[#f4f6f8]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex-1 px-5 pt-6 pb-4\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"text-center mb-7\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"w-14 h-14 mx-auto mb-3 rounded-xl bg-gradient-to-br from-[#1761a3]/10 to-[#4daf83]/10 flex items-center justify-center shadow-sm\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/Mahati-Logo-graphics.png\", className: \"w-9 h-9\" }) }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"h2\", { className: \"text-lg font-bold text-[#1f2d3d]\", children: \"Welcome to Mahati Assistant\" }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"p\", { className: \"text-xs text-gray-500\", children: \"Please enter your details to start the conversation\" })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"space-y-5\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"input\", { className: \"w-full px-4 py-2.5 rounded-lg border bg-gray-50\", placeholder: \"First Name\" }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"input\", { className: \"w-full px-4 py-2.5 rounded-lg border bg-gray-50\", placeholder: \"Last Name\" }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"input\", { className: \"w-full px-4 py-2.5 rounded-lg border bg-gray-50\", placeholder: \"Email\" })\n ] })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"px-5 pb-5 pt-3 bg-white border-t\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\n \"button\",\n {\n onClick: () => setStep(\"chat\"),\n className: \"w-full py-3 text-white bg-gradient-to-r from-[#1761a3] to-[#4daf83] rounded-lg\",\n children: \"Start Conversation\"\n }\n ) })\n ] }),\n step === \"chat\" && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex flex-col flex-1 min-h-0\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"flex-1 overflow-y-auto px-5 py-5 space-y-6\", children: messages.map((msg, i) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { children: msg.type === \"bot\" ? /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex items-start gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/chatbot-icon.png\", className: \"w-7 h-7 mt-1\" }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"px-4 py-3 max-w-[260px] rounded-[4px_16px_16px_16px] bg-gradient-to-br from-[#1761a3]/10 to-[#4daf83]/10 text-[#0f2a44] shadow-sm\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"p\", { className: \"text-sm text-[#2c3e50]\", children: msg.text }) })\n ] }) : /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex justify-end items-start gap-3\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"bg-gradient-to-r from-[#4daf83] to-[#1761a3] text-white px-4 py-3 rounded-[16px_4px_16px_16px] max-w-[220px] shadow-md\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"p\", { className: \"text-sm\", children: msg.text }) }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"w-10 h-10 rounded-full bg-[#d9e2e7] flex items-center justify-center\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/user-icon.png\", className: \"w-4 h-4\" }) })\n ] }) }, i)) }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"flex justify-center py-3 bg-[#eef2f4] border-t border-[#e4ddd2]\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"button\", { className: \"px-5 py-2 text-xs rounded-full border border-[#1761a3]/40 text-[#1761a3] font-semibold bg-white shadow-sm flex items-center gap-2\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/save-icon.png\", className: \"w-4 h-4\" }),\n \"Save Conversation\"\n ] }) }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"px-4 py-3 bg-white border-t flex items-center gap-3 shadow-[0_-4px_20px_rgba(0,0,0,0.05)]\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(\"div\", { className: \"flex-1 flex items-center px-4 py-1 rounded-full border border-gray-300 bg-gray-50\", children: [\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\n \"input\",\n {\n type: \"text\",\n value: input,\n onChange: (e) => setInput(e.target.value),\n placeholder: \"Type your message...\",\n className: \"flex-1 bg-transparent text-sm outline-none\"\n }\n ),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"div\", { className: \"p-2 rounded-full hover:bg-gray-200 cursor-pointer\", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/attach-icon.png\", className: \"w-4 h-4 opacity-60\" }) })\n ] }),\n /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\n \"button\",\n {\n onClick: handleSend,\n className: \"w-11 h-11 rounded-full bg-gradient-to-r from-[#4daf83] to-[#1761a3] flex items-center justify-center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(\"img\", { src: \"/images/send-icon.png\", className: \"w-4 h-4\" })\n }\n )\n ] })\n ] })\n ] })\n ] }),\n document.body\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 MahatiAdvancedChatbotModal,\n MahatiAdvancedFeedbackModal,\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"]}
|