@mahatisystems/mahati-ui-components 4.6.0 → 5.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/calendar-3-SFJ52KIR.png +0 -0
- package/dist/check-mark_1-6GNY6HFY.png +0 -0
- package/dist/check-mark_2-YWM2KQA2.png +0 -0
- package/dist/close-EEDOIEDC.png +0 -0
- package/dist/close_copy_1-PFFNUORV.png +0 -0
- package/dist/danger_1-LUIFNS2J.png +0 -0
- package/dist/danger_1_1-PHLDGYEA.png +0 -0
- package/dist/danger_2-YTNTGWQA.png +0 -0
- package/dist/decrease-SMWSBU7A.png +0 -0
- package/dist/down_4-X52SETBJ.png +0 -0
- package/dist/increase-QM2727GU.png +0 -0
- package/dist/index.d.mts +111 -76
- package/dist/index.d.ts +111 -76
- package/dist/index.js +9592 -14607
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +9124 -14139
- package/dist/index.mjs.map +1 -1
- package/dist/notification_1-K2I7DVDH.png +0 -0
- package/dist/notification_2-KFI6MN7T.png +0 -0
- package/dist/performance-peak-icon-QXFZTZUB.png +0 -0
- package/package.json +12 -10
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.mjs"],"names":["__getOwnPropNames","Object","getOwnPropertyNames","__commonJS","cb","mod","__require","exports","require_down_4","module","require_performance_peak_icon","require_calendar_3","require_check_mark_1","require_danger_1","require_notification_1","require_close","require_check_mark_2","require_danger_2","require_danger_1_1","require_notification_2","require_close_copy_1","useState","ChevronDown","ChevronUp","styled","jsx","jsxs","AccordionContainer","div","AccordionButton","button","props","open","AccordionContent","ContentWrapper","IconWrapper","span","Accordion","title","children","defaultOpen","accordionTestId","headerTestId","contentTestId","setOpen","onClick","className","displayName","React2","styled2","jsx2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","name","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","StyledButton","color","$name","$iconButton","startsWith","$height","$width","$variant","$size","IconButtonInner","slice","$radiusClass","$paddingClass","$bgClass","rgbaMatch","$hoverBgClass","hoverMatch","activeMatch","styles","$intensity","v","Math","max","min","IconButtonGroupWrapper","$direction","$gap","IconButtonGroup","forwardRef","direction","ref","gap","ButtonBase","variant","size","iconButton","iconButtonHeightClass","iconButtonWidthClass","iconButtonBgClass","iconButtonRadiusClass","iconButtonBgPaddingClass","iconButtonHoverBgClass","iconButtonHoverIntensity","testId","height","width","Button","React3","useState2","ChevronDown2","ChevronUp2","css","styled3","jsx3","jsxs2","PerspectiveWrapper","flippable","StyledCard","backgroundColor","isFlipped","CardHeader","hasContent","CardTitle","h4","CollapseButton","ContentWrapper2","ContentInner","FrontFace","BackFace","Card","cardContent","cardBackContent","collapsible","borderRadius","onFlip","style","setIsFlipped","contentId","useId","handleFlip","newFlippedState","mainContent","type","e","stopPropagation","p","id","React4","X","styled4","css2","keyframes","Fragment","jsx4","jsxs3","MODAL_WIDTH_MAP","sm","default","md","lg","xl","fadeIn","scaleIn","Overlay","ModalContainer","position","ModalContent","includes","margin","ModalHeader","HeaderContent","HeaderIconWrapper","HeaderTextWrapper","ModalTitle","h3","ModalSubtitle","CloseButton","ModalBody","ModalFooter","SecondaryButton","PrimaryButton","disabled","Modal","isOpen","onClose","subtitle","customWidth","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","key","document","addEventListener","removeEventListener","body","overflow","role","strokeWidth","label","styled5","jsx5","StyledForm","form","FormContainer","onSubmit","React5","styled6","css3","jsx6","jsxs4","InputWrapper","StyledInput","input","hasError","ErrorMessage","Input","errorMessage","onChange","handleChange","useState4","useEffect3","useRef","useRef2","X2","ChevronDown3","styled8","createPortal","React6","useState3","useEffect2","HiOutlineClock","HiChevronDown","HiChevronLeft","HiChevronRight","HiCalendarDays","styled7","css4","jsx7","jsxs5","CalendarContainer","InputWrapper2","IconWrapper2","CalendarInput","$scale","$showIcon","$disabled","CalendarDropdown","$positionAbove","CalendarContent","CalendarTitle","FieldButtonsRow","FieldButton","$fullWidth","$active","FieldLabel","FieldValue","NavHeader","NavRow","NavButton","MonthYearButton","$clickable","YearDropdown","YearOption","$selected","DayNamesGrid","GridContainer","DayName","CalendarGrid","DayButton","$isToday","$inRange","$blocked","FooterSection","ButtonRow","ActionButton","TimeSelectorContainer","TimeSelectorContent","TimeFormatSection","TimeFormatRow","TimeFormatLabel","TimeFormatToggleRow","TimeFormatText","ToggleSwitch","ToggleThumb","SelectRow","SelectWrapper","SelectLabel","$align","SelectContainer","StyledSelect","select","SelectIcon","TimeSelectSection","TimeSelectLabel","TimeSelectGrid","TimeSelectItem","PreviewSection","PreviewLabel","PreviewText","TimeFooter","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","DAY_NAMES","DATE_FORMAT_OPTIONS","TIME_ZONE_OPTIONS","compareInternalDates","a","b","addDaysInternal","start","daysToAdd","y","m","d","dim","isBlockedDateHelper","config","days","startInternal","startDate","endInternal","currentInternal","afterOrOnStart","beforeOrOnEnd","getLocalTimeZone","timeZoneString","Intl","DateTimeFormat","resolvedOptions","timeZone","shortTimeZone","toLocaleTimeString","timeZoneName","split","SIZE_SCALES","getDeviceScale","window","innerWidth","Calendar","calendartestId","value","enableRangeSelection","rangeValue","onRangeChange","enableTimeSelection","timeValue","onTimeChange","showTimeFormatToggle","timeFormat","onTimeFormatChange","autoHide","showTodayButton","showClearButton","placeholder","onShow","onHide","icon","showIcon","enableYearDropdown","showDateFormatSelector","dateFormat","onDateFormatChange","showTimeZoneSelector","timeZoneFormat","onTimeZoneFormatChange","blockDateConfig","previewTextStyles","globalTypography","today","getFullYear","currentYear","setCurrentYear","getMonth","currentMonth","setCurrentMonth","end","internalRangeValue","setInternalRangeValue","setIsOpen","activeField","setActiveField","showTimeSelector","setShowTimeSelector","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedPeriod","setSelectedPeriod","internalTimeFormat","setInternalTimeFormat","showYearDropdown","setShowYearDropdown","internalDateFormat","setInternalDateFormat","internalTimeZoneFormat","setInternalTimeZoneFormat","deviceScale","setDeviceScale","positionAbove","setPositionAbove","containerRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","target","daysInMonth","firstDay","monthName","previousMonth","nextMonth","selectDate","newRange","startTime","getTime","endTime","dateString","selectToday","todayDate","now","currentHour","getHours","currentMinute","getMinutes","hour12","localTZ","clearDate","toggleCalendar","newState","handleStartFieldClick","handleEndFieldClick","handleChooseTimeClick","handleChooseDateClick","handleTimeFormatToggle","newFormat","handleTimeConfirm","handleDateConfirm","handleMonthYearClick","handleYearSelect","renderDays","isSelected","isInRange","currentTime","isToday","isBlocked","push","i","totalCells","remainingCells","renderTimeSelector","hours12","Array","from","length","_","hours24","minutes","marginBottom","map","zone","Number","defaultIcon","paddingLeft","readOnly","display","flexDirection","alignItems","justifyContent","cloneElement","flex","minHeight","Fragment2","jsx8","jsxs6","FilterContainer","FilterButton","FilterModalWrapper","FilterCard","FilterHeader","FilterTitle","CloseButton2","SectionContainer","SectionHeader","SectionTitle","h6","ResetButton","SelectWrapper2","StyledSelect2","SelectIcon2","SearchInput","FilterFooter","ResetAllButton","ApplyButton","CustomSelectTrigger","CustomSelectLabel","CustomSelectIcon","CustomSelectDropdown","CustomSelectOption","CustomInput","fieldSize","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","opt","MahatiActivity","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","MahatiStatus","MahatiSearch","useEffect4","useState5","styled9","css5","keyframes3","Fragment3","jsx9","jsxs7","fadeIn2","slideIn","getFontFamily","font","lower","trim","Container","TabButton","fontFamily","orientation","isDragging","active","UnderlineIndicator","TabButtonInner","TabButtonLeft","TabLabel","CloseIcon","HorizontalHeader","VerticalTabList","VerticalGridLeft","VerticalGridRight","ContentWrapper3","ContentPanel","TabbedInterface","tabs","defaultActiveTab","onTabChange","draggableTabs","onReorderTabs","verticalPosition","showTabCloseIconInHeader","tabCloseIconPosition","tabCloseIconContent","onCloseTab","tabHeaderFont","tabContentFont","sectionTitleFont","sectionDescriptionFont","activeIndex","setActiveIndex","draggingIndex","setDraggingIndex","effectiveCloseIconContent","tabHeaderFontFamily","tabContentFontFamily","handleTabClick","index","handleDragStart","handleDragOver","preventDefault","handleDrop","fromIndex","toIndex","prevActive","handleDragEnd","headerButtons","tab","showClose","closeIcon2","draggable","onDragStart","onDragOver","onDrop","onDragEnd","content","useState6","useRef3","useEffect5","styled10","css6","jsx10","jsxs8","DropdownContainer","DropdownButton","DropdownMenu","DropdownItem","Dropdown","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","React10","useEffect6","useState7","XMarkIcon","styled11","css7","Fragment4","jsx11","jsxs9","getFontFamily2","Container2","Header","header","Title","h2","Description","TableWrapper","TableInner","StyledTable","table","TableHead","thead","TableHeadRow","tr","TableHeadCell","th","TableBody","tbody","TableRow","selected","TableCell","td","EmptyRow","EmptyCell","TabsSection","TabsHeader","TabsTitle","TabsHint","TabContentWrapper","CloseButtonWrapper","CloseButton3","DefaultContentContainer","TabsPanel","DetailRow","DetailLabel","DetailValue","EmptyValue","renderCellValue","isValidElement","isArray","some","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","TableWithTab","tableProps","tabProps","rearrange","getRowId","renderTabContent","onRowOpenInTab","description","tabLabelKey","data","setTabs","labelColumnKey","sectionTitleFontFamily","sectionDescriptionFontFamily","t","effectiveKey","rawLabel","rowIndex","handleRowClick","existsIndex","findIndex","next2","splice","next","handleCloseTab","filter","isRowSelected","handleReorderTabs","moved","tabbedInterfaceTabs","effectiveShowHeaderClose","colSpan","rowId","React11","useState8","ArrowDownOnSquareIcon","ArrowPathIcon","XMarkIcon2","styled12","css8","Fragment5","jsx12","jsxs10","TableContainer","TableHead2","TableHeaderRow","TableHeader","isFirst","isLast","TableBody2","TableRow2","isExpandable","isExpanded","highlightColor","StyledTable2","TableCell2","TruncatedText","SummaryRow","SummaryCell","SummaryContent","SummaryInner","SummaryHeader","SummaryTitle","SummaryCloseButton","SummaryText","EmptyRow2","EmptyCell2","EmptyContent","ActionsCell","ControlsWrapper","SearchControls","SearchInputWrapper","SearchInput2","ClearButton","SearchModeSelect","DownloadButtons","DownloadButton","PaginationWrapper","align","PaginationControls","PaginationButton","isActive","PaginationEllipsis","LimitSelect","PaginationInfo","ResetButton2","Table","page","setPage","limit","setLimit","totalCount","highlightRowColor","actions","paginationRequired","paginationPosition","onDownloadPDF","onDownloadExcel","searchable","searchTerm","onResetSearch","onSearch","searchModeOptions","summary","summaryKey","summaryTitleField","summaryColumn","summaryColumnKey","summaryColumnMaxLength","textWrapColumns","textWrapMaxLength","textWrapColumnMaxLengths","tableTestId","searchMode","setSearchMode","expandedRowIndex","setExpandedRowIndex","Set","expandedRowIndexes","setExpandedRowIndexes","isPaginated","totalPages","ceil","currentPage","goToPage","clamped","renderPageNumbers","pages","siblings","renderPagination","summaryColKeyToUse","mode","idx","has","delete","add","handleCloseDrawer","titleValue","summaryValue","cellIdx","fullText","summaryOverride","maxLen","truncated","substring","perColMax","result","console","warn","endsWith","dangerouslySetInnerHTML","__html","item","useMemo","useMemo2","useState10","styled20","useEffect7","useRef4","useState9","styled13","jsx13","jsxs11","assetSrc","anyM","src","arrowDownIcon","DropdownContainer2","DropdownLabel","DropdownTrigger","DropdownMenu2","DropdownOption","$isSelected","ArrowIcon","img","ChartDropdown","optionValue","textOverflow","whiteSpace","alt","React13","styled14","Chart","ChartJS","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","Doughnut","Line","Bar","jsx14","register","ChartContainer","makeAreaDataStraight","datasets","ds","tension","cubicInterpolationMode","PieLineBarChart","chartType","defaultOptions","isLineFamily","responsive","maintainAspectRatio","elements","line","plugins","legend","tooltip","intersect","titleColor","bodyColor","borderColor","borderWidth","padding","displayColors","scales","x","grid","drawBorder","ticks","interaction","axis","cutout","chartOptions","renderChart","styled15","jsx15","jsxs12","Container3","Title2","BulletsContainer","BulletItem","BulletName","BulletContent","BarContainer","BarBackground","BarFill","Marker","$position","ValueLabel","AxisLabels","AxisLabelsRow","AxisLabel","$offset","PercentageText","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","styled16","jsx16","jsxs13","Container4","Title3","GaugesContainer","GaugeItem","GaugeContent","GaugeVisualContainer","GaugeSVG","svg","GaugeText","text","$fontSize","$fontWeight","$fill","GaugePath","path","$dasharray","NeedleGroup","g","$angle","CompletionText","StatsContainer","StatsRow","$marginBottom","StatItem","StatLabel","StatValue","Separator","GaugeChart","gauges","gauge","percentage","angle","remaining","dailyAvg","viewBox","x1","y1","x2","y2","offset","stopColor","fill","stroke","strokeLinecap","transform","gradientUnits","stopOpacity","textAnchor","styled17","jsx17","jsxs14","Container5","HeaderRow","MenuButton","MenuDots","Dot","Title4","ChartContent","LabelsColumn","LabelRow","Label","ChartArea","GridContainer2","GridLine","$left","$centerOffset","YAxisLine","XAxisLine","BarsContainer","BarRow","BarWrapper","Bar2","$color","XAxisLabels","XAxisLabel","HorizontalBarChart","bars","selectedYear","selectedMonth","selectedType","xAxisConfig","topPerformer","safeBars","maxValue","bar","labels","totalLabels","labelText","approxCharWidth","labelWidth","centerOffset","maxValue2","barLengthPercentage","React14","styled18","Fragment6","jsx18","jsxs15","assetSrc2","arrowDownIcon2","Container6","HeaderRow2","DropdownWrapper","DropdownButton2","DropdownText","DropdownMenu3","$isOpen","DropdownItem2","MenuButton2","MenuDots2","MenuDot","DateRangeBox","DateRangeText","TasksContainer","TaskRow","TaskLabel","TaskTimeline","TaskName","GANTT_COLORS","emerald","GanttChart","selectedProject","onProjectChange","isProjectDropdownOpen","setIsProjectDropdownOpen","projects","projectData","getMonthNames","monthRange","monthMap","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","endPercent","lineHeight","baseHeight","taskHeight","taskSpacing","totalHeight","tasks","DateRangeBoxes","background","aspectRatio","transition","project","fontSize","fontWeight","section","zIndex","task","taskColor","React15","styled19","jsx19","jsxs16","Container7","HeaderRow3","LeftSection","DropdownWrapper2","DropdownButton3","DropdownLabel2","DropdownArrow","DropdownMenu4","DropdownItem3","MenuButton3","MenuDots3","MenuDot2","LegendRow","LegendLabel","LegendBox","HeatmapContainer","DayLabelsColumn","DayLabel","GridContainer3","GridWrapper","MonthHeaderRow","MonthLabel","MonthText","DayRow","DayCell","$opacity","$isCurrentYear","DayNumber","$isHovered","DayNumberText","TooltipContainer","$x","$y","$visible","TooltipBox","TooltipDate","TooltipDivider","TooltipValue","TooltipColorBox","TooltipText","CalendarHeatmapChart","calendarheatmapData","hoveredCell","setHoveredCell","visible","cellColor","tooltipData","setTooltipData","getYearWeeks","year2","calendarheatmapData2","weeks","firstDayOfWeek","daysToMonday","firstMonday","currentDate","lastMonth","weekIndex","maxWeeks","hasCurrentYearDate","dateStr","monthData","dayData","weekDays","setDate","dayIndex","thursday","weekMonth","monthLabel","yearWeeks","dayRows","forEach","week","weekIdx","dayIdx","getActivityColor","strokeLinejoin","rowIdx","cell","colIdx","isCurrentYear","cellKey","onMouseEnter","currentTarget","onMouseLeave","jsx20","jsxs17","assetSrc3","performancePeakIcon","calendarIcon","MainContainer","TabsSection2","TabsWrapper","TabButton2","$isActive","FiltersSection","FiltersWrapper","FilterDropdownWrapper","$zIndex","ApplyButton2","ContentSection","PieGrid","Card2","CardHeaderRow","MenuButton4","MenuDots4","MenuDot3","ChartContainer2","DetailsSection","DetailRow2","DetailLeft","ColorBlock","DetailLabel2","DetailValue2","DetailsCard","DetailsCardTitle","DetailsList","DetailItem","DetailColorBar","DetailContent","DetailHeader","DetailItemLabel","StatusBadge","$bgColor","StatusText","DetailDescription","DetailItemValue","QuickStatsColumn","QuickStatCard","StatLabel2","StatValue2","StatChange","$isPositive","StatDescription","TwoColumnGrid","MainChartCard","ChartWrapper","Sidebar","SidebarCard","SidebarTitle","SidebarDetailsList","SidebarDetailItem","PercentageBadge","DetailsCardFooter","DetailsCardFooterIcon","DetailsCardFooterIconText","DetailsCardFooterText","DetailsCardFooterBold","SidebarColorBlock","SidebarDetailContent","SidebarDetailLabel","SidebarDetailDescription","SidebarDetailValue","ActionButtonsWrapper","ActionButton2","GanttGrid","GanttChartCard","GanttChartWrapper","GanttSidebar","GanttQuickInsightsCard","GanttInsightsTitle","GanttProjectInfo","GanttTaskList","GanttTaskItem","GanttTaskDot","GanttTaskContent","GanttTaskName","GanttTaskProgress","GanttTaskStatus","ProjectSummaryCard","ProjectSummaryTitle","ProjectSummaryContent","ProjectSummaryLabel","ProjectStatusGrid","ProjectStatusGridFull","ProjectStatusBox","ProjectStatusLabel","ProjectStatusValue","ProjectExpectedDate","CalendarGrid2","CalendarChartCard","CalendarChartWrapper","CalendarSidebar","ActivityLegendCard","ActivityLegendTitle","ActivityLegendList","ActivityLegendItem","ActivityLegendColor","ActivityLegendLabel","CalendarQuickInsightsCard","CalendarInsightsHeader","CalendarInsightsTitle","CalendarInsightsSubtitle","CalendarTotalVolumeLabel","CalendarTotalVolumeValue","CalendarDivider","CalendarIconBox","CalendarIcon","CalendarPeakDayWrapper","CalendarPeakDayIconBox","CalendarPeakDayContent","CalendarPeakDayLabel","CalendarPeakDayValue","CalendarPeakDayCount","CalendarActiveDayWrapper","CalendarActiveDayIconBox","CalendarActiveDayContent","CalendarActiveDayLabel","CalendarActiveDayValue","CalendarActiveDayAvg","HorizontalBarSidebar","DemoLegendsCard","DemoLegendsTitle","DemoLegendsList","DemoLegendItem","DemoLegendColor","DemoLegendLabel","TopPerformerCard","TopPerformerHeader","TopPerformerTitle","TopPerformerIndicator","TopPerformerArrow","$isIncrease","TopPerformerChange","TopPerformerContent","TopPerformerLabel","TopPerformerValue","TopPerformerStatsGrid","TopPerformerStat","TopPerformerStatLabel","TopPerformerStatValue","TopPerformerNeedsFocus","TopPerformerNeedsFocusLabel","TopPerformerNeedsFocusValue","GaugeQuickInsightsCard","GaugeInsightsHeader","GaugeInsightsTitle","GaugeInsightsDate","GaugeVolume","GaugeVolumeValue","GaugeDivider","GaugePeakDay","GaugePeakIcon","GaugePeakLabel","GaugePeakDate","GaugePeakEvents","GaugeActiveDayBox","GaugeActiveIcon","GaugeActiveLabel","GaugeActiveDayValue","GaugeActiveAvg","GoalHealthCard","PerformanceSummaryCard","PerformanceSummaryHeader","PerformanceSummaryTitle","PerformanceSummaryMenuButton","PerformanceSummaryList","PerformanceSummaryItem","PerformanceSummaryLabel","PerformanceSummaryBadge","PerformanceSummaryFooter","PerformanceSummaryIcon","PerformanceSummaryIconText","PerformanceSummaryActionText","PerformanceSummaryActionBold","BulletDetailItem","BulletDetailLeft","BulletDetailLabel","BulletDetailDescription","BulletPercentageBox","$label","BulletDetailsCardFooter","BulletDetailsIcon","BulletDetailsIconText","BulletDetailsFooterText","BulletDetailsFooterBold","GoalHealthHeader","GoalHealthTitle","GoalHealthBadge","GoalHealthBadgeText","GoalHealthCheckmark","GoalHealthMenuButton","GoalHealthMenuIcon","GoalHealthStatsGrid","GoalHealthStat","GoalHealthStatLabel","GoalHealthStatValue","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MahatiChartAnalyticsWidget","chartTypes","initialChartType","filters","chartFilters","selectedFilters","chartDataMap","bulletData","gaugeData","horizontalBarData","ganttData","heatmapData","onApplyFilters","quickStats","actionButtons","onChartTypeChange","onFiltersChange","details","setChartType","selectedGanttProject","setSelectedGanttProject","selectedCalendarHeatmapProject","setSelectedCalendarHeatmapProject","currentFilters","currentData","base","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","revenue","Revenue","percentageChange","isIncrease","currentRevenue","previousRevenue","topProductData","category","profit","Profit","needsFocus","change","abs","toFixed","calendarPeakAndActiveDay","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","total","n","yearPart","monthPart","dayPart","dateObj","dayNames","peak","reduce","entries","stats","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","selectedYear2","currentGauge","yearData2","heatmapDataForChart","selectedProduct","productData","xAxis","Cost","val","statusColors","totalVolume","transactions","filteredGauges","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","expectedFinish","formattedDate","cx","cy","r","lastTask","bgColor","marginTop","React17","useState11","styled21","Fragment7","jsx21","jsxs18","TooltipWrapper","TooltipContent","$hasText","$hasImage","$isReady","TooltipArrow","TooltipImage","Tooltip2","image","animation","setVisible","isReady","setIsReady","showAnimation","setShowAnimation","tooltipPosition","setTooltipPosition","adjustedPosition","setAdjustedPosition","tooltipRef","tooltipRect","viewportWidth","viewportHeight","finalPosition","right","showTooltip","requestAnimationFrame","delay","triggerDelay","setTimeout","hideTooltip","handleUpdate","passive","renderTooltipContent","loading","renderAnimation","AnimationComponent","component","onFocus","onBlur","React18","useEffect8","ReactDOM","styled22","jsx22","jsxs19","assetSrc4","checkMarkIcon","dangerIcon","notificationIcon","closeIcon","checkMarkIcon2","dangerIcon2","dangerIcon1_1","notificationIcon2","closeIconCopy","FALLBACK_ICONS","getIconSrc","imported","fallback","getStripGradient","getGradient","getTitleColor","getIcon","objectFit","ToastContainer","$custom","containerWidth","containerHeight","$hasActions","containerBorderRadius","containerBackground","$background","$type","containerBoxShadow","containerPaddingLeft","TopSection","LeftStrip","stripLeft","stripWidth","stripBorderRadius","stripBackground","IconWrapper3","iconMarginRight","Content","Title5","titleFontFamily","titleFontSize","titleFontStyle","titleFontWeight","titleLineHeight","MessageText","messageFontFamily","messageFontSize","messageFontStyle","messageFontWeight","messageLineHeight","messageMarginTop","messageOpacity","messageColor","CloseButton4","closeButtonOpacity","closeButtonMarginLeft","ActionsContainer","ActionButtonStyled","$padding","$borderRadius","$borderColor","$backgroundColor","$textColor","$hoverBackgroundColor","ToastMessage","customTitle","message","duration","custom","action","rest","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","closeIconWidth","closeIconHeight","btn","hoverBackgroundColor","useState12","useEffect9","useRef5","useMemo3","styled23","jsx23","Container8","stageHeight","ParticleElement","shape","rotation","opacity","ConfettiExplosion","particleCount","force","particleSize","particles","setParticles","animationFrameRef","timerRef","stableColors","newParticles","random","PI","speed","fromLeft","startX","floor","rotationSpeed","vx","cos","vy","sin","gravity","life","animate","timestamp","elapsed","prevParticles","particle","cancelAnimationFrame","useState13","useEffect10","useRef6","useMemo4","styled24","css9","jsx24","Container9","getShapeStyles","ParticleElement2","createParticles","wind","drag","RealisticConfetti","explosionForce","animationRef","startTimeRef","styled25","keyframes4","jsx25","jsxs20","spinAnimation","circularSpinAccelerateAnimation","dotsBounceAnimation","dotsLinearAnimation","shimmerAnimation","SrOnly","SpinnerContainer","primaryColor","Spinner","CircularSpinnerContainer","CircularSpinnerRing","ringSize","CircularSpinner","ringCount","rings","OverlayContainer","backdrop","OverlayContent","OverlayLabel","CardOverlayLoader","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","DotsContainer","Dot2","marginRight","animationDelay","LoadingDots","dots","DotLinear","LoadingDotsLinear","Card3","ImageContainer","Image","ShimmerBox","CardContent","TitleContainer","Title6","TitleSkeleton","Text","SkeletonContainer","SkeletonLine","CardWithLoading","imageUrl","useEffect11","useRef7","useState14","styled26","ChevronDown4","X3","Loader2","Fragment8","jsx26","jsxs21","PreviewWrapper","GDContainer","GDLabel","GDButton","GDDropdown","GDGroup","GDParent","GDChild","PreviewCard","Wrapper","Label2","Button2","Card4","Dropdown2","SearchBox","ClearBtn","Options","Option","Empty","Tags","Tag","SearchableDropdown","search","setSearch","filtered","useEffect12","useRef8","useState15","styled27","jsx27","jsxs22","Container10","Card5","Header2","TextArea","textarea","Controls","Body","Player","IconBtn","Icon","SeekWrapper","GenerateBtn","SettingsCard","SettingsHeader","SliderBox","StyledSlider","RightPanel","SideCard","SideHeader","SliderWrap","Seek","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","TexttoAudio","icons","WORDS_PER_SECOND","setText","setMode","playing","setPlaying","setCurrentTime","setDuration","volume","setVolume","setSpeed","loop","setLoop","utteranceRef","wordIndexRef","textAreaRef","highlightOnSkipRef","setSummary","loopMode","setLoopMode","loopCountRef","autoPlayRef","baseDurationRef","timerBaseRef","volumeRef","speedRef","categorizeText","text2","categories","Technology","keywords","Business","Education","Media","Human","Geography","Nature","Health","summaries","k","highlightWordAt","startIndex","ta","test","focus","setSelectionRange","formatTime2","sec","s","getSourceText","speakFromTime","source","words","startWordIndex","charOffset","speechSynthesis","cancel","stopTimer","u","SpeechSynthesisUtterance","rate","onboundary","charIndex","onend","speak","startTimer","fromTime","setInterval","togglePlay","resume","clearInterval","getQuickSummary","pageText","innerText","replace","getPageContent","downloadAudio","alert","skip","baseDuration","newDuration","newCurrentTime","step","minWidth","textAlign","useEffect13","useRef9","useState16","createPortal2","styled28","X4","jsx28","jsxs23","Overlay2","Card6","CloseBtn","Center","Img","Title7","Desc","PrimaryBtn","SecondaryBtn","MahatiLocationAccessModal","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","then","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","MahatiCameraAccessModal","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","error","MahatiMicrophoneAccessModal","requestMic","audio","PromoOverlay","PromoCard","PromoHeader","PromoHeaderTitle","PromoCloseBtn","PromoContent","PromoTitle","PromoDesc","PromoInput","PromoCtaBtn","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","MahatiPromotionModal","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","href","PromoV2Overlay","PromoV2Card","PromoV2Header","PromoV2HeaderTitle","PromoV2CloseBtn","PromoV2Content","PromoV2Title","PromoV2Desc","PromoV2CtaBtn","PromoV2Badge","MahatiPromotionModalV2Modal","showBadgeImage","badgeImageSrc","PromoV3Overlay","PromoV3Card","PromoV3CloseBtn","PromoV3ImageWrap","PromoV3Image","PromoV3Title","PromoV3Desc","PromoV3CtaBtn","PromoV3SecondaryBtn","MahatiPromotionModalV3Modal","secondaryText","onSecondaryClick","imageSrc","NotificationWrapper","LeftVisual","IconBox","IconImg","AvatarImg","Badge","bg","BadgeText","BadgeImg","Content2","TitleRow","NotificationTitle","Time","Description2","Actions","PrimaryAction","SecondaryAction","NotificationCloseBtn","BADGE_BG_MAP","like","mention","follow","comment","MahatiNotificationCard","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction","MahatiButton","MahatiCalendar","MahatiCard","MahatiConfettiExplosion","MahatiDropdown","MahatiFormContainer","MahatiInput","MahatiModal","MahatiPromotionModal_V1","MahatiPromotionModal_V2","MahatiPromotionModal_V3","MahatiRealisticConfetti","MahatiSearchableDropdown","MahatiTabbedInterface","MahatiTable","MahatiTableWithTab","MahatiTexttoAudio","MahatiToastMessage","MahatiTooltip"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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AM4D,eAAe7D,QAAQ;IAC7B,IAAM8D,cAAc9D,QAAQ;IAC5B,IAAM+D,kBAAkB/D,QAAQ;IAChC,IAAMgE,eAAehE,QAAQ;IAC7B,IAAMiE,YAAYjE,QAAQiD;IAC1B,IAAMiB,WAAWlE,QAAQvH;IACzB,IAAM0L,iBAAiB,SAACtsD;QACtB,IAAI,CAACA,MAAMqY,IAAI,IAAI,OAAO;QAC1B,IAAMk0C,QAAQvsD,MAAM5J,WAAW;QAC/B,IAAMo2D,aAAa;YACjBC,YAAY;gBACVC,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAolC,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAqlC,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAslC,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAulC,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAwlC,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACAylC,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;YACA0lC,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDnlC,SAAS;YACX;QACF;QACA,IAAM2lC,YAAY,EAAE;QACpB,IAAK,IAAMxuD,OAAO8tD,WAAY;YAC5B,IAAIA,UAAU,CAAC9tD,IAAI,CAACguD,QAAQ,CAAC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","sourcesContent":["var __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAA9SURBVHgB3YzBCQAgDAPjXA7iHO6odis1gg8pFvpu4D5tLkCsVCKfeyPFko4wVLm/hWRIi8z7z3BE9HKkbKPJCffnRipzAAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/performance-peak-icon.png\nvar require_performance_peak_icon = __commonJS({\n \"src/assets/icons/performance-peak-icon.png\"(exports, module) {\n module.exports = \"data:image/png;base64,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\";\n }\n});\n\n// src/assets/icons/calendar-3.png\nvar require_calendar_3 = __commonJS({\n \"src/assets/icons/calendar-3.png\"(exports, module) {\n module.exports = \"data:image/png;base64,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\";\n }\n});\n\n// src/assets/icons/check-mark_1.png\nvar require_check_mark_1 = __commonJS({\n \"src/assets/icons/check-mark_1.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAY1JREFUWIXt1b9LVlEcx3EfURxEoYiIUjFqCN0El4ZoiYZaGgUhcgj/AFfHaHFyEVx8aJD+ACmaGhqSHIQgWhqMhkoyCBLJX6+G54rH271P91jPEaLPes/3836fe7jntrX9T+LgJqZPCn4NW3h/EvAhfNXIndTw81jL4E9Sw3uwmsE3cTElvBPPHGYqJbyGegB/jc6UAg8D+B6upoTfdzRzKeG3sRPAP+FUKvgovud2P5YKfgmfc/DnqMWU1DCI05Hws3iXg2/hckxJP1aCgkforjDXjVd+TdwPB08LSpZxpslMB5YK5t6iKwbejt2CooOygZK5+YL1+7geu/saPpYIwAcM52amS9bWo+BB4WQTAdiQ3Wa4l+00ny+aHFkViXpBaZhNLGK75PnEseGZQBde/kaiLC/EfPNNJM5pnHlMfmDoj+GBxIjG666aB38NHkiMV4SvqXBhHVdipoLArZbAM4F2xTfdQR63DB5I9OJNAfwbLrRcIJO4gvUAvo+7SeCBRB9msYAbSeH/dH4Cp5LJ7Gj6dh0AAAAASUVORK5CYII=\";\n }\n});\n\n// src/assets/icons/danger_1.png\nvar require_danger_1 = __commonJS({\n \"src/assets/icons/danger_1.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAUxJREFUWIXtlT1KBEEQhasFN3JdA0UwVcQb6QX0CHoIzQQTzf25xeAFlF0El1VBxJ9sxY00+Ex6s96mqphuEx900lPz3kdNd42IUUAAdoAGmMTVANtWL7Ni+BmzdQqEkgB7mfCpdksCPCgARqXC1xThU61qfecMDPOG2o62UH1ggI6ITBQgPyKyEEL41viqOxANh4rSe224CSCq31KNG2DQUo0b4M870DqAaWzGMTsWkcUZJV8i0gshoPU0dSAa32VKBpZwM0BUrsWm9nsBcqfcdAO8AK12wCxgOfMTWikOECHeEuGvHi/PJxARuUns3dYEuEjsnTu9fAIOgCfgEdivGv4voAscAf24DoFurfAlYJS4hkOgVwPgJDOIjmsAvGQAnq1+njmQe8fs5wG4zjxrHH42AVvAZ6L9Y2CzOECE2ACugA/gHbgE1j1ev01cxux+vDT4AAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/notification_1.png\nvar require_notification_1 = __commonJS({\n \"src/assets/icons/notification_1.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAntJREFUWIXFl89vDGEYx79P2226inSlouUi7B5EuAnCyY840PoTRFwkxMHFEU04izhWnETCAcVBJE1PEhJO4iDlQCIaohJarF0fh31mMzs7M93sztY3eTMzzzPv9/t9n3ln3nekNgD0ABPAR28XgZ52uNoCcIYayt4ATi+ngWkX3QXs9vPpdrhiywYMA7eBIwn9Cn5cJWllJBblOgTcBYZbcgTkgBkf1aVIrgRcARZoxoLnipE+5z0/A+RaMXDNOzwD8h7r9Un3O0Y4il/AhWBSAnngueeuLiW+HagCn4BRj/UDUy0IR3EvGDGwAZhz7m1pBh5555Oh2I02xANcD/Gc8tiDJPGi3zAbcn60A/EAY86VA956bFOgG34Lxv1408z++PlE6jNrDZcBc85bHhuLq8ATd7fDr3dmMPoAUc7HcRUoSapKeunX+zIYfYCA64VrlBoMACZpRNKcmVU91/A+d4iiJJlZRdJnSetds16BnKS/kmZDnYYyNLAmdP7GtXKS1OfOysABSR9CN2a5uoW5TkgaMrNy3YCbeBrp1JuhgTqXmYWrnDrKdRkaWJuUSDMwmqGBkaSExQWBQUnz8omSAcqSCma2GE0kVeBghuKS1C9pf1wiycDhDMVTOZseATAk6Z0Sdjgd4JukzWb2NRyMq8C5LohLtQ/b2WiwoQLARkmvJA12wYAk/ZC01czeB4F6BYABSXe6KC7VNrD3gRVNGWAyw+V3KUwGuubifZK+Sxro4ujDWJS02syqwWJU8U3DlmUy8Dq07P9fxH6KkwAUJE1Jyifc8lPSuJnNd2oszcRxoBIzsSrAsa4JR0zspfYP8cXbQ2BPO1z/ACA9UcpNVQfYAAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/close.png\nvar require_close = __commonJS({\n \"src/assets/icons/close.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAADKSURBVHgBrVJbDsIgEASa3kS9Ub81qcfwQT1P05/+9GAlhFcqS8AQ2Wo0nS9gmJ2BXUI2AP2Ho5xzNk3TLu5ZJqhgMQzDoWmaqigyjuN+8TDGdJk4iPwZBw7uoFGUUrco5onw28tbwSI2i9WvcFFK2WqtT7B2zqVCFVlBIKy1xyVCCNFiIoapvesrTl3XxZNQNx8rRT3P85yi3teMaHTiHz7ngbqmdvif7bIEwQHOgOv7vmwHNBeanIloHg+GA4aEIO+kaJTv3G94AtPpnLEzfqatAAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/check-mark_2.png\nvar require_check_mark_2 = __commonJS({\n \"src/assets/icons/check-mark_2.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQwSURBVHgB5Vd7bJNVFD/nfm3H1jFX1sdGJpk6ow5CQlyQbWwWBxr5x0diguj2H0qi0ohOwIlZXJZBnbxCiC4aFxKWiAqKmcSgiLDKP8QQY0owBLYx3PpYoa892n73eL+ybqy2aydbCeGXfmm+e8+553fOPefc+wHcc3gJJCgtzYI7ArNZVWVvXrvi/PYPoKRknjLEIFMQnj/VUVsDJB9UqbFeHwioM0kAa3ftWTzqDx+kCM8GSWp0u90jGSOwcnDXA6Pe618DwULB5WR39f7jYjiSEQLmgLWQnN6veER+WLy6svSqd8HlCsTmVTCHqLj69oLQ5eAXwPkylNgYStD265rtV26VmbMI6Ek/H29o24DT6qgdhAu4MPQ52CE09wSKi7Mf++vNbUhsHQBphHEfqlWW7vwdN+JFZ59AWZmm6sSGek7wFnHKBoZhkNghW237OTFLc0tANJrq79c/SxFqJS7nKuaQYEBrymmB/v6RRCqzSQBrOlYvl0fC7cBlXXRAwiBkad4/YdjiTKY0WwSwxr3zUdkf7gTiRsVzAuQc6aztkT3HYLzmUxFAAxlyK/usD1W7dhdBUVEOpInKf9oWRa4Fv+UyXxTbZUQYUhcs2ATo9k+ni7F/pVuRy3sIiJaI97BIomNBE3vvz8Im53QLPOFoMUnO0BGS5QpUzN50awwZttie77TCpUtj0+nfjIDJlAMO317gUC4yN1c8OrHUeq2LH3n62if330J0CsxXdudLjlA7yHz5hHEl8VD627g4fCCV8UkCg1vVMvJK0bEmOyMntXgqgm5v1xqntTSehGmpSRvye3Yi0DPCqCpmXKzoR420+Si2Xoc0MJ4DzZwB+WJOxCBKiJHYkmFn8MdV/TuWQtO4vGg0D3a+vhkI60imrAlqDCOc4Tfd5gO/Ky6kYX98wXLPCFOhVbwlqlUUR2jpmGe0q6r+oyrlIrHyp9deZgQNIl+yp8SFcFCn038IAwPDkCYm1R8vylnx5Yb9wuW6iZDGCyO6kehnQraWiOfFTQ4jMIvN0tQBp5KXXXICAi/4thU4ezXfcc4rlfAn1BBhFrkxhSCR6Poq9tuFJfue86DHBzPAFCNH81qHJENuPWPsMiTo21HEGY9mvQQelq+1zNT4fwgoOF3Y0Mvyc14RbXQI0gHDECD79Myqzy7C/0CiMPMzdVv+EBeId8T+pE4mBr0Bg3ZfOjWfCFLC0R7gfV09F4vrls0XuVCeUC4aegygZt7GcyVbz0OyLUuB5IdRT8/o2bKCZhGJ45joMGEgE/AfbE/u/QXSrPmZEVCAm3xqo2EjZ8yu5PrkuPgxyaky3tcIDkcQbgMpj+NTxjccal32q+Iu3xe93aAoQyZ5UY2Np9c1XIXbBKYrVzP4cUnEFbQARfKYRnW4+8XDJ8FuD0EGgdHvOXEOQLLkvRvxL4ezl0fiEw3uAAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/danger_2.png\nvar require_danger_2 = __commonJS({\n \"src/assets/icons/danger_2.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAf1JREFUWIXtl01rE1EUhp8zkqkujLYUBEmgtfoHDIJ/QPoh2p0uXAoFf4E7iyLiL+hGt8WvhXRXxI24rWKxEbXQTZM01YAmQUgzkx4XpiA183EumZ1nec8z733mzsydGcFYCrJaLF4X1VsKJQCBd/siS3Pb28+seWKevFB4BNyMQB7PVCoLApo284hF4GKhsADciUHOb+bz1eVW633aTM8iANxOAiQF4yTwqlg8DZxJgU69npw8NXSBIAxzadne3p4/dIFfY2M7QJACDZqjo7tDF7hWLneBr0mcwpc+O1yBP+n6MQkRSGScBdTzNhIFVBMZZ4E0Z7efYpWcBTzPS74Evm8ScNmKfwL5CKQ9U6mcsGzF1kugwKcYZMMyuVmgLxG3xKbldxJQiLzL43pDE5CYu9y6BzgJBDECGoblzAWu1GoNoD6gtTNXr3/PXKBfHwaMrbsEuQmoPv13SJ+4RJk+yQ5qud1ev5HPd0T1LCI/BB7OVqtLLln/y/QuOKiV8fHjuZGRRUSm+yGr3U7n3nyj0c5c4OXExMmjYbgGTP09rrCZ8/0Ll7a2mpY881NwLAgeHJ4cQOBc0O3et+bZ3wUiV6N6AvOZCyQcY86zC4i8jWopvMlcwOv1FoHWgFZTVe9mLjBdq30WKCHyAvimqruIPFeR0uVqNfG/4XD9BokWpzSsor2uAAAAAElFTkSuQmCC\";\n }\n});\n\n// src/assets/icons/danger_1_1.png\nvar require_danger_1_1 = __commonJS({\n \"src/assets/icons/danger_1_1.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAfNJREFUWIXll7tuE1EQhr85JibeNU6EQIrSIp7A4hnooIMSORcuT5AyAiEKHgAhQbA7bi9Ai9KCRERAXGpkBZBCsNcGG+9QYCSTsLtnVl4apjzz7zf/zpxzVisYQxXpt6rnY/SKKHUAFZ47lVvBUvehlSfW4r1WeAdlOQF3N2h0L4qgvkxnMdBrBqvJxQF0pdcKVixMkwFwa5kSJVszEd4jiDaCRUQ++Gh1xEJ1Ndrx0Xp3wGk8460txWVvra9wtvatDQw9pMNKte/19iYDco4B8M5D+nasna4BAFVeZmrI1uQ2IKLb09DkNoBHByiyAy6OM+GObM1k2K/iZvgFqCXAOpVGNFfYVfwLLK8TDSLbluJmA+MqaS02tT+XARESd3labmoGRikdGP2LDugPSS6ivLLyTKfgd0T3wjawsI/UDhvRopVl34QAyosDazFbeVC5DKjw4MAa3M/DyjUCgG4zXBPlMoKqcru6FN3My/q/I9cIPm0cOxJKf13h9BjyJNLKtePLnzuFG9htzs+XdfAM5MTkusL7wbB86uil3T0Lz3wKyjq4sb84gMDJwzPfr1t5OY6hnEnJnS3egKQ+Y+bZvwXKZlJO4GnhBmJx68DXv6T2XMldLdxArdF5U4pLdeAx8BHYUXhUcofqsxc6Pv8Nf8RPhV+dZ1Q2BloAAAAASUVORK5CYII=\";\n }\n});\n\n// src/assets/icons/notification_2.png\nvar require_notification_2 = __commonJS({\n \"src/assets/icons/notification_2.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAA7RJREFUWIW9ll1oWwUUx3/n3ptmbad02u7Gim6sdiAdY8JgCrLiVMTpPhDah9nWpNVORBj4Ij4o1yIbCOIQEZtRYhI6YenLdE978UkRxflg64PMYsfcmrZ+wDbrkt57fOhNmiZpZ9K05+XmnnPP//+75+bmRKgmHMcI/dbmKLwMIKJnprdNvovjeJVKGdX421M7XlfhbYRmhGZF3glNtb1WjVZVAMBRAFT2q3idAIq+UI2QVS7ZOni22V3wPkFJpGM9F0qvkC2+6V14BshSrji2RhLPiMirpmW+ci16bK64XjqBweGAm3XHUO1C9LHCUkt4tN2OJE8DOwFEuCjCRb+8044kT7cMJB9apqfyKMpRN+uOMTgcuCPA1kzjh0Anqt8FbgTfA6DrnBkKJ4cM8caBE0BDmZttAE4YHuOh/qSD4xgAdbeC7wPfA532Qv0HxU2yzLwvvltM40dg1g3wyFy093pH17m6uc23x4BDZUxXCT2fDsx3ET2evbcvfr9lGpeAZlT2pD/r+ansBMQ0TgGGijpz0d7rALONmeHKzQHkiJ2t/xTgj8RLv4voEGAg3snCq/IA/rM7CPw6Y82PANiR+BERDVdunofot8OJQwDT1nwUmAR53u4f3VECIC6HAQQdJXo8C4AaQ9Wb54TlJKgsaurnAHhefqJLACLP+qYXAOxIYh/C7jUDwK5QeHSv//lL/3iwBAC0HXCnb9Vd8hMHamCe0z4AkN72wA+AC7QXAagAISBNqtv1a8vf57XYi6/lPLEAzCK0+p6LAB1dqQDgqXI51yQYTbUCEOSePIzyC+D5nosAE6nujMJTllg9S9Ra7Z4oiUItNRkwRPdPpLozULALZmK93yzvwqwVQKHW7Ejv5cLSynepatcMAFpWKqwMINxXO38JVQRg9yYaV2uqPLS1dXC43AIrD6CmPA2UrM41RJ2bqX/yfwOI8FwNzXOiZTWlONEUjjUFDWsSpew/nDXE3wEj2HZ1pPvPwmTJBIKYb66DOUBT1vv3jeLksgmEwrHtKtY40LgOAAA3TVc7riX6ruQS+QlsD8c2qVipdTQH2Oyacr7wjcgDzGN9DOwt21bb2ONmGj7KnSw+Aucry566egPYtAEAAP+kbwbvJtXt5r8D9kBil7g8vCH26v08HQ9PbIjXnaLkd2C1ePDY6JZM0PtChfqyYsp83W3j8JWzL/61LgAAoUgyonAGSta1K8jAdKwnXolexQAALf2Jxw2Vt4B9ACjfqsqpmXjP15Vq/QcQZiUrelSejAAAAABJRU5ErkJggg==\";\n }\n});\n\n// src/assets/icons/close_copy_1.png\nvar require_close_copy_1 = __commonJS({\n \"src/assets/icons/close_copy_1.png\"(exports, module) {\n module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATQAAAE0CAYAAACigc+fAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAF8WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgNzkuMTY0NDg4LCAyMDIwLzA3LzEwLTIyOjA2OjUzICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDI1LTExLTA3VDIxOjA3OjUxKzA1OjMwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyNS0xMS0wN1QyMTowODo1NyswNTozMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNS0xMS0wN1QyMTowODo1NyswNTozMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5OTk5N2ZlNi02MTIwLWE4NDEtYjc2Ni0xYWY2ZjdiZGE5NzQiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5ZjNhYmExNC0yODcyLTNmNDAtODkyMC1iYTQyMDYyNmVkOTEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2N2IxNTk2MC02NTBjLTE5NDQtYjBjMy0yYTlmMzI2MDM0OTAiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjY3YjE1OTYwLTY1MGMtMTk0NC1iMGMzLTJhOWYzMjYwMzQ5MCIgc3RFdnQ6d2hlbj0iMjAyNS0xMS0wN1QyMTowNzo1MSswNTozMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5OTk5N2ZlNi02MTIwLWE4NDEtYjc2Ni0xYWY2ZjdiZGE5NzQiIHN0RXZ0OndoZW49IjIwMjUtMTEtMDdUMjE6MDg6NTcrMDU6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMi4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4aV+4zAAAS3ElEQVR4nO3dS69ldZmA8ad2rCIhisYvIBel0zjqQSdI90xQkxpRNApK0Ima6ESC7eULaGJVy4SYGI3Rjl2U2lThgETQYRMcdNIj6NAIXj6AbbWkEq1A9WDV4pw6Z+/9/vdel/9lPb+E5NTZVJ2XQ60n78raZ60TZ5/8ASM7BXwQeD9wG/Be4J3XX3sD+CPwW+BV4CXg6tgDSMom6/H/jpH+nFuBh4D7gLuBmxN/3xXgReCXwAXg9yPNI2k+t1LI8X9iwIa2Au4HHgPuAU4MnOUa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\";\n }\n});\n\n// src/components/accordion.tsx\nimport { useState } from \"react\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport styled from \"@emotion/styled\";\nimport { jsx, jsxs } from \"@emotion/react/jsx-runtime\";\nvar AccordionContainer = styled.div`\n width: 100%;\n max-width: 100%;\n border: 1px solid rgb(226, 232, 240);\n overflow: hidden;\n background-color: white;\n border-radius: 0.75rem;\n\n @media (min-width: 640px) {\n max-width: 684px;\n }\n`;\nvar AccordionButton = styled.button`\n width: 100%;\n min-height: 52px;\n padding: 0 1rem;\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-weight: 500;\n transition: colors 200ms;\n border: none;\n cursor: pointer;\n\n ${(props) => props.open ? `\n color: white;\n background: linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1));\n ` : `\n color: rgb(30, 41, 59);\n background-color: white;\n `}\n\n @media (min-width: 640px) {\n height: 60px;\n min-height: 60px;\n padding: 0 1.5rem;\n }\n\n &:hover {\n opacity: 0.95;\n }\n\n &:focus {\n outline: none;\n }\n`;\nvar AccordionContent = styled.div`\n width: 100%;\n overflow: hidden;\n padding: 1rem 1.5rem;\n color: rgb(71, 85, 105);\n border-top: 1px solid rgb(226, 232, 240);\n`;\nvar ContentWrapper = styled.div`\n width: 100%;\n box-sizing: border-box;\n`;\nvar IconWrapper = styled.span`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n`;\nfunction Accordion({\n title,\n children,\n defaultOpen = false,\n accordionTestId,\n headerTestId,\n contentTestId\n}) {\n const [open, setOpen] = useState(defaultOpen);\n return /* @__PURE__ */ jsxs(AccordionContainer, { \"data-testid\": accordionTestId, children: [\n /* @__PURE__ */ jsxs(AccordionButton, { onClick: () => setOpen(!open), open, \"data-testid\": headerTestId, children: [\n /* @__PURE__ */ jsx(\"span\", { children: title }),\n /* @__PURE__ */ jsx(IconWrapper, { children: open ? /* @__PURE__ */ jsx(ChevronUp, { className: \"w-5 h-5\" }) : /* @__PURE__ */ jsx(ChevronDown, { className: \"w-5 h-5\" }) })\n ] }),\n open && /* @__PURE__ */ jsx(AccordionContent, { \"data-testid\": contentTestId, children: /* @__PURE__ */ jsx(ContentWrapper, { children }) })\n ] });\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nimport React2 from \"react\";\nimport styled2 from \"@emotion/styled\";\nimport { jsx as jsx2 } from \"@emotion/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 || \"#3b82f6\";\n};\nvar StyledButton = styled2.button`\n /* Base Styles */\n display: inline-flex;\n align-items: center;\n justify-content: center;\n white-space: nowrap;\n font-size: 14px;\n font-weight: 500;\n transition: all 200ms ease-in-out;\n cursor: pointer;\n border: none;\n outline: none;\n font-family: inherit;\n position: relative;\n \n /* Focus Styles */\n &:focus-visible {\n outline: 2px solid rgba(59, 130, 246, 0.5);\n outline-offset: 2px;\n }\n \n /* Disabled State */\n &:disabled {\n pointer-events: none;\n opacity: 0.5;\n }\n\n ${(props) => {\n const color = getColorByName(props.$name);\n if (color) {\n if (props.$iconButton) {\n return `\n color: ${color.startsWith(\"linear\") || color.startsWith(\"rgba\") ? \"white\" : color};\n `;\n } else {\n return `\n background: ${color};\n color: white;\n border-radius: 6px;\n &:hover { opacity: 0.9; }\n &:active { opacity: 0.95; }\n `;\n }\n }\n return \"\";\n}}\n\n ${(props) => props.$iconButton && `\n background: transparent !important;\n padding: 0;\n color: rgba(255, 255, 255, 0.9);\n height: ${props.$height || \"36px\"};\n width: ${props.$width || \"36px\"};\n min-height: ${props.$height || \"36px\"};\n min-width: ${props.$width || \"36px\"};\n border-radius: 6px;\n \n &:hover {\n background: transparent !important;\n color: rgba(255, 255, 255, 1);\n }\n \n &:active {\n background: transparent !important;\n }\n \n &:focus-visible {\n outline: 2px solid rgba(255, 255, 255, 0.7);\n outline-offset: 2px;\n }\n `}\n\n ${(props) => {\n if (props.$iconButton || props.$name) return \"\";\n switch (props.$variant) {\n case \"default\":\n return `\n background: linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1));\n color: white;\n border-radius: 6px;\n &:hover { opacity: 0.9; }\n &:active { opacity: 0.95; }\n `;\n case \"destructive\":\n return `\n background: #ef4444;\n color: white;\n border-radius: 6px;\n &:hover { background: #dc2626; }\n &:active { background: #b91c1c; }\n `;\n case \"outline\":\n return `\n border: 1px solid #e5e7eb;\n background: white;\n color: #374151;\n border-radius: 6px;\n &:hover { \n background: #f9fafb;\n border-color: #d1d5db;\n }\n &:active { background: #f3f4f6; }\n `;\n case \"secondary\":\n return `\n background: ${getColorByName(\"blue\")};\n color: #374151;\n border-radius: 6px;\n &:hover { background: #e5e7eb; }\n &:active { background: #d1d5db; }\n `;\n case \"ghost\":\n return `\n background: transparent;\n color: #374151;\n border-radius: 6px;\n &:hover { background: #f3f4f6; }\n &:active { background: #e5e7eb; }\n `;\n case \"link\":\n return `\n background: transparent;\n color: #2563eb;\n text-decoration: underline;\n text-underline-offset: 4px;\n padding: 0;\n height: auto;\n &:hover { \n text-decoration: none;\n color: #1d4ed8;\n }\n &:active { color: #1e40af; }\n `;\n case \"danger\":\n return `\n background: transparent;\n color: #ef4444;\n border-radius: 6px;\n &:hover {\n background: rgba(239, 68, 68, 0.1);\n }\n &:active {\n background: rgba(239, 68, 68, 0.2);\n }\n `;\n case \"dotted\":\n return `\n background: linear-gradient(to right, #1e73be, #28a97d);\n color: white;\n border-radius: 8px;\n position: relative;\n overflow: visible;\n \n &::before {\n content: '';\n position: absolute;\n inset: -2px;\n border-radius: 10px;\n padding: 2px;\n background: linear-gradient(to right, #1e73be, #28a97d);\n -webkit-mask: \n linear-gradient(#fff 0 0) content-box, \n linear-gradient(#fff 0 0);\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n border: 2px dashed rgba(255, 255, 255, 0.5);\n }\n \n &:hover { opacity: 0.9; }\n &:active { opacity: 0.95; }\n `;\n case \"pill\":\n return `\n background: linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1));\n color: white;\n border-radius: 9999px;\n &:hover { opacity: 0.9; }\n &:active { opacity: 0.95; }\n `;\n default:\n return `\n background: linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1));\n color: white;\n border-radius: 6px;\n &:hover { opacity: 0.9; }\n `;\n }\n}}\n\n ${(props) => {\n if (props.$iconButton) return \"\";\n switch (props.$size) {\n case \"sm\":\n return `height: 36px; padding: 0 12px; font-size: 13px;`;\n case \"md\":\n return `height: 40px; padding: 0 16px; font-size: 14px;`;\n case \"lg\":\n return `height: 44px; padding: 0 24px; font-size: 15px;`;\n case \"icon\":\n return `height: 40px; width: 40px; padding: 0;`;\n default:\n return `height: 40px; padding: 0 16px;`;\n }\n}}\n`;\nvar IconButtonInner = styled2.span`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n transition: all 200ms ease-in-out;\n \n /* Name-based background for icon buttons */\n ${(props) => {\n const color = getColorByName(props.$name);\n if (color) {\n return `\n background: ${color.startsWith(\"linear\") ? color : `rgba(${color.slice(1)}, 0.12)`};\n `;\n }\n return \"\";\n}};\n \n /* Parse border radius from Tailwind classes */\n border-radius: ${(props) => {\n if (!props.$radiusClass) return \"6px\";\n const match = props.$radiusClass.match(/rounded-\\[(\\d+)px\\]/);\n if (match) return `${match[1]}px`;\n if (props.$radiusClass === \"rounded-md\") return \"6px\";\n if (props.$radiusClass === \"rounded-lg\") return \"8px\";\n if (props.$radiusClass === \"rounded-full\") return \"9999px\";\n return \"6px\";\n}};\n \n /* Parse padding from Tailwind classes */\n padding: ${(props) => {\n if (!props.$paddingClass) return \"2px\";\n const match = props.$paddingClass.match(/p-\\[(\\d+)px\\]/);\n if (match) return `${match[1]}px`;\n return \"2px\";\n}};\n \n /* Parse background color from Tailwind classes (after name) */\n background: ${(props) => {\n if (props.$name) return \"initial\";\n if (!props.$bgClass) return \"rgba(255, 255, 255, 0.12)\";\n const rgbaMatch = props.$bgClass.match(/bg-\\[(rgba?\\([^)]+\\))\\]/);\n if (rgbaMatch) return rgbaMatch[1];\n return \"rgba(255, 255, 255, 0.12)\";\n}};\n \n width: 100%;\n height: 100%;\n \n /* Icon sizing */\n svg {\n width: 16px;\n height: 16px;\n flex-shrink: 0;\n }\n \n /* Hover and Active States */\n ${(props) => {\n if (props.$hoverBgClass) {\n const hoverMatch = props.$hoverBgClass.match(/hover:bg-\\[(rgba?\\([^)]+\\))\\]/);\n const activeMatch = props.$hoverBgClass.match(/active:bg-\\[(rgba?\\([^)]+\\))\\]/);\n let styles = \"\";\n if (hoverMatch) {\n styles += `button:hover & { background: ${hoverMatch[1]}; }`;\n }\n if (activeMatch) {\n styles += `button:active & { background: ${activeMatch[1]}; }`;\n }\n return styles;\n }\n if (props.$intensity != null) {\n const v = Math.max(0, Math.min(100, props.$intensity));\n if (v === 0) return \"\";\n if (v <= 10) return `button:hover & { opacity: 0.95; } button:active & { opacity: 0.90; }`;\n if (v <= 25) return `button:hover & { opacity: 0.90; } button:active & { opacity: 0.80; }`;\n if (v <= 40) return `button:hover & { opacity: 0.85; } button:active & { opacity: 0.75; }`;\n if (v <= 55) return `button:hover & { opacity: 0.80; } button:active & { opacity: 0.70; }`;\n if (v <= 70) return `button:hover & { opacity: 0.75; } button:active & { opacity: 0.65; }`;\n if (v <= 85) return `button:hover & { opacity: 0.70; } button:active & { opacity: 0.60; }`;\n return `button:hover & { opacity: 0.60; } button:active & { opacity: 0.50; }`;\n }\n return `\n button:hover & { opacity: 0.85; }\n button:active & { opacity: 0.7; }\n `;\n}}\n`;\nvar IconButtonGroupWrapper = styled2.div`\n display: inline-flex;\n flex-direction: ${(props) => props.$direction === \"col\" ? \"column\" : \"row\"};\n align-items: ${(props) => props.$direction === \"col\" ? \"flex-start\" : \"center\"};\n gap: ${(props) => props.$gap || \"8px\"};\n`;\nvar IconButtonGroup = React2.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ jsx2(\n IconButtonGroupWrapper,\n {\n ref,\n $direction: direction,\n $gap: gap,\n className,\n ...props,\n children\n }\n );\n }\n);\nIconButtonGroup.displayName = \"IconButtonGroup\";\nvar ButtonBase = React2.forwardRef(\n ({\n className,\n variant = \"default\",\n size = \"default\",\n name,\n iconButton = false,\n iconButtonHeightClass,\n iconButtonWidthClass,\n iconButtonBgClass,\n iconButtonRadiusClass,\n iconButtonBgPaddingClass,\n iconButtonHoverBgClass,\n iconButtonHoverIntensity,\n children,\n testId,\n ...props\n }, ref) => {\n if (iconButton) {\n const height = parseHeightWidth(iconButtonHeightClass);\n const width = parseHeightWidth(iconButtonWidthClass);\n return /* @__PURE__ */ jsx2(\n StyledButton,\n {\n $variant: variant,\n $size: size,\n $iconButton: true,\n $height: height,\n $width: width,\n $name: name,\n className,\n ref,\n ...props,\n children: /* @__PURE__ */ jsx2(\n IconButtonInner,\n {\n $bgClass: iconButtonBgClass,\n $radiusClass: iconButtonRadiusClass,\n $paddingClass: iconButtonBgPaddingClass,\n $hoverBgClass: iconButtonHoverBgClass,\n $intensity: iconButtonHoverIntensity,\n $name: name,\n children\n }\n )\n }\n );\n }\n return /* @__PURE__ */ jsx2(\n StyledButton,\n {\n \"data-testid\": testId,\n $variant: variant,\n $size: size,\n $name: name,\n className,\n ref,\n ...props,\n children\n }\n );\n }\n);\nButtonBase.displayName = \"Button\";\nvar Button = ButtonBase;\nButton.IconButtonGroup = IconButtonGroup;\n\n// src/components/card.tsx\nimport React3, { useState as useState2 } from \"react\";\nimport { ChevronDown as ChevronDown2, ChevronUp as ChevronUp2 } from \"lucide-react\";\nimport { css } from \"@emotion/react\";\nimport styled3 from \"@emotion/styled\";\nimport { jsx as jsx3, jsxs as jsxs2 } from \"@emotion/react/jsx-runtime\";\nvar PerspectiveWrapper = styled3.div`\n ${(props) => props.flippable && css`\n perspective: 1000px;\n `}\n`;\nvar StyledCard = styled3.div`\n /* Base styles */\n border-radius: 14px;\n transition: all 0.3s ease;\n box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);\n\n /* Variant styles */\n ${(props) => {\n switch (props.variant) {\n case \"default\":\n return css`\n background-color: white;\n color: #1e293b;\n border: 1px solid #e2e8f0;\n &:hover {\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n }\n `;\n case \"elevated\":\n return css`\n background-color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n border: 1px solid transparent;\n `;\n case \"outlined\":\n return css`\n background-color: #f8fafc;\n border: 1px solid #e2e8f0;\n `;\n case \"subtle\":\n return css`\n background-color: #f8fafc;\n border: 1px solid transparent;\n `;\n case \"figma\":\n return css`\n background-color: ${props.backgroundColor || \"rgba(77, 175, 131, 0.10)\"};\n border: 1px solid #1761A3;\n box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);\n\n `;\n default:\n return \"\";\n }\n}}\n\n /* Size styles */\n ${(props) => {\n switch (props.size) {\n case \"sm\":\n return css`\n padding: 1rem;\n `;\n case \"lg\":\n return css`\n padding: 2rem;\n `;\n case \"figma\":\n return css`\n width: 100%;\n max-width:100%;\n padding: 1.25rem;\n box-sizing:border-box;\n `;\n case \"default\":\n default:\n return css`\n padding: 1.5rem;\n `;\n }\n}}\n\n /* Custom background color for non-figma variants */\n ${(props) => props.variant !== \"figma\" && props.backgroundColor && css`\n background-color: ${props.backgroundColor};\n `}\n\n /* Flippable styles */\n ${(props) => props.flippable && css`\n position: relative;\n transition: transform 0.7s ease;\n transform-style: preserve-3d;\n cursor: pointer;\n\n ${props.isFlipped && css`\n transform: rotateY(180deg);\n `}\n `}\n`;\nvar CardHeader = styled3.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n ${(props) => props.hasContent && css`\n margin-bottom: 1rem;\n `}\n`;\nvar CardTitle = styled3.h4`\n font-size: 1.25rem;\n font-weight: 600;\n color: #1e293b;\n line-height: 1.75rem;\n`;\nvar CollapseButton = styled3.button`\n z-index: 10;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border-radius: 9999px;\n background-color: #1761A3;\n border: none;\n cursor: pointer;\n transition: opacity 0.2s ease;\n\n &:hover {\n opacity: 0.8;\n }\n\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px white, 0 0 0 4px #1761A3;\n }\n\n svg {\n width: 1.25rem;\n height: 1.25rem;\n color: white;\n }\n`;\nvar ContentWrapper2 = styled3.div`\n display: grid;\n overflow: hidden;\n transition: grid-template-rows 0.5s ease-in-out, opacity 0.5s ease-in-out;\n \n ${(props) => props.open ? css`\n grid-template-rows: 1fr;\n opacity: 1;\n ` : css`\n grid-template-rows: 0fr;\n opacity: 0;\n `}\n`;\nvar ContentInner = styled3.div`\n overflow: hidden;\n`;\nvar FrontFace = styled3.div`\n ${(props) => props.flippable && css`\n backface-visibility: hidden;\n `}\n`;\nvar BackFace = styled3.div`\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n padding: 1.5rem;\n backface-visibility: hidden;\n transform: rotateY(180deg);\n`;\nvar Card = React3.forwardRef(\n ({\n title,\n cardContent,\n cardBackContent,\n collapsible = false,\n flippable = false,\n backgroundColor,\n borderRadius,\n variant = \"default\",\n size = \"default\",\n className = \"\",\n children,\n defaultOpen = true,\n onFlip,\n style,\n testId,\n ...props\n }, ref) => {\n const [open, setOpen] = useState2(defaultOpen);\n const [isFlipped, setIsFlipped] = useState2(false);\n const contentId = React3.useId();\n const handleFlip = () => {\n if (!flippable) return;\n const newFlippedState = !isFlipped;\n setIsFlipped(newFlippedState);\n onFlip?.(newFlippedState);\n };\n const mainContent = cardContent || children;\n return /* @__PURE__ */ jsx3(\n PerspectiveWrapper,\n {\n flippable,\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ jsxs2(\n StyledCard,\n {\n \"data-testid\": testId,\n ref,\n variant,\n size,\n backgroundColor,\n flippable,\n isFlipped,\n className,\n style,\n ...props,\n children: [\n /* @__PURE__ */ jsxs2(FrontFace, { flippable, children: [\n title && /* @__PURE__ */ jsxs2(CardHeader, { hasContent: open && !!mainContent, children: [\n /* @__PURE__ */ jsx3(CardTitle, { children: title }),\n collapsible && /* @__PURE__ */ jsx3(\n CollapseButton,\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 children: open ? /* @__PURE__ */ jsx3(ChevronUp2, {}) : /* @__PURE__ */ jsx3(ChevronDown2, {})\n }\n )\n ] }),\n mainContent && /* @__PURE__ */ jsx3(ContentWrapper2, { id: contentId, open, children: /* @__PURE__ */ jsx3(ContentInner, { children: mainContent }) })\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ jsx3(BackFace, { children: cardBackContent })\n ]\n }\n )\n }\n );\n }\n);\nCard.displayName = \"Card\";\n\n// src/components/Modal.tsx\nimport * as React4 from \"react\";\nimport { X } from \"lucide-react\";\nimport styled4 from \"@emotion/styled\";\nimport { css as css2, keyframes } from \"@emotion/react\";\nimport { Fragment, jsx as jsx4, jsxs as jsxs3 } from \"@emotion/react/jsx-runtime\";\nvar MODAL_WIDTH_MAP = {\n sm: \"360px\",\n default: \"562px\",\n md: \"720px\",\n lg: \"760px\",\n xl: \"800px\"\n};\nvar fadeIn = keyframes`\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n`;\nvar scaleIn = keyframes`\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n`;\nvar Overlay = styled4.div`\n position: fixed;\n inset: 0;\n background-color: rgba(0, 0, 0, 0.4);\n z-index: 9998;\n animation: ${fadeIn} 0.2s ease-out;\n`;\nvar ModalContainer = styled4.div`\n position: fixed;\n inset: 0;\n z-index: 9999;\n pointer-events: none;\n display: flex;\n padding: 1rem;\n\n ${(props) => {\n switch (props.position) {\n case \"top-left\":\n return css2`\n align-items: flex-start;\n justify-content: flex-start;\n `;\n case \"top-right\":\n return css2`\n align-items: flex-start;\n justify-content: flex-end;\n `;\n case \"top-center\":\n return css2`\n align-items: flex-start;\n justify-content: center;\n `;\n case \"bottom-left\":\n return css2`\n align-items: flex-end;\n justify-content: flex-start;\n `;\n case \"bottom-right\":\n return css2`\n align-items: flex-end;\n justify-content: flex-end;\n `;\n case \"bottom-center\":\n return css2`\n align-items: flex-end;\n justify-content: center;\n `;\n case \"center-left\":\n return css2`\n align-items: center;\n justify-content: flex-start;\n `;\n case \"center-right\":\n return css2`\n align-items: center;\n justify-content: flex-end;\n `;\n default:\n return css2`\n align-items: center;\n justify-content: center;\n `;\n }\n}}\n`;\nvar ModalContent = styled4.div`\n position: relative;\n background-color: white;\n box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.15);\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n display: flex;\n flex-direction: column;\n pointer-events: auto;\n animation: ${scaleIn} 0.2s ease-out;\n \n width: ${(props) => props.width};\n height: ${(props) => {\n if (props.height) {\n return typeof props.height === \"number\" ? `${props.height}px` : props.height;\n }\n return props.position.includes(\"left\") || props.position.includes(\"right\") ? \"90vh\" : \"auto\";\n}};\n \n ${(props) => !props.position.includes(\"left\") && !props.position.includes(\"right\") && css2`\n max-height: 90vh;\n `}\n \n ${(props) => props.margin && css2`\n margin: ${typeof props.margin === \"number\" ? `${props.margin}px` : props.margin};\n `}\n`;\nvar ModalHeader = styled4.div`\n padding: 1rem 1.5rem;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: space-between;\n border-bottom: 1px solid #e5e7eb;\n`;\nvar HeaderContent = styled4.div`\n display: flex;\n align-items: center;\n gap: 0.75rem;\n flex: 1;\n`;\nvar HeaderIconWrapper = styled4.div`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n`;\nvar HeaderTextWrapper = styled4.div`\n flex: 1;\n`;\nvar ModalTitle = styled4.h3`\n color: #333333;\n font-family: 'Poppins', sans-serif;\n font-size: 16px;\n font-weight: 600;\n line-height: normal;\n margin: 0;\n`;\nvar ModalSubtitle = styled4.p`\n margin-top: 0.25rem;\n font-size: 0.875rem;\n color: #6b7280;\n margin-bottom: 0;\n`;\nvar CloseButton = styled4.button`\n color: #9ca3af;\n background: transparent;\n border: none;\n padding: 0.25rem;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: color 0.2s ease;\n \n &:hover {\n color: #4b5563;\n }\n \n &:focus {\n outline: none;\n }\n`;\nvar ModalBody = styled4.div`\n flex-grow: 1;\n overflow-y: auto;\n \n /* Custom scrollbar */\n &::-webkit-scrollbar {\n width: 8px;\n }\n \n &::-webkit-scrollbar-track {\n background: #f1f5f9;\n }\n \n &::-webkit-scrollbar-thumb {\n background: #cbd5e1;\n border-radius: 4px;\n \n &:hover {\n background: #94a3b8;\n }\n }\n`;\nvar ModalFooter = styled4.div`\n padding: 1rem 1.5rem;\n display: flex;\n justify-content: center;\n gap: 0.75rem;\n flex-shrink: 0;\n border-top: 1px solid #e5e7eb;\n`;\nvar SecondaryButton = styled4.button`\n min-width: 140px;\n height: 36px;\n padding: 0 1rem;\n border-radius: 6px;\n border: 1px solid #1761A3;\n background-color: white;\n color: #1761A3;\n font-family: 'Poppins', sans-serif;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: background-color 0.2s ease;\n \n &:hover {\n background-color: #f9fafb;\n }\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 3px rgba(23, 97, 163, 0.1);\n }\n`;\nvar PrimaryButton = styled4.button`\n min-width: 140px;\n height: 36px;\n padding: 0 1rem;\n border-radius: 6px;\n border: none;\n background-color: ${(props) => props.disabled ? \"#93c5fd\" : \"#1761A3\"};\n color: white;\n font-family: 'Poppins', sans-serif;\n font-size: 14px;\n font-weight: 500;\n cursor: ${(props) => props.disabled ? \"not-allowed\" : \"pointer\"};\n transition: background-color 0.2s ease;\n \n &:hover {\n background-color: ${(props) => props.disabled ? \"#93c5fd\" : \"#134a7a\"};\n }\n \n &:focus {\n outline: none;\n box-shadow: ${(props) => props.disabled ? \"none\" : \"0 0 0 3px rgba(23, 97, 163, 0.2)\"};\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] ?? MODAL_WIDTH_MAP.default;\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 if (isOpen) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"unset\";\n }\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n if (!isOpen) return null;\n return /* @__PURE__ */ jsxs3(Fragment, { children: [\n /* @__PURE__ */ jsx4(Overlay, { onClick: onClose, \"aria-hidden\": \"true\", \"data-testid\": testId ? `${testId}-overlay` : void 0 }),\n /* @__PURE__ */ jsx4(ModalContainer, { position, children: /* @__PURE__ */ jsxs3(\n ModalContent,\n {\n \"data-testid\": testId,\n width: typeof width === \"number\" ? `${width}px` : width,\n height,\n margin,\n position,\n className,\n role: \"dialog\",\n \"aria-modal\": \"true\",\n onClick: (e) => e.stopPropagation(),\n children: [\n /* @__PURE__ */ jsxs3(ModalHeader, { \"data-testid\": testId ? `${testId}-header` : void 0, children: [\n /* @__PURE__ */ jsxs3(HeaderContent, { children: [\n headerIcon && /* @__PURE__ */ jsx4(HeaderIconWrapper, { children: headerIcon }),\n /* @__PURE__ */ jsxs3(HeaderTextWrapper, { children: [\n title && /* @__PURE__ */ jsx4(ModalTitle, { \"data-testid\": testId ? `${testId}-title` : void 0, children: title }),\n subtitle && /* @__PURE__ */ jsx4(ModalSubtitle, { \"data-testid\": testId ? `${testId}-subtitle` : void 0, children: subtitle })\n ] })\n ] }),\n /* @__PURE__ */ jsx4(CloseButton, { onClick: onClose, \"aria-label\": \"Close dialog\", \"data-testid\": testId ? `${testId}-close-btn` : void 0, children: /* @__PURE__ */ jsx4(X, { size: 20, strokeWidth: 2 }) })\n ] }),\n /* @__PURE__ */ jsx4(ModalBody, { \"data-testid\": testId ? `${testId}-body` : void 0, children }),\n (primaryAction || secondaryAction) && /* @__PURE__ */ jsxs3(ModalFooter, { \"data-testid\": testId ? `${testId}-footer` : void 0, children: [\n secondaryAction && /* @__PURE__ */ jsx4(\n SecondaryButton,\n {\n \"data-testid\": testId ? `${testId}-secondary-btn` : void 0,\n onClick: secondaryAction.onClick,\n type: \"button\",\n children: secondaryAction.label ?? \"Cancel\"\n }\n ),\n primaryAction && /* @__PURE__ */ jsx4(\n PrimaryButton,\n {\n \"data-testid\": testId ? `${testId}-primary-btn` : void 0,\n onClick: primaryAction.onClick,\n disabled: primaryAction.disabled,\n type: \"button\",\n children: primaryAction.label ?? \"Save\"\n }\n )\n ] })\n ]\n }\n ) })\n ] });\n}\nModal.displayName = \"Modal\";\n\n// src/components/FormContainer.tsx\nimport styled5 from \"@emotion/styled\";\nimport { jsx as jsx5 } from \"@emotion/react/jsx-runtime\";\nvar StyledForm = styled5.form`\n display: flex;\n flex-direction: column;\n gap: 16px;\n\n width: 100%;\n max-width: 560px;\n min-width: 0;\n margin: 0 auto;\n padding: 16px;\n\n background-color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),\n 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n border-radius: 8px;\n\n box-sizing: border-box;\n\n \n & input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"file\"]){\n width:100%;\n max-width:438px;\n height:44px;\n },\n & textarea,\n & select {\n width: 100%;\n max-width: 438px; /* keeps Figma spec on desktop */\n height: 44px;\n min-width: 0;\n box-sizing: border-box;\n }\n\n \n @media (max-width: 480px) {\n padding: 12px;\n\n & input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"file\"]),\n & textarea,\n & select {\n max-width: 100%;\n }\n }\n`;\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ jsx5(\n StyledForm,\n {\n \"data-testid\": testId,\n onSubmit,\n className,\n children\n }\n );\n};\nFormContainer.displayName = \"FormContainer\";\n\n// src/components/Input.tsx\nimport React5 from \"react\";\nimport styled6 from \"@emotion/styled\";\nimport { css as css3 } from \"@emotion/react\";\nimport { jsx as jsx6, jsxs as jsxs4 } from \"@emotion/react/jsx-runtime\";\nvar InputWrapper = styled6.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n margin-bottom: 1rem;\n`;\nvar StyledInput = styled6.input`\n width: 100%;\n max-width: 100%;\n min-width: 0;\n height: 44px;\n\n border-radius: 6px;\n border: 1px solid #D9D9D9;\n background: #FFF;\n padding: 0 12px;\n font-size: 1rem;\n box-sizing: border-box;\n transition: all 0.2s ease;\n outline: none;\n\n /* Error state */\n ${(props) => props.hasError && css3`\n border-color: #ef4444;\n &:focus {\n border-color: #dc2626;\n box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);\n }\n `}\n\n /* Normal focus */\n ${(props) => !props.hasError && css3`\n &:focus {\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);\n }\n `}\n\n &:hover:not(:focus) {\n border-color: #9ca3af;\n }\n\n &:disabled {\n background-color: #f3f4f6;\n color: #9ca3af;\n cursor: not-allowed;\n border-color: #e5e7eb;\n }\n\n &::placeholder {\n color: #9ca3af;\n }\n\n &[type=\"file\"] {\n padding: 8px 12px;\n cursor: pointer;\n }\n`;\nvar ErrorMessage = styled6.span`\n color: #ef4444;\n font-size: 0.875rem;\n margin-top: 0.25rem;\n min-height: 1.25rem;\n display: block;\n`;\nvar Input = React5.forwardRef(\n ({ hasError = false, errorMessage = \"\", className = \"\", onChange, children, testId, ...props }, ref) => {\n const handleChange = (e) => {\n if (props.disabled) return;\n onChange?.(e);\n };\n return /* @__PURE__ */ jsxs4(InputWrapper, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx6(\n StyledInput,\n {\n ref,\n hasError,\n className,\n onChange: handleChange,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ jsx6(ErrorMessage, { \"data-testid\": testId ? `${testId}-error` : void 0, children: errorMessage })\n ] });\n }\n);\nInput.displayName = \"Input\";\n\n// src/components/Filter.tsx\nimport { useState as useState4, useEffect as useEffect3, useRef as useRef2 } from \"react\";\nimport { X as X2, ChevronDown as ChevronDown3 } from \"lucide-react\";\nimport styled8 from \"@emotion/styled\";\nimport { createPortal } from \"react-dom\";\n\n// src/components/Calendar.tsx\nimport React6, { useState as useState3, useEffect as useEffect2, useRef } from \"react\";\nimport { HiOutlineClock, HiChevronDown, HiChevronLeft, HiChevronRight } from \"react-icons/hi\";\nimport { HiCalendarDays } from \"react-icons/hi2\";\nimport styled7 from \"@emotion/styled\";\nimport { css as css4 } from \"@emotion/react\";\nimport { jsx as jsx7, jsxs as jsxs5 } from \"@emotion/react/jsx-runtime\";\nvar CalendarContainer = styled7.div`\n position: relative;\n`;\nvar InputWrapper2 = styled7.div`\n position: relative;\n`;\nvar IconWrapper2 = styled7.div`\n pointer-events: none;\n position: absolute;\n inset-block-start: 0;\n inset-block-end: 0;\n inset-inline-start: 0;\n display: flex;\n align-items: center;\n`;\nvar CalendarInput = styled7.input`\n display: block;\n width: 100%;\n border-radius: 9999px;\n border: 1px solid #d1d5db;\n background-color: #f9fafb;\n font-weight: 600;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n color: #111827;\n transition: all 200ms;\n padding-top: ${(props) => props.$scale * 10}px;\n padding-bottom: ${(props) => props.$scale * 10}px;\n padding-left: ${(props) => props.$showIcon ? props.$scale * 40 : props.$scale * 12}px;\n padding-right: ${(props) => props.$scale * 12}px;\n font-size: ${(props) => props.$scale * 12}px;\n \n &::placeholder {\n color: #6b7280;\n }\n \n &:focus {\n outline: none;\n border-color: #3b82f6;\n ring: 2px solid #3b82f6;\n }\n \n ${(props) => props.$disabled && css4`\n cursor: not-allowed;\n opacity: 0.5;\n `}\n`;\nvar CalendarDropdown = styled7.div`\n position: absolute;\n left: 0;\n ${(props) => props.$positionAbove ? \"bottom: 100%;\" : \"top: 100%;\"}\n ${(props) => props.$positionAbove ? `margin-bottom: ${props.$scale * 8}px;` : `margin-top: ${props.$scale * 8}px;`}\n\n z-index: 9999;\n isolation: isolate;\n\n border: 1px solid #1761A3;\n background-color: #ffffff;\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.15),\n 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n\n width: ${(props) => props.$scale * 406}px;\n max-height: 90vh; /* ✅ LIMIT height, don’t FIX it */\n border-radius: ${(props) => props.$scale * 22}px;\n max-width: 95vw;\n\n overflow: hidden;\n`;\nvar CalendarContent = styled7.div`\n display: flex;\n flex-direction: column;\n padding: ${(props) => props.$scale * 24}px;\n padding-bottom: ${(props) => props.$scale * 24}px;\n\n background: linear-gradient(\n to bottom,\n rgba(23, 97, 163, 0.08),\n rgba(77, 175, 131, 0.08)\n );\n`;\nvar CalendarTitle = styled7.div`\n text-align: left;\n font-weight: 700;\n color: #111827;\n flex-shrink: 0;\n margin-bottom: ${(props) => props.$scale * 20}px;\n font-size: ${(props) => props.$scale * 20}px;\n`;\nvar FieldButtonsRow = styled7.div`\n display: flex;\n flex-shrink: 0;\n margin-bottom: ${(props) => props.$scale * 24}px;\n gap: ${(props) => props.$scale * 12}px;\n`;\nvar FieldButton = styled7.button`\n display: flex;\n align-items: center;\n border-radius: 6px;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n transition: all 200ms;\n width: ${(props) => props.$fullWidth ? \"100%\" : `${props.$scale * 160}px`};\n height: ${(props) => props.$scale * 40}px;\n gap: ${(props) => props.$scale * 12}px;\n padding: 0 ${(props) => props.$scale * 16}px;\n border: 2px solid ${(props) => props.$active ? \"transparent\" : \"#e5e7eb\"};\n background: ${(props) => props.$active ? \"linear-gradient(to bottom, #1761A3, #4DAF83)\" : \"white\"};\n color: ${(props) => props.$active ? \"white\" : \"#111827\"};\n \n ${(props) => props.$active && css4`\n ring: 2px solid #3b82f6;\n `}\n \n &:hover {\n opacity: 0.9;\n }\n`;\nvar FieldLabel = styled7.span`\n font-weight: 500;\n color: #6b7280;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar FieldValue = styled7.span`\n font-weight: 600;\n font-size: ${(props) => props.$scale * 14}px;\n`;\nvar NavHeader = styled7.div`\n flex-shrink: 0;\n margin-bottom: ${(props) => props.$scale * 22}px;\n`;\nvar NavRow = styled7.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: ${(props) => props.$scale * 22}px;\n`;\nvar NavButton = styled7.button`\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n background-color: #1761A3;\n color: white;\n transition: all 200ms;\n width: ${(props) => props.$scale * 32}px;\n height: ${(props) => props.$scale * 30}px;\n border: none;\n cursor: pointer;\n \n &:hover {\n background: linear-gradient(to bottom, #1761A3, #4DAF83);\n }\n`;\nvar MonthYearButton = styled7.button`\n font-weight: 700;\n color: #1761A3;\n font-size: ${(props) => props.$scale * 18}px;\n background: transparent;\n border: none;\n cursor: ${(props) => props.$clickable ? \"pointer\" : \"default\"};\n transition: opacity 200ms;\n \n &:hover {\n opacity: ${(props) => props.$clickable ? 0.8 : 1};\n }\n`;\nvar YearDropdown = styled7.div`\n position: absolute;\n left: 50%;\n top: 100%;\n z-index: 50;\n overflow-y: auto;\n background-color: white;\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);\n border: 1px solid rgba(77, 175, 131, 0.25);\n border-radius: 6px;\n transform: translateX(-50%);\n margin-top: ${(props) => props.$scale * 8}px;\n width: ${(props) => props.$scale * 120}px;\n max-height: ${(props) => props.$scale * 240}px;\n`;\nvar YearOption = styled7.button`\n display: block;\n width: 100%;\n text-align: left;\n font-weight: 600;\n transition: all 150ms;\n font-size: ${(props) => props.$scale * 14}px;\n padding: ${(props) => props.$scale * 8}px ${(props) => props.$scale * 12}px;\n background-color: ${(props) => props.$selected ? \"#1761A3\" : \"white\"};\n color: ${(props) => props.$selected ? \"white\" : \"#111827\"};\n border: none;\n cursor: pointer;\n \n &:hover {\n background-color: ${(props) => props.$selected ? \"#1761A3\" : \"#eff6ff\"};\n }\n`;\nvar DayNamesGrid = styled7.div`\n margin-bottom: ${(props) => props.$scale * 6}px;\n`;\nvar GridContainer = styled7.div`\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: ${(props) => props.$scale * 8}px ${(props) => props.$scale * 8}px;\n`;\nvar DayName = styled7.div`\n display: flex;\n align-items: center;\n justify-content: center;\n font-weight: 700;\n color: #4b5563;\n width: ${(props) => props.$scale * 44}px;\n height: ${(props) => props.$scale * 28}px;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar CalendarGrid = styled7.div`\n flex-shrink: 0;\n height: ${(props) => props.$scale * 228}px;\n margin-bottom: ${(props) => props.$scale * 8}px;\n`;\nvar DayButton = styled7.button`\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n transition: all 200ms;\n width: ${(props) => props.$scale * 32}px;\n height: ${(props) => props.$scale * 30}px;\n font-size: ${(props) => props.$scale * 14}px;\n font-weight: 600;\n border: none;\n cursor: pointer;\n \n ${(props) => props.$selected && css4`\n background: linear-gradient(to bottom, #1761A3, #4DAF83);\n color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n `}\n \n ${(props) => !props.$selected && props.$isToday && css4`\n border: 2px solid #1761A3;\n color: #1761A3;\n background: transparent;\n `}\n \n ${(props) => !props.$selected && !props.$isToday && !props.$inRange && css4`\n background-color: rgba(0, 123, 255, 0.05);\n color: #374151;\n `}\n \n ${(props) => props.$inRange && !props.$selected && css4`\n background-color: rgba(23, 97, 163, 0.15);\n color: #374151;\n `}\n \n ${(props) => !props.$selected && !props.$blocked && css4`\n &:hover {\n background-color: rgba(23, 97, 163, 0.1);\n }\n `}\n \n ${(props) => props.$blocked && css4`\n cursor: not-allowed;\n opacity: 0.4;\n color: #9ca3af;\n `}\n`;\nvar FooterSection = styled7.div`\n flex-shrink: 0;\n border-top: 1px solid #e5e7eb;\n padding: ${(props) => props.$scale * 8}px\n ${(props) => props.$scale * 8}px\n ${(props) => props.$scale * 8}px;\n`;\nvar ButtonRow = styled7.div`\n display: flex;\n gap: ${(props) => props.$scale * 12}px;\n margin-bottom: ${(props) => props.$scale * 8}px;\n`;\nvar ActionButton = styled7.button`\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n font-weight: 600;\n transition: all 200ms;\n height: ${(props) => props.$scale * 38}px;\n font-size: ${(props) => props.$scale * 12}px;\n width: ${(props) => props.$fullWidth ? \"100%\" : \"auto\"};\n flex: ${(props) => props.$fullWidth ? \"none\" : 1};\n gap: ${(props) => props.$scale * 8}px;\n border: none;\n cursor: pointer;\n \n ${(props) => props.$variant === \"today\" && css4`\n color: #1761A3;\n background-color: rgba(23, 97, 163, 0.15);\n \n &:hover {\n background: linear-gradient(to bottom, #1761A3, #4DAF83);\n color: white;\n }\n `}\n \n ${(props) => props.$variant === \"clear\" && css4`\n color: #EF4444;\n background-color: rgba(239, 68, 68, 0.15);\n \n &:hover {\n opacity: 0.8;\n }\n `}\n \n ${(props) => props.$variant === \"confirm\" && css4`\n background: linear-gradient(to right, #1761A3, #4DAF83);\n color: white;\n \n &:hover {\n opacity: 0.9;\n }\n `}\n`;\nvar TimeSelectorContainer = styled7.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n`;\nvar TimeSelectorContent = styled7.div`\n flex: 1;\n overflow-y: auto;\n`;\nvar TimeFormatSection = styled7.div`\n margin-bottom: ${(props) => props.$scale * 12}px;\n`;\nvar TimeFormatRow = styled7.div`\n display: flex;\n flex-direction: column;\n gap: ${(props) => props.$scale * 8}px;\n`;\nvar TimeFormatLabel = styled7.span`\n color: #000;\n font-weight: 600;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar TimeFormatToggleRow = styled7.div`\n display: flex;\n align-items: center;\n gap: ${(props) => props.$scale * 8}px;\n`;\nvar TimeFormatText = styled7.span`\n transition: color 200ms;\n font-weight: 600;\n font-size: ${(props) => props.$scale * 12}px;\n color: ${(props) => props.$active ? \"#111827\" : \"#6b7280\"};\n`;\nvar ToggleSwitch = styled7.button`\n position: relative;\n display: inline-flex;\n align-items: center;\n border-radius: 8px;\n transition: all 200ms;\n width: ${(props) => props.$scale * 38}px;\n height: ${(props) => props.$scale * 17}px;\n background-color: ${(props) => props.$active ? \"#1761A3\" : \"#cbd5e1\"};\n border: none;\n cursor: pointer;\n \n &:focus {\n outline: none;\n ring: 2px solid #3b82f6;\n ring-offset: 2px;\n }\n`;\nvar ToggleThumb = styled7.span`\n display: inline-block;\n border-radius: 50%;\n background-color: white;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);\n transition: transform 200ms;\n width: ${(props) => props.$scale * 13}px;\n height: ${(props) => props.$scale * 13}px;\n transform: ${(props) => props.$active ? `translateX(${props.$scale * 23}px)` : `translateX(${props.$scale * 2}px)`};\n`;\nvar SelectRow = styled7.div`\n display: flex;\n align-items: start;\n gap: ${(props) => props.$scale * 15}px;\n`;\nvar SelectWrapper = styled7.div`\n display: flex;\n flex-direction: column;\n flex: ${(props) => props.$fullWidth ? \"none\" : 1};\n width: ${(props) => props.$fullWidth ? \"100%\" : \"auto\"};\n`;\nvar SelectLabel = styled7.span`\n color: #000;\n font-weight: 600;\n font-size: ${(props) => props.$scale * 12}px;\n text-align: ${(props) => props.$align || \"left\"};\n padding-left: ${(props) => props.$align === \"center\" ? `${props.$scale * 36}px` : 0};\n padding-right: ${(props) => props.$align === \"right\" ? `${props.$scale * 36}px` : 0};\n margin-bottom: ${(props) => props.$scale * 8}px;\n`;\nvar SelectContainer = styled7.div`\n position: relative;\n height: ${(props) => props.$scale * 40}px;\n width: ${(props) => props.$fullWidth ? \"100%\" : \"auto\"};\n`;\nvar StyledSelect = styled7.select`\n display: block;\n height: 100%;\n border: 1px solid rgba(77, 175, 131, 0.25);\n background-color: ${(props) => props.$fullWidth ? \"#F0F8FF\" : \"white\"};\n color: #111827;\n font-weight: 600;\n border-radius: 6px;\n transition: all 200ms;\n font-size: ${(props) => props.$scale * 12}px;\n padding-left: ${(props) => props.$fullWidth ? `${props.$scale * 36}px` : `${props.$scale * 16}px`};\n padding-right: ${(props) => props.$scale * 32}px;\n width: ${(props) => props.$fullWidth ? \"100%\" : `${props.$scale * 106}px`};\n appearance: none;\n cursor: pointer;\n \n &:focus {\n outline: none;\n border-color: #3b82f6;\n ring: 2px solid rgba(59, 130, 246, 0.2);\n }\n \n &:hover {\n background: ${(props) => props.$fullWidth ? \"linear-gradient(to right, rgba(23, 97, 163, 0.4), rgba(77, 175, 131, 0.4))\" : \"white\"};\n }\n`;\nvar SelectIcon = styled7(HiChevronDown)`\n pointer-events: none;\n position: absolute;\n top: 50%;\n right: ${(props) => props.$scale * 8}px;\n transform: translateY(-50%);\n color: #6b7280;\n font-size: ${(props) => props.$scale * 18}px;\n`;\nvar TimeSelectSection = styled7.div`\n margin-top: ${(props) => props.$scale * 16}px;\n`;\nvar TimeSelectLabel = styled7.label`\n display: block;\n color: #374151;\n font-weight: 600;\n margin-bottom: ${(props) => props.$scale * 12}px;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar TimeSelectGrid = styled7.div`\n display: flex;\n gap: ${(props) => props.$scale * 12}px;\n`;\nvar TimeSelectItem = styled7.div`\n flex: 1;\n`;\nvar PreviewSection = styled7.div`\n margin-top: ${(props) => props.$scale * 12}px;\n`;\nvar PreviewLabel = styled7.label`\n display: block;\n color: #374151;\n font-weight: 600;\n margin-bottom: ${(props) => props.$scale * 8}px;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar PreviewText = styled7.p`\n text-align: left;\n color: #1761A3;\n font-weight: 600;\n font-size: ${(props) => props.$scale * 12}px;\n`;\nvar TimeFooter = styled7.div`\n margin-top: auto;\n border-top: 1px solid #e5e7eb;\n flex-shrink: 0;\n padding-top: ${(props) => props.$scale * 15}px;\n`;\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 DAY_NAMES = [\"SUN\", \"MON\", \"TUE\", \"WED\", \"THU\", \"FRI\", \"SAT\"];\nvar DATE_FORMAT_OPTIONS = [\n \"none\",\n \"MM/DD/YYYY\",\n \"DD/MM/YYYY\",\n \"YYYY/MM/DD\",\n \"MMM/DD/YYYY\",\n \"DD/MMM/YYYY\",\n \"YYYY/MMM/DD\",\n \"MMM DD, YYYY\",\n \"DD MMM YYYY\",\n \"YYYY MMM DD\",\n \"MM-DD-YYYY\",\n \"DD-MM-YYYY\",\n \"YYYY-MM-DD\",\n \"MMM-DD-YYYY\",\n \"DD-MMM-YYYY\",\n \"YYYY-MMM-DD\",\n \"DD.MM.YYYY\",\n \"MM.DD.YYYY\",\n \"YYYY.MM.DD\"\n];\nvar TIME_ZONE_OPTIONS = [\n \"none\",\n \"UTC\",\n \"GMT\",\n \"EST\",\n \"EDT\",\n \"CST\",\n \"CDT\",\n \"MST\",\n \"MDT\",\n \"PST\",\n \"PDT\",\n \"IST\",\n \"JST\",\n \"KST\",\n \"AEST\",\n \"AEDT\",\n \"NZST\",\n \"NZDT\",\n \"CET\",\n \"CEST\",\n \"BST\",\n \"AST\",\n \"HST\",\n \"AKST\",\n \"AKDT\",\n \"SST\",\n \"NST\",\n \"WET\",\n \"WEST\",\n \"EET\",\n \"EEST\",\n \"MSK\",\n \"HKT\",\n \"SGT\",\n \"PKT\",\n \"BDT\",\n \"AWST\",\n \"ACST\",\n \"ACDT\",\n \"NFT\"\n];\nvar compareInternalDates = (a, b) => {\n if (a.year !== b.year) return a.year - b.year;\n if (a.monthIndex !== b.monthIndex) return a.monthIndex - b.monthIndex;\n return a.day - b.day;\n};\nvar addDaysInternal = (start, daysToAdd) => {\n let y = start.year;\n let m = start.monthIndex;\n let d = start.day + daysToAdd;\n while (true) {\n const dim = getDaysInMonth(y, m);\n if (d <= dim) break;\n d -= dim;\n m += 1;\n if (m > 11) {\n m = 0;\n y += 1;\n }\n }\n return { year: y, monthIndex: m, day: d };\n};\nvar isBlockedDateHelper = (date, config) => {\n if (!config || config.days <= 0) return false;\n const startInternal = {\n year: config.startDate.year,\n monthIndex: config.startDate.month,\n day: config.startDate.day\n };\n const endInternal = addDaysInternal(startInternal, config.days - 1);\n const currentInternal = {\n year: date.year,\n monthIndex: date.month,\n day: date.day\n };\n const afterOrOnStart = compareInternalDates(currentInternal, startInternal) >= 0;\n const beforeOrOnEnd = compareInternalDates(currentInternal, endInternal) <= 0;\n return afterOrOnStart && beforeOrOnEnd;\n};\nvar getLocalTimeZone = () => {\n const timeZoneString = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const date = /* @__PURE__ */ new Date();\n const shortTimeZone = date.toLocaleTimeString(\"en-us\", { timeZoneName: \"short\" }).split(\" \")[2];\n return shortTimeZone || timeZoneString;\n};\nvar SIZE_SCALES = {\n \"small\": 0.65,\n \"medium\": 0.8,\n \"large\": 0.9,\n \"extra-large\": 1\n};\nvar getDeviceScale = () => {\n if (typeof window === \"undefined\") return 1;\n const width = window.innerWidth;\n if (width < 640) return 0.7;\n if (width < 1024) return 0.85;\n return 1;\n};\nvar Calendar = ({\n calendartestId,\n value,\n onChange,\n enableRangeSelection = false,\n rangeValue,\n onRangeChange,\n enableTimeSelection = false,\n timeValue,\n onTimeChange,\n showTimeFormatToggle = false,\n timeFormat = \"12h\",\n onTimeFormatChange,\n autoHide = false,\n showTodayButton = false,\n showClearButton = false,\n placeholder = \"Select date\",\n className,\n disabled = false,\n onShow,\n onHide,\n icon,\n showIcon = true,\n size = \"extra-large\",\n enableYearDropdown = false,\n showDateFormatSelector = false,\n dateFormat = \"none\",\n onDateFormatChange,\n showTimeZoneSelector = false,\n timeZoneFormat = \"none\",\n onTimeZoneFormatChange,\n blockDateConfig,\n previewTextStyles = {},\n globalTypography = {}\n}) => {\n const today = /* @__PURE__ */ new Date();\n const [currentYear, setCurrentYear] = useState3(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = useState3(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = useState3({ start: null, end: null });\n const [isOpen, setIsOpen] = useState3(false);\n const [activeField, setActiveField] = useState3(\"start\");\n const [showTimeSelector, setShowTimeSelector] = useState3(false);\n const [selectedHour, setSelectedHour] = useState3(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = useState3(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = useState3(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = useState3(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = useState3(false);\n const [internalDateFormat, setInternalDateFormat] = useState3(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = useState3(timeZoneFormat);\n const [deviceScale, setDeviceScale] = useState3(1);\n const [positionAbove, setPositionAbove] = useState3(false);\n const containerRef = useRef(null);\n const calendarRef = useRef(null);\n const sizeScale = SIZE_SCALES[size];\n const scale = sizeScale * deviceScale;\n const finalRangeValue = rangeValue ?? internalRangeValue;\n const scaled = (value2) => Math.round(value2 * scale);\n useEffect2(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n useEffect2(() => {\n if (!isOpen || !containerRef.current || !calendarRef.current) return;\n const calculatePosition = () => {\n const containerRect = containerRef.current?.getBoundingClientRect();\n const calendarHeight = calendarRef.current?.offsetHeight || 580 * scale;\n if (!containerRect) return;\n const spaceBelow = window.innerHeight - containerRect.bottom;\n const spaceAbove = containerRect.top;\n const bufferSpace = 20;\n if (spaceBelow < calendarHeight + bufferSpace && spaceAbove > calendarHeight + bufferSpace) {\n setPositionAbove(true);\n } else {\n setPositionAbove(false);\n }\n };\n calculatePosition();\n window.addEventListener(\"resize\", calculatePosition);\n window.addEventListener(\"scroll\", calculatePosition, true);\n return () => {\n window.removeEventListener(\"resize\", calculatePosition);\n window.removeEventListener(\"scroll\", calculatePosition, true);\n };\n }, [isOpen, scale]);\n useEffect2(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n useEffect2(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n useEffect2(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n useEffect2(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n useEffect2(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n useEffect2(() => {\n const handleClickOutside = (event) => {\n if (containerRef.current && !containerRef.current.contains(event.target)) {\n if (isOpen) {\n setIsOpen(false);\n setShowTimeSelector(false);\n setShowYearDropdown(false);\n onHide?.();\n }\n }\n };\n if (isOpen) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpen, onHide]);\n const daysInMonth = getDaysInMonth(currentYear, currentMonth);\n const firstDay = getFirstDayOfMonth(currentYear, currentMonth);\n const monthName = getMonthName(currentMonth);\n const previousMonth = () => {\n if (currentMonth === 0) {\n setCurrentMonth(11);\n setCurrentYear(currentYear - 1);\n } else {\n setCurrentMonth(currentMonth - 1);\n }\n };\n const nextMonth = () => {\n if (currentMonth === 11) {\n setCurrentMonth(0);\n setCurrentYear(currentYear + 1);\n } else {\n setCurrentMonth(currentMonth + 1);\n }\n };\n const selectDate = (day) => {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n if (enableRangeSelection) {\n if (activeField === \"start\") {\n const newRange = { start: date, end: finalRangeValue?.end || null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n } else {\n const start = finalRangeValue?.start;\n if (start) {\n const startTime = new Date(start.year, start.month, start.day).getTime();\n const endTime = new Date(date.year, date.month, date.day).getTime();\n let newRange;\n if (endTime < startTime) {\n newRange = { start: date, end: start };\n } else {\n newRange = { start, end: date };\n }\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n } else {\n const newRange = { start: date, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n }\n }\n } else {\n const dateString = convertToDateString(date);\n onChange?.(date, dateString);\n }\n if (showTimeSelector) {\n setShowTimeSelector(false);\n }\n if (autoHide && (!enableRangeSelection || enableRangeSelection && activeField === \"end\" && finalRangeValue?.start)) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const selectToday = () => {\n const todayDate = {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n };\n setCurrentYear(todayDate.year);\n setCurrentMonth(todayDate.month);\n const dateString = convertToDateString(todayDate);\n onChange?.(todayDate, dateString);\n if (enableTimeSelection && showTimeSelector) {\n const now = /* @__PURE__ */ new Date();\n const currentHour = now.getHours();\n const currentMinute = now.getMinutes();\n let hour12;\n let period;\n if (currentHour === 0) {\n hour12 = 12;\n period = \"AM\";\n } else if (currentHour === 12) {\n hour12 = 12;\n period = \"PM\";\n } else if (currentHour > 12) {\n hour12 = currentHour - 12;\n period = \"PM\";\n } else {\n hour12 = currentHour;\n period = \"AM\";\n }\n setSelectedHour(hour12);\n setSelectedMinute(currentMinute);\n setSelectedPeriod(period);\n onTimeChange?.({\n hour: hour12,\n minute: currentMinute,\n period\n });\n if (showTimeZoneSelector) {\n const localTZ = getLocalTimeZone();\n setInternalTimeZoneFormat(localTZ);\n onTimeZoneFormatChange?.(localTZ);\n }\n }\n if (autoHide) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const clearDate = () => {\n if (enableRangeSelection) {\n const newRange = { start: null, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"start\");\n } else {\n onChange?.(null, \"\");\n }\n if (enableTimeSelection) {\n onTimeChange?.({ hour: 12, minute: 0, period: \"AM\" });\n setSelectedHour(12);\n setSelectedMinute(0);\n setSelectedPeriod(\"AM\");\n }\n };\n const toggleCalendar = () => {\n if (disabled) return;\n const newState = !isOpen;\n setIsOpen(newState);\n if (newState) {\n setShowTimeSelector(false);\n onShow?.();\n } else {\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const handleStartFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"start\");\n setShowTimeSelector(false);\n };\n const handleEndFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"end\");\n setShowTimeSelector(false);\n };\n const handleChooseTimeClick = () => {\n setShowTimeSelector(!showTimeSelector);\n };\n const handleChooseDateClick = () => {\n setShowTimeSelector(false);\n };\n const handleTimeFormatToggle = () => {\n const newFormat = internalTimeFormat === \"12h\" ? \"24h\" : \"12h\";\n setInternalTimeFormat(newFormat);\n onTimeFormatChange?.(newFormat);\n };\n const handleTimeConfirm = () => {\n onTimeChange?.({\n hour: selectedHour,\n minute: selectedMinute,\n period: selectedPeriod\n });\n setShowTimeSelector(false);\n };\n const handleDateConfirm = () => {\n setIsOpen(false);\n onHide?.();\n };\n const handleMonthYearClick = () => {\n if (enableYearDropdown) {\n setShowYearDropdown(!showYearDropdown);\n }\n };\n const handleYearSelect = (year) => {\n setCurrentYear(year);\n setShowYearDropdown(false);\n };\n const renderDays = () => {\n const days = [];\n for (let i = 0; i < firstDay; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-start-${i}`\n )\n );\n }\n for (let day = 1; day <= daysInMonth; day++) {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n const isSelected = enableRangeSelection ? isSameDate(finalRangeValue?.start, date) || isSameDate(finalRangeValue?.end, date) : isSameDate(value, date);\n const isInRange = enableRangeSelection && finalRangeValue?.start && finalRangeValue?.end ? (() => {\n const currentTime = new Date(date.year, date.month, date.day).getTime();\n const startTime = new Date(\n finalRangeValue.start.year,\n finalRangeValue.start.month,\n finalRangeValue.start.day\n ).getTime();\n const endTime = new Date(\n finalRangeValue.end.year,\n finalRangeValue.end.month,\n finalRangeValue.end.day\n ).getTime();\n return currentTime > startTime && currentTime < endTime;\n })() : false;\n const isToday = isSameDate(\n {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n },\n date\n );\n const isBlocked = isBlockedDateHelper(date, blockDateConfig);\n days.push(\n /* @__PURE__ */ jsx7(\n DayButton,\n {\n type: \"button\",\n onClick: () => {\n if (!isBlocked) selectDate(day);\n },\n disabled: isBlocked,\n $selected: isSelected,\n $isToday: isToday,\n $inRange: isInRange,\n $blocked: isBlocked,\n $scale: scale,\n children: day\n },\n `current-${day}`\n )\n );\n }\n const totalCells = firstDay + daysInMonth;\n const remainingCells = totalCells % 7 === 0 ? 0 : 7 - totalCells % 7;\n for (let i = 0; i < remainingCells; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-end-${i}`\n )\n );\n }\n return days;\n };\n const renderTimeSelector = () => {\n const hours12 = Array.from({ length: 12 }, (_, i) => i + 1);\n const hours24 = Array.from({ length: 24 }, (_, i) => i);\n const minutes = Array.from({ length: 60 }, (_, i) => i);\n return /* @__PURE__ */ jsxs5(TimeSelectorContainer, { children: [\n /* @__PURE__ */ jsxs5(TimeSelectorContent, { children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(TimeFormatSection, { $scale: scale, children: [\n showTimeFormatToggle && /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: `${scaled(12)}px` }, children: /* @__PURE__ */ jsxs5(TimeFormatRow, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(TimeFormatLabel, { $scale: scale, children: \"Format\" }),\n /* @__PURE__ */ jsxs5(TimeFormatToggleRow, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(TimeFormatText, { $active: internalTimeFormat === \"12h\", $scale: scale, children: \"12h\" }),\n /* @__PURE__ */ jsx7(\n ToggleSwitch,\n {\n type: \"button\",\n onClick: handleTimeFormatToggle,\n $active: internalTimeFormat === \"24h\",\n $scale: scale,\n role: \"switch\",\n \"aria-checked\": internalTimeFormat === \"24h\",\n children: /* @__PURE__ */ jsx7(ToggleThumb, { $active: internalTimeFormat === \"24h\", $scale: scale })\n }\n ),\n /* @__PURE__ */ jsx7(TimeFormatText, { $active: internalTimeFormat === \"24h\", $scale: scale, children: \"24h\" })\n ] })\n ] }) }),\n (showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(SelectRow, { $scale: scale, children: [\n showDateFormatSelector && /* @__PURE__ */ jsxs5(SelectWrapper, { $fullWidth: !showTimeZoneSelector, children: [\n /* @__PURE__ */ jsx7(SelectLabel, { $scale: scale, $align: \"center\", children: \"Date Format\" }),\n /* @__PURE__ */ jsxs5(SelectContainer, { $scale: scale, $fullWidth: !showTimeZoneSelector, children: [\n /* @__PURE__ */ jsx7(\n StyledSelect,\n {\n value: internalDateFormat,\n onChange: (e) => {\n setInternalDateFormat(e.target.value);\n onDateFormatChange?.(e.target.value);\n },\n $scale: scale,\n $fullWidth: !showTimeZoneSelector,\n children: DATE_FORMAT_OPTIONS.map((format) => /* @__PURE__ */ jsx7(\"option\", { value: format, children: format }, format))\n }\n ),\n /* @__PURE__ */ jsx7(SelectIcon, { $scale: scale })\n ] })\n ] }),\n showTimeZoneSelector && /* @__PURE__ */ jsxs5(SelectWrapper, { $fullWidth: !showDateFormatSelector, children: [\n /* @__PURE__ */ jsx7(SelectLabel, { $scale: scale, $align: \"right\", children: \"Time Format\" }),\n /* @__PURE__ */ jsxs5(SelectContainer, { $scale: scale, $fullWidth: !showDateFormatSelector, children: [\n /* @__PURE__ */ jsx7(\n StyledSelect,\n {\n value: internalTimeZoneFormat,\n onChange: (e) => {\n setInternalTimeZoneFormat(e.target.value);\n onTimeZoneFormatChange?.(e.target.value);\n },\n $scale: scale,\n $fullWidth: !showDateFormatSelector,\n children: TIME_ZONE_OPTIONS.map((zone) => /* @__PURE__ */ jsx7(\"option\", { value: zone, children: zone }, zone))\n }\n ),\n /* @__PURE__ */ jsx7(SelectIcon, { $scale: scale })\n ] })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs5(TimeSelectSection, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(TimeSelectLabel, { $scale: scale, children: \"Time Select\" }),\n /* @__PURE__ */ jsxs5(TimeSelectGrid, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(TimeSelectItem, { children: /* @__PURE__ */ jsxs5(SelectContainer, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(\n StyledSelect,\n {\n value: internalTimeFormat === \"24h\" ? selectedPeriod === \"PM\" && selectedHour !== 12 ? selectedHour + 12 : selectedPeriod === \"AM\" && selectedHour === 12 ? 0 : selectedHour : selectedHour,\n onChange: (e) => {\n const value2 = Number(e.target.value);\n if (internalTimeFormat === \"24h\") {\n if (value2 === 0) {\n setSelectedHour(12);\n setSelectedPeriod(\"AM\");\n } else if (value2 === 12) {\n setSelectedHour(12);\n setSelectedPeriod(\"PM\");\n } else if (value2 > 12) {\n setSelectedHour(value2 - 12);\n setSelectedPeriod(\"PM\");\n } else {\n setSelectedHour(value2);\n setSelectedPeriod(\"AM\");\n }\n } else {\n setSelectedHour(value2);\n }\n },\n $scale: scale,\n children: (internalTimeFormat === \"24h\" ? hours24 : hours12).map((hour) => /* @__PURE__ */ jsx7(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ jsx7(SelectIcon, { $scale: scale })\n ] }) }),\n /* @__PURE__ */ jsx7(TimeSelectItem, { children: /* @__PURE__ */ jsxs5(SelectContainer, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(\n StyledSelect,\n {\n value: selectedMinute,\n onChange: (e) => setSelectedMinute(Number(e.target.value)),\n $scale: scale,\n children: minutes.map((minute) => /* @__PURE__ */ jsx7(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ jsx7(SelectIcon, { $scale: scale })\n ] }) }),\n internalTimeFormat === \"12h\" && /* @__PURE__ */ jsx7(TimeSelectItem, { children: /* @__PURE__ */ jsxs5(SelectContainer, { $scale: scale, children: [\n /* @__PURE__ */ jsxs5(\n StyledSelect,\n {\n value: selectedPeriod,\n onChange: (e) => setSelectedPeriod(e.target.value),\n $scale: scale,\n children: [\n /* @__PURE__ */ jsx7(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ jsx7(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ jsx7(SelectIcon, { $scale: scale })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsxs5(PreviewSection, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(PreviewLabel, { $scale: scale, children: \"Preview\" }),\n /* @__PURE__ */ jsxs5(PreviewText, { $scale: scale, 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 /* @__PURE__ */ jsxs5(TimeFooter, { $scale: scale, children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ jsxs5(ButtonRow, { $scale: scale, children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n ActionButton,\n {\n type: \"button\",\n onClick: selectToday,\n $variant: \"today\",\n $fullWidth: !showClearButton,\n $scale: scale,\n children: [\n /* @__PURE__ */ jsx7(HiOutlineClock, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } }),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n ActionButton,\n {\n type: \"button\",\n onClick: clearDate,\n $variant: \"clear\",\n $fullWidth: !showTodayButton,\n $scale: scale,\n children: \"Clear\"\n }\n )\n ] }),\n /* @__PURE__ */ jsx7(\n ActionButton,\n {\n type: \"button\",\n onClick: handleTimeConfirm,\n $variant: \"confirm\",\n $fullWidth: true,\n $scale: scale,\n children: \"Confirm Time\"\n }\n )\n ] })\n ] });\n };\n const defaultIcon = /* @__PURE__ */ jsx7(HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ jsxs5(CalendarContainer, { ref: containerRef, className, \"data-testid\": calendartestId, children: [\n /* @__PURE__ */ jsxs5(InputWrapper2, { children: [\n showIcon && /* @__PURE__ */ jsx7(IconWrapper2, { style: { paddingLeft: `${scaled(12)}px` }, children: icon || defaultIcon }),\n /* @__PURE__ */ jsx7(\n CalendarInput,\n {\n type: \"text\",\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 onClick: toggleCalendar,\n readOnly: true,\n disabled,\n placeholder,\n $showIcon: showIcon,\n $disabled: disabled,\n $scale: scale\n }\n )\n ] }),\n isOpen && /* @__PURE__ */ jsx7(CalendarDropdown, { $scale: scale, $positionAbove: positionAbove, ref: calendarRef, children: /* @__PURE__ */ jsxs5(CalendarContent, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(CalendarTitle, { $scale: scale, children: enableRangeSelection ? \"Select Date Range\" : \"Select Date & Time\" }),\n enableRangeSelection ? /* @__PURE__ */ jsxs5(FieldButtonsRow, { $scale: scale, children: [\n /* @__PURE__ */ jsxs5(\n FieldButton,\n {\n type: \"button\",\n onClick: handleStartFieldClick,\n $active: activeField === \"start\",\n $scale: scale,\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { style: { display: \"flex\", flexDirection: \"column\", alignItems: \"flex-start\" }, children: [\n /* @__PURE__ */ jsx7(FieldLabel, { $scale: scale, children: \"From Date\" }),\n /* @__PURE__ */ jsx7(FieldValue, { $scale: scale, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs5(\n FieldButton,\n {\n type: \"button\",\n onClick: handleEndFieldClick,\n $active: activeField === \"end\",\n $scale: scale,\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { style: { display: \"flex\", flexDirection: \"column\", alignItems: \"flex-start\" }, children: [\n /* @__PURE__ */ jsx7(FieldLabel, { $scale: scale, children: \"To Date\" }),\n /* @__PURE__ */ jsx7(FieldValue, { $scale: scale, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ] })\n ]\n }\n )\n ] }) : /* @__PURE__ */ jsxs5(FieldButtonsRow, { $scale: scale, children: [\n /* @__PURE__ */ jsxs5(\n FieldButton,\n {\n type: \"button\",\n onClick: handleChooseDateClick,\n $active: !showTimeSelector && enableTimeSelection,\n $scale: scale,\n $fullWidth: !enableTimeSelection,\n children: [\n /* @__PURE__ */ jsx7(\"span\", { style: {\n color: !showTimeSelector && enableTimeSelection ? \"white\" : void 0,\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\"\n }, children: React6.cloneElement(defaultIcon, {\n style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`,\n color: !showTimeSelector && enableTimeSelection ? \"white\" : void 0\n }\n }) }),\n /* @__PURE__ */ jsx7(FieldValue, { $scale: scale, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ jsxs5(\n FieldButton,\n {\n type: \"button\",\n onClick: handleChooseTimeClick,\n $active: showTimeSelector,\n $scale: scale,\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`,\n color: showTimeSelector ? \"white\" : void 0\n }\n }\n ),\n /* @__PURE__ */ jsx7(FieldValue, { $scale: scale, children: timeValue ? formatTime(timeValue, internalTimeFormat) : \"Choose Time\" })\n ]\n }\n )\n ] }),\n showTimeSelector ? renderTimeSelector() : /* @__PURE__ */ jsxs5(\"div\", { style: {\n flex: \"1 1 auto\",\n minHeight: 0,\n display: \"flex\",\n flexDirection: \"column\"\n }, children: [\n /* @__PURE__ */ jsxs5(NavHeader, { $scale: scale, children: [\n /* @__PURE__ */ jsxs5(NavRow, { $scale: scale, children: [\n /* @__PURE__ */ jsx7(\n NavButton,\n {\n type: \"button\",\n onClick: previousMonth,\n $scale: scale,\n \"aria-label\": \"Previous month\",\n children: /* @__PURE__ */ jsx7(HiChevronLeft, { style: {\n width: `${scaled(10)}px`,\n height: `${scaled(10)}px`\n } })\n }\n ),\n /* @__PURE__ */ jsxs5(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ jsxs5(\n MonthYearButton,\n {\n type: \"button\",\n onClick: handleMonthYearClick,\n $clickable: enableYearDropdown,\n $scale: scale,\n children: [\n monthName,\n \" \",\n currentYear\n ]\n }\n ),\n enableYearDropdown && showYearDropdown && /* @__PURE__ */ jsx7(YearDropdown, { $scale: scale, children: Array.from({ length: 201 }, (_, i) => {\n const year = today.getFullYear() - 100 + i;\n return /* @__PURE__ */ jsx7(\n YearOption,\n {\n type: \"button\",\n onClick: () => handleYearSelect(year),\n $selected: year === currentYear,\n $scale: scale,\n children: year\n },\n year\n );\n }) })\n ] }),\n /* @__PURE__ */ jsx7(\n NavButton,\n {\n type: \"button\",\n onClick: nextMonth,\n $scale: scale,\n \"aria-label\": \"Next month\",\n children: /* @__PURE__ */ jsx7(HiChevronRight, { style: {\n width: `${scaled(10)}px`,\n height: `${scaled(10)}px`\n } })\n }\n )\n ] }),\n /* @__PURE__ */ jsx7(DayNamesGrid, { $scale: scale, children: /* @__PURE__ */ jsx7(GridContainer, { $scale: scale, children: DAY_NAMES.map((day) => /* @__PURE__ */ jsx7(DayName, { $scale: scale, children: day }, day)) }) })\n ] }),\n /* @__PURE__ */ jsx7(CalendarGrid, { $scale: scale, children: /* @__PURE__ */ jsx7(GridContainer, { $scale: scale, children: renderDays() }) }),\n /* @__PURE__ */ jsxs5(FooterSection, { $scale: scale, children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ jsxs5(ButtonRow, { $scale: scale, children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n ActionButton,\n {\n type: \"button\",\n onClick: selectToday,\n $variant: \"today\",\n $fullWidth: !showClearButton,\n $scale: scale,\n children: [\n /* @__PURE__ */ jsx7(HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } }),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n ActionButton,\n {\n type: \"button\",\n onClick: clearDate,\n $variant: \"clear\",\n $fullWidth: !showTodayButton,\n $scale: scale,\n children: \"Clear\"\n }\n )\n ] }),\n /* @__PURE__ */ jsx7(\n ActionButton,\n {\n type: \"button\",\n onClick: handleDateConfirm,\n $variant: \"confirm\",\n $fullWidth: true,\n $scale: scale,\n children: \"Confirm Date\"\n }\n )\n ] })\n ] })\n ] }) })\n ] });\n};\nCalendar.displayName = \"Calendar\";\n\n// src/components/Filter.tsx\nimport { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs6 } from \"@emotion/react/jsx-runtime\";\nvar FilterContainer = styled8.div`\n position: relative;\n`;\nvar FilterButton = styled8.button`\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.75rem 1.25rem;\n border-radius: 0.5rem;\n border: 1px solid rgba(23, 97, 163, 0.35);\n background: linear-gradient(to right, #f2fbf8, #eef6fb);\n color: #0f172a;\n font-weight: 600;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n cursor: pointer;\n transition: all 0.2s ease-in-out;\n \n &:hover {\n background: linear-gradient(to right, #e8f5f0, #e0f0f6);\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);\n }\n \n &:focus {\n outline: 2px solid rgba(23, 97, 163, 0.5);\n outline-offset: 2px;\n }\n`;\nvar FilterModalWrapper = styled8.div`\n position: absolute;\n right: 0;\n margin-top: 0.75rem;\n z-index: 50;\n`;\nvar FilterCard = styled8.div`\n width: 360px;\n padding: 0;\n overflow: hidden;\n background-color: white;\n border: 1px solid #e2e8f0;\n border-radius: 0.5rem;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n`;\nvar FilterHeader = styled8.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.75rem 1.25rem;\n border-bottom: 1px solid rgba(23, 97, 163, 0.35);\n`;\nvar FilterTitle = styled8.h3`\n font-size: 1rem;\n font-weight: 600;\n`;\nvar CloseButton2 = styled8.button`\n width: 2rem;\n height: 2rem;\n border-radius: 9999px;\n background-color: rgb(241, 245, 249);\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n cursor: pointer;\n transition: background-color 200ms;\n\n &:hover {\n background-color: rgb(226, 232, 240);\n }\n\n &:focus {\n outline: none;\n }\n`;\nvar SectionContainer = styled8.div`\n padding: 1rem 1.25rem;\n background: linear-gradient(to right, #f3fbf8, #eef6fb);\n border-bottom: 1px solid rgba(23, 97, 163, 0.35);\n`;\nvar SectionHeader = styled8.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 0.75rem;\n`;\nvar SectionTitle = styled8.h6`\n font-weight: 600;\n font-size: 0.875rem;\n`;\nvar ResetButton = styled8.button`\n color: #1761a3;\n font-weight: 600;\n font-size: 0.875rem;\n background: none;\n border: none;\n cursor: pointer;\n transition: opacity 200ms;\n\n &:hover {\n opacity: 0.8;\n }\n\n &:focus {\n outline: none;\n }\n`;\nvar SelectWrapper2 = styled8.div`\n position: relative;\n width: 100%;\n`;\nvar StyledSelect2 = styled8.select`\n width: 100%;\n appearance: none;\n padding: 0.75rem 1rem;\n padding-right: 2.5rem;\n border-radius: 6px;\n border: 1px solid rgb(203, 213, 225);\n background-color: white;\n font-size: 0.875rem;\n cursor: pointer;\n\n &:focus {\n outline: none;\n border-color: #1761a3;\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.2);\n }\n`;\nvar SelectIcon2 = styled8.span`\n position: absolute;\n right: 0.75rem;\n top: 50%;\n transform: translateY(-50%);\n width: 1rem;\n height: 1rem;\n color: rgb(100, 116, 139);\n pointer-events: none;\n display: flex;\n align-items: center;\n justify-content: center;\n \n svg {\n width: 1rem;\n height: 1rem;\n }\n`;\nvar SearchInput = styled8.input`\n width: 100%;\n padding: 0.75rem 1rem;\n border-radius: 6px;\n border: 1px solid rgb(203, 213, 225);\n background-color: white;\n font-size: 0.875rem;\n\n &:focus {\n outline: none;\n border-color: #1761a3;\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.2);\n }\n\n &::placeholder {\n color: rgb(148, 163, 184);\n }\n`;\nvar FilterFooter = styled8.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 1rem 1.25rem;\n background: linear-gradient(to right, #f3fbf8, #eef6fb);\n`;\nvar ResetAllButton = styled8.button`\n border: 1px solid #1761a3;\n background-color: #f0f8ff;\n padding: 0.75rem 1rem;\n border-radius: 0.375rem;\n cursor: pointer;\n font-weight: 500;\n transition: all 0.2s ease-in-out;\n \n &:hover {\n background-color: #e6f3ff;\n }\n`;\nvar ApplyButton = styled8.button`\n color: white;\n background: linear-gradient(to right, #1761a3, #4daf83);\n border: none;\n padding: 0.75rem 1rem;\n border-radius: 0.375rem;\n cursor: pointer;\n font-weight: 500;\n transition: all 0.2s ease-in-out;\n \n &:hover {\n background: linear-gradient(to right, #1347a3, #3d8f63);\n }\n`;\nvar CustomSelectTrigger = styled8.div`\n width: 100%;\n padding: ${(props) => props.size === \"small\" ? \"0.5rem 0.75rem\" : \"0.75rem 1rem\"};\n padding-right: ${(props) => props.size === \"small\" ? \"1.25rem\" : \"1.5rem\"};\n background-color: white;\n border: 1px solid ${(props) => props.open ? \"#1761a3\" : \"rgb(203, 213, 225)\"};\n border-radius: 6px;\n appearance: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: relative;\n transition: all 200ms;\n\n ${(props) => props.open && `\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.2);\n `}\n\n &:focus {\n outline: none;\n border-color: #1761a3;\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.2);\n }\n`;\nvar CustomSelectLabel = styled8.span`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.875rem;\n`;\nvar CustomSelectIcon = styled8.span`\n width: 1rem;\n height: 1rem;\n color: rgb(100, 116, 139);\n transition: transform 200ms;\n transform: ${(props) => props.open ? \"rotate(180deg)\" : \"rotate(0deg)\"};\n display: flex;\n align-items: center;\n justify-content: center;\n \n svg {\n width: 1rem;\n height: 1rem;\n }\n`;\nvar CustomSelectDropdown = styled8.div`\n position: absolute;\n z-index: 9999;\n border-radius: 6px;\n border: 1px solid rgb(203, 213, 225);\n background-color: white;\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n max-height: 240px;\n overflow-y: auto;\n`;\nvar CustomSelectOption = styled8.div`\n padding: 0.5rem 1rem;\n font-size: 0.875rem;\n cursor: pointer;\n color: black;\n transition: all 150ms;\n\n &:hover {\n background-color: #1761a3;\n color: white;\n }\n`;\nvar CustomInput = styled8.input`\n width: 100%;\n padding: ${(props) => props.fieldSize === \"small\" ? \"0.5rem 0.75rem\" : \"0.75rem 1rem\"};\n background-color: white;\n border: 1px solid rgb(203, 213, 225);\n border-radius: 6px;\n font-size: 0.875rem;\n\n &:focus {\n outline: none;\n border-color: #1761a3;\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.2);\n }\n\n &::placeholder {\n color: rgb(148, 163, 184);\n }\n`;\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 = ({ onApply, onReset, activityOptions = DEFAULT_ACTIVITY_OPTIONS, statusOptions = DEFAULT_STATUS_OPTIONS, searchPlaceholder = \"Search...\", size = \"default\", testId }) => {\n const [open, setOpen] = useState4(false);\n const [values, setValues] = useState4({\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n });\n const handleChange = (name, value) => {\n setValues((prev) => ({ ...prev, [name]: value }));\n };\n const resetField = (name) => {\n if (name === \"date\") {\n setValues((prev) => ({\n ...prev,\n date: { start: null, end: null }\n }));\n } else {\n setValues((prev) => ({ ...prev, [name]: \"\" }));\n }\n };\n const resetAll = () => {\n const newValues = {\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n };\n setValues(newValues);\n if (onReset) {\n onReset();\n } else if (onApply) {\n onApply(newValues);\n }\n };\n const applyFilters = () => {\n if (onApply) onApply(values);\n setOpen(false);\n };\n return /* @__PURE__ */ jsxs6(FilterContainer, { \"data-testId\": testId, children: [\n /* @__PURE__ */ jsx8(FilterButton, { \"data-testid\": testId ? `${testId}-button` : void 0, onClick: () => setOpen((p) => !p), children: \"Filter\" }),\n open && /* @__PURE__ */ jsx8(FilterModalWrapper, { \"data-testid\": testId ? `${testId}-model` : void 0, children: /* @__PURE__ */ jsxs6(FilterCard, { children: [\n /* @__PURE__ */ jsxs6(FilterHeader, { children: [\n /* @__PURE__ */ jsx8(FilterTitle, { children: \"Add Filter\" }),\n /* @__PURE__ */ jsx8(CloseButton2, { \"data-testid\": testId ? `${testId}-close` : void 0, onClick: () => setOpen(false), children: /* @__PURE__ */ jsx8(X2, { className: \"w-4 h-4 text-slate-600\" }) })\n ] }),\n /* @__PURE__ */ jsx8(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ jsx8(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ jsxs6(SelectWrapper2, { children: [\n /* @__PURE__ */ jsx8(\n StyledSelect2,\n {\n value: values.activity,\n onChange: (e) => handleChange(\"activity\", e.target.value),\n \"aria-label\": \"Select Activity\",\n children: activityOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon2, { children: /* @__PURE__ */ jsx8(ChevronDown3, {}) })\n ] }),\n /* @__PURE__ */ jsxs6(SelectWrapper2, { children: [\n /* @__PURE__ */ jsx8(\n StyledSelect2,\n {\n value: values.status,\n onChange: (e) => handleChange(\"status\", e.target.value),\n \"aria-label\": \"Select Status\",\n children: statusOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon2, { children: /* @__PURE__ */ jsx8(ChevronDown3, {}) })\n ] }),\n /* @__PURE__ */ jsx8(\n SearchInput,\n {\n value: values.keyword,\n onChange: (e) => handleChange(\"keyword\", e.target.value),\n placeholder: searchPlaceholder\n }\n ),\n /* @__PURE__ */ jsxs6(FilterFooter, { children: [\n /* @__PURE__ */ jsx8(ResetAllButton, { \"data-testid\": testId ? `${testId}-resetall` : void 0, onClick: resetAll, type: \"button\", children: \"Reset all\" }),\n /* @__PURE__ */ jsx8(ApplyButton, { \"data-testid\": testId ? `${testId}-apply` : void 0, onClick: applyFilters, type: \"button\", children: \"Apply Now\" })\n ] })\n ] }) })\n ] });\n};\nvar Section = ({\n title,\n onReset,\n children\n}) => /* @__PURE__ */ jsxs6(SectionContainer, { children: [\n /* @__PURE__ */ jsxs6(SectionHeader, { children: [\n /* @__PURE__ */ jsx8(SectionTitle, { children: title }),\n /* @__PURE__ */ jsx8(ResetButton, { onClick: onReset, children: \"Reset\" })\n ] }),\n children\n] });\nvar MahatiActivity = ({\n value,\n onChange,\n options = DEFAULT_ACTIVITY_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Activity\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) {\n return;\n }\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment2, { children: [\n /* @__PURE__ */ jsxs6(\n CustomSelectTrigger,\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n open,\n size,\n children: [\n /* @__PURE__ */ jsx8(CustomSelectLabel, { children: selectedLabel }),\n /* @__PURE__ */ jsx8(CustomSelectIcon, { open, children: /* @__PURE__ */ jsx8(ChevronDown3, {}) })\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n CustomSelectDropdown,\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 },\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n CustomSelectOption,\n {\n \"data-testid\": testId ? `${testId}-option-${String(opt.value)}` : void 0,\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiStatus = ({\n value,\n onChange,\n options = DEFAULT_STATUS_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options?.find((o) => o.value == value)?.label || \"Select Status\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) {\n return;\n }\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment2, { children: [\n /* @__PURE__ */ jsxs6(\n CustomSelectTrigger,\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n open,\n size,\n children: [\n /* @__PURE__ */ jsx8(CustomSelectLabel, { children: selectedLabel }),\n /* @__PURE__ */ jsx8(CustomSelectIcon, { open, children: /* @__PURE__ */ jsx8(ChevronDown3, {}) })\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n CustomSelectDropdown,\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 },\n children: options?.map((opt) => /* @__PURE__ */ jsx8(\n CustomSelectOption,\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiSearch = ({\n value,\n onChange,\n placeholder = \"Search...\",\n size = \"medium\",\n testId\n}) => /* @__PURE__ */ jsx8(\n CustomInput,\n {\n \"data-testid\": testId,\n type: \"text\",\n value,\n placeholder,\n onChange: (e) => onChange(e.target.value),\n fieldSize: size\n }\n);\nFilter.displayName = \"Filter\";\nMahatiActivity.displayName = \"MahatiActivity\";\nMahatiStatus.displayName = \"MahatiStatus\";\nMahatiSearch.displayName = \"MahatiSearch\";\n\n// src/components/TabedInterface.tsx\nimport { useEffect as useEffect4, useState as useState5 } from \"react\";\nimport styled9 from \"@emotion/styled\";\nimport { css as css5, keyframes as keyframes3 } from \"@emotion/react\";\nimport { Fragment as Fragment3, jsx as jsx9, jsxs as jsxs7 } from \"@emotion/react/jsx-runtime\";\nvar fadeIn2 = keyframes3`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\nvar slideIn = keyframes3`\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n`;\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 Container = styled9.div`\n width: 100%;\n margin: 2.5rem auto;\n border-radius: 0.75rem;\n border: 1px solid;\n padding: 2rem;\n box-sizing: border-box;\n transition: all 0.3s ease;\n overflow: hidden;\n\n ${(props) => {\n switch (props.variant) {\n case \"dark\":\n return css5`\n background-color: #45484f;\n border-color: #334155;\n color: #f8fafc;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n `;\n case \"glass\":\n return css5`\n background-color: rgba(255, 255, 255, 0.1);\n border-color: rgba(255, 255, 255, 0.3);\n color: #0f172a;\n backdrop-filter: blur(24px);\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n `;\n default:\n return css5`\n background-color: white;\n border-color: #b8d1f3;\n color: #0f172a;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n `;\n }\n}}\n`;\nvar TabButton = styled9.button`\n position: relative;\n display: flex;\n align-items: center;\n padding: 0.5rem 1rem;\n font-size: 0.875rem;\n font-weight: 600;\n cursor: pointer;\n transition: all 0.3s ease;\n user-select: none;\n border: none;\n background: transparent;\n font-family: ${(props) => props.fontFamily};\n text-align: ${(props) => props.orientation === \"vertical\" ? \"left\" : \"center\"};\n\n svg {\n height: 18px;\n width: 18px;\n flex-shrink: 0;\n }\n\n ${(props) => props.isDragging && css5`\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.6);\n `}\n\n ${(props) => {\n const { variant, active } = props;\n switch (variant) {\n case \"underline\":\n return active ? css5`\n color: #1761A3;\n ` : css5`\n color: #475569;\n &:hover {\n color: #1761A3;\n background-color: rgba(248, 250, 252, 0.6);\n }\n `;\n case \"pill\":\n return css5`\n border-radius: 9999px;\n ${active ? css5`\n background-color: #1761A3;\n color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n ` : css5`\n background-color: transparent;\n color: #1761A3;\n &:hover {\n background-color: rgba(23, 97, 163, 0.1);\n }\n `}\n `;\n case \"outline\":\n return css5`\n border-radius: 0.5rem;\n border: 2px solid;\n ${active ? css5`\n border-color: #1761A3;\n background-color: #F3F8FF;\n color: #1761A3;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n ` : css5`\n border-color: transparent;\n color: #334155;\n &:hover {\n border-color: #cbd5e1;\n background-color: #f8fafc;\n }\n `}\n `;\n case \"filled\":\n return css5`\n border-radius: 0.5rem;\n ${active ? css5`\n background-color: #1761A3;\n color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n ` : css5`\n background-color: #EAF3FD;\n color: #1761A3;\n &:hover {\n background-color: #d3e4fb;\n }\n `}\n `;\n case \"gradient\":\n return css5`\n border-radius: 0.5rem;\n ${active ? css5`\n background: linear-gradient(to right, #1761A3, #4DAF83);\n color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n ` : css5`\n background-color: #F0F4F8;\n color: #1761A3;\n &:hover {\n background-color: #e1e8f0;\n }\n `}\n `;\n case \"shadow\":\n return css5`\n border-radius: 0.5rem;\n ${active ? css5`\n background-color: white;\n color: #1761A3;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n ` : css5`\n background-color: #F8FAFD;\n color: #475569;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n &:hover {\n background-color: white;\n }\n `}\n `;\n case \"glass\":\n return css5`\n border-radius: 0.5rem;\n border: 1px solid rgba(255, 255, 255, 0.3);\n backdrop-filter: blur(16px);\n ${active ? css5`\n background-color: rgba(23, 97, 163, 0.4);\n color: white;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n ` : css5`\n background-color: rgba(255, 255, 255, 0.2);\n color: #1761A3;\n &:hover {\n background-color: rgba(23, 97, 163, 0.5);\n color: white;\n }\n `}\n `;\n case \"dark\":\n return css5`\n border-radius: 0;\n ${active ? css5`\n color: #90cdf4;\n border-bottom: 4px solid #63b3ed;\n ` : css5`\n color: #cbd5e0;\n &:hover {\n color: #63b3ed;\n }\n `}\n `;\n default:\n return active ? css5`\n color: #1761A3;\n ` : css5`\n color: #334155;\n &:hover {\n color: #1761A3;\n background-color: #f8fafc;\n }\n `;\n }\n}}\n`;\nvar UnderlineIndicator = styled9.span`\n pointer-events: none;\n position: absolute;\n border-radius: 9999px;\n transition: transform 0.3s ease;\n\n ${(props) => {\n if (props.variant !== \"underline\") {\n return css5`display: none;`;\n }\n if (props.orientation === \"vertical\") {\n return css5`\n left: 0;\n top: 0;\n height: 100%;\n width: 3px;\n background: linear-gradient(to bottom, #1761A3, #4DAF83);\n transform-origin: top;\n transform: ${props.active ? \"scaleY(1)\" : \"scaleY(0)\"};\n `;\n }\n return css5`\n bottom: -2px;\n left: 0;\n height: 3px;\n width: 100%;\n background: linear-gradient(to right, #1761A3, #4DAF83);\n transform-origin: left;\n transform: ${props.active ? \"scaleX(1)\" : \"scaleX(0)\"};\n `;\n}}\n`;\nvar TabButtonInner = styled9.div`\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n`;\nvar TabButtonLeft = styled9.div`\n display: flex;\n min-width: 0;\n align-items: center;\n gap: 0.5rem;\n`;\nvar TabLabel = styled9.span`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\nvar CloseIcon = styled9.span`\n display: inline-flex;\n height: 1.5rem;\n width: 1.5rem;\n align-items: center;\n justify-content: center;\n border-radius: 9999px;\n font-size: 1rem;\n font-weight: 700;\n font-family: ${(props) => props.fontFamily};\n transition: all 0.2s ease;\n\n &:hover {\n background-color: #e2e8f0;\n color: #334155;\n }\n`;\nvar HorizontalHeader = styled9.div`\n margin-bottom: 1.25rem;\n display: flex;\n justify-content: space-around;\n\n @media (max-width: 600px) {\n flex-direction: column;\n align-items: center;\n }\n`;\nvar VerticalTabList = styled9.div`\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n border-bottom: 1px solid #e2e8f0;\n padding-bottom: 0.75rem;\n\n @media (min-width: 768px) {\n border-bottom: none;\n padding-bottom: 0;\n ${(props) => props.position === \"left\" ? css5`\n border-right: 1px solid #e2e8f0;\n padding-right: 1rem;\n ` : css5`\n border-left: 1px solid #e2e8f0;\n padding-left: 1rem;\n `}\n }\n`;\nvar VerticalGridLeft = styled9.div`\n display: grid;\n gap: 1.5rem;\n\n @media (min-width: 768px) {\n grid-template-columns: minmax(180px, 220px) 1fr;\n }\n`;\nvar VerticalGridRight = styled9.div`\n display: grid;\n gap: 1.5rem;\n\n @media (min-width: 768px) {\n grid-template-columns: 1fr minmax(180px, 220px);\n }\n`;\nvar ContentWrapper3 = styled9.div`\n position: relative;\n min-height: 180px;\n font-family: ${(props) => props.fontFamily};\n`;\nvar ContentPanel = styled9.div`\n transition: opacity 0.3s ease;\n \n ${(props) => props.active ? css5`\n position: relative;\n opacity: 1;\n animation: ${fadeIn2} 0.3s ease;\n ` : css5`\n pointer-events: none;\n position: absolute;\n inset: 0;\n opacity: 0;\n `}\n`;\nvar TabbedInterface = ({\n tabs,\n variant = \"underline\",\n defaultActiveTab = 0,\n onTabChange,\n draggableTabs = false,\n onReorderTabs,\n orientation = \"horizontal\",\n verticalPosition = \"left\",\n showTabCloseIconInHeader = false,\n tabCloseIconPosition = \"right\",\n tabCloseIconContent,\n onCloseTab,\n tabHeaderFont,\n tabContentFont,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) => {\n const [activeIndex, setActiveIndex] = useState5(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = useState5(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n useEffect4(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n useEffect4(() => {\n if (!tabs.length) {\n setActiveIndex(0);\n return;\n }\n setActiveIndex(\n (prev) => prev < 0 ? 0 : prev >= tabs.length ? tabs.length - 1 : prev\n );\n }, [tabs.length]);\n const handleTabClick = (index) => {\n setActiveIndex(index);\n onTabChange?.(index);\n };\n const handleDragStart = (index) => {\n if (!draggableTabs) return;\n setDraggingIndex(index);\n };\n const handleDragOver = (event) => {\n if (!draggableTabs) return;\n event.preventDefault();\n };\n const handleDrop = (index) => {\n if (!draggableTabs) return;\n if (draggingIndex === null) {\n setDraggingIndex(null);\n return;\n }\n const fromIndex = draggingIndex;\n const toIndex = index;\n if (fromIndex === toIndex) {\n setDraggingIndex(null);\n return;\n }\n setActiveIndex((prevActive) => {\n let active = prevActive;\n if (active === fromIndex) return toIndex;\n if (fromIndex < toIndex) {\n if (active > fromIndex && active <= toIndex) return active - 1;\n } else if (fromIndex > toIndex) {\n if (active >= toIndex && active < fromIndex) return active + 1;\n }\n return active;\n });\n onReorderTabs?.(fromIndex, toIndex);\n setDraggingIndex(null);\n };\n const handleDragEnd = () => {\n if (!draggableTabs) return;\n setDraggingIndex(null);\n };\n const headerButtons = /* @__PURE__ */ jsx9(Fragment3, { children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n const isDragging = draggableTabs && draggingIndex === index;\n const showClose = showTabCloseIconInHeader && !!onCloseTab;\n const closeIcon2 = showClose ? /* @__PURE__ */ jsx9(\n CloseIcon,\n {\n fontFamily: tabHeaderFontFamily,\n \"aria-label\": \"Close tab\",\n role: \"button\",\n onClick: (e) => {\n e.stopPropagation();\n onCloseTab?.(index);\n },\n children: effectiveCloseIconContent\n }\n ) : null;\n return /* @__PURE__ */ jsxs7(\n TabButton,\n {\n type: \"button\",\n onClick: () => handleTabClick(index),\n variant,\n active,\n isDragging,\n orientation,\n fontFamily: tabHeaderFontFamily,\n draggable: draggableTabs,\n onDragStart: () => handleDragStart(index),\n onDragOver: handleDragOver,\n onDrop: () => handleDrop(index),\n onDragEnd: handleDragEnd,\n children: [\n /* @__PURE__ */ jsxs7(TabButtonInner, { children: [\n /* @__PURE__ */ jsxs7(TabButtonLeft, { children: [\n tabCloseIconPosition === \"left\" && closeIcon2,\n tab.icon && /* @__PURE__ */ jsx9(\"span\", { children: tab.icon }),\n /* @__PURE__ */ jsx9(TabLabel, { children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon2\n ] }),\n /* @__PURE__ */ jsx9(\n UnderlineIndicator,\n {\n variant,\n active,\n orientation\n }\n )\n ]\n },\n index\n );\n }) });\n const content = /* @__PURE__ */ jsx9(ContentWrapper3, { fontFamily: tabContentFontFamily, children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n return /* @__PURE__ */ jsx9(ContentPanel, { active, children: tab.content }, index);\n }) });\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsxs7(Container, { \"data-testid\": testId, variant, children: [\n /* @__PURE__ */ jsx9(HorizontalHeader, { children: headerButtons }),\n content\n ] });\n }\n return /* @__PURE__ */ jsx9(Container, { \"data-testid\": testId, variant, children: verticalPosition === \"left\" ? /* @__PURE__ */ jsxs7(VerticalGridLeft, { children: [\n /* @__PURE__ */ jsx9(VerticalTabList, { position: \"left\", children: headerButtons }),\n /* @__PURE__ */ jsx9(\"div\", { children: content })\n ] }) : /* @__PURE__ */ jsxs7(VerticalGridRight, { children: [\n /* @__PURE__ */ jsx9(\"div\", { children: content }),\n /* @__PURE__ */ jsx9(VerticalTabList, { position: \"right\", children: headerButtons })\n ] }) });\n};\nTabbedInterface.displayName = \"TabbedInterface\";\n\n// src/components/Dropdown.tsx\nimport { useState as useState6, useRef as useRef3, useEffect as useEffect5 } from \"react\";\nimport styled10 from \"@emotion/styled\";\nimport { css as css6 } from \"@emotion/react\";\nimport { jsx as jsx10, jsxs as jsxs8 } from \"@emotion/react/jsx-runtime\";\nvar DropdownContainer = styled10.div`\n position: relative;\n width: 100%;\n max-width: 14rem; /* desktop cap */\n min-width: 0;\n box-sizing:border-box;\n`;\nvar DropdownButton = styled10.button`\n width: 100%;\n text-align: left;\n padding: 0.5rem 1rem;\n border-radius: 0.375rem;\n transition: all 0.2s ease;\n border: none;\n cursor: ${(props) => props.disabled ? \"not-allowed\" : \"pointer\"};\n opacity: ${(props) => props.disabled ? 0.5 : 1};\n font-size: 1rem;\n line-height: 1.5;\n\n ${(props) => {\n if (props.disabled) {\n return css6`\n background-color: #e5e7eb;\n color: #9ca3af;\n cursor: not-allowed;\n `;\n }\n switch (props.variant) {\n case \"basic\":\n return css6`\n background-color: #2563eb;\n color: white;\n &:hover {\n background-color: #1d4ed8;\n }\n `;\n case \"outline\":\n return css6`\n border: 1px solid #2563eb;\n background-color: transparent;\n color: #2563eb;\n &:hover {\n background-color: #eff6ff;\n }\n `;\n case \"pill\":\n return css6`\n background-color: #2563eb;\n color: white;\n border-radius: 9999px;\n &:hover {\n background-color: #1d4ed8;\n }\n `;\n case \"dark\":\n return css6`\n background-color: #1f2937;\n color: white;\n &:hover {\n background-color: #374151;\n }\n `;\n case \"underline\":\n return css6`\n border: none;\n border-bottom: 2px solid #3b82f6;\n background-color: transparent;\n color: #1d4ed8;\n border-radius: 0;\n &:hover {\n background-color: #eff6ff;\n }\n `;\n case \"shadow\":\n return css6`\n background-color: white;\n color: #374151;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n border: 1px solid #e5e7eb;\n &:hover {\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n }\n `;\n case \"glass\":\n return css6`\n background-color: rgba(255, 255, 255, 0.2);\n backdrop-filter: blur(12px);\n -webkit-backdrop-filter: blur(12px);\n color: white;\n border: 1px solid rgba(255, 255, 255, 0.4);\n &:hover {\n background-color: rgba(255, 255, 255, 0.3);\n }\n `;\n case \"gradient\":\n return css6`\n background: linear-gradient(to right, #3b82f6, #a855f7);\n color: white;\n &:hover {\n opacity: 0.9;\n }\n `;\n default:\n return css6`\n background-color: #2563eb;\n color: white;\n &:hover {\n background-color: #1d4ed8;\n }\n `;\n }\n}}\n`;\nvar DropdownMenu = styled10.div`\n position: absolute;\n margin-top: 0.5rem;\n width: 100%;\n background-color: white;\n border: 1px solid #e5e7eb;\n border-radius: 0.375rem;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n z-index: 20;\n max-height: 16rem;\n overflow-y: auto;\n\n /* Glass variant menu styling */\n ${(props) => props.variant === \"glass\" && css6`\n background-color: rgba(255, 255, 255, 0.9);\n backdrop-filter: blur(12px);\n -webkit-backdrop-filter: blur(12px);\n border: 1px solid rgba(255, 255, 255, 0.6);\n `}\n\n /* Scrollbar styling */\n &::-webkit-scrollbar {\n width: 8px;\n }\n\n &::-webkit-scrollbar-track {\n background: #f1f5f9;\n border-radius: 0.375rem;\n }\n\n &::-webkit-scrollbar-thumb {\n background: #cbd5e1;\n border-radius: 0.375rem;\n \n &:hover {\n background: #94a3b8;\n }\n }\n`;\nvar DropdownItem = styled10.div`\n padding: 0.5rem 1rem;\n cursor: pointer;\n color: #374151;\n transition: background-color 0.15s ease;\n\n &:hover {\n background-color: #f3f4f6;\n }\n\n &:first-of-type {\n border-top-left-radius: 0.375rem;\n border-top-right-radius: 0.375rem;\n }\n\n &:last-of-type {\n border-bottom-left-radius: 0.375rem;\n border-bottom-right-radius: 0.375rem;\n }\n\n /* Glass variant item hover */\n ${(props) => props.variant === \"glass\" && css6`\n &:hover {\n background-color: rgba(59, 130, 246, 0.1);\n }\n `}\n`;\nvar Dropdown = ({\n options,\n value,\n onSelect,\n variant = \"basic\",\n className = \"\",\n placeholder = \"Select an option\",\n disabled = false,\n testId\n}) => {\n const [open, setOpen] = useState6(false);\n const [internalSelected, setInternalSelected] = useState6(null);\n const dropdownRef = useRef3(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n useEffect5(() => {\n function handleClickOutside(event) {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setOpen(false);\n }\n }\n if (open) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [open]);\n const handleSelect = (option) => {\n if (disabled) return;\n if (value === void 0) setInternalSelected(option);\n onSelect(option.value);\n setOpen(false);\n };\n const handleButtonClick = () => {\n if (!disabled) {\n setOpen(!open);\n }\n };\n return /* @__PURE__ */ jsxs8(DropdownContainer, { ref: dropdownRef, className, \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx10(\n DropdownButton,\n {\n onClick: handleButtonClick,\n variant,\n disabled,\n type: \"button\",\n children: selectedOption?.key || placeholder\n }\n ),\n open && !disabled && /* @__PURE__ */ jsx10(DropdownMenu, { variant, children: options.map((opt) => /* @__PURE__ */ jsx10(\n DropdownItem,\n {\n onClick: () => handleSelect(opt),\n variant,\n children: opt.key\n },\n opt.value\n )) })\n ] });\n};\nDropdown.displayName = \"Dropdown\";\n\n// src/components/TableWithTab.tsx\nimport React10, { useEffect as useEffect6, useState as useState7 } from \"react\";\nimport { XMarkIcon } from \"@heroicons/react/24/outline\";\nimport styled11 from \"@emotion/styled\";\nimport { css as css7 } from \"@emotion/react\";\nimport { Fragment as Fragment4, jsx as jsx11, jsxs as jsxs9 } from \"@emotion/react/jsx-runtime\";\nvar getFontFamily2 = (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 Container2 = styled11.div`\n width: 100%;\n border-radius: 0.75rem;\n border: 1px solid #e2e8f0;\n background-color: white;\n padding: 1.5rem;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n box-sizing: border-box;\n`;\nvar Header = styled11.header`\n margin-bottom: 1rem;\n`;\nvar Title = styled11.h2`\n font-size: 1.25rem;\n font-weight: 600;\n color: #0f172a;\n font-family: ${(props) => props.fontFamily};\n`;\nvar Description = styled11.p`\n margin-top: 0.25rem;\n font-size: 0.875rem;\n color: #64748b;\n font-family: ${(props) => props.fontFamily};\n`;\nvar TableWrapper = styled11.div`\n overflow-x: auto;\n width:100%;\n border-radius: 0.75rem;\n border: 1px solid #e2e8f0;\n\n`;\nvar TableInner = styled11.div`\nmin-width:900px;\n\n`;\nvar StyledTable = styled11.table`\n min-width: 100%;\n border-collapse: collapse;\n font-size: 0.875rem;\n`;\nvar TableHead = styled11.thead`\n background: linear-gradient(to right, #1761A3, #4DAF83);\n`;\nvar TableHeadRow = styled11.tr``;\nvar TableHeadCell = styled11.th`\n padding: 0.5rem 0.75rem;\n text-align: left;\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: white;\n`;\nvar TableBody = styled11.tbody`\n background-color: white;\n`;\nvar TableRow = styled11.tr`\n cursor: pointer;\n border-bottom: 1px solid #f1f5f9;\n transition: background-color 0.2s ease;\n\n &:hover {\n background-color: #f8fafc;\n }\n\n ${(props) => props.selected && css7`\n background-color: rgba(219, 234, 254, 0.7);\n `}\n`;\nvar TableCell = styled11.td`\n padding: 0.5rem 0.75rem;\n vertical-align: middle;\n color: #1e293b;\n`;\nvar EmptyRow = styled11.tr``;\nvar EmptyCell = styled11.td`\n padding: 1.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n color: #64748b;\n`;\nvar TabsSection = styled11.div`\n margin-top: 1.5rem;\n`;\nvar TabsHeader = styled11.div`\n margin-bottom: 0.75rem;\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\nvar TabsTitle = styled11.h3`\n font-size: 0.875rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: #64748b;\n`;\nvar TabsHint = styled11.p`\n font-size: 0.75rem;\n color: #64748b;\n`;\nvar TabContentWrapper = styled11.div`\n display: flex;\n flex-direction: column;\n gap: 1rem;\n`;\nvar CloseButtonWrapper = styled11.div`\n display: flex;\n justify-content: flex-end;\n`;\nvar CloseButton3 = styled11.button`\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n border-radius: 9999px;\n background-color: #f1f5f9;\n padding: 0.25rem 0.75rem;\n font-size: 0.75rem;\n font-weight: 500;\n color: #334155;\n border: none;\n cursor: pointer;\n transition: background-color 0.2s ease;\n\n &:hover {\n background-color: #e2e8f0;\n }\n\n svg {\n height: 0.75rem;\n width: 0.75rem;\n }\n`;\nvar DefaultContentContainer = styled11.div`\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n`;\nvar TabsPanel = styled11.div`\n flex-shrink: 0;\n width: 360px;\n\n @media (max-width: 768px) {\n width: 100%;\n }\n`;\nvar DetailRow = styled11.div`\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n border-radius: 0.5rem;\n background-color: white;\n padding: 0.75rem;\n font-size: 0.875rem;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n\n @media (min-width: 640px) {\n flex-direction: row;\n align-items: center;\n }\n`;\nvar DetailLabel = styled11.span`\n width: 100%;\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: #64748b;\n\n @media (min-width: 640px) {\n width: 12rem;\n }\n`;\nvar DetailValue = styled11.span`\n flex: 1;\n word-break: break-words;\n color: #1e293b;\n`;\nvar EmptyValue = styled11.span`\n color: #cbd5e1;\n`;\nfunction renderCellValue(value) {\n if (React10.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ jsx11(EmptyValue, { children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => React10.isValidElement(v))) {\n return /* @__PURE__ */ jsx11(Fragment4, { children: value });\n }\n return value.join(\", \");\n }\n if (value instanceof Date) return value.toLocaleString();\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (typeof value === \"number\") return value.toString();\n if (typeof value === \"object\") return JSON.stringify(value);\n return String(value);\n}\nfunction DefaultTabContent({\n headers,\n row\n}) {\n return /* @__PURE__ */ jsx11(DefaultContentContainer, { children: headers.map((h) => /* @__PURE__ */ jsxs9(DetailRow, { children: [\n /* @__PURE__ */ jsx11(DetailLabel, { children: h.label }),\n /* @__PURE__ */ jsx11(DetailValue, { children: renderCellValue(row[h.key]) })\n ] }, h.key)) });\n}\nfunction TableWithTab({\n tableProps,\n tabProps,\n rearrange = false,\n getRowId,\n renderTabContent,\n onRowOpenInTab,\n title,\n description,\n tabLabelKey,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) {\n const { headers, data } = tableProps;\n const [tabs, setTabs] = useState7([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n useEffect6(() => {\n if (!tabs.length) return;\n setTabs(\n (prev) => prev.map((t) => {\n const row = t.row;\n const effectiveKey = tabLabelKey ?? headers[0]?.key;\n const rawLabel = effectiveKey && row[effectiveKey] !== void 0 ? row[effectiveKey] : 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 if (fromIndex < 0 || fromIndex >= prev.length || toIndex < 0 || toIndex >= prev.length) {\n return prev;\n }\n if (fromIndex === toIndex) return prev;\n const next = [...prev];\n const [moved] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, moved);\n return next;\n });\n };\n const tabbedInterfaceTabs = tabs.map((t) => ({\n label: t.label,\n content: /* @__PURE__ */ jsxs9(TabContentWrapper, { children: [\n /* @__PURE__ */ jsx11(CloseButtonWrapper, { children: /* @__PURE__ */ jsxs9(\n CloseButton3,\n {\n type: \"button\",\n onClick: () => handleCloseTab(t.id),\n children: [\n /* @__PURE__ */ jsx11(XMarkIcon, {}),\n /* @__PURE__ */ jsx11(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ jsx11(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ jsxs9(Container2, { \"data-testid\": testId, children: [\n (title || description) && /* @__PURE__ */ jsxs9(Header, { children: [\n title && /* @__PURE__ */ jsx11(Title, { fontFamily: sectionTitleFontFamily, children: title }),\n description && /* @__PURE__ */ jsx11(Description, { fontFamily: sectionDescriptionFontFamily, children: description })\n ] }),\n /* @__PURE__ */ jsx11(TableWrapper, { children: /* @__PURE__ */ jsx11(TableInner, { children: /* @__PURE__ */ jsxs9(StyledTable, { children: [\n /* @__PURE__ */ jsx11(TableHead, { children: /* @__PURE__ */ jsx11(TableHeadRow, { children: headers.map((header) => /* @__PURE__ */ jsx11(TableHeadCell, { children: header.label }, header.key)) }) }),\n /* @__PURE__ */ jsxs9(TableBody, { children: [\n data.length === 0 && /* @__PURE__ */ jsx11(EmptyRow, { children: /* @__PURE__ */ jsx11(EmptyCell, { colSpan: headers.length, children: \"No records to display.\" }) }),\n data.map((row, index) => {\n const selected = isRowSelected(row, index);\n const rowId = getRowId ? getRowId(row, index) : index;\n return /* @__PURE__ */ jsx11(\n TableRow,\n {\n onClick: () => handleRowClick(row, index),\n selected,\n children: headers.map((header) => /* @__PURE__ */ jsx11(TableCell, { children: renderCellValue(row[header.key]) }, header.key))\n },\n String(rowId)\n );\n })\n ] })\n ] }) }) }),\n tabs.length > 0 && /* @__PURE__ */ jsxs9(TabsSection, { children: [\n /* @__PURE__ */ jsxs9(TabsHeader, { children: [\n /* @__PURE__ */ jsxs9(TabsTitle, { children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ jsx11(TabsHint, { children: \"Drag the tab headers to change their order. Clicking a row again will close its tab.\" })\n ] }),\n /* @__PURE__ */ jsx11(\n TabbedInterface,\n {\n ...tabProps,\n tabs: tabbedInterfaceTabs,\n draggableTabs: rearrange,\n onReorderTabs: rearrange ? handleReorderTabs : void 0,\n showTabCloseIconInHeader: effectiveShowHeaderClose,\n onCloseTab: (index) => {\n const target = tabs[index];\n if (!target) return;\n handleCloseTab(target.id);\n }\n }\n )\n ] })\n ] });\n}\nTableWithTab.displayName = \"TableWithTab\";\n\n// src/components/Table.tsx\nimport React11, { useState as useState8 } from \"react\";\nimport {\n ArrowDownOnSquareIcon,\n ArrowPathIcon,\n XMarkIcon as XMarkIcon2\n} from \"@heroicons/react/24/outline\";\nimport styled12 from \"@emotion/styled\";\nimport { css as css8 } from \"@emotion/react\";\nimport { Fragment as Fragment5, jsx as jsx12, jsxs as jsxs10 } from \"@emotion/react/jsx-runtime\";\nvar TableContainer = styled12.div`\n margin-top: 0.25rem;\n overflow-x: auto;\n overflow-y:hidden;\n border-radius: 0.75rem;\n border: 1px solid #1761A3;\n background-color: white;\n webkit-overflow-scrolling:touch;\n`;\nvar TableHead2 = styled12.thead`\n background: linear-gradient(to right, #1e73be, #28a97d);\n`;\nvar TableHeaderRow = styled12.tr``;\nvar TableHeader = styled12.th`\n height: 50px;\n padding: 0.5rem 0.75rem;\n text-align: left;\n font-size: 0.875rem;\n font-weight: 700;\n color: white;\n \n ${(props) => props.isFirst && css8`\n border-top-left-radius: 0.75rem;\n `}\n \n ${(props) => props.isLast && css8`\n border-top-right-radius: 0.75rem;\n `}\n`;\nvar TableBody2 = styled12.tbody``;\nvar TableRow2 = styled12.tr`\n height: 57px;\n border-bottom: 1px solid #e2e8f0;\n font-size: 0.875rem;\n color: #0f172a;\n \n &:nth-of-type(even) {\n background-color: #f8fafc;\n }\n \n &:hover {\n background-color: #f1f5f9;\n }\n \n ${(props) => props.isExpandable && css8`\n cursor: pointer;\n transition: background-color 0.2s ease;\n `}\n \n ${(props) => props.isExpanded && css8`\n background-color: rgba(30, 190, 145, 0.38) !important;\n `}\n \n ${(props) => props.highlightColor && css8`\n background-color: ${props.highlightColor};\n `}\n`;\nvar StyledTable2 = styled12.table`\n width: 100%;\n min-width: 900px; \n border-collapse: collapse;\n table-layout: fixed;\n`;\nvar TableCell2 = styled12.td`\n padding: 0.5rem 0.75rem;\n vertical-align: middle;\n white-space: nowrap; \n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 1px; \n word-break:break-word\n`;\nvar TruncatedText = styled12.div`\n font-size: 0.875rem;\n line-height: 1.625;\n color: #475569;\n word-break: break-word;\n white-space: normal;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n`;\nvar SummaryRow = styled12.tr`\n border-bottom: 1px solid #bfdbfe;\n`;\nvar SummaryCell = styled12.td`\n background: linear-gradient(to right, rgba(239, 246, 255, 0.5), rgba(219, 234, 254, 0.5));\n padding: 1rem 0.75rem;\n`;\nvar SummaryContent = styled12.div`\n display: flex;\n align-items: start;\n gap: 0.75rem;\n`;\nvar SummaryInner = styled12.div`\n flex: 1;\n`;\nvar SummaryHeader = styled12.div`\n margin-bottom: 0.5rem;\n display: flex;\n align-items: start;\n justify-content: space-between;\n`;\nvar SummaryTitle = styled12.h4`\n font-size: 0.875rem;\n font-weight: 600;\n color: #1e293b;\n margin: 0;\n`;\nvar SummaryCloseButton = styled12.button`\n margin-left: 0.5rem;\n height: 1.5rem;\n width: 1.5rem;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 9999px;\n background: transparent;\n border: none;\n cursor: pointer;\n transition: background-color 0.2s ease;\n \n &:hover {\n background-color: #bfdbfe;\n }\n`;\nvar SummaryText = styled12.p`\n font-size: 0.875rem;\n line-height: 1.625;\n color: #475569;\n margin: 0;\n`;\nvar EmptyRow2 = styled12.tr``;\nvar EmptyCell2 = styled12.td`\n padding: 1.5rem 1rem;\n text-align: center;\n color: #64748b;\n`;\nvar EmptyContent = styled12.div`\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 1rem;\n`;\nvar ActionsCell = styled12.td`\n width: 96px; /* or 120px */\n min-width: 96px;\n text-align: center;\n`;\nvar ControlsWrapper = styled12.div`\n margin-bottom: 0.75rem;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 0.75rem;\n`;\nvar SearchControls = styled12.div`\n display: flex;\n align-items: center;\n gap: 0.5rem;\n`;\nvar SearchInputWrapper = styled12.div`\n position: relative;\n display: flex;\n align-items: center;\n`;\nvar SearchInput2 = styled12.input`\n width: 14rem;\n border-radius: 0.5rem;\n border: 1px solid transparent;\n background-color: white;\n padding: 0.5rem 0.75rem;\n padding-right: 2rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: #1761A3;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n outline: none;\n ring: 1px solid transparent;\n transition: all 0.2s ease;\n \n &:focus {\n border-color: transparent;\n ring: 2px solid #10b981;\n }\n \n &::placeholder {\n color: #94a3b8;\n }\n`;\nvar ClearButton = styled12.button`\n position: absolute;\n right: 0.5rem;\n height: 1.5rem;\n width: 1.5rem;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 9999px;\n background: transparent;\n border: none;\n color: #94a3b8;\n cursor: pointer;\n transition: all 0.2s ease;\n \n &:hover {\n background-color: #f1f5f9;\n color: #334155;\n }\n`;\nvar SearchModeSelect = styled12.select`\n border-radius: 0.5rem;\n border: 1px solid transparent;\n background-color: white;\n padding: 0.5rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: #334155;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n outline: none;\n ring: 1px solid transparent;\n transition: all 0.2s ease;\n cursor: pointer;\n \n &:hover {\n background-color: #f8fafc;\n }\n \n &:focus {\n border-color: transparent;\n ring: 2px solid #10b981;\n }\n`;\nvar DownloadButtons = styled12.div`\n margin-top: 0.25rem;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n`;\nvar DownloadButton = styled12.button`\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n border-radius: 0.375rem;\n padding: 0.5rem 0.75rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: white;\n background: linear-gradient(to right, #1e73be, #28a97d);\n border: none;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n cursor: pointer;\n transition: opacity 0.2s ease;\n \n &:hover {\n opacity: 0.9;\n }\n`;\nvar PaginationWrapper = styled12.div`\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n display: flex;\n width: 100%;\n \n ${(props) => {\n if (props.align.includes(\"left\")) return css8`justify-content: flex-start;`;\n if (props.align.includes(\"right\")) return css8`justify-content: flex-end;`;\n return css8`justify-content: center;`;\n}}\n`;\nvar PaginationControls = styled12.div`\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n`;\nvar PaginationButton = styled12.button`\n display: inline-flex;\n align-items: center;\n border-radius: 0.375rem;\n padding: 0.25rem 0.75rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: white;\n background: ${(props) => props.isActive || props.disabled ? \"#ccc\" : \"linear-gradient(to right, #1e73be, #28a97d)\"};\n border: none;\n cursor: ${(props) => props.disabled ? \"not-allowed\" : \"pointer\"};\n opacity: ${(props) => props.disabled ? 0.5 : 1};\n transition: opacity 0.2s ease;\n \n &:hover:not(:disabled) {\n opacity: 0.9;\n }\n`;\nvar PaginationEllipsis = styled12.span`\n padding: 0 0.25rem;\n font-size: 0.875rem;\n color: #64748b;\n`;\nvar LimitSelect = styled12.select`\n margin-left: 0.5rem;\n border-radius: 0.375rem;\n border: 1px solid #cbd5e1;\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n color: #334155;\n cursor: pointer;\n \n &:focus {\n outline: none;\n ring: 2px solid #10b981;\n }\n`;\nvar PaginationInfo = styled12.span`\n margin-left: 0.5rem;\n font-size: 0.75rem;\n color: #475569;\n`;\nvar ResetButton2 = styled12.button`\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n border-radius: 0.375rem;\n padding: 0.5rem 0.75rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: white;\n background: linear-gradient(to right, #1e73be, #28a97d);\n border: none;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n cursor: pointer;\n transition: opacity 0.2s ease;\n \n &:hover {\n opacity: 0.9;\n }\n`;\nvar Table = ({\n headers,\n data,\n page,\n setPage,\n limit,\n setLimit,\n totalCount,\n highlightRowColor,\n actions,\n paginationRequired,\n paginationPosition = \"bottom-center\",\n onDownloadPDF,\n onDownloadExcel,\n searchable = false,\n searchTerm = \"\",\n onResetSearch,\n onSearch,\n searchModeOptions = [\"includes\", \"startsWith\"],\n summary,\n summaryKey = \"summary\",\n summaryTitleField = \"name\",\n summaryColumn = false,\n summaryColumnKey,\n summaryColumnMaxLength = 120,\n textWrapColumns,\n textWrapMaxLength = 120,\n textWrapColumnMaxLengths,\n tableTestId\n}) => {\n const [searchMode, setSearchMode] = useState8(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = useState8(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = useState8(\n /* @__PURE__ */ new Set()\n );\n const isPaginated = paginationRequired;\n const handleChange = (e) => {\n onSearch?.(e.target.value, searchMode);\n };\n const totalPages = isPaginated ? Math.max(1, Math.ceil((totalCount || 0) / (limit || 1))) : 0;\n const currentPage = isPaginated ? typeof page === \"number\" && page > 0 ? page : 1 : 1;\n const goToPage = (p) => {\n if (!isPaginated) return;\n const clamped = Math.max(1, Math.min(totalPages, p));\n setPage?.(clamped);\n };\n const renderPageNumbers = () => {\n if (!isPaginated || totalPages <= 1) return null;\n const pages = [];\n const siblings = 1;\n pages.push(\n /* @__PURE__ */ jsx12(\n PaginationButton,\n {\n onClick: () => goToPage(1),\n disabled: currentPage === 1,\n isActive: currentPage === 1,\n children: \"1\"\n },\n 1\n )\n );\n if (currentPage > siblings + 2) {\n pages.push(\n /* @__PURE__ */ jsx12(PaginationEllipsis, { children: \"...\" }, \"start-ellipsis\")\n );\n }\n const start = Math.max(2, currentPage - siblings);\n const end = Math.min(totalPages - 1, currentPage + siblings);\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ jsx12(\n PaginationButton,\n {\n onClick: () => goToPage(i),\n disabled: currentPage === i,\n isActive: currentPage === i,\n children: i\n },\n i\n )\n );\n }\n if (currentPage < totalPages - siblings - 1) {\n pages.push(\n /* @__PURE__ */ jsx12(PaginationEllipsis, { children: \"...\" }, \"end-ellipsis\")\n );\n }\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ jsx12(\n PaginationButton,\n {\n onClick: () => goToPage(totalPages),\n disabled: currentPage === totalPages,\n isActive: currentPage === totalPages,\n children: totalPages\n },\n totalPages\n )\n );\n }\n return pages;\n };\n const renderPagination = () => {\n if (!isPaginated) return null;\n const align = paginationPosition.includes(\"left\") ? \"left\" : paginationPosition.includes(\"right\") ? \"right\" : \"center\";\n return /* @__PURE__ */ jsx12(PaginationWrapper, { align, children: /* @__PURE__ */ jsxs10(PaginationControls, { children: [\n /* @__PURE__ */ jsx12(\n PaginationButton,\n {\n onClick: () => goToPage(currentPage - 1),\n disabled: currentPage === 1,\n children: \"Previous\"\n }\n ),\n renderPageNumbers(),\n /* @__PURE__ */ jsx12(\n PaginationButton,\n {\n onClick: () => goToPage(currentPage + 1),\n disabled: currentPage === totalPages,\n children: \"Next\"\n }\n ),\n /* @__PURE__ */ jsx12(\n LimitSelect,\n {\n value: limit,\n onChange: (e) => {\n setPage?.(1);\n setLimit?.(Number(e.target.value));\n },\n children: [5, 10, 15].map((size) => /* @__PURE__ */ jsx12(\"option\", { value: size, children: size }, size))\n }\n ),\n /* @__PURE__ */ jsxs10(PaginationInfo, { children: [\n \"Page \",\n currentPage,\n \" of \",\n totalPages,\n \" (Total: \",\n totalCount,\n \" items)\"\n ] })\n ] }) });\n };\n const summaryColKeyToUse = summaryColumnKey || summaryKey;\n return /* @__PURE__ */ jsxs10(Fragment5, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ jsxs10(ControlsWrapper, { children: [\n searchable && /* @__PURE__ */ jsxs10(SearchControls, { children: [\n /* @__PURE__ */ jsxs10(SearchInputWrapper, { children: [\n /* @__PURE__ */ jsx12(\n SearchInput2,\n {\n type: \"text\",\n placeholder: \"Search...\",\n value: searchTerm,\n onChange: handleChange\n }\n ),\n searchTerm && /* @__PURE__ */ jsx12(\n ClearButton,\n {\n onClick: onResetSearch,\n \"aria-label\": \"Clear search\",\n children: /* @__PURE__ */ jsx12(XMarkIcon2, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx12(\n SearchModeSelect,\n {\n value: searchMode,\n onChange: (e) => setSearchMode(e.target.value),\n children: searchModeOptions.map((mode) => /* @__PURE__ */ jsx12(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ jsxs10(DownloadButtons, { children: [\n onDownloadPDF && /* @__PURE__ */ jsx12(DownloadButton, { onClick: () => onDownloadPDF(data, headers), children: /* @__PURE__ */ jsx12(ArrowDownOnSquareIcon, { className: \"h-5 w-5\" }) }),\n onDownloadExcel && /* @__PURE__ */ jsxs10(DownloadButton, { onClick: () => onDownloadExcel(data, headers), children: [\n /* @__PURE__ */ jsx12(ArrowDownOnSquareIcon, { className: \"h-5 w-5\" }),\n /* @__PURE__ */ jsx12(\"span\", { children: \"Excel\" })\n ] })\n ] })\n ] }),\n paginationPosition.startsWith(\"top\") && data.length > 0 && renderPagination(),\n /* @__PURE__ */ jsx12(TableContainer, { \"data-testid\": tableTestId, children: /* @__PURE__ */ jsxs10(StyledTable2, { children: [\n /* @__PURE__ */ jsx12(TableHead2, { children: /* @__PURE__ */ jsxs10(TableHeaderRow, { children: [\n headers.map((header, idx) => /* @__PURE__ */ jsx12(\n TableHeader,\n {\n isFirst: idx === 0,\n isLast: !actions && idx === headers.length - 1,\n children: header.label\n },\n idx\n )),\n actions && /* @__PURE__ */ jsx12(TableHeader, { isLast: true, children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ jsx12(TableBody2, { children: data.length > 0 ? data.map((row, rowIndex) => {\n const isExpandable = !!summary;\n const isExpanded = summary === \"single\" ? expandedRowIndex === rowIndex : summary === \"multi\" ? expandedRowIndexes.has(rowIndex) : false;\n const handleRowClick = () => {\n if (!summary) return;\n if (summary === \"single\") {\n setExpandedRowIndex(\n (prev) => prev === rowIndex ? null : rowIndex\n );\n } else if (summary === \"multi\") {\n setExpandedRowIndexes((prev) => {\n const next = new Set(prev);\n if (next.has(rowIndex)) {\n next.delete(rowIndex);\n } else {\n next.add(rowIndex);\n }\n return next;\n });\n }\n };\n const handleCloseDrawer = (e) => {\n e.stopPropagation();\n if (summary === \"single\") {\n setExpandedRowIndex(null);\n } else if (summary === \"multi\") {\n setExpandedRowIndexes((prev) => {\n const next = new Set(prev);\n next.delete(rowIndex);\n return next;\n });\n }\n };\n const titleValue = row[summaryTitleField];\n const summaryValue = row[summaryKey];\n return /* @__PURE__ */ jsxs10(React11.Fragment, { children: [\n /* @__PURE__ */ jsxs10(\n TableRow2,\n {\n onClick: isExpandable ? handleRowClick : void 0,\n isExpandable,\n isExpanded,\n highlightColor: highlightRowColor,\n children: [\n headers.map((header, cellIdx) => /* @__PURE__ */ jsx12(TableCell2, { children: (() => {\n const value = row[header.key];\n if (summaryColumn && header.key === summaryColKeyToUse) {\n if (value == null) return \"-\";\n if (React11.isValidElement(value)) {\n return /* @__PURE__ */ jsx12(TruncatedText, { children: value });\n }\n let fullText;\n if (typeof value === \"string\") {\n fullText = value;\n } else if (typeof value === \"object\") {\n fullText = JSON.stringify(value);\n } else {\n fullText = String(value);\n }\n const summaryOverride = textWrapColumnMaxLengths && textWrapColumnMaxLengths[summaryColKeyToUse];\n const maxLen = summaryOverride ?? summaryColumnMaxLength;\n const truncated = fullText.length <= maxLen ? fullText : fullText.substring(0, maxLen).trim() + \"...\";\n return /* @__PURE__ */ jsx12(TruncatedText, { title: fullText, children: truncated });\n }\n if (textWrapColumns && textWrapColumns.includes(header.key)) {\n if (value == null) return \"-\";\n if (React11.isValidElement(value)) {\n return /* @__PURE__ */ jsx12(TruncatedText, { children: value });\n }\n let fullText;\n if (typeof value === \"string\") {\n fullText = value;\n } else if (typeof value === \"object\") {\n fullText = JSON.stringify(value);\n } else {\n fullText = String(value);\n }\n const perColMax = textWrapColumnMaxLengths && textWrapColumnMaxLengths[header.key];\n const maxLen = perColMax ?? textWrapMaxLength;\n const truncated = fullText.length <= maxLen ? fullText : fullText.substring(0, maxLen).trim() + \"...\";\n return /* @__PURE__ */ jsx12(TruncatedText, { title: fullText, children: truncated });\n }\n if (React11.isValidElement(value)) return value;\n if (typeof value === \"function\") {\n try {\n const result = value();\n if (React11.isValidElement(result)) return result;\n } catch (e) {\n console.warn(\n \"Error executing function in table cell:\",\n e\n );\n }\n }\n if (typeof value === \"string\" && value.trim().startsWith(\"<\") && value.trim().endsWith(\">\")) {\n return /* @__PURE__ */ jsx12(\n \"span\",\n {\n dangerouslySetInnerHTML: { __html: value }\n }\n );\n }\n if (Array.isArray(value)) {\n if (value.some((item) => React11.isValidElement(item))) {\n return /* @__PURE__ */ jsx12(Fragment5, { children: value });\n }\n return value.join(\", \");\n }\n if (value instanceof Date)\n return value.toLocaleString();\n if (typeof value === \"boolean\")\n return value ? \"Yes\" : \"No\";\n if (value === null || value === void 0)\n return \"-\";\n if (typeof value === \"number\")\n return value.toString();\n if (typeof value === \"object\")\n return JSON.stringify(value);\n return String(value);\n })() }, cellIdx)),\n actions && /* @__PURE__ */ jsx12(TableCell2, { children: actions(row) })\n ]\n }\n ),\n isExpandable && isExpanded && /* @__PURE__ */ jsx12(SummaryRow, { children: /* @__PURE__ */ jsx12(SummaryCell, { colSpan: headers.length + (actions ? 1 : 0), children: /* @__PURE__ */ jsx12(SummaryContent, { children: /* @__PURE__ */ jsxs10(SummaryInner, { children: [\n /* @__PURE__ */ jsxs10(SummaryHeader, { children: [\n /* @__PURE__ */ jsx12(SummaryTitle, { children: titleValue ? `Summary for ${String(titleValue)}` : \"Summary\" }),\n /* @__PURE__ */ jsx12(\n SummaryCloseButton,\n {\n onClick: handleCloseDrawer,\n \"aria-label\": \"Close summary\",\n children: /* @__PURE__ */ jsx12(XMarkIcon2, { className: \"h-4 w-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx12(SummaryText, { children: summaryValue == null ? \"-\" : React11.isValidElement(summaryValue) ? summaryValue : typeof summaryValue === \"string\" ? summaryValue : typeof summaryValue === \"object\" ? JSON.stringify(summaryValue) : String(summaryValue) })\n ] }) }) }) })\n ] }, rowIndex);\n }) : /* @__PURE__ */ jsx12(EmptyRow2, { children: /* @__PURE__ */ jsx12(EmptyCell2, { colSpan: headers.length + (actions ? 1 : 0), children: /* @__PURE__ */ jsxs10(EmptyContent, { children: [\n /* @__PURE__ */ jsx12(\"span\", { children: \"No records found.\" }),\n onResetSearch && /* @__PURE__ */ jsxs10(ResetButton2, { onClick: onResetSearch, children: [\n /* @__PURE__ */ jsx12(\"span\", { children: \"Reset\" }),\n /* @__PURE__ */ jsx12(ArrowPathIcon, { className: \"h-5 w-5\" })\n ] })\n ] }) }) }) })\n ] }) }),\n paginationPosition.startsWith(\"bottom\") && data.length > 0 && renderPagination()\n ] });\n};\nTable.displayName = \"Table\";\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { useMemo as useMemo2, useState as useState10 } from \"react\";\nimport styled20 from \"@emotion/styled\";\n\n// src/components/ChartDropdown.tsx\nimport { useEffect as useEffect7, useMemo, useRef as useRef4, useState as useState9 } from \"react\";\nimport styled13 from \"@emotion/styled\";\nimport { jsx as jsx13, jsxs as jsxs11 } from \"@emotion/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 DropdownContainer2 = styled13.div`\n position: relative;\n display: inline-block;\n`;\nvar DropdownLabel = styled13.label`\n display: block;\n margin-bottom: 4px;\n font-size: 12px;\n font-weight: 500;\n color: rgba(55, 65, 81, 1);\n`;\nvar DropdownTrigger = styled13.button`\n cursor: pointer;\n outline: none;\n transition: all 0.2s;\n\n ${(props) => {\n switch (props.$variant) {\n case \"mahatiFilter\":\n return `\n width: 130px;\n height: 30px;\n border-radius: 4px;\n border: 1px solid rgba(210, 210, 210, 1);\n background: linear-gradient(90deg, rgba(23, 97, 163, 0.07) 0%, rgba(77, 175, 131, 0.07) 100%);\n padding: 0 8px;\n font-size: 12px;\n color: rgba(17, 24, 39, 1);\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n\n &:hover {\n opacity: 0.95;\n }\n\n &:focus {\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.25);\n }\n `;\n case \"basic\":\n return `\n background: rgba(37, 99, 235, 1);\n color: white;\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(29, 78, 216, 1);\n }\n `;\n case \"outline\":\n return `\n border: 1px solid rgba(37, 99, 235, 1);\n color: rgba(37, 99, 235, 1);\n background: transparent;\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(239, 246, 255, 1);\n }\n `;\n case \"pill\":\n return `\n background: rgba(37, 99, 235, 1);\n color: white;\n border-radius: 9999px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(29, 78, 216, 1);\n }\n `;\n case \"dark\":\n return `\n background: rgba(31, 41, 55, 1);\n color: white;\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(55, 65, 81, 1);\n }\n `;\n case \"underline\":\n return `\n border-bottom: 2px solid rgba(59, 130, 246, 1);\n background: transparent;\n color: rgba(29, 78, 216, 1);\n border-radius: 0;\n padding: 8px;\n\n &:hover {\n background: rgba(239, 246, 255, 1);\n }\n `;\n case \"shadow\":\n return `\n background: white;\n color: rgba(55, 65, 81, 1);\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n border: 1px solid rgba(229, 231, 235, 1);\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n }\n `;\n case \"glass\":\n return `\n background: rgba(255, 255, 255, 0.2);\n backdrop-filter: blur(12px);\n color: white;\n border: 1px solid rgba(255, 255, 255, 0.4);\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(255, 255, 255, 0.3);\n }\n `;\n case \"gradient\":\n return `\n background: linear-gradient(to right, rgba(59, 130, 246, 1), rgba(168, 85, 247, 1));\n color: white;\n border: none;\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n opacity: 0.9;\n }\n `;\n default:\n return `\n background: rgba(37, 99, 235, 1);\n color: white;\n border-radius: 6px;\n padding: 8px 16px;\n\n &:hover {\n background: rgba(29, 78, 216, 1);\n }\n `;\n }\n}}\n`;\nvar DropdownMenu2 = styled13.div`\n position: absolute;\n margin-top: 4px;\n z-index: 20;\n background: white;\n border-radius: 6px;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n\n ${(props) => {\n if (props.$variant === \"mahatiFilter\") {\n return `\n width: 130px;\n border-radius: 4px;\n border: 1px solid rgba(210, 210, 210, 1);\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n `;\n }\n return `\n min-width: 160px;\n border: 1px solid rgba(229, 231, 235, 1);\n `;\n}}\n`;\nvar DropdownOption = styled13.button`\n width: 100%;\n text-align: left;\n cursor: pointer;\n outline: none;\n border: none;\n transition: background-color 0.2s;\n\n ${(props) => {\n if (props.$variant === \"mahatiFilter\") {\n return `\n height: 30px;\n padding: 0 8px;\n display: flex;\n align-items: center;\n font-size: 12px;\n color: rgba(31, 41, 55, 1);\n border-radius: 0;\n background: ${props.$isSelected ? \"rgba(243, 244, 246, 1)\" : \"white\"};\n\n &:hover {\n background: rgba(243, 244, 246, 1);\n }\n\n &:focus {\n background: rgba(243, 244, 246, 1);\n }\n `;\n }\n return `\n padding: 8px 12px;\n font-size: 14px;\n color: rgba(31, 41, 55, 1);\n background: ${props.$isSelected ? \"rgba(239, 246, 255, 1)\" : \"white\"};\n\n &:hover {\n background: rgba(243, 244, 246, 1);\n }\n\n &:focus {\n background: rgba(239, 246, 255, 1);\n }\n `;\n}}\n`;\nvar ArrowIcon = styled13.img`\n width: 12px;\n height: 12px;\n flex-shrink: 0;\n`;\nvar ChartDropdown = ({\n options,\n value,\n onSelect,\n label,\n variant = \"basic\",\n className,\n testId\n}) => {\n const [isOpen, setIsOpen] = useState9(false);\n const dropdownRef = useRef4(null);\n const selectedOption = useMemo(\n () => options.find((opt) => opt.value === value),\n [options, value]\n );\n useEffect7(() => {\n const handleClickOutside = (event) => {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, []);\n const handleSelect = (optionValue) => {\n onSelect(optionValue);\n setIsOpen(false);\n };\n return /* @__PURE__ */ jsxs11(\n DropdownContainer2,\n {\n ref: dropdownRef,\n className,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ jsx13(DropdownLabel, { children: label }),\n /* @__PURE__ */ jsxs11(\n DropdownTrigger,\n {\n type: \"button\",\n $variant: variant,\n onClick: () => setIsOpen(!isOpen),\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": isOpen,\n children: [\n /* @__PURE__ */ jsx13(\"span\", { style: { overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\" }, children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ jsx13(ArrowIcon, { src: assetSrc(arrowDownIcon), alt: \"\" })\n ]\n }\n ),\n isOpen && /* @__PURE__ */ jsx13(DropdownMenu2, { $variant: variant, role: \"listbox\", children: options.map((option) => /* @__PURE__ */ jsx13(\n DropdownOption,\n {\n type: \"button\",\n $variant: variant,\n $isSelected: option.value === value,\n onClick: () => handleSelect(option.value),\n role: \"option\",\n \"aria-selected\": option.value === value,\n children: option.key\n },\n option.key\n )) })\n ]\n }\n );\n};\nChartDropdown.displayName = \"ChartDropdown\";\n\n// src/components/PieLineBarChart.tsx\nimport React13 from \"react\";\nimport styled14 from \"@emotion/styled\";\nimport {\n Chart as ChartJS,\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n} from \"chart.js\";\nimport { Doughnut, Line, Bar } from \"react-chartjs-2\";\nimport { jsx as jsx14 } from \"@emotion/react/jsx-runtime\";\nChartJS.register(\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n);\nvar ChartContainer = styled14.div`\n width: 100%;\n height: 100%;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\nvar makeAreaDataStraight = (data) => {\n const datasets = Array.isArray(data.datasets) ? data.datasets : [];\n return {\n ...data,\n datasets: datasets.map((ds) => ({\n ...ds,\n tension: 0,\n cubicInterpolationMode: \"default\"\n }))\n };\n};\nvar PieLineBarChart = ({\n chartType,\n data,\n options\n}) => {\n const defaultOptions = React13.useMemo(() => {\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n if (isLineFamily) {\n return {\n responsive: true,\n maintainAspectRatio: false,\n elements: { line: { tension: 0 } },\n plugins: {\n legend: { display: false },\n tooltip: {\n mode: \"index\",\n intersect: false,\n backgroundColor: \"rgba(255,255,255,0.95)\",\n titleColor: \"rgba(31,41,55,1)\",\n bodyColor: \"rgba(107,114,128,1)\",\n borderColor: \"rgba(229,231,235,1)\",\n borderWidth: 1,\n padding: 12,\n displayColors: true\n }\n },\n scales: {\n x: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } }\n },\n y: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } },\n min: 40,\n max: 90\n }\n },\n interaction: { mode: \"nearest\", axis: \"x\", intersect: false }\n };\n }\n return {\n responsive: true,\n maintainAspectRatio: false,\n cutout: chartType === \"pie\" || chartType === \"doughnut\" ? \"50%\" : void 0,\n plugins: { legend: { display: false } }\n };\n }, [chartType]);\n const chartOptions = options || defaultOptions;\n const renderChart = () => {\n switch (chartType) {\n case \"line\":\n case \"area\":\n return /* @__PURE__ */ jsx14(Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ jsx14(Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ jsx14(Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsx14(ChartContainer, { children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nimport styled15 from \"@emotion/styled\";\nimport { jsx as jsx15, jsxs as jsxs12 } from \"@emotion/react/jsx-runtime\";\nvar Container3 = styled15.div`\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar Title2 = styled15.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 14px;\n font-weight: 600;\n line-height: normal;\n\n @media (min-width: 640px) {\n font-size: 16px;\n }\n`;\nvar BulletsContainer = styled15.div`\n margin-top: 16px;\n display: flex;\n flex-direction: column;\n gap: 35px;\n\n @media (min-width: 640px) {\n gap: 45px;\n }\n`;\nvar BulletItem = styled15.div`\n display: flex;\n flex-direction: column;\n gap: 9px;\n`;\nvar BulletName = styled15.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 600;\n line-height: normal;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar BulletContent = styled15.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n @media (min-width: 640px) {\n flex-direction: row;\n align-items: center;\n gap: 16px;\n }\n`;\nvar BarContainer = styled15.div`\n position: relative;\n width: 100%;\n\n @media (min-width: 640px) {\n width: 500px;\n }\n`;\nvar BarBackground = styled15.div`\n position: relative;\n width: 100%;\n height: 20px;\n border-radius: 20px;\n background: rgba(183, 232, 214, 0.9);\n overflow: hidden;\n`;\nvar BarFill = styled15.div`\n height: 20px;\n border-top-left-radius: 20px;\n border-bottom-left-radius: 20px;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n background: linear-gradient(\n 90deg,\n rgba(23, 97, 163, 1) 0%,\n rgba(77, 175, 131, 1) 100%\n );\n width: ${(props) => props.$width}%;\n`;\nvar Marker = styled15.div`\n position: absolute;\n top: 0;\n height: 20px;\n width: 4px;\n border-radius: 2px;\n background: rgba(15, 74, 122, 1);\n left: ${(props) => props.$position}%;\n transform: translateX(-50%);\n`;\nvar ValueLabel = styled15.div`\n position: absolute;\n top: -29px;\n right: 0;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 600;\n line-height: normal;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar AxisLabels = styled15.div`\n position: absolute;\n top: 29px;\n left: 0;\n width: 100%;\n`;\nvar AxisLabelsRow = styled15.div`\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n`;\nvar AxisLabel = styled15.span`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 500;\n line-height: normal;\n margin-left: ${(props) => props.$offset ? `${props.$offset * -4}px` : \"0\"};\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar PercentageText = styled15.div`\n color: rgba(115, 115, 115, 1);\n font-family: Poppins, sans-serif;\n font-size: 9px;\n font-weight: 600;\n line-height: normal;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n margin-left: 27px;\n font-size: 10px;\n }\n`;\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ jsxs12(Container3, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx15(Title2, { children: title }),\n /* @__PURE__ */ jsx15(BulletsContainer, { children: bullets.map((b) => {\n const percentageAchieved = Math.round(b.achieved / b.target * 100);\n const achievedWidth = Math.min(b.achieved / b.target * 100, 100);\n const markerPosition = Math.min(b.marker / b.target * 100, 100);\n return /* @__PURE__ */ jsxs12(BulletItem, { \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0, children: [\n /* @__PURE__ */ jsx15(BulletName, { children: b.name }),\n /* @__PURE__ */ jsxs12(BulletContent, { children: [\n /* @__PURE__ */ jsxs12(BarContainer, { children: [\n /* @__PURE__ */ jsxs12(BarBackground, { children: [\n /* @__PURE__ */ jsx15(BarFill, { $width: achievedWidth, \"data-testid\": testId ? `${testId}-bar-${b.name}` : void 0 }),\n /* @__PURE__ */ jsx15(Marker, { $position: markerPosition, \"data-testid\": testId ? `${testId}-marker-${b.name}` : void 0 })\n ] }),\n /* @__PURE__ */ jsxs12(ValueLabel, { children: [\n \"$\",\n b.achieved.toLocaleString(),\n \"/$\",\n b.target.toLocaleString()\n ] }),\n /* @__PURE__ */ jsx15(AxisLabels, { children: /* @__PURE__ */ jsxs12(AxisLabelsRow, { children: [\n /* @__PURE__ */ jsx15(AxisLabel, { children: \"0\" }),\n /* @__PURE__ */ jsx15(AxisLabel, { $offset: 1, children: \"2k\" }),\n /* @__PURE__ */ jsx15(AxisLabel, { $offset: 1, children: \"4k\" }),\n /* @__PURE__ */ jsx15(AxisLabel, { $offset: 1, children: \"6k\" }),\n /* @__PURE__ */ jsx15(AxisLabel, { $offset: 1, children: \"8k\" }),\n /* @__PURE__ */ jsx15(AxisLabel, { $offset: 2, children: \"10k\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs12(PercentageText, { \"data-testid\": testId ? `${testId}-percentage-${b.name}` : void 0, children: [\n percentageAchieved,\n \"% of target achieved\"\n ] })\n ] })\n ] }, b.name);\n }) })\n ] });\n};\nBulletChart.displayName = \"BulletChart\";\n\n// src/components/GaugeChart.tsx\nimport styled16 from \"@emotion/styled\";\nimport { jsx as jsx16, jsxs as jsxs13 } from \"@emotion/react/jsx-runtime\";\nvar Container4 = styled16.div`\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar Title3 = styled16.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 18px;\n font-weight: 600;\n line-height: normal;\n margin-bottom: 24px;\n`;\nvar GaugesContainer = styled16.div`\n display: flex;\n flex-direction: column;\n gap: 40px;\n`;\nvar GaugeItem = styled16.div`\n width: 100%;\n`;\nvar GaugeContent = styled16.div`\n display: flex;\n flex-direction: column;\n gap: 24px;\n\n @media (min-width: 1024px) {\n flex-direction: row;\n gap: 32px;\n }\n`;\nvar GaugeVisualContainer = styled16.div`\n position: relative;\n width: 100%;\n height: 220px;\n flex-shrink: 0;\n\n @media (min-width: 1024px) {\n width: 340px;\n }\n`;\nvar GaugeSVG = styled16.svg`\n width: 100%;\n height: 100%;\n`;\nvar GaugeText = styled16.text`\n font-family: Poppins, sans-serif;\n font-size: ${(props) => props.$fontSize || 14}px;\n font-weight: ${(props) => props.$fontWeight || \"500\"};\n fill: ${(props) => props.$fill || \"rgba(94, 94, 94, 1)\"};\n`;\nvar GaugePath = styled16.path`\n transition: all 0.7s ease-in-out;\n stroke-dasharray: ${(props) => props.$dasharray || \"none\"};\n`;\nvar NeedleGroup = styled16.g`\n transition: all 0.7s ease-in-out;\n transform: rotate(${(props) => props.$angle}deg);\n transform-origin: 0 0;\n`;\nvar CompletionText = styled16.div`\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n text-align: center;\n color: rgba(100, 100, 100, 1);\n font-family: Poppins, sans-serif;\n font-size: 11px;\n font-weight: 400;\n`;\nvar StatsContainer = styled16.div`\n flex: 1;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n`;\nvar StatsRow = styled16.div`\n display: flex;\n gap: 144px;\n margin-bottom: ${(props) => props.$marginBottom || \"0\"};\n`;\nvar StatItem = styled16.div`\n display: flex;\n flex-direction: column;\n`;\nvar StatLabel = styled16.div`\n color: rgba(109, 109, 109, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 500;\n line-height: normal;\n margin-bottom: 6px;\n`;\nvar StatValue = styled16.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 16px;\n font-weight: 600;\n line-height: normal;\n`;\nvar Separator = styled16.div`\n margin-top: 40px;\n height: 1px;\n background: rgba(220, 220, 220, 1);\n`;\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ jsxs13(Container4, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx16(Title3, { children: title }),\n /* @__PURE__ */ jsx16(GaugesContainer, { children: gauges.map((gauge, index) => {\n const percentage = Math.min(gauge.value / gauge.max * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const remaining = gauge.max - gauge.value;\n const dailyAvg = Math.round(gauge.value / 30);\n return /* @__PURE__ */ jsxs13(GaugeItem, { children: [\n /* @__PURE__ */ jsxs13(GaugeContent, { children: [\n /* @__PURE__ */ jsxs13(GaugeVisualContainer, { children: [\n /* @__PURE__ */ jsxs13(GaugeSVG, { viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `gaugeGradient${index}`,\n x1: \"0%\",\n y1: \"0%\",\n x2: \"100%\",\n y2: \"0%\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23, 97, 163, 1)\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77, 175, 131, 1)\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: \"rgba(230, 230, 230, 1)\",\n strokeWidth: \"16\",\n strokeLinecap: \"round\"\n }\n ),\n /* @__PURE__ */ jsx16(\n GaugePath,\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 $dasharray: `${percentage / 100 * 408.4} 408.4`\n }\n ),\n /* @__PURE__ */ jsx16(GaugeText, { x: \"36\", y: \"198\", children: \"0\" }),\n /* @__PURE__ */ jsx16(GaugeText, { x: \"42\", y: \"75\", children: \"25\" }),\n /* @__PURE__ */ jsx16(GaugeText, { x: \"162\", y: \"25\", children: \"50\" }),\n /* @__PURE__ */ jsx16(GaugeText, { x: \"282\", y: \"75\", children: \"75\" }),\n /* @__PURE__ */ jsx16(GaugeText, { x: \"290\", y: \"198\", children: \"100\" }),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `centerGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23, 97, 163, 1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77, 175, 131, 1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#centerGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n GaugeText,\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n $fontSize: 12,\n $fontWeight: \"400\",\n $fill: \"rgba(120, 120, 120, 1)\",\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n GaugeText,\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n $fontSize: 42,\n $fontWeight: \"700\",\n $fill: \"rgba(0, 0, 0, 1)\",\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(NeedleGroup, { $angle: angle, children: /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\",\n fill: \"rgba(76, 76, 76, 1)\"\n }\n ) }) })\n ] }),\n /* @__PURE__ */ jsxs13(CompletionText, { children: [\n \"You've completed \",\n Math.round(percentage),\n \"% of the total target\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs13(StatsContainer, { children: [\n /* @__PURE__ */ jsxs13(StatsRow, { $marginBottom: \"98px\", children: [\n /* @__PURE__ */ jsxs13(StatItem, { children: [\n /* @__PURE__ */ jsx16(StatLabel, { children: \"Target\" }),\n /* @__PURE__ */ jsx16(StatValue, { children: gauge.max.toLocaleString() })\n ] }),\n /* @__PURE__ */ jsxs13(StatItem, { children: [\n /* @__PURE__ */ jsx16(StatLabel, { children: \"Achieved\" }),\n /* @__PURE__ */ jsx16(StatValue, { children: gauge.value.toLocaleString() })\n ] })\n ] }),\n /* @__PURE__ */ jsxs13(StatsRow, { children: [\n /* @__PURE__ */ jsxs13(StatItem, { children: [\n /* @__PURE__ */ jsx16(StatLabel, { children: \"Remaining\" }),\n /* @__PURE__ */ jsx16(StatValue, { children: remaining.toLocaleString() })\n ] }),\n /* @__PURE__ */ jsxs13(StatItem, { children: [\n /* @__PURE__ */ jsx16(StatLabel, { children: \"Daily Avg Needed\" }),\n /* @__PURE__ */ jsxs13(StatValue, { children: [\n dailyAvg.toLocaleString(),\n \" / day\"\n ] })\n ] })\n ] })\n ] })\n ] }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(Separator, {})\n ] }, index);\n }) })\n ] });\n};\nGaugeChart.displayName = \"GaugeChart\";\n\n// src/components/HorizontalBarChart.tsx\nimport styled17 from \"@emotion/styled\";\nimport { jsx as jsx17, jsxs as jsxs14 } from \"@emotion/react/jsx-runtime\";\nvar Container5 = styled17.div`\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar HeaderRow = styled17.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin-bottom: 2px;\n`;\nvar MenuButton = styled17.button`\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n transition: background-color 0.2s;\n\n &:hover {\n background-color: rgba(243, 244, 246, 1);\n }\n\n @media (min-width: 640px) {\n width: 32px;\n height: 32px;\n }\n`;\nvar MenuDots = styled17.div`\n display: flex;\n gap: 2px;\n\n @media (min-width: 640px) {\n gap: 4px;\n }\n`;\nvar Dot = styled17.span`\n width: 2px;\n height: 2px;\n background-color: rgba(107, 114, 128, 1);\n border-radius: 50%;\n\n @media (min-width: 640px) {\n width: 4px;\n height: 4px;\n }\n`;\nvar Title4 = styled17.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 14px;\n font-weight: 600;\n line-height: normal;\n margin-bottom: 24px;\n\n @media (min-width: 640px) {\n font-size: 16px;\n }\n`;\nvar ChartContent = styled17.div`\n display: flex;\n align-items: flex-start;\n gap: 16px;\n`;\nvar LabelsColumn = styled17.div`\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n padding-top: 4px;\n min-height: 180px;\n`;\nvar LabelRow = styled17.div`\n display: flex;\n align-items: center;\n height: ${(props) => props.$height};\n margin-bottom: ${(props) => props.$marginBottom};\n`;\nvar Label = styled17.span`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 400;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar ChartArea = styled17.div`\n flex: 1;\n position: relative;\n`;\nvar GridContainer2 = styled17.div`\n position: absolute;\n inset: 0;\n pointer-events: none;\n height: 180px;\n`;\nvar GridLine = styled17.div`\n position: absolute;\n left: calc(${(props) => props.$left}% - ${(props) => props.$centerOffset}px);\n top: 0;\n width: 1px;\n height: 165px;\n background-color: rgba(229, 231, 235, 1);\n z-index: 1;\n`;\nvar YAxisLine = styled17.div`\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n width: 2px;\n height: 165px;\n background-color: rgba(125, 125, 125, 1);\n z-index: 2;\n`;\nvar XAxisLine = styled17.div`\n position: absolute;\n left: 0;\n bottom: 15px;\n width: 100%;\n height: 2px;\n background-color: rgba(125, 125, 125, 1);\n z-index: 2;\n`;\nvar BarsContainer = styled17.div`\n display: flex;\n flex-direction: column;\n padding-top: 4px;\n position: relative;\n z-index: 10;\n min-height: 180px;\n`;\nvar BarRow = styled17.div`\n display: flex;\n align-items: center;\n height: ${(props) => props.$height};\n margin-bottom: ${(props) => props.$marginBottom};\n`;\nvar BarWrapper = styled17.div`\n position: relative;\n height: 30px;\n width: 100%;\n`;\nvar Bar2 = styled17.div`\n width: ${(props) => props.$width}%;\n height: 30px;\n transform: rotate(0deg);\n transform-origin: top left;\n border-radius: 4px;\n background: ${(props) => props.$color};\n position: absolute;\n top: 0;\n left: 0;\n`;\nvar XAxisLabels = styled17.div`\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-top: -8px;\n width: 100%;\n position: relative;\n z-index: 10;\n`;\nvar XAxisLabel = styled17.span`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 400;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar HorizontalBarChart = ({\n title,\n bars,\n selectedYear,\n selectedMonth,\n selectedType,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n const maxValue = safeBars.length > 0 ? Math.max(...safeBars.map((b) => b.value)) : 0;\n return /* @__PURE__ */ jsxs14(Container5, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx17(HeaderRow, { children: /* @__PURE__ */ jsx17(MenuButton, { \"data-testid\": testId ? `${testId}-menu-button` : void 0, children: /* @__PURE__ */ jsxs14(MenuDots, { children: [\n /* @__PURE__ */ jsx17(Dot, {}),\n /* @__PURE__ */ jsx17(Dot, {}),\n /* @__PURE__ */ jsx17(Dot, {})\n ] }) }) }),\n /* @__PURE__ */ jsx17(Title4, { \"data-testid\": testId ? `${testId}-title` : void 0, children: title }),\n /* @__PURE__ */ jsxs14(ChartContent, { children: [\n /* @__PURE__ */ jsx17(LabelsColumn, { children: safeBars.map((bar, index) => /* @__PURE__ */ jsx17(\n LabelRow,\n {\n \"data-testid\": testId ? `${testId}-label-${index}` : void 0,\n $height: \"45px\",\n $marginBottom: index < safeBars.length - 1 ? \"10px\" : \"0\",\n children: /* @__PURE__ */ jsx17(Label, { children: bar.name })\n },\n bar.name\n )) }),\n /* @__PURE__ */ jsxs14(ChartArea, { children: [\n /* @__PURE__ */ jsxs14(GridContainer2, { children: [\n xAxisConfig && xAxisConfig.labels.map((label, idx) => {\n const totalLabels = xAxisConfig.labels.length;\n const position = idx / (totalLabels - 1) * 100;\n const labelText = String(label);\n const approxCharWidth = 7;\n const labelWidth = labelText.length * approxCharWidth;\n const centerOffset = labelWidth / 2;\n return /* @__PURE__ */ jsx17(\n GridLine,\n {\n $left: position.toString(),\n $centerOffset: centerOffset\n },\n `grid-${idx}`\n );\n }),\n /* @__PURE__ */ jsx17(YAxisLine, {}),\n /* @__PURE__ */ jsx17(XAxisLine, {})\n ] }),\n /* @__PURE__ */ jsx17(BarsContainer, { children: safeBars.map((bar, index) => {\n const maxValue2 = xAxisConfig?.max || 250;\n const barLengthPercentage = bar.value / maxValue2 * 100;\n return /* @__PURE__ */ jsx17(\n BarRow,\n {\n \"data-testid\": testId ? `${testId}-row-${index}` : void 0,\n $height: \"45px\",\n $marginBottom: index < safeBars.length - 1 ? \"10px\" : \"0\",\n children: /* @__PURE__ */ jsx17(BarWrapper, { children: /* @__PURE__ */ jsx17(Bar2, { \"data-testid\": testId ? `${testId}-bar-${index}` : void 0, $width: barLengthPercentage, $color: bar.color }) })\n },\n bar.name\n );\n }) }),\n /* @__PURE__ */ jsx17(XAxisLabels, { children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ jsx17(XAxisLabel, { children: label }, idx)) })\n ] })\n ] })\n ] });\n};\nHorizontalBarChart.displayName = \"HorizontalBarChart\";\n\n// src/components/GanttChart.tsx\nimport React14 from \"react\";\nimport styled18 from \"@emotion/styled\";\nimport { Fragment as Fragment6, jsx as jsx18, jsxs as jsxs15 } from \"@emotion/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 Container6 = styled18.div`\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar HeaderRow2 = styled18.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n\n @media (min-width: 640px) {\n margin-bottom: 24px;\n }\n`;\nvar DropdownWrapper = styled18.div`\n position: relative;\n`;\nvar DropdownButton2 = styled18.button`\n display: flex;\n align-items: center;\n gap: 8px;\n background: transparent;\n padding: 4px 8px;\n border-radius: 4px;\n transition: background-color 0.2s;\n border: none;\n cursor: pointer;\n\n &:hover {\n background: rgba(249, 250, 251, 1);\n }\n`;\nvar DropdownText = styled18.span`\n color: rgba(51, 51, 51, 1);\n font-family: Poppins, sans-serif;\n font-size: 16px;\n font-weight: 600;\n`;\nvar DropdownMenu3 = styled18.div`\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 4px;\n background: white;\n border: 1px solid rgba(229, 231, 235, 1);\n border-radius: 8px;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n z-index: 50;\n min-width: 150px;\n display: ${(props) => props.$isOpen ? \"block\" : \"none\"};\n`;\nvar DropdownItem2 = styled18.button`\n width: 100%;\n text-align: left;\n padding: 8px 16px;\n background: white;\n border: none;\n transition: background-color 0.2s;\n cursor: pointer;\n\n &:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n }\n\n &:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n }\n\n &:hover {\n background: rgba(249, 250, 251, 1);\n }\n`;\nvar MenuButton2 = styled18.button`\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n background: transparent;\n border: none;\n cursor: pointer;\n transition: background-color 0.2s;\n\n &:hover {\n background: rgba(243, 244, 246, 1);\n }\n\n @media (min-width: 640px) {\n width: 32px;\n height: 32px;\n }\n`;\nvar MenuDots2 = styled18.div`\n display: flex;\n gap: 2px;\n\n @media (min-width: 640px) {\n gap: 4px;\n }\n`;\nvar MenuDot = styled18.span`\n width: 2px;\n height: 2px;\n background: rgba(107, 114, 128, 1);\n border-radius: 50%;\n\n @media (min-width: 640px) {\n width: 4px;\n height: 4px;\n }\n`;\nvar DateRangeBox = styled18.div`\n width: 74px;\n height: 24px;\n border-radius: 4px;\n background: rgba(225, 237, 241, 1);\n display: flex;\n align-items: center;\n justify-content: center;\n`;\nvar DateRangeText = styled18.span`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 600;\n`;\nvar TasksContainer = styled18.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n margin-top: 24px;\n\n @media (min-width: 640px) {\n gap: 24px;\n margin-top: 32px;\n }\n`;\nvar TaskRow = styled18.div`\n display: flex;\n align-items: center;\n`;\nvar TaskLabel = styled18.div`\n width: 120px;\n flex-shrink: 0;\n padding-right: 8px;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n width: 137px;\n padding-right: 16px;\n font-size: 12px;\n }\n`;\nvar TaskTimeline = styled18.div`\n position: relative;\n flex: 1;\n height: 28px;\n\n @media (min-width: 640px) {\n height: 32px;\n }\n`;\nvar TaskName = styled18.span`\n color: white;\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 600;\n margin-left: 20px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\nvar GANTT_COLORS = {\n green: \"rgba(44, 160, 44, 1)\",\n blue: \"rgba(37, 99, 235, 1)\",\n orange: \"rgba(255, 127, 14, 1)\",\n red: \"rgba(239, 68, 68, 1)\",\n purple: \"rgba(147, 51, 234, 1)\",\n teal: \"rgba(20, 184, 166, 1)\",\n pink: \"rgba(236, 72, 153, 1)\",\n yellow: \"rgba(234, 179, 8, 1)\",\n indigo: \"rgba(99, 102, 241, 1)\",\n emerald: \"rgba(16, 185, 129, 1)\"\n};\nvar GanttChart = ({\n data,\n selectedYear,\n selectedMonth,\n selectedProject,\n onProjectChange,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React14.useState(false);\n const projects = [\"Project 1\", \"Project 2\"];\n const projectData = data;\n const getMonthNames = (monthRange) => {\n const monthMap = {\n \"Jan\": \"January\",\n \"Feb\": \"February\",\n \"Mar\": \"March\",\n \"Apr\": \"April\",\n \"May\": \"May\",\n \"Jun\": \"June\",\n \"Jul\": \"July\",\n \"Aug\": \"August\",\n \"Sep\": \"September\",\n \"Oct\": \"October\",\n \"Nov\": \"November\",\n \"Dec\": \"December\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthMap[month1], monthMap[month2]];\n };\n const getMonthNumber = (monthRange) => {\n const monthNumberMap = {\n \"Jan\": \"01\",\n \"Feb\": \"02\",\n \"Mar\": \"03\",\n \"Apr\": \"04\",\n \"May\": \"05\",\n \"Jun\": \"06\",\n \"Jul\": \"07\",\n \"Aug\": \"08\",\n \"Sep\": \"09\",\n \"Oct\": \"10\",\n \"Nov\": \"11\",\n \"Dec\": \"12\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthNumberMap[month1], monthNumberMap[month2]];\n };\n const getTodayPosition = () => {\n const today = /* @__PURE__ */ new Date();\n const currentYear = today.getFullYear();\n const currentMonth = today.getMonth() + 1;\n const currentDay = today.getDate();\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n \"Jan\": 1,\n \"Feb\": 2,\n \"Mar\": 3,\n \"Apr\": 4,\n \"May\": 5,\n \"Jun\": 6,\n \"Jul\": 7,\n \"Aug\": 8,\n \"Sep\": 9,\n \"Oct\": 10,\n \"Nov\": 11,\n \"Dec\": 12\n };\n const selectedMonth1 = monthToNumber[month1];\n const selectedMonth2 = monthToNumber[month2];\n const selectedYearNum = parseInt(selectedYear);\n if (currentYear !== selectedYearNum) {\n return null;\n }\n let monthIndex = -1;\n if (currentMonth === selectedMonth1) {\n monthIndex = 0;\n } else if (currentMonth === selectedMonth2) {\n monthIndex = 1;\n } else {\n return null;\n }\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 const endPercent = endDay / daysInMonth * 100;\n width = endPercent - startPercent;\n } else if (startMonth === selectedMonth2Num && endMonth === selectedMonth2Num) {\n monthIndex = 1;\n isInSecondMonth = true;\n startPercent = (startDay - 1) / daysInMonth * 100;\n const endPercent = endDay / daysInMonth * 100;\n width = endPercent - startPercent;\n } else if (startMonth === selectedMonth1Num && endMonth === selectedMonth2Num) {\n monthIndex = 2;\n startPercent = (startDay - 1) / daysInMonth * 100;\n const endPercent = 100 + endDay / daysInMonth * 100;\n width = endPercent - startPercent;\n }\n return { startPercent, width, monthIndex, isInSecondMonth };\n };\n const lineHeight = React14.useMemo(() => {\n const baseHeight = 30;\n const taskHeight = 32;\n const taskSpacing = 24;\n const totalHeight = baseHeight + projectData.tasks.length * (taskHeight + taskSpacing);\n return totalHeight;\n }, [projectData.tasks.length]);\n const DateRangeBoxes = ({ monthNum }) => /* @__PURE__ */ jsxs15(\"div\", { style: { display: \"flex\", gap: \"8px\" }, children: [\n /* @__PURE__ */ jsx18(DateRangeBox, { children: /* @__PURE__ */ jsxs15(DateRangeText, { children: [\n \"01/\",\n monthNum,\n \" - 10/\",\n monthNum\n ] }) }),\n /* @__PURE__ */ jsx18(DateRangeBox, { children: /* @__PURE__ */ jsxs15(DateRangeText, { children: [\n \"11/\",\n monthNum,\n \" - 20/\",\n monthNum\n ] }) }),\n /* @__PURE__ */ jsx18(DateRangeBox, { children: /* @__PURE__ */ jsxs15(DateRangeText, { children: [\n \"21/\",\n monthNum,\n \" - 25/\",\n monthNum\n ] }) }),\n /* @__PURE__ */ jsx18(DateRangeBox, { children: /* @__PURE__ */ jsxs15(DateRangeText, { children: [\n \"26/\",\n monthNum,\n \" - 31/\",\n monthNum\n ] }) })\n ] });\n return /* @__PURE__ */ jsxs15(Container6, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs15(HeaderRow2, { children: [\n /* @__PURE__ */ jsxs15(DropdownWrapper, { children: [\n /* @__PURE__ */ jsxs15(DropdownButton2, { onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen), children: [\n /* @__PURE__ */ jsx18(DropdownText, { children: selectedProject }),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n width: \"12px\",\n height: \"12px\",\n background: `url(${assetSrc2(arrowDownIcon2)}) transparent 50% / cover no-repeat`,\n aspectRatio: \"1/1\",\n transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\",\n transition: \"transform 0.2s\"\n }\n }\n )\n ] }),\n /* @__PURE__ */ jsx18(DropdownMenu3, { $isOpen: isProjectDropdownOpen, children: projects.map((project) => /* @__PURE__ */ jsx18(\n DropdownItem2,\n {\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx18(DropdownText, { children: project })\n },\n project\n )) })\n ] }),\n /* @__PURE__ */ jsx18(MenuButton2, { children: /* @__PURE__ */ jsxs15(MenuDots2, { children: [\n /* @__PURE__ */ jsx18(MenuDot, {}),\n /* @__PURE__ */ jsx18(MenuDot, {}),\n /* @__PURE__ */ jsx18(MenuDot, {})\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { style: { position: \"relative\", height: \"32px\", marginBottom: \"16px\" }, children: [\n /* @__PURE__ */ jsx18(\"div\", { style: { position: \"absolute\", left: \"0\", width: \"120px\", height: \"32px\" }, className: \"sm:w-[137px]\" }),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n position: \"absolute\",\n left: \"120px\",\n top: \"0\",\n width: \"320px\",\n height: \"32px\",\n borderRadius: \"4px\",\n background: \"linear-gradient(90deg, rgba(23,97,163,1) 0%, rgba(77,175,131,1) 100%)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n className: \"sm:left-[137px] sm:w-[320px]\",\n children: /* @__PURE__ */ jsx18(\"span\", { style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600,\n color: \"white\"\n }, className: \"sm:text-[12px]\", children: displayMonths[0] })\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n position: \"absolute\",\n left: \"450px\",\n top: \"0\",\n width: \"320px\",\n height: \"32px\",\n borderRadius: \"4px\",\n background: \"linear-gradient(90deg, rgba(23,97,163,1) 0%, rgba(77,175,131,1) 100%)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n className: \"sm:left-[467px] sm:w-[320px]\",\n children: /* @__PURE__ */ jsx18(\"span\", { style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600,\n color: \"white\"\n }, className: \"sm:text-[12px]\", children: displayMonths[1] })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { style: { position: \"relative\", height: \"24px\", marginBottom: \"24px\" }, children: [\n /* @__PURE__ */ jsx18(\"div\", { style: { position: \"absolute\", left: \"120px\" }, className: \"sm:left-[137px]\", children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ jsx18(\"div\", { style: { position: \"absolute\", left: \"450px\" }, className: \"sm:left-[467px]\", children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { style: { position: \"relative\" }, children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"sm:hidden\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + section * 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `month1-line-mobile-${section}`\n )),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"sm:hidden\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + 8 * 40 + 20}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n \"month1-line-mobile-extra\"\n ),\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"hidden sm:block\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${137 + section * 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `month1-line-desktop-${section}`\n )),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"hidden sm:block\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${137 + 8 * 40 + 20}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n \"month1-line-desktop-extra\"\n ),\n [1, 2, 3, 4, 5, 6, 7, 8, 9].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"sm:hidden\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${450 + section * 40 - 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `month2-line-mobile-${section}`\n )),\n [1, 2, 3, 4, 5, 6, 7, 8, 9].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"hidden sm:block\",\n style: {\n position: \"absolute\",\n width: \"1px\",\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${467 + section * 40 - 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `month2-line-desktop-${section}`\n )),\n todayPosition && todayPosition.show && /* @__PURE__ */ jsxs15(Fragment6, { children: [\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"sm:hidden\",\n style: {\n position: \"absolute\",\n width: \"2px\",\n background: \"rgba(32,148,243,1)\",\n zIndex: 0,\n left: `${todayPosition.mobileLeft}px`,\n top: \"-24px\",\n height: `${lineHeight - 30}px`\n },\n children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n position: \"absolute\",\n width: \"40px\",\n height: \"18px\",\n background: \"rgba(32,148,243,1)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n top: \"10px\",\n left: \"0px\",\n borderRadius: \"0 4px 4px 0\"\n },\n children: /* @__PURE__ */ jsx18(\"span\", { style: {\n color: \"white\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 500\n }, children: \"Today\" })\n }\n )\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"hidden sm:block\",\n style: {\n position: \"absolute\",\n width: \"2px\",\n background: \"rgba(32,148,243,1)\",\n zIndex: 0,\n left: `${todayPosition.desktopLeft}px`,\n top: \"-24px\",\n height: `${lineHeight - 30}px`\n },\n children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n position: \"absolute\",\n width: \"40px\",\n height: \"18px\",\n background: \"rgba(32,148,243,1)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n top: \"10px\",\n left: \"0px\",\n borderRadius: \"0 4px 4px 0\"\n },\n children: /* @__PURE__ */ jsx18(\"span\", { style: {\n color: \"white\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 500\n }, children: \"Today\" })\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ jsx18(TasksContainer, { children: projectData.tasks.map((task) => {\n const { startPercent, width, monthIndex, isInSecondMonth } = getTaskPosition(task.startDate, task.endDate);\n if (monthIndex === -1) return null;\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs15(TaskRow, { children: [\n /* @__PURE__ */ jsx18(TaskLabel, { children: task.name }),\n /* @__PURE__ */ jsx18(TaskTimeline, { children: !isInSecondMonth ? /* @__PURE__ */ jsx18(\"div\", { style: { position: \"absolute\", left: \"0\", width: \"320px\", height: \"100%\" }, className: \"sm:w-[320px]\", children: /* @__PURE__ */ jsxs15(\n \"div\",\n {\n style: {\n position: \"absolute\",\n height: \"100%\",\n borderRadius: \"9999px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: \"0 8px\",\n left: `${startPercent}%`,\n width: `${width}%`,\n backgroundColor: taskColor\n },\n className: \"sm:px-3\",\n children: [\n /* @__PURE__ */ jsx18(TaskName, { children: task.name }),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n borderRadius: \"9999px\",\n padding: \"2px 8px\",\n fontSize: \"8px\",\n fontFamily: \"Poppins, sans-serif\",\n fontWeight: 600,\n whiteSpace: \"nowrap\",\n backgroundColor: \"rgba(255, 255, 255, 1)\",\n color: taskColor\n },\n className: \"sm:px-3 sm:py-1\",\n children: task.status\n }\n )\n ]\n }\n ) }) : /* @__PURE__ */ jsx18(\"div\", { style: { position: \"absolute\", left: \"330px\", width: \"320px\", height: \"100%\" }, className: \"sm:left-[330px] sm:w-[320px]\", children: /* @__PURE__ */ jsxs15(\n \"div\",\n {\n style: {\n position: \"absolute\",\n height: \"100%\",\n borderRadius: \"9999px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n padding: \"0 8px\",\n left: `${startPercent}%`,\n width: `${width}%`,\n backgroundColor: taskColor\n },\n className: \"sm:px-3\",\n children: [\n /* @__PURE__ */ jsx18(TaskName, { children: task.name }),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n borderRadius: \"9999px\",\n padding: \"2px 8px\",\n fontSize: \"8px\",\n fontFamily: \"Poppins, sans-serif\",\n fontWeight: 600,\n whiteSpace: \"nowrap\",\n backgroundColor: \"rgba(255, 255, 255, 1)\",\n color: taskColor\n },\n className: \"sm:px-3 sm:py-1\",\n children: task.status\n }\n )\n ]\n }\n ) }) })\n ] }, task.id);\n }) })\n ] })\n ] });\n};\nGanttChart.displayName = \"GanttChart\";\n\n// src/components/CalendarHeatmapChart.tsx\nimport React15 from \"react\";\nimport styled19 from \"@emotion/styled\";\nimport { jsx as jsx19, jsxs as jsxs16 } from \"@emotion/react/jsx-runtime\";\nvar Container7 = styled19.div`\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar HeaderRow3 = styled19.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n`;\nvar LeftSection = styled19.div`\n display: flex;\n align-items: center;\n gap: 12px;\n`;\nvar DropdownWrapper2 = styled19.div`\n position: relative;\n`;\nvar DropdownButton3 = styled19.button`\n display: flex;\n align-items: center;\n gap: 8px;\n background: transparent;\n padding: 6px 12px;\n border-radius: 4px;\n transition: background-color 0.2s;\n border: none;\n cursor: pointer;\n\n &:hover {\n background: rgba(249, 250, 251, 1);\n }\n`;\nvar DropdownLabel2 = styled19.span`\n color: rgba(51, 51, 51, 1);\n font-family: Poppins, sans-serif;\n font-size: 14px;\n font-weight: 600;\n\n @media (min-width: 640px) {\n font-size: 16px;\n }\n`;\nvar DropdownArrow = styled19.svg`\n width: 12px;\n height: 12px;\n transition: transform 0.2s;\n transform: ${(props) => props.$isOpen ? \"rotate(180deg)\" : \"rotate(0deg)\"};\n`;\nvar DropdownMenu4 = styled19.div`\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 4px;\n background: white;\n border: 1px solid rgba(229, 231, 235, 1);\n border-radius: 8px;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n z-index: 50;\n min-width: 150px;\n display: ${(props) => props.$isOpen ? \"block\" : \"none\"};\n`;\nvar DropdownItem3 = styled19.button`\n width: 100%;\n text-align: left;\n padding: 8px 16px;\n background: white;\n border: none;\n transition: background-color 0.2s;\n cursor: pointer;\n\n &:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n }\n\n &:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n }\n\n &:hover {\n background: rgba(249, 250, 251, 1);\n }\n`;\nvar MenuButton3 = styled19.button`\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n background: rgba(224, 242, 229, 1);\n border: none;\n cursor: pointer;\n transition: background-color 0.2s;\n\n &:hover {\n background: rgba(243, 244, 246, 1);\n }\n`;\nvar MenuDots3 = styled19.div`\n display: flex;\n gap: 4px;\n`;\nvar MenuDot2 = styled19.span`\n width: 4px;\n height: 4px;\n background: rgba(107, 114, 128, 1);\n border-radius: 50%;\n`;\nvar LegendRow = styled19.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n margin-bottom: 24px;\n padding-right: 8px;\n`;\nvar LegendLabel = styled19.span`\n color: rgba(100, 100, 100, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 500;\n margin: 0 4px;\n`;\nvar LegendBox = styled19.div`\n width: 14px;\n height: 14px;\n border-radius: 2px;\n background-color: ${(props) => props.$color};\n`;\nvar HeatmapContainer = styled19.div`\n flex: 1;\n display: flex;\n`;\nvar DayLabelsColumn = styled19.div`\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n padding-right: 8px;\n padding-top: 20px;\n flex-shrink: 0;\n`;\nvar DayLabel = styled19.div`\n height: 14px;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n color: rgba(100, 100, 100, 1);\n font-family: Poppins, sans-serif;\n font-size: 9px;\n font-weight: 500;\n margin-bottom: 2px;\n`;\nvar GridContainer3 = styled19.div`\n flex: 1;\n`;\nvar GridWrapper = styled19.div`\n min-width: max-content;\n`;\nvar MonthHeaderRow = styled19.div`\n display: flex;\n gap: 2px;\n margin-bottom: 4px;\n height: 18px;\n`;\nvar MonthLabel = styled19.div`\n width: 14px;\n text-align: center;\n`;\nvar MonthText = styled19.span`\n color: rgba(100, 100, 100, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n`;\nvar DayRow = styled19.div`\n display: flex;\n gap: 2px;\n margin-bottom: 2px;\n`;\nvar DayCell = styled19.div`\n width: 14px;\n height: 14px;\n border-radius: 2px;\n background-color: ${(props) => props.$color};\n opacity: ${(props) => props.$opacity};\n position: relative;\n cursor: ${(props) => props.$isCurrentYear ? \"pointer\" : \"default\"};\n transition: all 0.1s;\n\n &:hover {\n ${(props) => props.$isCurrentYear && `\n transform: scale(1.05);\n `}\n }\n`;\nvar DayNumber = styled19.div`\n position: absolute;\n inset: 0;\n opacity: ${(props) => props.$isHovered ? 1 : 0};\n display: flex;\n align-items: center;\n justify-content: center;\n transition: opacity 0.2s;\n pointer-events: none;\n`;\nvar DayNumberText = styled19.span`\n font-size: 6px;\n font-weight: 700;\n color: white;\n text-shadow: 0 1px 1px rgba(0, 0, 0, 0.8);\n`;\nvar TooltipContainer = styled19.div`\n position: fixed;\n left: ${(props) => props.$x}px;\n top: ${(props) => props.$y}px;\n transform: translate(-50%, -120%);\n pointer-events: none;\n z-index: 9999;\n display: ${(props) => props.$visible ? \"block\" : \"none\"};\n`;\nvar TooltipBox = styled19.div`\n display: flex;\n flex-direction: column;\n min-width: 127px;\n max-width: 200px;\n width: max-content;\n border-radius: 6px;\n border: 1px solid rgba(77, 175, 131, 0.72);\n background: white;\n box-shadow: 0 4px 14px 0 rgba(77, 175, 131, 0.3);\n padding: 8px 48px 11px 10px;\n`;\nvar TooltipDate = styled19.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 600;\n line-height: normal;\n margin-bottom: 6px;\n white-space: nowrap;\n`;\nvar TooltipDivider = styled19.div`\n height: 1px;\n background-color: rgba(234, 234, 234, 1);\n margin-bottom: 6px;\n margin-left: -2px;\n margin-right: -40px;\n width: calc(100% + 42px);\n`;\nvar TooltipValue = styled19.div`\n display: flex;\n align-items: center;\n gap: 4px;\n`;\nvar TooltipColorBox = styled19.div`\n flex-shrink: 0;\n width: 12px;\n height: 12px;\n border-radius: 2px;\n background-color: ${(props) => props.$color};\n`;\nvar TooltipText = styled19.span`\n color: rgba(129, 129, 129, 1);\n font-family: Poppins, sans-serif;\n font-size: 11px;\n font-weight: 500;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarHeatmapChart = ({\n data,\n selectedProject,\n selectedYear,\n selectedType,\n onProjectChange,\n calendarheatmapData,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React15.useState(false);\n const [hoveredCell, setHoveredCell] = React15.useState(null);\n const [tooltipData, setTooltipData] = React15.useState({\n visible: false,\n month: \"\",\n day: 0,\n value: 0,\n position: { x: 0, y: 0 },\n cellColor: \"rgba(77, 175, 131, 1)\"\n });\n const projects = [\"Project 1\", \"Project 2\"];\n const getYearWeeks = (year2, calendarheatmapData2, project, type) => {\n const weeks = [];\n const startDate = new Date(year2, 0, 1);\n const firstDayOfWeek = startDate.getDay();\n const daysToMonday = firstDayOfWeek === 0 ? -6 : 1 - firstDayOfWeek;\n const firstMonday = new Date(year2, 0, 1 + daysToMonday);\n const currentDate = new Date(firstMonday);\n let lastMonth = -1;\n let weekIndex = 0;\n const maxWeeks = 54;\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() === year2) {\n hasCurrentYearDate = true;\n }\n let value = 0;\n if (date.getFullYear() === year2) {\n const dateStr = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, \"0\")}-${String(date.getDate()).padStart(2, \"0\")}`;\n const monthNames = [\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 monthName = monthNames[date.getMonth()];\n if (calendarheatmapData2 && calendarheatmapData2[project] && calendarheatmapData2[project][String(year2)] && calendarheatmapData2[project][String(year2)][type] && calendarheatmapData2[project][String(year2)][type][monthName]) {\n const monthData = calendarheatmapData2[project][String(year2)][type][monthName].data;\n const dayData = monthData.find((d) => d.date === dateStr);\n if (dayData) {\n value = dayData.value;\n }\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() === year2) {\n const monthNames = [\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 monthLabel = monthNames[weekMonth];\n lastMonth = weekMonth;\n }\n weeks.push({ days: weekDays, monthLabel });\n }\n if (currentDate.getFullYear() > year2 && currentDate.getMonth() > 0) {\n break;\n }\n weekIndex++;\n }\n return weeks;\n };\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 const 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 };\n return /* @__PURE__ */ jsxs16(Container7, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs16(HeaderRow3, { children: [\n /* @__PURE__ */ jsx19(LeftSection, { children: /* @__PURE__ */ jsxs16(DropdownWrapper2, { children: [\n /* @__PURE__ */ jsxs16(\n DropdownButton3,\n {\n $isOpen: isProjectDropdownOpen,\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx19(DropdownLabel2, { children: selectedProject }),\n /* @__PURE__ */ jsx19(\n DropdownArrow,\n {\n $isOpen: isProjectDropdownOpen,\n width: \"12\",\n height: \"12\",\n viewBox: \"0 0 12 12\",\n fill: \"none\",\n children: /* @__PURE__ */ jsx19(\n \"path\",\n {\n d: \"M2.5 4.5L6 8L9.5 4.5\",\n stroke: \"currentColor\",\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }\n )\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx19(DropdownMenu4, { $isOpen: isProjectDropdownOpen, children: projects.map((project) => /* @__PURE__ */ jsx19(\n DropdownItem3,\n {\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx19(DropdownLabel2, { children: project })\n },\n project\n )) })\n ] }) }),\n /* @__PURE__ */ jsx19(MenuButton3, { children: /* @__PURE__ */ jsxs16(MenuDots3, { children: [\n /* @__PURE__ */ jsx19(MenuDot2, {}),\n /* @__PURE__ */ jsx19(MenuDot2, {}),\n /* @__PURE__ */ jsx19(MenuDot2, {})\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs16(LegendRow, { children: [\n /* @__PURE__ */ jsx19(LegendLabel, { children: \"Less\" }),\n /* @__PURE__ */ jsx19(LegendBox, { $color: \"rgba(224, 242, 254, 1)\" }),\n /* @__PURE__ */ jsx19(LegendBox, { $color: \"rgba(154, 219, 255, 1)\" }),\n /* @__PURE__ */ jsx19(LegendBox, { $color: \"rgba(102, 194, 241, 1)\" }),\n /* @__PURE__ */ jsx19(LegendBox, { $color: \"rgba(43, 160, 209, 1)\" }),\n /* @__PURE__ */ jsx19(LegendBox, { $color: \"rgba(23, 97, 163, 1)\" }),\n /* @__PURE__ */ jsx19(LegendLabel, { children: \"More\" })\n ] }),\n /* @__PURE__ */ jsxs16(HeatmapContainer, { children: [\n /* @__PURE__ */ jsx19(DayLabelsColumn, { children: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"].map((day, idx) => /* @__PURE__ */ jsx19(DayLabel, { children: day }, idx)) }),\n /* @__PURE__ */ jsx19(GridContainer3, { children: /* @__PURE__ */ jsxs16(GridWrapper, { children: [\n /* @__PURE__ */ jsx19(MonthHeaderRow, { children: yearWeeks.map((week, idx) => /* @__PURE__ */ jsx19(MonthLabel, { children: week.monthLabel && /* @__PURE__ */ jsx19(MonthText, { children: week.monthLabel }) }, idx)) }),\n dayRows.map((row, rowIdx) => /* @__PURE__ */ jsx19(DayRow, { 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 return /* @__PURE__ */ jsx19(\n DayCell,\n {\n $color: isCurrentYear ? color : \"rgba(240, 240, 240, 1)\",\n $opacity: isCurrentYear ? 1 : 0.3,\n $isCurrentYear: isCurrentYear,\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: {\n x: rect.left + rect.width / 2,\n y: rect.top\n }\n });\n }\n },\n onMouseLeave: () => {\n setHoveredCell(null);\n setTooltipData((prev) => ({ ...prev, visible: false }));\n },\n children: isCurrentYear && value > 0 && /* @__PURE__ */ jsx19(DayNumber, { $isHovered: hoveredCell === cellKey, children: /* @__PURE__ */ jsx19(DayNumberText, { children: date.getDate() }) })\n },\n colIdx\n );\n }) }, rowIdx))\n ] }) })\n ] }),\n /* @__PURE__ */ jsx19(\n TooltipContainer,\n {\n $visible: tooltipData.visible,\n $x: tooltipData.position.x,\n $y: tooltipData.position.y,\n children: /* @__PURE__ */ jsxs16(TooltipBox, { children: [\n /* @__PURE__ */ jsxs16(TooltipDate, { children: [\n tooltipData.month.split(\" \")[0],\n \" \",\n tooltipData.day\n ] }),\n /* @__PURE__ */ jsx19(TooltipDivider, {}),\n /* @__PURE__ */ jsxs16(TooltipValue, { children: [\n /* @__PURE__ */ jsx19(TooltipColorBox, { $color: tooltipData.cellColor }),\n /* @__PURE__ */ jsxs16(TooltipText, { children: [\n \"Total \",\n tooltipData.value.toLocaleString(),\n \" activity\"\n ] })\n ] })\n ] })\n }\n )\n ] });\n};\nCalendarHeatmapChart.displayName = \"CalendarHeatmapChart\";\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { jsx as jsx20, jsxs as jsxs17 } from \"@emotion/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 performancePeakIcon = require_performance_peak_icon();\nvar calendarIcon = require_calendar_3();\nvar MainContainer = styled20.div`\n min-height: 100vh;\n background: white;\n overflow-x: hidden;\n`;\nvar TabsSection2 = styled20.div`\n background: white;\n padding: 16px;\n\n @media (min-width: 640px) {\n padding-left: 24px;\n padding-right: 24px;\n }\n\n @media (min-width: 768px) {\n padding-left: 32px;\n padding-right: 32px;\n }\n`;\nvar TabsWrapper = styled20.div`\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n`;\nvar TabButton2 = styled20.button`\n position: relative;\n padding: 8px 16px;\n font-size: 12px;\n font-weight: 500;\n transition: all 0.2s;\n border-radius: 9999px;\n outline: none;\n border: 1px solid;\n cursor: pointer;\n\n ${(props) => props.$isActive ? `\n color: white;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n border-color: rgba(23, 97, 163, 0.45);\n background: linear-gradient(90deg, rgba(23, 97, 163, 1) 0%, rgba(77, 175, 131, 1) 100%);\n ` : `\n color: rgba(55, 65, 81, 1);\n border-color: transparent;\n background: transparent;\n \n &:hover {\n border-color: rgba(23, 97, 163, 0.25);\n background: rgba(23, 97, 163, 0.05);\n }\n `}\n\n &:focus-visible {\n box-shadow: 0 0 0 2px rgba(23, 97, 163, 0.35);\n }\n\n @media (min-width: 640px) {\n padding: 10px 24px;\n font-size: 14px;\n }\n`;\nvar FiltersSection = styled20.div`\n padding: 16px;\n position: relative;\n z-index: 50;\n\n @media (min-width: 640px) {\n padding-left: 24px;\n padding-right: 24px;\n }\n\n @media (min-width: 768px) {\n padding-left: 32px;\n padding-right: 32px;\n }\n`;\nvar FiltersWrapper = styled20.div`\n display: flex;\n gap: 12px;\n align-items: flex-end;\n flex-wrap: wrap;\n position: relative;\n\n @media (min-width: 640px) {\n gap: 16px;\n }\n`;\nvar FilterDropdownWrapper = styled20.div`\n position: relative;\n z-index: ${(props) => props.$zIndex};\n`;\nvar ApplyButton2 = styled20.button`\n width: 77px;\n height: 30px;\n border-radius: 4px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: linear-gradient(90deg, rgba(23, 97, 163, 1) 0%, rgba(77, 175, 131, 1) 100%);\n color: white;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: opacity 0.2s;\n\n &:hover {\n opacity: 0.9;\n }\n`;\nvar ContentSection = styled20.div`\n padding: 16px;\n overflow-x: hidden;\n overflow-y: visible;\n\n @media (min-width: 640px) {\n padding-left: 24px;\n padding-right: 24px;\n }\n\n @media (min-width: 768px) {\n padding-left: 32px;\n padding-right: 32px;\n }\n`;\nvar PieGrid = styled20.div`\n display: grid;\n grid-template-columns: 1fr;\n gap: 16px;\n\n @media (min-width: 768px) {\n grid-template-columns: repeat(2, 1fr);\n }\n\n @media (min-width: 1024px) {\n grid-template-columns: repeat(3, 1fr);\n }\n\n @media (min-width: 640px) {\n gap: 24px;\n }\n`;\nvar Card2 = styled20.div`\n border-radius: 10px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: rgba(241, 247, 248, 1);\n padding: 16px;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n overflow: visible;\n\n @media (min-width: 640px) {\n padding: 24px;\n }\n`;\nvar CardHeaderRow = styled20.div`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin-bottom: 16px;\n`;\nvar MenuButton4 = styled20.button`\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n background: transparent;\n border: none;\n cursor: pointer;\n transition: background-color 0.2s;\n\n &:hover {\n background: rgba(243, 244, 246, 1);\n }\n`;\nvar MenuDots4 = styled20.div`\n display: flex;\n gap: 4px;\n`;\nvar MenuDot3 = styled20.span`\n width: 4px;\n height: 4px;\n background: rgba(107, 114, 128, 1);\n border-radius: 50%;\n`;\nvar ChartContainer2 = styled20.div`\n height: 192px;\n padding: 8px;\n border-radius: 16px;\n\n @media (min-width: 640px) {\n height: 224px;\n }\n\n @media (min-width: 768px) {\n height: 256px;\n }\n`;\nvar DetailsSection = styled20.div`\n margin-top: 16px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n font-size: 14px;\n\n @media (min-width: 640px) {\n margin-top: 24px;\n gap: 12px;\n }\n`;\nvar DetailRow2 = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\nvar DetailLeft = styled20.div`\n display: flex;\n align-items: center;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar ColorBlock = styled20.span`\n width: 16px;\n height: 8px;\n border-radius: 2px;\n background-color: ${(props) => props.$color};\n flex-shrink: 0;\n\n @media (min-width: 640px) {\n width: 20px;\n height: 10px;\n }\n`;\nvar DetailLabel2 = styled20.span`\n color: rgba(55, 65, 81, 1);\n font-size: 10px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar DetailValue2 = styled20.span`\n font-weight: 600;\n color: black;\n font-size: 12px;\n margin-left: 8px;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar DetailsCard = styled20(Card2)``;\nvar DetailsCardTitle = styled20.h3`\n font-size: 16px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n margin-bottom: 16px;\n\n @media (min-width: 640px) {\n font-size: 18px;\n margin-bottom: 24px;\n }\n`;\nvar DetailsList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n @media (min-width: 640px) {\n gap: 20px;\n }\n`;\nvar DetailItem = styled20.div`\n display: flex;\n align-items: flex-start;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar DetailColorBar = styled20.span`\n display: inline-block;\n flex-shrink: 0;\n width: 18px;\n height: 10px;\n border-radius: 2px;\n background-color: ${(props) => props.$color};\n`;\nvar DetailContent = styled20.div`\n flex: 1;\n min-width: 0;\n`;\nvar DetailHeader = styled20.div`\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nvar DetailItemLabel = styled20.div`\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n font-size: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar StatusBadge = styled20.div`\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 16px;\n border-radius: 4px;\n background-color: ${(props) => props.$bgColor};\n padding: 2px 4px;\n`;\nvar StatusText = styled20.span`\n font-family: Poppins, sans-serif;\n font-weight: 600;\n white-space: nowrap;\n font-size: 6px;\n color: ${(props) => props.$color};\n`;\nvar DetailDescription = styled20.div`\n font-size: 10px;\n color: rgba(107, 114, 128, 1);\n margin-top: 2px;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar DetailItemValue = styled20.div`\n font-weight: 700;\n color: rgba(17, 24, 39, 1);\n font-size: 12px;\n margin-left: 8px;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar QuickStatsColumn = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n @media (min-width: 640px) {\n gap: 16px;\n }\n\n @media (min-width: 768px) {\n grid-column: span 2;\n }\n\n @media (min-width: 1024px) {\n grid-column: span 1;\n }\n`;\nvar QuickStatCard = styled20(Card2)``;\nvar StatLabel2 = styled20.div`\n color: rgba(31, 41, 55, 1);\n font-weight: 600;\n font-size: 12px;\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar StatValue2 = styled20.div`\n font-size: 24px;\n font-weight: 700;\n color: rgba(17, 24, 39, 1);\n margin-top: 12px;\n\n @media (min-width: 640px) {\n font-size: 30px;\n margin-top: 16px;\n }\n`;\nvar StatChange = styled20.div`\n font-size: 12px;\n font-weight: 500;\n margin-top: 4px;\n color: ${(props) => props.$isPositive ? \"rgba(22, 163, 74, 1)\" : \"rgba(220, 38, 38, 1)\"};\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar StatDescription = styled20.div`\n font-size: 10px;\n color: rgba(107, 114, 128, 1);\n margin-top: 8px;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar TwoColumnGrid = styled20.div`\n display: grid;\n grid-template-columns: 1fr;\n gap: 16px;\n max-width: 100%;\n\n @media (min-width: 1024px) {\n grid-template-columns: minmax(0, 1fr) minmax(0, 276px);\n gap: 0px;\n }\n\n @media (min-width: 640px) {\n gap: 24px;\n }\n`;\nvar MainChartCard = styled20.div`\n width: 100%;\n min-height: 350px;\n border-radius: 10px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: rgba(241, 247, 248, 1);\n padding: 16px;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n overflow: hidden;\n\n @media (min-width: 640px) {\n padding: 22px 30px 55px 30px;\n min-height: 383px;\n }\n`;\nvar ChartWrapper = styled20.div`\n height: 100%;\n display: flex;\n flex-direction: column;\n`;\nvar Sidebar = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n width: 100%;\n\n @media (min-width: 1024px) {\n max-width: 276px;\n gap: 24px;\n }\n\n @media (min-width: 640px) {\n gap: 24px;\n }\n`;\nvar SidebarCard = styled20.div`\n width: 100%;\n border-radius: 10px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: rgba(241, 247, 248, 1);\n padding: 16px;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n\n @media (min-width: 640px) {\n padding: 16px;\n }\n`;\nvar SidebarTitle = styled20.h3`\n font-size: 12px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n margin-bottom: 12px;\n\n @media (min-width: 640px) {\n font-size: 14px;\n margin-bottom: 16px;\n }\n`;\nvar SidebarDetailsList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar SidebarDetailItem = styled20.div`\n display: flex;\n align-items: flex-start;\n gap: 8px;\n`;\nvar PercentageBadge = styled20.div`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: 4px 8px;\n border-radius: 4px;\n background-color: ${(props) => props.$bgColor};\n font-weight: 700;\n font-size: 10px;\n color: rgba(17, 24, 39, 1);\n white-space: nowrap;\n flex-shrink: 0;\n\n @media (min-width: 640px) {\n font-size: 12px;\n padding: 6px 10px;\n }\n`;\nvar DetailsCardFooter = styled20.div`\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid rgba(229, 231, 235, 1);\n display: flex;\n align-items: flex-start;\n gap: 8px;\n`;\nvar DetailsCardFooterIcon = styled20.div`\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background-color: rgba(96, 165, 250, 1);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-top: 2px;\n`;\nvar DetailsCardFooterIconText = styled20.span`\n font-size: 10px;\n font-weight: 700;\n color: white;\n`;\nvar DetailsCardFooterText = styled20.div`\n flex: 1;\n font-size: 12px;\n color: rgba(107, 114, 128, 1);\n line-height: 1.5;\n`;\nvar DetailsCardFooterBold = styled20.span`\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar SidebarColorBlock = styled20.span`\n display: inline-block;\n width: 20px;\n height: 20px;\n border-radius: 4px;\n flex-shrink: 0;\n background-color: ${(props) => props.$color};\n\n @media (min-width: 640px) {\n width: 24px;\n height: 24px;\n }\n`;\nvar SidebarDetailContent = styled20.div`\n flex: 1;\n min-width: 0;\n`;\nvar SidebarDetailLabel = styled20.div`\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n font-size: 10px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar SidebarDetailDescription = styled20.div`\n font-size: 9px;\n color: rgba(107, 114, 128, 1);\n margin-top: 2px;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n\n @media (min-width: 640px) {\n font-size: 10px;\n }\n`;\nvar SidebarDetailValue = styled20.div`\n font-weight: 700;\n color: rgba(17, 24, 39, 1);\n font-size: 10px;\n margin-left: 8px;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar ActionButtonsWrapper = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n @media (min-width: 640px) {\n gap: 16px;\n }\n`;\nvar ActionButton2 = styled20.button`\n width: 100%;\n padding: 10px 16px;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 600;\n border: none;\n cursor: pointer;\n transition: all 0.2s;\n\n ${(props) => {\n switch (props.$variant) {\n case \"danger\":\n return `\n background: rgba(239, 68, 68, 1);\n color: white;\n &:hover { background: rgba(220, 38, 38, 1); }\n `;\n case \"primary\":\n return `\n background: rgba(59, 130, 246, 1);\n color: white;\n &:hover { background: rgba(37, 99, 235, 1); }\n `;\n case \"success\":\n return `\n background: rgba(34, 197, 94, 1);\n color: white;\n &:hover { background: rgba(22, 163, 74, 1); }\n `;\n case \"mahati\":\n return `\n background: rgba(23, 97, 163, 1);\n color: white;\n &:hover { background: rgba(15, 74, 122, 1); }\n `;\n default:\n return `\n background: rgba(107, 114, 128, 1);\n color: white;\n &:hover { background: rgba(75, 85, 99, 1); }\n `;\n }\n}}\n`;\nvar GanttGrid = styled20.div`\n display: grid;\n grid-template-columns: 1fr;\n gap: 16px;\n max-width: 100%;\n overflow: hidden;\n\n @media (min-width: 1024px) {\n grid-template-columns: minmax(0, 1fr) minmax(0, 205px);\n gap: 4px;\n }\n\n @media (min-width: 640px) {\n gap: 24px;\n }\n`;\nvar GanttChartCard = styled20(MainChartCard)`\n overflow-x: auto;\n \n @media (min-width: 1024px) {\n overflow-x: hidden;\n }\n\n @media (min-width: 640px) {\n padding: 12px 16px;\n min-height: 400px;\n }\n\n @media (min-width: 1024px) {\n padding: 22px 30px 55px 30px;\n min-height: 383px;\n }\n`;\nvar GanttChartWrapper = styled20.div`\n height: 100%;\n display: flex;\n flex-direction: column;\n min-width: 650px;\n width: 100%;\n\n @media (min-width: 1024px) {\n min-width: 0;\n }\n`;\nvar GanttSidebar = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n width: 100%;\n min-width: 0;\n\n @media (min-width: 1024px) {\n max-width: 205px;\n }\n`;\nvar GanttQuickInsightsCard = styled20(SidebarCard)`\n max-height: 400px;\n overflow-y: auto;\n`;\nvar GanttInsightsTitle = styled20(SidebarTitle)`\n position: sticky;\n top: 0;\n background: rgba(241, 247, 248, 1);\n padding-bottom: 8px;\n margin-bottom: 4px;\n`;\nvar GanttProjectInfo = styled20.div`\n font-size: 9px;\n color: rgba(75, 85, 99, 1);\n margin-bottom: 12px;\n position: sticky;\n top: 20px;\n background: rgba(241, 247, 248, 1);\n padding-bottom: 4px;\n`;\nvar GanttTaskList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar GanttTaskItem = styled20.div`\n display: flex;\n align-items: center;\n gap: 8px;\n padding-bottom: 8px;\n border-bottom: 1px solid rgba(229, 231, 235, 1);\n\n &:last-child {\n border-bottom: none;\n }\n`;\nvar GanttTaskDot = styled20.div`\n width: 12px;\n height: 12px;\n border-radius: 50%;\n flex-shrink: 0;\n background: ${(props) => props.$color};\n`;\nvar GanttTaskContent = styled20.div`\n flex: 1;\n min-width: 0;\n`;\nvar GanttTaskName = styled20.div`\n font-weight: 500;\n color: rgba(17, 24, 39, 1);\n font-size: 10px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar GanttTaskProgress = styled20.div`\n font-size: 8px;\n color: rgba(107, 114, 128, 1);\n margin-top: 2px;\n`;\nvar GanttTaskStatus = styled20.div`\n font-size: 8px;\n font-weight: 600;\n padding: 2px 8px;\n border-radius: 4px;\n white-space: nowrap;\n background-color: ${(props) => props.$bgColor};\n color: ${(props) => props.$color};\n`;\nvar ProjectSummaryCard = styled20(SidebarCard)``;\nvar ProjectSummaryTitle = styled20(SidebarTitle)``;\nvar ProjectSummaryContent = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar ProjectSummaryLabel = styled20.div`\n font-size: 9px;\n color: rgba(75, 85, 99, 1);\n margin-bottom: 8px;\n\n @media (min-width: 640px) {\n font-size: 10px;\n }\n`;\nvar ProjectStatusGrid = styled20.div`\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n gap: 8px;\n`;\nvar ProjectStatusGridFull = styled20.div`\n display: grid;\n grid-template-columns: 1fr;\n gap: 8px;\n margin-top: 8px;\n`;\nvar ProjectStatusBox = styled20.div`\n background: ${(props) => props.$bgColor};\n padding: 8px;\n border-radius: 4px;\n`;\nvar ProjectStatusLabel = styled20.div`\n color: ${(props) => props.$color};\n font-size: 10px;\n font-weight: 600;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar ProjectStatusValue = styled20.div`\n font-size: 16px;\n font-weight: 700;\n color: rgba(17, 24, 39, 1);\n\n @media (min-width: 640px) {\n font-size: 18px;\n }\n`;\nvar ProjectExpectedDate = styled20.div`\n font-size: 9px;\n color: rgba(107, 114, 128, 1);\n margin-top: 8px;\n\n @media (min-width: 640px) {\n font-size: 10px;\n margin-top: 12px;\n }\n`;\nvar CalendarGrid2 = styled20.div`\n display: grid;\n grid-template-columns: 1fr;\n gap: 16px;\n max-width: 100%;\n overflow: hidden;\n\n @media (min-width: 1024px) {\n grid-template-columns: minmax(0, 1fr) minmax(0, 165px);\n gap: 0px;\n }\n\n @media (min-width: 640px) {\n gap: 24px;\n }\n`;\nvar CalendarChartCard = styled20(MainChartCard)`\n overflow-x: auto;\n \n @media (min-width: 1024px) {\n overflow-x: hidden;\n }\n`;\nvar CalendarChartWrapper = styled20.div`\n height: 100%;\n display: flex;\n flex-direction: column;\n min-width: 750px;\n width: 100%;\n\n @media (min-width: 1024px) {\n min-width: 0;\n }\n`;\nvar CalendarSidebar = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n width: 100%;\n min-width: 0;\n\n @media (min-width: 1024px) {\n max-width: 280px;\n }\n`;\nvar ActivityLegendCard = styled20(SidebarCard)``;\nvar ActivityLegendTitle = styled20(SidebarTitle)``;\nvar ActivityLegendList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n`;\nvar ActivityLegendItem = styled20.div`\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nvar ActivityLegendColor = styled20.div`\n width: 16px;\n height: 16px;\n border-radius: 2px;\n flex-shrink: 0;\n background-color: ${(props) => props.$bgColor};\n`;\nvar ActivityLegendLabel = styled20.span`\n font-size: 10px;\n color: rgba(55, 65, 81, 1);\n white-space: nowrap;\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar CalendarQuickInsightsCard = styled20.div`\n width: 100%;\n max-width: 280px;\n min-height: 210px;\n border-radius: 10px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: rgba(241, 247, 248, 1);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n padding: 16px 12px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n`;\nvar CalendarInsightsHeader = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n`;\nvar CalendarInsightsTitle = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 11px;\n font-weight: 600;\n line-height: normal;\n`;\nvar CalendarInsightsSubtitle = styled20.div`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n line-height: normal;\n text-align: right;\n`;\nvar CalendarTotalVolumeLabel = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 11px;\n font-weight: 600;\n line-height: normal;\n`;\nvar CalendarTotalVolumeValue = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 17px;\n font-weight: 600;\n line-height: normal;\n margin-top: 8px;\n`;\nvar CalendarDivider = styled20.div`\n width: 100%;\n height: 1px;\n background: rgba(77, 175, 131, 0.2);\n`;\nvar CalendarIconBox = styled20.div`\n width: 18px;\n height: 18px;\n border-radius: 4px;\n background: rgba(23, 97, 163, 1);\n display: flex;\n align-items: center;\n justify-content: center;\n`;\nvar CalendarIcon = styled20.img`\n width: 11px;\n height: 11px;\n object-fit: cover;\n`;\nvar CalendarPeakDayWrapper = styled20.div`\n display: flex;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n`;\nvar CalendarPeakDayIconBox = styled20(CalendarIconBox)``;\nvar CalendarPeakDayContent = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 4px;\n flex: 1;\n`;\nvar CalendarPeakDayLabel = styled20.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 7.5px;\n font-weight: 500;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarPeakDayValue = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 9px;\n font-weight: 600;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarPeakDayCount = styled20.div`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 7.5px;\n font-weight: 500;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarActiveDayWrapper = styled20.div`\n display: flex;\n align-items: flex-start;\n gap: 8px;\n width: 100%;\n`;\nvar CalendarActiveDayIconBox = styled20(CalendarIconBox)``;\nvar CalendarActiveDayContent = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 4px;\n flex: 1;\n`;\nvar CalendarActiveDayLabel = styled20.div`\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 7.5px;\n font-weight: 500;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarActiveDayValue = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 9px;\n font-weight: 600;\n line-height: normal;\n white-space: nowrap;\n`;\nvar CalendarActiveDayAvg = styled20.div`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 7.5px;\n font-weight: 500;\n line-height: normal;\n white-space: nowrap;\n`;\nvar HorizontalBarSidebar = styled20(Sidebar)``;\nvar DemoLegendsCard = styled20(SidebarCard)``;\nvar DemoLegendsTitle = styled20(SidebarTitle)``;\nvar DemoLegendsList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n @media (min-width: 640px) {\n gap: 12px;\n }\n`;\nvar DemoLegendItem = styled20.div`\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nvar DemoLegendColor = styled20.div`\n width: 14px;\n height: 12px;\n border-radius: 4px;\n flex-shrink: 0;\n background-color: ${(props) => props.$bgColor};\n`;\nvar DemoLegendLabel = styled20.span`\n font-size: 10px;\n color: rgba(55, 65, 81, 1);\n\n @media (min-width: 640px) {\n font-size: 12px;\n }\n`;\nvar TopPerformerCard = styled20(SidebarCard)``;\nvar TopPerformerHeader = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 12px;\n`;\nvar TopPerformerTitle = styled20.h3`\n font-size: 12px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n\n @media (min-width: 640px) {\n font-size: 14px;\n }\n`;\nvar TopPerformerIndicator = styled20.div`\n display: flex;\n align-items: center;\n gap: 4px;\n color: ${(props) => props.$color};\n`;\nvar TopPerformerArrow = styled20.svg`\n width: 14px;\n height: 14px;\n fill: currentColor;\n transform: ${(props) => props.$isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\"};\n`;\nvar TopPerformerChange = styled20.span`\n font-size: 10px;\n font-weight: 600;\n`;\nvar TopPerformerContent = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n`;\nvar TopPerformerLabel = styled20.div`\n font-size: 10px;\n color: rgba(107, 114, 128, 1);\n`;\nvar TopPerformerValue = styled20.div`\n font-size: 14px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar TopPerformerStatsGrid = styled20.div`\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n gap: 12px;\n margin-top: 12px;\n`;\nvar TopPerformerStat = styled20.div``;\nvar TopPerformerStatLabel = styled20.div`\n font-size: 9px;\n color: rgba(107, 114, 128, 1);\n`;\nvar TopPerformerStatValue = styled20.div`\n font-size: 14px;\n font-weight: 600;\n color: ${(props) => props.$color || \"rgba(17, 24, 39, 1)\"};\n`;\nvar TopPerformerNeedsFocus = styled20.div`\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px solid rgba(229, 231, 235, 1);\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nvar TopPerformerNeedsFocusLabel = styled20.span`\n font-size: 9px;\n color: rgba(107, 114, 128, 1);\n`;\nvar TopPerformerNeedsFocusValue = styled20.span`\n font-size: 12px;\n font-weight: 600;\n color: rgba(220, 38, 38, 1);\n`;\nvar GaugeQuickInsightsCard = styled20.div`\n width: 276px;\n height: 191px;\n border-radius: 10px;\n border: 1px solid rgba(23, 97, 163, 1);\n background: rgba(241, 247, 248, 1);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n position: relative;\n`;\nvar GaugeInsightsHeader = styled20.div`\n position: absolute;\n top: 17px;\n left: 19px;\n right: 17.14px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\nvar GaugeInsightsTitle = styled20.div`\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 600;\n line-height: normal;\n`;\nvar GaugeInsightsDate = styled20.div`\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 500;\n line-height: normal;\n`;\nvar GaugeVolume = styled20.div`\n position: absolute;\n top: 57px;\n left: 18.13px;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 12px;\n font-weight: 600;\n line-height: normal;\n`;\nvar GaugeVolumeValue = styled20.div`\n position: absolute;\n top: 80px;\n left: 18.13px;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 18px;\n font-weight: 600;\n line-height: normal;\n`;\nvar GaugeDivider = styled20.div`\n position: absolute;\n top: 119px;\n left: 19.14px;\n right: 19.14px;\n height: 1px;\n background: rgba(77, 175, 131, 0.2);\n`;\nvar GaugePeakDay = styled20.div`\n position: absolute;\n top: 137px;\n left: 19.14px;\n width: 20.146px;\n height: 20px;\n border-radius: 4px;\n background: rgba(23, 97, 163, 1);\n`;\nvar GaugePeakIcon = styled20.img`\n position: absolute;\n top: 3.98px;\n left: 4.05px;\n width: 12.044px;\n height: 12.044px;\n object-fit: cover;\n`;\nvar GaugePeakLabel = styled20.div`\n position: absolute;\n top: 134px;\n left: 48.35px;\n width: 38.277px;\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n line-height: normal;\n`;\nvar GaugePeakDate = styled20.div`\n position: absolute;\n top: 146px;\n left: 48.35px;\n width: 59.431px;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 600;\n line-height: normal;\n`;\nvar GaugePeakEvents = styled20.div`\n position: absolute;\n top: 161px;\n left: 48.35px;\n width: 52.38px;\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n line-height: normal;\n`;\nvar GaugeActiveDayBox = styled20.div`\n position: absolute;\n top: 137px;\n left: 164.18px;\n width: 20.146px;\n height: 20px;\n border-radius: 4px;\n background: rgba(23, 97, 163, 1);\n`;\nvar GaugeActiveIcon = styled20.img`\n position: absolute;\n top: 4.98px;\n left: 5.05px;\n width: 10.036px;\n height: 10.036px;\n object-fit: cover;\n`;\nvar GaugeActiveLabel = styled20.div`\n position: absolute;\n top: 134px;\n left: 193.39px;\n width: 65.474px;\n color: rgba(23, 97, 163, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n line-height: normal;\n`;\nvar GaugeActiveDayValue = styled20.div`\n position: absolute;\n top: 146px;\n left: 193.39px;\n width: 62.453px;\n color: rgba(0, 0, 0, 1);\n font-family: Poppins, sans-serif;\n font-size: 10px;\n font-weight: 600;\n line-height: normal;\n`;\nvar GaugeActiveAvg = styled20.div`\n position: absolute;\n top: 161px;\n left: 193.39px;\n width: 57.416px;\n color: rgba(94, 94, 94, 1);\n font-family: Poppins, sans-serif;\n font-size: 8px;\n font-weight: 500;\n line-height: normal;\n`;\nvar GoalHealthCard = styled20(SidebarCard)``;\nvar PerformanceSummaryCard = styled20(SidebarCard)``;\nvar PerformanceSummaryHeader = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n`;\nvar PerformanceSummaryTitle = styled20.h3`\n font-size: 14px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar PerformanceSummaryMenuButton = styled20.button`\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: rgba(156, 163, 175, 1);\n background: transparent;\n border: none;\n cursor: pointer;\n \n &:hover {\n color: rgba(75, 85, 99, 1);\n }\n`;\nvar PerformanceSummaryList = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n`;\nvar PerformanceSummaryItem = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\nvar PerformanceSummaryLabel = styled20.div`\n font-size: 14px;\n font-weight: 500;\n color: rgba(17, 24, 39, 1);\n`;\nvar PerformanceSummaryBadge = styled20.div`\n padding: 4px 12px;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 600;\n white-space: nowrap;\n \n ${(props) => {\n switch (props.$variant) {\n case \"success\":\n return `\n background-color: rgba(220, 252, 231, 1);\n color: rgba(22, 163, 74, 1);\n `;\n case \"danger\":\n return `\n background-color: rgba(254, 226, 226, 1);\n color: rgba(220, 38, 38, 1);\n `;\n case \"info\":\n return `\n background-color: rgba(219, 234, 254, 1);\n color: rgba(37, 99, 235, 1);\n `;\n default:\n return `\n background-color: rgba(243, 244, 246, 1);\n color: rgba(75, 85, 99, 1);\n `;\n }\n}}\n`;\nvar PerformanceSummaryFooter = styled20.div`\n margin-top: 16px;\n padding-top: 16px;\n border-top: 1px solid rgba(229, 231, 235, 1);\n display: flex;\n align-items: flex-start;\n gap: 8px;\n`;\nvar PerformanceSummaryIcon = styled20.div`\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background-color: rgba(96, 165, 250, 1);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-top: 2px;\n`;\nvar PerformanceSummaryIconText = styled20.span`\n font-size: 10px;\n font-weight: 700;\n color: white;\n`;\nvar PerformanceSummaryActionText = styled20.div`\n flex: 1;\n font-size: 12px;\n color: rgba(107, 114, 128, 1);\n line-height: 1.5;\n`;\nvar PerformanceSummaryActionBold = styled20.span`\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar BulletDetailItem = styled20.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 12px 0;\n \n &:not(:last-child) {\n border-bottom: 1px solid rgba(229, 231, 235, 1);\n }\n`;\nvar BulletDetailLeft = styled20.div`\n display: flex;\n flex-direction: column;\n gap: 4px;\n`;\nvar BulletDetailLabel = styled20.span`\n font-size: 14px;\n font-weight: 500;\n color: rgba(17, 24, 39, 1);\n`;\nvar BulletDetailDescription = styled20.span`\n font-size: 12px;\n color: rgba(107, 114, 128, 1);\n`;\nvar BulletPercentageBox = styled20.div`\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 14px;\n font-weight: 500;\n \n ${(props) => {\n const label = props.$label.toLowerCase();\n if (label.includes(\"revenue\")) {\n return `\n background-color: rgba(70, 194, 155, 0.15);\n color: rgba(22, 163, 74, 1);\n `;\n } else if (label.includes(\"profit\")) {\n return `\n background-color: rgba(239, 68, 68, 0.15);\n color: rgba(220, 38, 38, 1);\n `;\n } else if (label.includes(\"customer\")) {\n return `\n background-color: rgba(23, 97, 163, 0.15);\n color: rgba(23, 97, 163, 1);\n `;\n } else {\n return `\n background-color: rgba(229, 231, 235, 1);\n color: rgba(55, 65, 81, 1);\n `;\n }\n}}\n`;\nvar BulletDetailsCardFooter = styled20.div`\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding-top: 16px;\n margin-top: 16px;\n border-top: 1px solid rgba(229, 231, 235, 1);\n`;\nvar BulletDetailsIcon = styled20.div`\n width: 16px;\n height: 16px;\n border-radius: 50%;\n background-color: rgba(96, 165, 250, 1);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n margin-top: 2px;\n`;\nvar BulletDetailsIconText = styled20.span`\n font-size: 10px;\n font-weight: bold;\n color: white;\n`;\nvar BulletDetailsFooterText = styled20.p`\n font-size: 12px;\n color: rgba(107, 114, 128, 1);\n margin: 0;\n line-height: 1.5;\n`;\nvar BulletDetailsFooterBold = styled20.span`\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar GoalHealthHeader = styled20.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 16px;\n`;\nvar GoalHealthTitle = styled20.h3`\n font-size: 14px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar GoalHealthBadge = styled20.div`\n display: flex;\n align-items: center;\n gap: 4px;\n`;\nvar GoalHealthBadgeText = styled20.span`\n font-size: 10px;\n font-weight: 500;\n color: rgba(46, 158, 120, 1);\n`;\nvar GoalHealthCheckmark = styled20.svg`\n width: 16px;\n height: 16px;\n`;\nvar GoalHealthMenuButton = styled20.button`\n width: 16px;\n height: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: rgba(156, 163, 175, 1);\n background: transparent;\n border: none;\n cursor: pointer;\n \n &:hover {\n color: rgba(75, 85, 99, 1);\n }\n`;\nvar GoalHealthMenuIcon = styled20.svg`\n width: 16px;\n height: 16px;\n fill: currentColor;\n`;\nvar GoalHealthStatsGrid = styled20.div`\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n gap: 16px;\n margin-bottom: 16px;\n`;\nvar GoalHealthStat = styled20.div``;\nvar GoalHealthStatLabel = styled20.div`\n font-size: 10px;\n color: rgba(107, 114, 128, 1);\n margin-bottom: 4px;\n`;\nvar GoalHealthStatValue = styled20.div`\n font-size: 14px;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar colorToClass = (color) => {\n const c = typeof color === \"string\" ? color.toLowerCase() : \"\";\n if (c.startsWith(\"rgba(\") || c.startsWith(\"rgb(\")) {\n return c;\n }\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\": {\n textColor: \"rgba(23, 97, 163, 1)\",\n backgroundColor: \"rgba(23, 97, 163, 0.15)\"\n },\n \"Overdue\": {\n textColor: \"rgba(220, 38, 38, 1)\",\n backgroundColor: \"rgba(239, 68, 68, 0.15)\"\n },\n \"On Target\": {\n textColor: \"rgba(46, 158, 120, 1)\",\n backgroundColor: \"rgba(70, 194, 155, 0.15)\"\n }\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 === \"gantt\") return \"Gantt Chart\";\n if (type === \"calendarheatmap\") return \"Calendar Heat Map\";\n if (type === \"horizontalbar\") return \"Horizontal Bar Chart\";\n return `${type.charAt(0).toUpperCase() + type.slice(1)} Chart`;\n};\nvar MahatiChartAnalyticsWidget = ({\n title,\n chartTypes,\n initialChartType,\n filters,\n chartFilters,\n selectedFilters,\n chartDataMap,\n bulletData,\n gaugeData,\n horizontalBarData,\n ganttData,\n heatmapData,\n calendarheatmapData,\n onApplyFilters,\n quickStats,\n actionButtons,\n onChartTypeChange,\n onFiltersChange,\n details\n}) => {\n const [chartType, setChartType] = useState10(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = useState10(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = useState10(\"Project 1\");\n const currentFilters = useMemo2(() => {\n if (chartFilters && chartFilters[chartType]) {\n return chartFilters[chartType] || [];\n }\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = useMemo2(() => {\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 = useMemo2(() => {\n if (chartType === \"bullet\" && bulletData && bulletData.bullets) {\n return bulletData.bullets.map((bullet) => {\n const percentageAchieved = Math.round(bullet.achieved / bullet.target * 100);\n return {\n label: bullet.name,\n value: `${percentageAchieved}% Done`,\n description: `${percentageAchieved}% of target achieved`,\n color: \"rgba(183, 232, 214, 0.9)\"\n };\n });\n }\n return [];\n }, [chartType, bulletData]);\n const currentGanttData = useMemo2(() => {\n if (chartType === \"gantt\" && ganttData) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") {\n newStatus = \"In Progress\";\n }\n return {\n ...task,\n progress: newProgress,\n status: newStatus\n };\n })\n };\n }\n return {\n ...baseData,\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`\n };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = useMemo2(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = selectedFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\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 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;\n let topProduct = \"\";\n let minRevenue = Infinity;\n let 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;\n let isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const currentRevenue = monthData[topProduct].Revenue;\n const previousRevenue = previousMonthData[topProduct].Revenue;\n if (previousRevenue !== 0) {\n percentageChange = (currentRevenue - previousRevenue) / previousRevenue * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return {\n category: \"Category\",\n name: topProduct,\n revenue: `${topProductData.Revenue}k`,\n profit: `${topProductData.Profit}k`,\n needsFocus: needsFocusProduct,\n change: `${Math.abs(percentageChange).toFixed(0)}%`,\n isIncrease\n };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = useMemo2(() => {\n if (chartType !== \"calendarheatmap\" || !calendarheatmapData) {\n return {\n peakDay: { date: \"\", dayName: \"\", value: 0 },\n mostActiveDay: { dayName: \"\", count: 0, average: 0 }\n };\n }\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project] || !calendarheatmapData[project][year] || !calendarheatmapData[project][year][type]) {\n return {\n peakDay: { date: \"\", dayName: \"\", value: 0 },\n mostActiveDay: { dayName: \"\", count: 0, average: 0 }\n };\n }\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = {\n \"Sunday\": { total: 0, count: 0 },\n \"Monday\": { total: 0, count: 0 },\n \"Tuesday\": { total: 0, count: 0 },\n \"Wednesday\": { total: 0, count: 0 },\n \"Thursday\": { total: 0, count: 0 },\n \"Friday\": { total: 0, count: 0 },\n \"Saturday\": { total: 0, count: 0 }\n };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData && monthData.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [yearPart, monthPart, dayPart] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(yearPart, monthPart - 1, dayPart);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({\n date: item.date,\n value: item.value,\n dayName\n });\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) {\n const peak = allDayData.reduce(\n (max, current) => current.value > max.value ? current : max\n );\n peakDay = peak;\n }\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const average = stats.total / stats.count;\n if (average > mostActiveDay.average) {\n mostActiveDay = {\n dayName,\n count: stats.count,\n average: Math.round(average)\n };\n }\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 const date = new Date(dateStr);\n return date.toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = useMemo2(() => {\n if (!bulletData) return null;\n const year = selectedFilters.SelectYear || \"2026\";\n const month = selectedFilters.SelectMonth || \"January\";\n const type = selectedFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData && monthData.bullets) {\n return {\n title: monthData.title || bulletData.title,\n bullets: monthData.bullets\n };\n }\n }\n }\n return {\n title: bulletData.title,\n bullets: bulletData.bullets\n };\n }, [bulletData, 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) {\n return /* @__PURE__ */ jsx20(\n PieLineBarChart,\n {\n chartType,\n data: currentData\n }\n );\n }\n return null;\n case \"bullet\":\n if (currentBulletData) {\n return /* @__PURE__ */ jsx20(\n BulletChart,\n {\n title: currentBulletData.title,\n bullets: currentBulletData.bullets\n }\n );\n }\n return null;\n case \"gauge\":\n if (gaugeData) {\n const selectedYear2 = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth2 = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges || [];\n if (gaugeData[selectedYear2]?.[selectedMonth2]) {\n currentGauge = gaugeData[selectedYear2][selectedMonth2];\n }\n return /* @__PURE__ */ jsx20(\n GaugeChart,\n {\n title: \"Performance Metrics\",\n gauges: currentGauge\n }\n );\n }\n return null;\n case \"gantt\":\n if (currentGanttData) {\n const month = selectedFilters[\"SelectMonth\"] || \"Jan - Feb\";\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n return /* @__PURE__ */ jsx20(\n GanttChart,\n {\n data: currentGanttData,\n selectedYear: year,\n selectedMonth: month,\n selectedProject: selectedGanttProject,\n onProjectChange: setSelectedGanttProject\n }\n );\n }\n return null;\n case \"calendarheatmap\":\n if (calendarheatmapData && calendarheatmapData[selectedCalendarHeatmapProject]) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const projectData = calendarheatmapData[selectedCalendarHeatmapProject];\n const yearData2 = projectData[year];\n if (!yearData2 || !yearData2[type]) {\n return null;\n }\n const heatmapDataForChart = yearData2[type];\n return /* @__PURE__ */ jsx20(\n CalendarHeatmapChart,\n {\n data: heatmapDataForChart,\n selectedProject: selectedCalendarHeatmapProject,\n selectedYear: year,\n selectedType: type,\n onProjectChange: setSelectedCalendarHeatmapProject,\n calendarheatmapData\n }\n );\n }\n return null;\n case \"horizontalbar\":\n if (!horizontalBarData) return null;\n const selectedYear = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = selectedFilters[\"SelectMonth\"] || \"January\";\n const selectedProduct = selectedFilters[\"SelectType\"] || \"Product 1\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n const productData = monthData?.[selectedProduct];\n const xAxisConfig = horizontalBarData.xAxis?.[selectedYear];\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__ */ jsx20(\n HorizontalBarChart,\n {\n title: horizontalBarData.title,\n bars,\n selectedYear,\n selectedMonth,\n selectedType: selectedProduct,\n xAxisConfig,\n topPerformer: currentHorizontalBarTopPerformer\n }\n );\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsxs17(MainContainer, { children: [\n /* @__PURE__ */ jsx20(TabsSection2, { children: /* @__PURE__ */ jsx20(TabsWrapper, { children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ jsx20(\n TabButton2,\n {\n type: \"button\",\n $isActive: isActive,\n onClick: () => {\n setChartType(type);\n onChartTypeChange?.(type);\n },\n \"aria-pressed\": isActive,\n children: tabLabel(type)\n },\n type\n );\n }) }) }),\n /* @__PURE__ */ jsx20(FiltersSection, { children: /* @__PURE__ */ jsxs17(FiltersWrapper, { children: [\n currentFilters.map((filter, index) => {\n const options = filter.options.map((opt) => ({\n key: opt,\n value: opt\n }));\n return /* @__PURE__ */ jsx20(\n FilterDropdownWrapper,\n {\n $zIndex: 50 + (currentFilters.length - index),\n children: /* @__PURE__ */ jsx20(\n ChartDropdown,\n {\n options,\n value: selectedFilters[filter.id],\n onSelect: (val) => onFiltersChange({ ...selectedFilters, [filter.id]: String(val) }),\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ jsx20(\n ApplyButton2,\n {\n type: \"button\",\n onClick: () => onApplyFilters?.(selectedFilters),\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ jsxs17(ContentSection, { children: [\n isPieFamily && /* @__PURE__ */ jsxs17(PieGrid, { children: [\n /* @__PURE__ */ jsxs17(Card2, { style: { overflow: \"visible\" }, children: [\n /* @__PURE__ */ jsx20(CardHeaderRow, { children: /* @__PURE__ */ jsx20(MenuButton4, { type: \"button\", children: /* @__PURE__ */ jsxs17(MenuDots4, { children: [\n /* @__PURE__ */ jsx20(MenuDot3, {}),\n /* @__PURE__ */ jsx20(MenuDot3, {}),\n /* @__PURE__ */ jsx20(MenuDot3, {})\n ] }) }) }),\n /* @__PURE__ */ jsx20(ChartContainer2, { children: renderChart() }),\n /* @__PURE__ */ jsx20(DetailsSection, { children: details.map((item, idx) => /* @__PURE__ */ jsxs17(DetailRow2, { children: [\n /* @__PURE__ */ jsxs17(DetailLeft, { children: [\n /* @__PURE__ */ jsx20(ColorBlock, { $color: colorToClass(item.color) }),\n /* @__PURE__ */ jsx20(DetailLabel2, { children: item.label })\n ] }),\n /* @__PURE__ */ jsx20(DetailValue2, { children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ jsxs17(DetailsCard, { children: [\n /* @__PURE__ */ jsx20(DetailsCardTitle, { children: \"Details\" }),\n /* @__PURE__ */ jsx20(DetailsList, { children: details.map((item, idx) => {\n const statusColors = item.status ? getStatusColors(item.status) : null;\n return /* @__PURE__ */ jsxs17(DetailItem, { children: [\n /* @__PURE__ */ jsx20(DetailColorBar, { $color: colorToClass(item.color) }),\n /* @__PURE__ */ jsxs17(DetailContent, { children: [\n /* @__PURE__ */ jsxs17(DetailHeader, { children: [\n /* @__PURE__ */ jsx20(DetailItemLabel, { children: item.label }),\n item.status && statusColors && /* @__PURE__ */ jsx20(StatusBadge, { $bgColor: statusColors.backgroundColor, children: /* @__PURE__ */ jsx20(StatusText, { $color: statusColors.textColor, children: item.status }) })\n ] }),\n /* @__PURE__ */ jsx20(DetailDescription, { children: item.description })\n ] }),\n /* @__PURE__ */ jsx20(DetailItemValue, { children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs17(QuickStatsColumn, { children: [\n /* @__PURE__ */ jsxs17(QuickStatCard, { children: [\n /* @__PURE__ */ jsx20(StatLabel2, { children: \"Total Volume\" }),\n /* @__PURE__ */ jsx20(StatValue2, { children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx20(StatChange, { $isPositive: quickStats.totalVolume.change.startsWith(\"+\"), children: quickStats.totalVolume.change }),\n /* @__PURE__ */ jsx20(StatDescription, { children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs17(QuickStatCard, { children: [\n /* @__PURE__ */ jsx20(StatLabel2, { children: \"Transactions\" }),\n /* @__PURE__ */ jsx20(StatValue2, { children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx20(StatDescription, { children: quickStats.transactions.description })\n ] })\n ] })\n ] }),\n chartType === \"bullet\" && /* @__PURE__ */ jsxs17(TwoColumnGrid, { children: [\n /* @__PURE__ */ jsx20(MainChartCard, { children: /* @__PURE__ */ jsx20(ChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(Sidebar, { children: [\n /* @__PURE__ */ jsxs17(SidebarCard, { children: [\n /* @__PURE__ */ jsx20(SidebarTitle, { children: \"Details\" }),\n /* @__PURE__ */ jsx20(\"div\", { children: currentBulletData?.bullets.map((bullet, idx) => {\n const percentage = Math.round(bullet.achieved / bullet.target * 100);\n return /* @__PURE__ */ jsxs17(BulletDetailItem, { children: [\n /* @__PURE__ */ jsxs17(BulletDetailLeft, { children: [\n /* @__PURE__ */ jsx20(BulletDetailLabel, { children: bullet.name }),\n /* @__PURE__ */ jsxs17(BulletDetailDescription, { children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(BulletPercentageBox, { $label: bullet.name, children: [\n percentage,\n \"%\"\n ] })\n ] }, idx);\n }) }),\n /* @__PURE__ */ jsxs17(BulletDetailsCardFooter, { children: [\n /* @__PURE__ */ jsx20(BulletDetailsIcon, { children: /* @__PURE__ */ jsx20(BulletDetailsIconText, { children: \"i\" }) }),\n /* @__PURE__ */ jsxs17(BulletDetailsFooterText, { children: [\n \"Suggested Actions:\",\n /* @__PURE__ */ jsx20(BulletDetailsFooterBold, { children: \" Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(GaugeQuickInsightsCard, { children: [\n /* @__PURE__ */ jsxs17(GaugeInsightsHeader, { children: [\n /* @__PURE__ */ jsx20(GaugeInsightsTitle, { children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx20(GaugeInsightsDate, { children: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" }) })\n ] }),\n /* @__PURE__ */ jsx20(GaugeVolume, { children: \"Total Volume\" }),\n /* @__PURE__ */ jsx20(GaugeVolumeValue, { children: \"$33,850.00\" }),\n /* @__PURE__ */ jsx20(GaugeDivider, {}),\n /* @__PURE__ */ jsx20(GaugePeakDay, { children: /* @__PURE__ */ jsx20(GaugePeakIcon, { src: assetSrc3(performancePeakIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsx20(GaugePeakLabel, { children: \"Peak Day\" }),\n /* @__PURE__ */ jsx20(GaugePeakDate, { children: \"Wed, 12 Jun\" }),\n /* @__PURE__ */ jsx20(GaugePeakEvents, { children: \"5,600 events\" }),\n /* @__PURE__ */ jsx20(GaugeActiveDayBox, { children: /* @__PURE__ */ jsx20(GaugeActiveIcon, { src: assetSrc3(calendarIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsx20(GaugeActiveLabel, { children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx20(GaugeActiveDayValue, { children: \"Wednesday\" }),\n /* @__PURE__ */ jsx20(GaugeActiveAvg, { children: \"Avg 920 / day\" })\n ] })\n ] })\n ] }),\n chartType === \"gauge\" && gaugeData && /* @__PURE__ */ jsxs17(TwoColumnGrid, { children: [\n /* @__PURE__ */ jsx20(MainChartCard, { children: /* @__PURE__ */ jsx20(ChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(Sidebar, { children: [\n (() => {\n const selectedYear = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges && gaugeData.gauges.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[selectedYear]?.[selectedMonth]) {\n const filteredGauges = gaugeData[selectedYear][selectedMonth];\n if (filteredGauges && filteredGauges.length > 0) {\n currentGauge = filteredGauges[0];\n }\n }\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(selectedYear);\n const monthName = selectedMonth;\n const monthNames = [\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 monthIndex = monthNames.indexOf(monthName);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday;\n if (lastDayWeekday === 5) {\n lastFriday = lastDay;\n } else if (lastDayWeekday < 5) {\n lastFriday = lastDay - (lastDayWeekday + 2);\n } else {\n lastFriday = lastDay - 1;\n }\n const expectedFinish = new Date(yearNum, monthIndex, lastFriday);\n const formattedDate = expectedFinish.toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ jsxs17(GoalHealthCard, { children: [\n /* @__PURE__ */ jsxs17(GoalHealthHeader, { children: [\n /* @__PURE__ */ jsx20(GoalHealthTitle, { children: \"Goal Health\" }),\n /* @__PURE__ */ jsxs17(GoalHealthBadge, { children: [\n /* @__PURE__ */ jsx20(GoalHealthBadgeText, { children: \"On Track\" }),\n /* @__PURE__ */ jsx20(GoalHealthMenuButton, { children: /* @__PURE__ */ jsxs17(GoalHealthMenuIcon, { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx20(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx20(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx20(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(GoalHealthStatsGrid, { children: [\n /* @__PURE__ */ jsxs17(GoalHealthStat, { children: [\n /* @__PURE__ */ jsx20(GoalHealthStatLabel, { children: \"Current Pace\" }),\n /* @__PURE__ */ jsxs17(GoalHealthStatValue, { children: [\n currentPace,\n \" / day\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(GoalHealthStat, { children: [\n /* @__PURE__ */ jsx20(GoalHealthStatLabel, { children: \"Required Pace\" }),\n /* @__PURE__ */ jsxs17(GoalHealthStatValue, { children: [\n dailyAvgNeeded,\n \" / day\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(GoalHealthStatsGrid, { children: [\n /* @__PURE__ */ jsxs17(GoalHealthStat, { children: [\n /* @__PURE__ */ jsx20(GoalHealthStatLabel, { children: \"Days Remaining\" }),\n /* @__PURE__ */ jsxs17(GoalHealthStatValue, { children: [\n daysRemaining,\n \" days\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(GoalHealthStat, { children: [\n /* @__PURE__ */ jsx20(GoalHealthStatLabel, { children: \"Expected Finish\" }),\n /* @__PURE__ */ jsx20(GoalHealthStatValue, { children: formattedDate })\n ] })\n ] })\n ] });\n })(),\n /* @__PURE__ */ jsxs17(GaugeQuickInsightsCard, { children: [\n /* @__PURE__ */ jsxs17(GaugeInsightsHeader, { children: [\n /* @__PURE__ */ jsx20(GaugeInsightsTitle, { children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx20(GaugeInsightsDate, { children: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" }) })\n ] }),\n /* @__PURE__ */ jsx20(GaugeVolume, { children: \"Total Volume\" }),\n /* @__PURE__ */ jsx20(GaugeVolumeValue, { children: \"$33,850.00\" }),\n /* @__PURE__ */ jsx20(GaugeDivider, {}),\n /* @__PURE__ */ jsx20(GaugePeakDay, { children: /* @__PURE__ */ jsx20(GaugePeakIcon, { src: assetSrc3(performancePeakIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsx20(GaugePeakLabel, { children: \"Peak Day\" }),\n /* @__PURE__ */ jsx20(GaugePeakDate, { children: \"Wed, 12 Jun\" }),\n /* @__PURE__ */ jsx20(GaugePeakEvents, { children: \"5,600 events\" }),\n /* @__PURE__ */ jsx20(GaugeActiveDayBox, { children: /* @__PURE__ */ jsx20(GaugeActiveIcon, { src: assetSrc3(calendarIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsx20(GaugeActiveLabel, { children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx20(GaugeActiveDayValue, { children: \"Wednesday\" }),\n /* @__PURE__ */ jsx20(GaugeActiveAvg, { children: \"Avg 920 / day\" })\n ] })\n ] })\n ] }),\n chartType === \"gantt\" && /* @__PURE__ */ jsxs17(GanttGrid, { children: [\n /* @__PURE__ */ jsx20(GanttChartCard, { children: /* @__PURE__ */ jsx20(GanttChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(GanttSidebar, { children: [\n /* @__PURE__ */ jsxs17(GanttQuickInsightsCard, { children: [\n /* @__PURE__ */ jsx20(GanttInsightsTitle, { children: \"Quick Insights - All Titles\" }),\n /* @__PURE__ */ jsxs17(GanttProjectInfo, { children: [\n \"Showing data for: \",\n selectedGanttProject\n ] }),\n /* @__PURE__ */ jsx20(GanttTaskList, { children: currentGanttData?.tasks.map((task) => {\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs17(GanttTaskItem, { children: [\n /* @__PURE__ */ jsx20(GanttTaskDot, { $color: taskColor }),\n /* @__PURE__ */ jsxs17(GanttTaskContent, { children: [\n /* @__PURE__ */ jsx20(GanttTaskName, { children: task.name }),\n /* @__PURE__ */ jsxs17(GanttTaskProgress, { children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ jsx20(\n GanttTaskStatus,\n {\n $bgColor: getStatusColors(task.status).backgroundColor,\n $color: getStatusColors(task.status).textColor,\n children: task.status\n }\n )\n ] }, task.id);\n }) })\n ] }),\n /* @__PURE__ */ jsxs17(ProjectSummaryCard, { children: [\n /* @__PURE__ */ jsx20(ProjectSummaryTitle, { children: \"Project Summary\" }),\n /* @__PURE__ */ jsxs17(ProjectSummaryContent, { children: [\n /* @__PURE__ */ jsxs17(\"div\", { children: [\n /* @__PURE__ */ jsx20(ProjectSummaryLabel, { children: \"Overall Status\" }),\n /* @__PURE__ */ jsxs17(ProjectStatusGrid, { children: [\n /* @__PURE__ */ jsxs17(ProjectStatusBox, { $bgColor: \"rgba(254, 242, 242, 1)\", children: [\n /* @__PURE__ */ jsx20(ProjectStatusLabel, { $color: \"rgba(220, 38, 38, 1)\", children: \"Overdue\" }),\n /* @__PURE__ */ jsx20(ProjectStatusValue, { children: currentGanttData?.tasks.filter((task) => task.status === \"Overdue\").length || 0 })\n ] }),\n /* @__PURE__ */ jsxs17(ProjectStatusBox, { $bgColor: \"rgba(239, 246, 255, 1)\", children: [\n /* @__PURE__ */ jsx20(ProjectStatusLabel, { $color: \"rgba(37, 99, 235, 1)\", children: \"In Progress\" }),\n /* @__PURE__ */ jsx20(ProjectStatusValue, { children: currentGanttData?.tasks.filter((task) => task.status === \"In Progress\").length || 0 })\n ] })\n ] }),\n /* @__PURE__ */ jsx20(ProjectStatusGridFull, { children: /* @__PURE__ */ jsxs17(ProjectStatusBox, { $bgColor: \"rgba(240, 253, 244, 1)\", children: [\n /* @__PURE__ */ jsx20(ProjectStatusLabel, { $color: \"rgba(22, 163, 74, 1)\", children: \"On Target\" }),\n /* @__PURE__ */ jsx20(ProjectStatusValue, { children: currentGanttData?.tasks.filter((task) => task.status === \"On Target\").length || 0 })\n ] }) })\n ] }),\n /* @__PURE__ */ jsx20(ProjectExpectedDate, { children: (() => {\n if (!currentGanttData?.tasks || currentGanttData.tasks.length === 0) {\n return \"Expected by 25 Feb 2025\";\n }\n const lastTask = currentGanttData.tasks[currentGanttData.tasks.length - 1];\n const endDate = lastTask.endDate;\n const [day, month] = endDate.split(\"/\");\n const monthNames = {\n \"01\": \"Jan\",\n \"02\": \"Feb\",\n \"03\": \"Mar\",\n \"04\": \"Apr\",\n \"05\": \"May\",\n \"06\": \"Jun\",\n \"07\": \"Jul\",\n \"08\": \"Aug\",\n \"09\": \"Sep\",\n \"10\": \"Oct\",\n \"11\": \"Nov\",\n \"12\": \"Dec\"\n };\n const monthName = monthNames[month] || \"Jan\";\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n return `Expected by ${day} ${monthName} ${year}`;\n })() })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"calendarheatmap\" && /* @__PURE__ */ jsxs17(CalendarGrid2, { children: [\n /* @__PURE__ */ jsx20(CalendarChartCard, { children: /* @__PURE__ */ jsx20(CalendarChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(CalendarSidebar, { children: [\n /* @__PURE__ */ jsxs17(ActivityLegendCard, { children: [\n /* @__PURE__ */ jsx20(ActivityLegendTitle, { children: \"Activity Legend\" }),\n /* @__PURE__ */ jsxs17(ActivityLegendList, { children: [\n /* @__PURE__ */ jsxs17(ActivityLegendItem, { children: [\n /* @__PURE__ */ jsx20(ActivityLegendColor, { $bgColor: \"rgba(154, 219, 255, 1)\" }),\n /* @__PURE__ */ jsx20(ActivityLegendLabel, { children: \"<1K: Low activity\" })\n ] }),\n /* @__PURE__ */ jsxs17(ActivityLegendItem, { children: [\n /* @__PURE__ */ jsx20(ActivityLegendColor, { $bgColor: \"rgba(102, 194, 241, 1)\" }),\n /* @__PURE__ */ jsx20(ActivityLegendLabel, { children: \"1K - 3K: Moderate activity\" })\n ] }),\n /* @__PURE__ */ jsxs17(ActivityLegendItem, { children: [\n /* @__PURE__ */ jsx20(ActivityLegendColor, { $bgColor: \"rgba(43, 160, 209, 1)\" }),\n /* @__PURE__ */ jsx20(ActivityLegendLabel, { children: \"3K - 5K: High activity\" })\n ] }),\n /* @__PURE__ */ jsxs17(ActivityLegendItem, { children: [\n /* @__PURE__ */ jsx20(ActivityLegendColor, { $bgColor: \"rgba(23, 97, 163, 1)\" }),\n /* @__PURE__ */ jsx20(ActivityLegendLabel, { children: \">5K: Very high activity\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(CalendarQuickInsightsCard, { children: [\n /* @__PURE__ */ jsxs17(CalendarInsightsHeader, { children: [\n /* @__PURE__ */ jsx20(CalendarInsightsTitle, { children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs17(CalendarInsightsSubtitle, { children: [\n selectedFilters[\"SelectYear\"] || \"2026\",\n \", \",\n selectedCalendarHeatmapProject,\n \", \",\n selectedFilters[\"SelectType\"] || \"Development\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(\"div\", { children: [\n /* @__PURE__ */ jsx20(CalendarTotalVolumeLabel, { children: \"Total Volume\" }),\n /* @__PURE__ */ jsxs17(CalendarTotalVolumeValue, { children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ jsx20(CalendarDivider, {}),\n /* @__PURE__ */ jsxs17(CalendarPeakDayWrapper, { children: [\n /* @__PURE__ */ jsx20(CalendarPeakDayIconBox, { children: /* @__PURE__ */ jsx20(CalendarIcon, { src: assetSrc3(performancePeakIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsxs17(CalendarPeakDayContent, { children: [\n /* @__PURE__ */ jsx20(CalendarPeakDayLabel, { children: \"Peak Day\" }),\n /* @__PURE__ */ jsx20(CalendarPeakDayValue, { children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ jsx20(CalendarPeakDayCount, { children: calendarPeakAndActiveDay.peakDay.value ? `${calendarPeakAndActiveDay.peakDay.value.toLocaleString()} events` : \"5,600 events\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(CalendarActiveDayWrapper, { children: [\n /* @__PURE__ */ jsx20(CalendarActiveDayIconBox, { children: /* @__PURE__ */ jsx20(CalendarIcon, { src: assetSrc3(calendarIcon), alt: \"\" }) }),\n /* @__PURE__ */ jsxs17(CalendarActiveDayContent, { children: [\n /* @__PURE__ */ jsx20(CalendarActiveDayLabel, { children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx20(CalendarActiveDayValue, { children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ jsxs17(CalendarActiveDayAvg, { children: [\n \"Avg \",\n calendarPeakAndActiveDay.mostActiveDay.average || 920,\n \" / day\"\n ] })\n ] })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"horizontalbar\" && /* @__PURE__ */ jsxs17(TwoColumnGrid, { children: [\n /* @__PURE__ */ jsx20(MainChartCard, { style: { minHeight: \"350px\" }, children: /* @__PURE__ */ jsx20(ChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(HorizontalBarSidebar, { children: [\n /* @__PURE__ */ jsxs17(DemoLegendsCard, { children: [\n /* @__PURE__ */ jsx20(DemoLegendsTitle, { children: \"Demo Legends\" }),\n /* @__PURE__ */ jsxs17(DemoLegendsList, { children: [\n /* @__PURE__ */ jsxs17(DemoLegendItem, { children: [\n /* @__PURE__ */ jsx20(DemoLegendColor, { $bgColor: \"rgba(23, 97, 163, 1)\" }),\n /* @__PURE__ */ jsx20(DemoLegendLabel, { children: \"Revenue\" })\n ] }),\n /* @__PURE__ */ jsxs17(DemoLegendItem, { children: [\n /* @__PURE__ */ jsx20(DemoLegendColor, { $bgColor: \"rgba(70, 194, 155, 1)\" }),\n /* @__PURE__ */ jsx20(DemoLegendLabel, { children: \"Profit\" })\n ] }),\n /* @__PURE__ */ jsxs17(DemoLegendItem, { children: [\n /* @__PURE__ */ jsx20(DemoLegendColor, { $bgColor: \"rgba(47, 164, 169, 1)\" }),\n /* @__PURE__ */ jsx20(DemoLegendLabel, { children: \"Cost\" })\n ] })\n ] })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ jsxs17(TopPerformerCard, { children: [\n /* @__PURE__ */ jsxs17(TopPerformerHeader, { children: [\n /* @__PURE__ */ jsx20(TopPerformerTitle, { children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs17(\n TopPerformerIndicator,\n {\n $color: currentHorizontalBarTopPerformer.isIncrease ? \"rgba(46, 158, 120, 1)\" : \"rgba(220, 38, 38, 1)\",\n children: [\n /* @__PURE__ */ jsx20(\n TopPerformerArrow,\n {\n $isIncrease: currentHorizontalBarTopPerformer.isIncrease || false,\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n children: /* @__PURE__ */ jsx20(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" })\n }\n ),\n /* @__PURE__ */ jsx20(TopPerformerChange, { children: currentHorizontalBarTopPerformer.change })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs17(TopPerformerContent, { children: [\n /* @__PURE__ */ jsxs17(\"div\", { children: [\n /* @__PURE__ */ jsx20(TopPerformerLabel, { children: \"Category\" }),\n /* @__PURE__ */ jsx20(TopPerformerValue, { children: currentHorizontalBarTopPerformer.name })\n ] }),\n /* @__PURE__ */ jsxs17(TopPerformerStatsGrid, { children: [\n /* @__PURE__ */ jsxs17(TopPerformerStat, { children: [\n /* @__PURE__ */ jsx20(TopPerformerStatLabel, { children: \"Revenue\" }),\n /* @__PURE__ */ jsx20(TopPerformerStatValue, { $color: \"rgba(37,99,235,1)\", children: currentHorizontalBarTopPerformer.revenue })\n ] }),\n /* @__PURE__ */ jsxs17(TopPerformerStat, { children: [\n /* @__PURE__ */ jsx20(TopPerformerStatLabel, { children: \"Profit\" }),\n /* @__PURE__ */ jsx20(TopPerformerStatValue, { $color: \"rgba(77,175,131,1)\", children: currentHorizontalBarTopPerformer.profit })\n ] })\n ] }),\n /* @__PURE__ */ jsxs17(TopPerformerNeedsFocus, { children: [\n /* @__PURE__ */ jsx20(TopPerformerNeedsFocusLabel, { children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx20(TopPerformerNeedsFocusValue, { children: currentHorizontalBarTopPerformer.needsFocus })\n ] })\n ] })\n ] })\n ] })\n ] }),\n (isLineFamily || chartType === \"bar\") && !isPieFamily && chartType !== \"bullet\" && chartType !== \"gauge\" && chartType !== \"gantt\" && chartType !== \"calendarheatmap\" && chartType !== \"horizontalbar\" ? /* @__PURE__ */ jsxs17(TwoColumnGrid, { children: [\n /* @__PURE__ */ jsx20(MainChartCard, { children: /* @__PURE__ */ jsx20(ChartWrapper, { children: renderChart() }) }),\n /* @__PURE__ */ jsxs17(Sidebar, { children: [\n /* @__PURE__ */ jsxs17(SidebarCard, { children: [\n /* @__PURE__ */ jsx20(SidebarTitle, { children: \"Details\" }),\n /* @__PURE__ */ jsx20(SidebarDetailsList, { children: details.map((item, idx) => {\n let bgColor = \"rgba(229, 231, 235, 0.5)\";\n if (item.label === \"Revenue\") {\n bgColor = \"rgba(70, 194, 155, 0.15)\";\n } else if (item.label === \"Profit\") {\n bgColor = \"rgba(239, 68, 68, 0.15)\";\n } else if (item.label === \"New Customers\") {\n bgColor = \"rgba(23, 97, 163, 0.15)\";\n }\n return /* @__PURE__ */ jsxs17(SidebarDetailItem, { children: [\n /* @__PURE__ */ jsxs17(SidebarDetailContent, { children: [\n /* @__PURE__ */ jsx20(SidebarDetailLabel, { children: item.label }),\n /* @__PURE__ */ jsx20(SidebarDetailDescription, { children: item.description })\n ] }),\n /* @__PURE__ */ jsx20(PercentageBadge, { $bgColor: bgColor, children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs17(SidebarCard, { children: [\n /* @__PURE__ */ jsx20(SidebarTitle, { children: \"Quick Stats\" }),\n /* @__PURE__ */ jsxs17(\"div\", { style: { marginBottom: \"12px\" }, children: [\n /* @__PURE__ */ jsx20(StatLabel2, { children: \"Total Volume\" }),\n /* @__PURE__ */ jsx20(StatValue2, { style: { fontSize: \"20px\", marginTop: \"8px\" }, children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx20(StatDescription, { style: { marginTop: \"4px\" }, children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs17(\"div\", { children: [\n /* @__PURE__ */ jsx20(StatLabel2, { children: \"Transactions\" }),\n /* @__PURE__ */ jsx20(StatValue2, { style: { fontSize: \"20px\", marginTop: \"8px\" }, children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx20(StatDescription, { style: { marginTop: \"4px\" }, children: quickStats.transactions.description })\n ] })\n ] })\n ] })\n ] }) : null\n ] })\n ] });\n};\nMahatiChartAnalyticsWidget.displayName = \"MahatiChartAnalyticsWidget\";\n\n// src/components/Tooltip.tsx\nimport React17, { useState as useState11 } from \"react\";\nimport styled21 from \"@emotion/styled\";\nimport { Fragment as Fragment7, jsx as jsx21, jsxs as jsxs18 } from \"@emotion/react/jsx-runtime\";\nvar TooltipWrapper = styled21.div`\n position: relative;\n display: inline-block;\n`;\nvar TooltipContent = styled21.div`\n position: fixed;\n z-index: 99999;\n\n max-width: calc(100vw - 16px);\n box-sizing: border-box;\n\n font-family: 'Poppins', sans-serif;\n font-weight: 500;\n border-radius: 6px;\n\n white-space: normal;\n word-break: break-word;\n overflow-wrap: anywhere;\n\n display: ${(p) => !p.$hasText && !p.$hasImage ? \"none\" : \"inline-flex\"};\n flex-wrap: wrap;\n\n box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1),\n 0 2px 4px -1px rgba(0,0,0,0.06);\n\n transition: opacity 200ms ease-in-out, transform 200ms ease-in-out;\n\n opacity: ${(p) => p.$visible && p.$isReady ? 1 : 0};\n visibility: ${(p) => p.$visible && p.$isReady ? \"visible\" : \"hidden\"};\n pointer-events: ${(p) => p.$visible && p.$isReady ? \"auto\" : \"none\"};\n\n ${(p) => p.$variant === \"default\" ? `\n background: linear-gradient(to right, rgba(23,97,163,1), rgba(77,175,131,1));\n color: white;\n font-size: 11px;\n line-height: 1.4;\n min-width: 0;\n padding: ${p.$hasImage ? \"4px\" : \"8px 12px\"};\n align-items: center;\n justify-content: center;\n ` : `\n background: rgba(255,255,255,0.95);\n color: rgba(55,65,81,1);\n border: 1px solid rgba(229,231,235,1);\n font-size: 13px;\n padding: ${p.$hasImage ? \"4px\" : \"8px 12px\"};\n `}\n`;\nvar TooltipArrow = styled21.div`\n position: absolute;\n width: 0;\n height: 0;\n border-style: solid;\n pointer-events:none;\n \n ${(props) => {\n switch (props.$position) {\n case \"top\":\n return `\n bottom: -6px;\n left: 50%;\n transform: translateX(-50%);\n border-width: 6px 6px 0 6px;\n border-color: rgba(23, 97, 163, 1) transparent transparent transparent;\n `;\n case \"right\":\n return `\n left: -6px;\n top: 50%;\n transform: translateY(-50%);\n border-width: 6px 6px 6px 0;\n border-color: transparent rgba(23, 97, 163, 1) transparent transparent;\n `;\n case \"bottom\":\n return `\n top: -6px;\n left: 50%;\n transform: translateX(-50%);\n border-width: 0 6px 6px 6px;\n border-color: transparent transparent rgba(23, 97, 163, 1) transparent;\n `;\n case \"left\":\n return `\n right: -6px;\n top: 50%;\n transform: translateY(-50%);\n border-width: 6px 0 6px 6px;\n border-color: transparent transparent transparent rgba(23, 97, 163, 1);\n `;\n default:\n return \"\";\n }\n}}\n`;\nvar TooltipImage = styled21.img`\n \nmax-width:100%;\nheight:auto;\n\nborder-radius: 4px;\n object-fit: cover;\n display: block;\n`;\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] = useState11(false);\n const [isReady, setIsReady] = useState11(false);\n const [showAnimation, setShowAnimation] = useState11(false);\n const [tooltipPosition, setTooltipPosition] = useState11({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = useState11(position);\n const triggerRef = React17.useRef(null);\n const tooltipRef = React17.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) {\n left = padding;\n } else if (left + tooltipRect.width > viewportWidth - padding) {\n left = viewportWidth - tooltipRect.width - padding;\n }\n if (top < scrollY + padding) {\n top = scrollY + padding;\n } else if (top + tooltipRect.height > scrollY + viewportHeight - padding) {\n top = scrollY + viewportHeight - tooltipRect.height - padding;\n }\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(() => {\n calculatePosition();\n });\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 React17.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__ */ jsx21(\n TooltipImage,\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 }\n );\n }\n return text;\n };\n const renderAnimation = () => {\n if (!animation || !showAnimation) return null;\n const AnimationComponent = animation.component;\n return /* @__PURE__ */ jsx21(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) {\n return /* @__PURE__ */ jsx21(Fragment7, { children });\n }\n return /* @__PURE__ */ jsxs18(\n TooltipWrapper,\n {\n \"data-testid\": testId,\n ref: triggerRef,\n className,\n onMouseEnter: showTooltip,\n onMouseLeave: hideTooltip,\n onFocus: showTooltip,\n onBlur: hideTooltip,\n children: [\n children,\n renderAnimation(),\n /* @__PURE__ */ jsxs18(\n TooltipContent,\n {\n ref: tooltipRef,\n $visible: visible,\n $isReady: isReady,\n $position: adjustedPosition,\n $variant: variant,\n $hasImage: !!image,\n $hasText: !!text,\n role: \"tooltip\",\n style: {\n top: `${tooltipPosition.top}px`,\n left: `${tooltipPosition.left}px`,\n color: textColor,\n background: backgroundColor\n },\n children: [\n renderTooltipContent(),\n variant === \"default\" && !image && /* @__PURE__ */ jsx21(TooltipArrow, { $position: adjustedPosition })\n ]\n }\n )\n ]\n }\n );\n};\nTooltip2.displayName = \"Tooltip\";\n\n// src/components/ToastMessage.tsx\nimport React18, { useEffect as useEffect8 } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport styled22 from \"@emotion/styled\";\nimport { jsx as jsx22, jsxs as jsxs19 } from \"@emotion/react/jsx-runtime\";\nvar assetSrc4 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar checkMarkIcon = \"\";\nvar dangerIcon = \"\";\nvar notificationIcon = \"\";\nvar closeIcon = \"\";\nvar checkMarkIcon2 = \"\";\nvar dangerIcon2 = \"\";\nvar dangerIcon1_1 = \"\";\nvar notificationIcon2 = \"\";\nvar closeIconCopy = \"\";\ntry {\n checkMarkIcon = require_check_mark_1();\n dangerIcon = require_danger_1();\n notificationIcon = require_notification_1();\n closeIcon = require_close();\n checkMarkIcon2 = require_check_mark_2();\n dangerIcon2 = require_danger_2();\n dangerIcon1_1 = require_danger_1_1();\n notificationIcon2 = require_notification_2();\n closeIconCopy = require_close_copy_1();\n} catch (e) {\n}\nvar FALLBACK_ICONS = {\n checkMarkIcon: \"/toast-icons/check-mark_1.png\",\n dangerIcon: \"/toast-icons/danger_1.png\",\n notificationIcon: \"/toast-icons/notification_1.png\",\n closeIcon: \"/toast-icons/close.png\",\n checkMarkIcon2: \"/toast-icons/check-mark_2.png\",\n dangerIcon2: \"/toast-icons/danger_2.png\",\n dangerIcon1_1: \"/toast-icons/danger_1_1.png\",\n notificationIcon2: \"/toast-icons/notification_2.png\",\n closeIconCopy: \"/toast-icons/close_copy_1.png\"\n};\nvar getIconSrc = (imported, fallback) => {\n const src = assetSrc4(imported);\n return src || fallback;\n};\nvar getStripGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 22.5%, rgba(58, 208, 125, 1) 130%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 22.5%, rgba(183, 28, 28, 1) 130%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 22.5%, rgba(255, 191, 92, 1) 130%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 22.5%, rgba(77, 175, 131, 1) 130%)\";\n }\n};\nvar 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 if (background === \"transparent\") {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(checkMarkIcon2, FALLBACK_ICONS.checkMarkIcon2), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(dangerIcon2, FALLBACK_ICONS.dangerIcon2), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(dangerIcon1_1, FALLBACK_ICONS.dangerIcon1_1), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(notificationIcon2, FALLBACK_ICONS.notificationIcon2), alt: \"Notification\", style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(checkMarkIcon, FALLBACK_ICONS.checkMarkIcon), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(dangerIcon, FALLBACK_ICONS.dangerIcon), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(dangerIcon, FALLBACK_ICONS.dangerIcon), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ jsx22(\"img\", { src: getIconSrc(notificationIcon, FALLBACK_ICONS.notificationIcon), alt: \"Notification\", style });\n }\n }\n};\nvar ToastContainer = styled22.div`\n position: fixed;\n top: 20px;\n right: 20px;\n width: ${(p) => p.$custom?.containerWidth || \"325px\"};\n height: ${(p) => p.$custom?.containerHeight || (p.$hasActions ? \"auto\" : \"70px\")};\n min-height: ${(p) => p.$hasActions ? \"70px\" : \"auto\"};\n border-radius: ${(p) => p.$custom?.containerBorderRadius || \"12px\"};\n background: ${(p) => p.$custom?.containerBackground || (p.$background === \"transparent\" ? \"rgba(255, 255, 255, 1)\" : getGradient(p.$type))};\n box-shadow: ${(p) => p.$custom?.containerBoxShadow || \"0 4px 12px 0 rgba(0, 0, 0, 0.08)\"};\n display: flex;\n flex-direction: ${(p) => p.$hasActions ? \"column\" : \"row\"};\n align-items: ${(p) => p.$hasActions ? \"stretch\" : \"center\"};\n color: ${(p) => p.$background === \"transparent\" ? \"rgba(85, 85, 85, 1)\" : \"rgba(255, 255, 255, 1)\"};\n z-index: 9999;\n overflow: hidden;\n padding-left: ${(p) => p.$custom?.containerPaddingLeft || (p.$background === \"transparent\" ? \"33px\" : \"10px\")};\n padding-top: ${(p) => p.$hasActions ? \"10px\" : \"0\"};\n padding-bottom: ${(p) => p.$hasActions ? \"10px\" : \"0\"};\n padding-right: ${(p) => p.$hasActions ? \"10px\" : \"0\"};\n`;\nvar TopSection = styled22.div`\n display: flex;\n align-items: center;\n flex: 1;\n min-height: 50px;\n`;\nvar LeftStrip = styled22.div`\n position: absolute;\n left: ${(p) => p.$custom?.stripLeft || \"5px\"};\n top: 0;\n width: ${(p) => p.$custom?.stripWidth || \"5px\"};\n height: 100%;\n border-radius: ${(p) => p.$custom?.stripBorderRadius || \"20px 0 0 20px\"};\n background: ${(p) => p.$custom?.stripBackground || getStripGradient(p.$type)};\n`;\nvar IconWrapper3 = styled22.div`\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n margin-right: ${(p) => p.$custom?.iconMarginRight || \"12px\"};\n flex-shrink: 0;\n z-index: 1;\n`;\nvar Content = styled22.div`\n flex: 1;\n min-width: 0;\n z-index: 1;\n`;\nvar Title5 = styled22.div`\n font-family: ${(p) => p.$custom?.titleFontFamily || \"Poppins\"};\n font-size: ${(p) => p.$custom?.titleFontSize || \"16px\"};\n font-style: ${(p) => p.$custom?.titleFontStyle || \"normal\"};\n font-weight: ${(p) => p.$custom?.titleFontWeight || (p.$background === \"transparent\" ? \"600\" : \"700\")};\n line-height: ${(p) => p.$custom?.titleLineHeight || \"normal\"};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: ${(p) => p.$custom?.titleColor || (p.$background === \"transparent\" ? getTitleColor(p.$type) : \"rgba(255, 255, 255, 1)\")};\n`;\nvar MessageText = styled22.div`\n font-family: ${(p) => p.$custom?.messageFontFamily || \"Poppins\"};\n font-size: ${(p) => p.$custom?.messageFontSize || \"10px\"};\n font-style: ${(p) => p.$custom?.messageFontStyle || \"normal\"};\n font-weight: ${(p) => p.$custom?.messageFontWeight || \"400\"};\n line-height: ${(p) => p.$custom?.messageLineHeight || \"normal\"};\n margin-top: ${(p) => p.$custom?.messageMarginTop || \"2px\"};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n opacity: ${(p) => p.$custom?.messageOpacity || void 0};\n color: ${(p) => p.$custom?.messageColor || (p.$background === \"transparent\" ? \"rgba(85, 85, 85, 1)\" : \"rgba(255, 255, 255, 1)\")};\n`;\nvar CloseButton4 = styled22.button`\n background: none;\n border: none;\n cursor: pointer;\n opacity: ${(p) => p.$custom?.closeButtonOpacity || (p.$background === \"transparent\" ? \"0.6\" : \"0.8\")};\n padding: 4px;\n margin-left: ${(p) => p.$custom?.closeButtonMarginLeft || \"8px\"};\n flex-shrink: 0;\n z-index: 1;\n\n &:hover { opacity: 1; }\n`;\nvar ActionsContainer = styled22.div`\n display: flex;\n gap: 8px;\n margin-top: 10px;\n padding-left: 5px;\n justify-content: flex-end;\n`;\nvar ActionButtonStyled = styled22.button`\n font-family: Poppins;\n font-size: ${(p) => p.$fontSize || \"12px\"};\n font-weight: ${(p) => p.$fontWeight || \"600\"};\n padding: ${(p) => p.$padding || \"6px 16px\"};\n border-radius: ${(p) => p.$borderRadius || \"6px\"};\n border: ${(p) => p.$borderColor ? `1px solid ${p.$borderColor}` : \"none\"};\n background: ${(p) => {\n if (p.$backgroundColor) return p.$backgroundColor;\n return p.$variant === \"secondary\" ? \"transparent\" : \"rgba(255, 255, 255, 0.9)\";\n}};\n color: ${(p) => {\n if (p.$textColor) return p.$textColor;\n return p.$variant === \"secondary\" ? \"rgba(255, 255, 255, 1)\" : \"rgba(0, 0, 0, 0.8)\";\n}};\n cursor: pointer;\n transition: all 0.2s ease;\n white-space: nowrap;\n\n &:hover {\n background: ${(p) => {\n if (p.$hoverBackgroundColor) return p.$hoverBackgroundColor;\n return p.$variant === \"secondary\" ? \"rgba(255, 255, 255, 0.1)\" : \"rgba(255, 255, 255, 1)\";\n}};\n opacity: 0.9;\n }\n\n &:active {\n transform: scale(0.98);\n }\n`;\nvar ToastMessage = React18.forwardRef(\n ({\n type = \"notification\",\n title: customTitle,\n message,\n onClose,\n showClose = true,\n duration = 5e3,\n background = \"solid\",\n custom,\n action,\n className,\n testId,\n ...rest\n }, ref) => {\n const displayTitle = customTitle ?? type.charAt(0).toUpperCase() + type.slice(1);\n const hasActions = action && action.length > 0;\n useEffect8(() => {\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\" ? getIconSrc(closeIconCopy, FALLBACK_ICONS.closeIconCopy) : getIconSrc(closeIcon, FALLBACK_ICONS.closeIcon));\n const iconElement = custom?.iconSrc ? /* @__PURE__ */ jsx22(\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__ */ jsxs19(\n ToastContainer,\n {\n \"data-testId\": testId,\n ref,\n $type: type,\n $background: background,\n $custom: custom,\n $hasActions: hasActions,\n className,\n role: \"alert\",\n \"aria-live\": \"assertive\",\n ...rest,\n children: [\n /* @__PURE__ */ jsx22(LeftStrip, { $type: type, $custom: custom }),\n /* @__PURE__ */ jsxs19(TopSection, { children: [\n /* @__PURE__ */ jsx22(IconWrapper3, { $custom: custom, children: iconElement }),\n /* @__PURE__ */ jsxs19(Content, { children: [\n /* @__PURE__ */ jsx22(Title5, { $type: type, $background: background, $custom: custom, children: displayTitle }),\n message && /* @__PURE__ */ jsx22(MessageText, { $background: background, $custom: custom, children: message })\n ] }),\n showClose && onClose && /* @__PURE__ */ jsx22(CloseButton4, { onClick: onClose, $background: background, $custom: custom, \"aria-label\": \"Close toast\", children: /* @__PURE__ */ jsx22(\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 hasActions && /* @__PURE__ */ jsx22(ActionsContainer, { children: action?.map((btn, index) => /* @__PURE__ */ jsx22(\n ActionButtonStyled,\n {\n onClick: btn.onClick,\n $variant: btn.variant,\n $backgroundColor: btn.backgroundColor,\n $textColor: btn.textColor,\n $borderColor: btn.borderColor,\n $hoverBackgroundColor: btn.hoverBackgroundColor,\n $fontSize: btn.fontSize,\n $fontWeight: btn.fontWeight,\n $padding: btn.padding,\n $borderRadius: btn.borderRadius,\n children: btn.label\n },\n index\n )) })\n ]\n }\n );\n return ReactDOM.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nimport { useState as useState12, useEffect as useEffect9, useRef as useRef5, useMemo as useMemo3 } from \"react\";\nimport styled23 from \"@emotion/styled\";\nimport { jsx as jsx23 } from \"@emotion/react/jsx-runtime\";\nvar Container8 = styled23.div`\n position: fixed;\n inset: 0;\n pointer-events: none;\n z-index: 50;\n overflow: hidden;\n height: ${(props) => props.stageHeight}px;\n`;\nvar ParticleElement = styled23.div`\n position: absolute;\n left: ${(props) => props.x}%;\n bottom: ${(props) => props.y}%;\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n background-color: ${(props) => props.shape === \"star\" ? \"transparent\" : props.color};\n border-radius: ${(props) => props.shape === \"circle\" ? \"50%\" : props.shape === \"star\" ? \"50% 50% 0 0\" : \"2px\"};\n transform: rotate(${(props) => props.rotation}deg);\n opacity: ${(props) => props.opacity};\n transform-origin: center;\n transition: none;\n \n ${(props) => props.shape === \"star\" && `\n clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n background: conic-gradient(from 0deg, ${props.color} 0% 20%, transparent 20% 40%, ${props.color} 40% 60%, transparent 60% 80%, ${props.color} 80% 100%);\n `}\n`;\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] = useState12([]);\n const animationFrameRef = useRef5(void 0);\n const timerRef = useRef5(void 0);\n const stableColors = useMemo3(() => colors, [JSON.stringify(colors)]);\n useEffect9(() => {\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 // Start from bottom\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((prevParticles) => {\n return 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((particle) => particle.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) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n }\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize, stageHeight]);\n if (!isActive || particles.length === 0) return null;\n return /* @__PURE__ */ jsx23(Container8, { stageHeight, \"data-testid\": testId, children: particles.map((particle) => /* @__PURE__ */ jsx23(\n ParticleElement,\n {\n x: particle.x,\n y: particle.y,\n size: particle.size,\n color: particle.color,\n rotation: particle.rotation,\n opacity: particle.opacity,\n shape: particle.shape\n },\n particle.id\n )) });\n};\nConfettiExplosion.displayName = \"ConfettiExplosion\";\n\n// src/components/RealisticConfetti.tsx\nimport { useState as useState13, useEffect as useEffect10, useRef as useRef6, useMemo as useMemo4 } from \"react\";\nimport styled24 from \"@emotion/styled\";\nimport { css as css9 } from \"@emotion/react\";\nimport { jsx as jsx24 } from \"@emotion/react/jsx-runtime\";\nvar Container9 = styled24.div`\n position: fixed;\n inset: 0;\n pointer-events: none;\n z-index: 50;\n overflow: hidden;\n height: 100vh;\n`;\nvar getShapeStyles = (shape, color) => {\n switch (shape) {\n case 0:\n return css9`\n background-color: ${color};\n border-radius: 2px;\n `;\n case 1:\n return css9`\n background-color: ${color};\n border-radius: 50%;\n `;\n case 2:\n return css9`\n background-color: transparent;\n background: conic-gradient(from 0deg at 50% 50%, \n ${color} 0deg 72deg, \n transparent 72deg 144deg,\n ${color} 144deg 216deg,\n transparent 216deg 288deg,\n ${color} 288deg 360deg);\n clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);\n `;\n default:\n return css9``;\n }\n};\nvar ParticleElement2 = styled24.div`\n position: absolute;\n left: ${(props) => props.x}%;\n top: ${(props) => props.y}%;\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n opacity: ${(props) => props.opacity};\n transform: rotate(${(props) => props.rotation}deg);\n transform-origin: center;\n will-change: transform, opacity;\n \n ${(props) => getShapeStyles(props.shape, props.color)}\n`;\nvar createParticles = (count, force, wind, colors) => {\n return Array.from({ length: count }, (_, i) => {\n const angle = Math.random() * Math.PI / 2 + Math.PI / 4;\n const speed = Math.random() * force + force * 0.5;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? -10 : 110;\n return {\n id: i,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1) + (Math.random() - 0.5) * wind,\n vy: -Math.sin(angle) * speed - 2,\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 20,\n color: colors[Math.floor(Math.random() * colors.length)],\n size: Math.random() * 10 + 5,\n shape: Math.floor(Math.random() * 3),\n gravity: 0.3 + Math.random() * 0.2,\n drag: 0.98 + Math.random() * 0.02,\n life: 1,\n opacity: 1\n };\n });\n};\nvar RealisticConfetti = ({\n isActive = true,\n testId,\n particleCount = 200,\n duration = 5e3,\n colors = [\n \"#FF6B6B\",\n \"#4ECDC4\",\n \"#45B7D1\",\n \"#96CEB4\",\n \"#FFEAA7\",\n \"#DDA0DD\",\n \"#98D8C8\",\n \"#F7DC6F\",\n \"#BB8FCE\",\n \"#85C1E9\",\n \"#F8C471\",\n \"#82E0AA\"\n ],\n explosionForce = 8,\n wind = 0.2\n}) => {\n const [particles, setParticles] = useState13(\n () => isActive ? createParticles(particleCount, explosionForce, wind, colors) : []\n );\n const animationRef = useRef6(void 0);\n const startTimeRef = useRef6(void 0);\n const stableColors = useMemo4(() => colors, [JSON.stringify(colors)]);\n useEffect10(() => {\n if (isActive) {\n const newParticles = createParticles(particleCount, explosionForce, wind, stableColors);\n setParticles(newParticles);\n startTimeRef.current = Date.now();\n const animate = () => {\n const currentTime = Date.now();\n const elapsed = currentTime - (startTimeRef.current || currentTime);\n setParticles((prevParticles) => {\n return prevParticles.map((particle) => {\n const life = Math.max(0, 1 - elapsed / duration);\n if (life <= 0) return particle;\n let vx = particle.vx * particle.drag;\n let vy = particle.vy + particle.gravity;\n const x = particle.x + vx;\n const y = particle.y + vy;\n if (y >= 100 && vy > 0) {\n vy = -vy * 0.6;\n vx = vx * 0.8;\n }\n return {\n ...particle,\n x,\n y,\n vx,\n vy,\n rotation: particle.rotation + particle.rotationSpeed,\n life,\n opacity: life\n };\n }).filter((particle) => particle.life > 0);\n });\n if (elapsed < duration) {\n animationRef.current = requestAnimationFrame(animate);\n }\n };\n animationRef.current = requestAnimationFrame(animate);\n return () => {\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current);\n }\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, explosionForce, wind]);\n if (!isActive || particles.length === 0) return null;\n return /* @__PURE__ */ jsx24(Container9, { \"data-testid\": testId, children: particles.map((particle) => /* @__PURE__ */ jsx24(\n ParticleElement2,\n {\n x: particle.x,\n y: particle.y,\n size: particle.size,\n color: particle.color,\n rotation: particle.rotation,\n opacity: particle.opacity,\n shape: particle.shape\n },\n particle.id\n )) });\n};\nRealisticConfetti.displayName = \"RealisticConfetti\";\n\n// src/components/Spinner.tsx\nimport styled25 from \"@emotion/styled\";\nimport { keyframes as keyframes4 } from \"@emotion/react\";\nimport { jsx as jsx25, jsxs as jsxs20 } from \"@emotion/react/jsx-runtime\";\nvar spinAnimation = keyframes4`\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n`;\nvar circularSpinAccelerateAnimation = keyframes4`\n 0% { transform: rotate(0deg); }\n 85% { transform: rotate(289deg); }\n 100% { transform: rotate(360deg); }\n`;\nvar dotsBounceAnimation = keyframes4`\n 0%, 80%, 100% { \n transform: scale(0); \n opacity: 0.45; \n }\n 40% { \n transform: scale(1); \n opacity: 1; \n }\n`;\nvar dotsLinearAnimation = keyframes4`\n 0%, 20% { \n opacity: 1;\n transform: scale(1);\n }\n 21%, 100% { \n opacity: 0;\n transform: scale(0.5);\n }\n`;\nvar shimmerAnimation = keyframes4`\n 0% { background-position: 200% 0; }\n 100% { background-position: -200% 0; }\n`;\nvar SrOnly = styled25.span`\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n`;\nvar SpinnerContainer = styled25.div`\n border: ${(props) => props.borderWidth}px solid ${(props) => props.backgroundColor};\n border-radius: ${(props) => typeof props.borderRadius === \"number\" ? `${props.borderRadius}%` : props.borderRadius};\n border-top: ${(props) => props.borderWidth}px solid ${(props) => props.primaryColor};\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n animation: ${spinAnimation} ${(props) => props.speed}s linear infinite;\n`;\nvar Spinner = ({\n size = 24,\n testId,\n borderWidth = 4,\n borderRadius = 10,\n primaryColor = \"#007bff\",\n backgroundColor = \"rgba(0, 123, 255, 0.2)\",\n speed = 1\n}) => {\n return /* @__PURE__ */ jsx25(\n SpinnerContainer,\n {\n \"data-testId\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n size,\n borderWidth,\n borderRadius,\n primaryColor,\n backgroundColor,\n speed,\n children: /* @__PURE__ */ jsx25(SrOnly, { children: \"Loading...\" })\n }\n );\n};\nvar CircularSpinnerContainer = styled25.div`\n position: relative;\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n`;\nvar CircularSpinnerRing = styled25.span`\n position: absolute;\n top: ${(props) => props.offset}px;\n left: ${(props) => props.offset}px;\n width: ${(props) => props.ringSize}px;\n height: ${(props) => props.ringSize}px;\n border: ${(props) => props.borderWidth}px solid transparent;\n border-top-color: ${(props) => props.color};\n border-radius: 50%;\n opacity: ${(props) => props.opacity};\n animation: ${circularSpinAccelerateAnimation} ${(props) => props.speed}s linear infinite;\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__ */ jsxs20(\n CircularSpinnerContainer,\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n 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__ */ jsx25(\n CircularSpinnerRing,\n {\n \"data-testid\": testId,\n ringSize,\n offset,\n opacity,\n color,\n speed: speed + i * 0.3,\n borderWidth: Math.max(2, ringSize / 12)\n },\n i\n );\n }),\n /* @__PURE__ */ jsx25(SrOnly, { children: \"Loading...\" })\n ]\n }\n );\n};\nvar OverlayContainer = styled25.div`\n position: absolute;\n inset: 0;\n display: grid;\n place-content: center;\n border-radius: 0.75rem;\n background-color: ${(props) => props.backdrop};\n backdrop-filter: blur(1px);\n`;\nvar OverlayContent = styled25.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0.75rem;\n`;\nvar OverlayLabel = styled25.span`\n font-size: 0.875rem;\n font-weight: 500;\n color: rgba(31, 41, 55, 1);\n`;\nvar CardOverlayLoader = ({\n show = true,\n testId,\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}) => {\n if (!show) return null;\n return /* @__PURE__ */ jsx25(\n OverlayContainer,\n {\n \"data-testId\": String,\n backdrop,\n role: \"status\",\n \"aria-live\": \"polite\",\n children: /* @__PURE__ */ jsxs20(OverlayContent, { children: [\n /* @__PURE__ */ jsx25(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack,\n speed: 1\n }\n ),\n /* @__PURE__ */ jsx25(OverlayLabel, { children: label })\n ] })\n }\n );\n};\nvar DotsContainer = styled25.div`\n display: inline-flex;\n align-items: center;\n`;\nvar Dot2 = styled25.span`\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n background-color: ${(props) => props.color};\n border-radius: 9999px;\n display: inline-block;\n margin-right: ${(props) => props.marginRight}px;\n animation: ${dotsBounceAnimation} ${(props) => props.speed}s ease-in-out ${(props) => props.animationDelay}s infinite;\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__ */ jsxs20(DotsContainer, { \"data-testid\": testId, role: \"status\", \"aria-label\": \"Loading\", children: [\n dots.map((_, i) => /* @__PURE__ */ jsx25(\n Dot2,\n {\n \"aria-hidden\": true,\n size,\n color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animationDelay: i * (speed / dots.length),\n speed\n },\n i\n )),\n /* @__PURE__ */ jsx25(SrOnly, { children: \"Loading\\u2026\" })\n ] });\n};\nvar DotLinear = styled25.span`\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n background-color: ${(props) => props.color};\n border-radius: 9999px;\n display: inline-block;\n margin-right: ${(props) => props.marginRight}px;\n animation: ${dotsLinearAnimation} ${(props) => props.speed}s ease-in-out ${(props) => props.animationDelay}s infinite;\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 animationDelay = speed / count;\n return /* @__PURE__ */ jsxs20(DotsContainer, { \"data-testid\": testId, role: \"status\", \"aria-label\": \"Loading\", children: [\n dots.map((_, i) => /* @__PURE__ */ jsx25(\n DotLinear,\n {\n \"aria-hidden\": true,\n size,\n color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animationDelay: i * animationDelay,\n speed\n },\n i\n )),\n /* @__PURE__ */ jsx25(SrOnly, { children: \"Loading\\u2026\" })\n ] });\n};\nvar Card3 = styled25.div`\n border-radius: 0.75rem;\n overflow: hidden;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n background-color: rgba(255, 255, 255, 1);\n border: 1px solid rgba(229, 231, 235, 1);\n max-width: 28rem;\n position: relative;\n`;\nvar ImageContainer = styled25.div`\n width: 100%;\n height: 16rem;\n background-color: rgba(243, 244, 246, 1);\n position: relative;\n overflow: hidden;\n`;\nvar Image = styled25.img`\n width: 100%;\n height: 100%;\n object-fit: cover;\n`;\nvar ShimmerBox = styled25.div`\n width: 100%;\n height: 100%;\n background: linear-gradient(90deg, rgba(243, 244, 246, 1) 0%, rgba(229, 231, 235, 1) 50%, rgba(243, 244, 246, 1) 100%);\n background-size: 200% 100%;\n animation: ${shimmerAnimation} 1.5s ease-in-out infinite;\n`;\nvar CardContent = styled25.div`\n padding: 1.5rem;\n`;\nvar TitleContainer = styled25.div`\n margin-bottom: 0.75rem;\n`;\nvar Title6 = styled25.h3`\n font-size: 1.25rem;\n font-weight: 600;\n color: rgba(17, 24, 39, 1);\n`;\nvar TitleSkeleton = styled25.div`\n height: 1.75rem;\n width: 70%;\n border-radius: 0.25rem;\n background: linear-gradient(90deg, rgba(243, 244, 246, 1) 0%, rgba(229, 231, 235, 1) 50%, rgba(243, 244, 246, 1) 100%);\n background-size: 200% 100%;\n animation: ${shimmerAnimation} 1.5s ease-in-out infinite;\n`;\nvar Text = styled25.p`\n font-size: 0.875rem;\n color: rgba(107, 114, 128, 1);\n line-height: 1.6;\n`;\nvar SkeletonContainer = styled25.div`\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n`;\nvar SkeletonLine = styled25.div`\n height: 1rem;\n width: ${(props) => props.width};\n border-radius: 0.25rem;\n background: linear-gradient(90deg, rgba(243, 244, 246, 1) 0%, rgba(229, 231, 235, 1) 50%, rgba(243, 244, 246, 1) 100%);\n background-size: 200% 100%;\n animation: ${shimmerAnimation} 1.5s ease-in-out infinite;\n`;\nvar CardWithLoading = ({\n loading = true,\n testId,\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. Experience the beauty of nature through stunning photography.\"\n}) => {\n return /* @__PURE__ */ jsxs20(Card3, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs20(ImageContainer, { children: [\n !loading && /* @__PURE__ */ jsx25(Image, { src: imageUrl, alt: title }),\n loading && /* @__PURE__ */ jsx25(ShimmerBox, {})\n ] }),\n /* @__PURE__ */ jsxs20(CardContent, { children: [\n /* @__PURE__ */ jsx25(TitleContainer, { children: !loading ? /* @__PURE__ */ jsx25(Title6, { children: title }) : /* @__PURE__ */ jsx25(TitleSkeleton, {}) }),\n /* @__PURE__ */ jsx25(\"div\", { children: !loading ? /* @__PURE__ */ jsx25(Text, { children: content }) : /* @__PURE__ */ jsxs20(SkeletonContainer, { children: [\n /* @__PURE__ */ jsx25(SkeletonLine, { width: \"100%\" }),\n /* @__PURE__ */ jsx25(SkeletonLine, { width: \"95%\" }),\n /* @__PURE__ */ jsx25(SkeletonLine, { width: \"80%\" })\n ] }) })\n ] })\n ] });\n};\n\n// src/components/NestedDropdown.tsx\nimport { useEffect as useEffect11, useRef as useRef7, useState as useState14 } from \"react\";\nimport styled26 from \"@emotion/styled\";\nimport { ChevronDown as ChevronDown4, X as X3, Loader2 } from \"lucide-react\";\nimport { Fragment as Fragment8, jsx as jsx26, jsxs as jsxs21 } from \"@emotion/react/jsx-runtime\";\nvar PreviewWrapper = styled26.div`\n width: 100%;\n display: flex;\n justify-content: center;\n`;\nvar GDContainer = styled26.div`\n position: relative;\n width: 100%;\n`;\nvar GDLabel = styled26.label`\n font-size: 12px;\n font-weight: 600;\n color: #1761a3;\n margin-bottom: 8px;\n display: block;\n`;\nvar GDButton = styled26.button`\n width: 100%;\n padding: 12px 16px;\n border-radius: 8px;\n border: none;\n\n background: linear-gradient(\n to right,\n rgba(23, 97, 163, 1),\n rgba(77, 175, 131, 1)\n );\n\n color: #fff;\n font-weight: 600;\n cursor: pointer;\n\n display: flex;\n justify-content: space-between;\n align-items: center;\n`;\nvar GDDropdown = styled26.div`\n position: absolute;\n top: calc(100% + 8px);\n left: 0;\n width: 100%;\n background: #fff;\n border-radius: 12px;\n border: 1px solid rgba(23, 97, 163, 0.3);\n z-index: 100;\n`;\nvar GDGroup = styled26.div`\n padding: 12px;\n \n`;\nvar GDParent = styled26.div`\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 8px;\n`;\nvar GDChild = styled26.label`\n margin-left: 22px;\n display: flex;\n gap: 8px;\n font-size: 14px;\n margin-top: 6px;\n`;\nvar PreviewCard = styled26.div`\n width: 100%;\n max-width: 320px;\n padding: 16px;\n\n background: linear-gradient(\n to bottom,\n #e8f0f6,\n #ecf6f3\n );\n\n border: 1px solid rgba(23, 97, 163, 0.35);\n border-radius: 8px;\n\n display: flex;\n flex-direction: column;\n gap: 16px;\n`;\nvar Wrapper = styled26.div`\n position: relative;\n max-width: 100%;\n width:320px;\n margin:0 auto;\n`;\nvar Label2 = styled26.label`\n font-size: 12px;\n font-weight: 600;\n color: #1761a3;\n margin-bottom: 8px;\n display: block;\n \n`;\nvar Button2 = styled26.button`\n width: 100%;\n - max width:320px;\n +max width:320px;\n\n padding: 12px 16px;\n border-radius: 8px;\n border: none;\n cursor: ${({ disabled }) => disabled ? \"not-allowed\" : \"pointer\"};\n opacity: ${({ disabled }) => disabled ? 0.6 : 1};\n font-weight: 600;\n color: #fff;\n background: linear-gradient(to right, #1761a3, #4daf83);\n display: flex;\n justify-content: space-between;\n align-items: center;\n`;\nvar Card4 = styled26.div`\n width: 360px;\n margin: 40px auto;\n padding: 24px;\n border: 1px solid #cde3f1;\n border-radius: 14px;\n background: #fff;\n`;\nvar Dropdown2 = styled26.div`\n position: absolute;\n top: calc(100% + 8px);\n left: 0;\n width: 100%;\n z-index: 100;\n background: #fff;\n border-radius: 12px;\n border: 1px solid rgba(77, 175, 131, 0.4);\n`;\nvar SearchBox = styled26.div`\n padding: 12px;\n border-bottom: 1px solid #e5e7eb;\n position: relative;\n\n input {\n width: 100%;\n height: 36px;\n padding: 8px 36px 8px 12px;\n border-radius: 6px;\n border: 1px solid rgba(23, 97, 163, 0.3);\n outline: none;\n }\n`;\nvar ClearBtn = styled26.button`\n position: absolute;\n right: 15px;\n top: 50%;\n transform: translateY(-50%);\n width: 22px;\n height: 22px;\n border-radius: 50%;\n border: none;\n background: #9ca3af;\n color: white;\n cursor: pointer;\n padding:0;\n line-height:1;\n`;\nvar Options = styled26.div`\n max-height: 220px;\n overflow-y: auto;\n`;\nvar Option = styled26.div`\n padding: 10px 16px;\n cursor: pointer;\n font-size: 14px;\n background: ${({ active }) => active ? \"#e6f3ef\" : \"transparent\"};\n\n &:hover {\n background: #f1f5f9;\n }\n`;\nvar Empty = styled26.div`\n padding: 12px;\n color: #9ca3af;\n\n`;\nvar Tags = styled26.div`\n display: flex;\n gap: 8px;\n flex-wrap: wrap;\n margin-top: 12px;\n`;\nvar Tag = styled26.div`\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 10px;\n background: white;\n border: 1px solid #cde3f1;\n border-radius: 10px;\n font-size: 13px;\n\n svg {\n cursor: pointer;\n }\n`;\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = useState14(false);\n const [search, setSearch] = useState14(\"\");\n const ref = useRef7(null);\n useEffect11(() => {\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__ */ jsxs21(\n Wrapper,\n {\n ref,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ jsx26(Label2, { children: label }),\n /* @__PURE__ */ jsxs21(\n Button2,\n {\n onClick: () => setOpen((o) => !o),\n children: [\n (options ?? []).find((o) => o.value === value)?.label || placeholder,\n /* @__PURE__ */ jsx26(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs21(Dropdown2, { children: [\n /* @__PURE__ */ jsxs21(SearchBox, { children: [\n /* @__PURE__ */ jsx26(\"input\", { placeholder: \"search..\", value: search, onChange: (e) => setSearch(e.target.value) }),\n search && /* @__PURE__ */ jsx26(ClearBtn, { onClick: () => setSearch(\"\"), children: \"\\u2715\" })\n ] }),\n /* @__PURE__ */ jsxs21(Options, { children: [\n filtered.map((o) => /* @__PURE__ */ jsx26(\n Option,\n {\n onClick: () => {\n onChange(o.value);\n setOpen(false);\n setSearch(\"\");\n },\n children: o.label\n },\n o.value\n )),\n filtered.length === 0 && /* @__PURE__ */ jsx26(Empty, { children: \"No results\" })\n ] })\n ] })\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nimport { useEffect as useEffect12, useRef as useRef8, useState as useState15 } from \"react\";\nimport styled27 from \"@emotion/styled\";\nimport { jsx as jsx27, jsxs as jsxs22 } from \"@emotion/react/jsx-runtime\";\nvar Container10 = styled27.div`\n display: grid;\n grid-template-columns: 4fr 1fr;\n gap: 10px;\n\n @media (max-width: 900px) {\n grid-template-columns: 1fr;\n }\n`;\nvar Card5 = styled27.div`\n border: 1px solid #8ed1b2;\n background: #f1f7f7;\n border-radius: 16px;\n overflow: hidden;\n display:flex;\n flex-direction:column;\n height:100%;\n`;\nvar Header2 = styled27.div`\n padding: 12px 16px;\n background: #e2ecf1;\n border-bottom: 1px solid #8ed1b2;\n font-weight: 600;\n`;\nvar TextArea = styled27.textarea`\n width: 100%;\n flex:1;\n height: 240px;\n min-height: 240px;\n max-height: 240px;\n\n border: none;\n background: transparent;\n padding: 16px;\n resize: none;\n outline: none;\n\n overflow-y: auto; \n line-height: 1.6;\n\n @media (max-width: 600px) {\n height: 180px;\n min-height: 180px;\n max-height: 180px;\n }\n`;\nvar Controls = styled27.div`\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 10px;\n padding: 12px;\n background: #eaf6f1;\n border-top: 1px solid #8ed1b2;\n flex-shrink:0;\n`;\nvar Body = styled27.div`\n flex: 1;\n overflow: hidden; \n display: flex;\n`;\nvar Player = styled27.div`\n display: flex;\n align-items: center;\n gap: 8px;\n background: #d1e4e7;\n padding: 8px 12px;\n border-radius: 999px;\n\n /* ✅ KEY FIX */\n overflow-x: auto;\n scrollbar-width: none; \n -ms-overflow-style: none; \n \n &::-webkit-scrollbar {\n display: none; \n }\n`;\nvar IconBtn = styled27.button`\n border: 1px solid #4daf83;\n background: #d4e4eb;\n border-radius: 6px;\n padding: 6px;\n cursor: pointer;\n`;\nvar Icon = styled27.img`\n width: 16px;\n`;\nvar SeekWrapper = styled27.div`\n display: flex;\n align-items: center;\n gap: 6px;\n width: 180px;\n`;\nvar GenerateBtn = styled27.button`\n background: linear-gradient(to right, #1761a3, #4daf83);\n color: white;\n border: none;\n padding: 6px 12px;\n border-radius: 6px;\n cursor: pointer;\n`;\nvar SettingsCard = styled27.div`\n background: #f7fbfb;\n border: 1px solid #cfe5da;\n border-radius: 14px;\n padding: 16px;\n margin-bottom: 16px;\n`;\nvar SettingsHeader = styled27.div`\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-size: 13px;\n font-weight: 600;\n color: #243a36;\n margin-bottom: 10px;\n`;\nvar SliderBox = styled27.div`\n background: #eef5f2;\n border-radius: 12px;\n padding: 12px;\n`;\nvar StyledSlider = styled27.input`\n width: 100%;\n appearance: none;\n height: 6px;\n border-radius: 999px;\n background: linear-gradient(\n to right,\n #1761a3 0%,\n #4daf83 var(--value),\n #d6e4de var(--value),\n #d6e4de 100%\n );\n\n &::-webkit-slider-thumb {\n appearance: none;\n width: 18px;\n height: 18px;\n border-radius: 50%;\n background: #4daf83;\n border: 2px solid #fff;\n cursor: pointer;\n }\n`;\nvar RightPanel = styled27.div`\n display: flex;\n flex-direction: column;\n gap: 16px;\n`;\nvar SideCard = styled27.div`\n background: #f7fbfb;\n border: 1px solid #cfe5da;\n border-radius: 14px;\n padding: 16px;\n`;\nvar SideHeader = styled27.div`\n font-size: 13px;\n font-weight: 600;\n color: #243a36;\n display: flex;\n justify-content: space-between;\n margin-bottom: 12px;\n`;\nvar SliderWrap = styled27.div`\n background: #eef5f2;\n border-radius: 12px;\n padding: 12px;\n`;\nvar Seek = styled27.input`\n flex: 1;\n appearance: none;\n height: 6px;\n border-radius: 999px;\n cursor: pointer;\n\n background: linear-gradient(\n to right,\n #1761a3 0%,\n #4daf83 var(--progress),\n #d6e4de var(--progress),\n #d6e4de 100%\n );\n\n &::-webkit-slider-thumb {\n appearance: none;\n width: 14px;\n height: 14px;\n border-radius: 50%;\n background: #4daf83;\n border: 2px solid white;\n box-shadow: 0 0 0 2px rgba(77, 175, 131, 0.35);\n }\n\n &::-moz-range-thumb {\n width: 14px;\n height: 14px;\n border-radius: 50%;\n background: #4daf83;\n border: 2px solid white;\n }\n`;\nvar ControlIcon = ({ src }) => /* @__PURE__ */ jsx27(\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] = useState15(\"\");\n const [mode, setMode] = useState15(\"textarea\");\n const [playing, setPlaying] = useState15(false);\n const [currentTime, setCurrentTime] = useState15(0);\n const [duration, setDuration] = useState15(1);\n const [volume, setVolume] = useState15(1);\n const [speed, setSpeed] = useState15(1);\n const [loop, setLoop] = useState15(false);\n const utteranceRef = useRef8(null);\n const timerRef = useRef8(null);\n const wordIndexRef = useRef8(0);\n const textAreaRef = useRef8(null);\n const highlightOnSkipRef = useRef8(false);\n const [summary, setSummary] = useState15(\"\");\n const [loopMode, setLoopMode] = useState15(0);\n const loopCountRef = useRef8(0);\n const autoPlayRef = useRef8(false);\n const baseDurationRef = useRef8(0);\n const timerBaseRef = useRef8(0);\n const volumeRef = useRef8(volume);\n const speedRef = useRef8(speed);\n const categorizeText = (input) => {\n if (!input.trim()) return \"This content covers general topics.\";\n const text2 = input.toLowerCase();\n const categories = {\n Technology: {\n keywords: [\n \"technology\",\n \"software\",\n \"hardware\",\n \"ai\",\n \"artificial intelligence\",\n \"machine learning\",\n \"computer\",\n \"internet\",\n \"digital\",\n \"platform\",\n \"app\"\n ],\n summary: \"This content focuses on technology, software systems, and digital innovation.\"\n },\n Business: {\n keywords: [\n \"business\",\n \"marketing\",\n \"sales\",\n \"brand\",\n \"strategy\",\n \"market\",\n \"customer\",\n \"startup\",\n \"company\",\n \"growth\"\n ],\n summary: \"This content discusses business concepts, strategies, and market growth.\"\n },\n Education: {\n keywords: [\n \"education\",\n \"learning\",\n \"teaching\",\n \"students\",\n \"training\",\n \"course\",\n \"knowledge\",\n \"research\",\n \"study\"\n ],\n summary: \"This content is related to education, learning processes, and knowledge sharing.\"\n },\n Media: {\n keywords: [\n \"content\",\n \"video\",\n \"audio\",\n \"blog\",\n \"podcast\",\n \"social media\",\n \"youtube\",\n \"linkedin\",\n \"posts\"\n ],\n summary: \"This content explains media, communication formats, and content creation.\"\n },\n Human: {\n keywords: [\n \"human\",\n \"people\",\n \"communication\",\n \"engagement\",\n \"interaction\",\n \"society\",\n \"culture\",\n \"behavior\"\n ],\n summary: \"This content highlights human behavior, interaction, and social aspects.\"\n },\n Geography: {\n keywords: [\n \"geography\",\n \"location\",\n \"region\",\n \"country\",\n \"city\",\n \"map\",\n \"area\",\n \"population\"\n ],\n summary: \"This content relates to geographical regions and location-based information.\"\n },\n Nature: {\n keywords: [\n \"nature\",\n \"environment\",\n \"climate\",\n \"earth\",\n \"ecosystem\",\n \"forest\",\n \"water\",\n \"animals\",\n \"plants\"\n ],\n summary: \"This content focuses on nature, environment, and ecological systems.\"\n },\n Health: {\n keywords: [\n \"health\",\n \"medical\",\n \"fitness\",\n \"wellness\",\n \"mental\",\n \"physical\",\n \"disease\"\n ],\n summary: \"This content discusses health, wellness, and medical-related topics.\"\n }\n };\n const summaries = [];\n for (const key in categories) {\n if (categories[key].keywords.some((k) => text2.includes(k))) {\n summaries.push(categories[key].summary);\n }\n }\n return summaries.length ? summaries.slice(0, 2).join(\" \") : \"This content provides general informational insights.\";\n };\n const highlightWordAt = (startIndex) => {\n const ta = textAreaRef.current;\n if (!ta) return;\n const value = ta.value;\n let start = startIndex;\n while (start > 0 && /\\S/.test(value[start - 1])) {\n start--;\n }\n let end = startIndex;\n while (end < value.length && /\\S/.test(value[end])) {\n end++;\n }\n ta.focus();\n ta.setSelectionRange(start, end);\n };\n const formatTime2 = (sec) => {\n const m = Math.floor(sec / 60);\n const s = Math.floor(sec % 60);\n return `${m}:${s.toString().padStart(2, \"0\")}`;\n };\n const getSourceText = () => text;\n const speakFromTime = (time) => {\n const source = text;\n if (!source.trim()) return;\n const words = source.split(/\\s+/);\n const startWordIndex = Math.floor(time * WORDS_PER_SECOND);\n const charOffset = words.slice(0, startWordIndex).join(\" \").length + (startWordIndex > 0 ? 1 : 0);\n window.speechSynthesis.cancel();\n stopTimer();\n const u = new SpeechSynthesisUtterance(source.slice(charOffset));\n u.rate = speedRef.current;\n u.volume = volumeRef.current;\n u.onboundary = (e) => {\n if (e.name === \"word\" && highlightOnSkipRef.current) {\n highlightWordAt(charOffset + e.charIndex);\n }\n };\n u.onend = () => {\n stopTimer();\n highlightOnSkipRef.current = false;\n if (loopMode === 1 && loopCountRef.current === 0) {\n loopCountRef.current = 1;\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n if (loopMode === 2) {\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(duration);\n };\n utteranceRef.current = u;\n window.speechSynthesis.speak(u);\n setPlaying(true);\n startTimer(time);\n };\n const startTimer = (fromTime) => {\n stopTimer();\n const start = Date.now() - fromTime * 1e3;\n timerRef.current = setInterval(() => {\n const elapsed = (Date.now() - start) / 1e3;\n setCurrentTime(Math.min(elapsed, duration));\n }, 100);\n };\n const togglePlay = () => {\n if (!utteranceRef.current) {\n loopCountRef.current = 0;\n speakFromTime(currentTime);\n return;\n }\n if (playing) {\n window.speechSynthesis.pause();\n stopTimer();\n setPlaying(false);\n } else {\n window.speechSynthesis.resume();\n startTimer(currentTime);\n setPlaying(true);\n }\n };\n const stopTimer = () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n const getQuickSummary = () => {\n if (mode === \"page\") {\n const pageText = document.body.innerText.replace(/\\s+/g, \" \").trim();\n return pageText ? \"This page provides key information and functionality related to the current module.\" : \"No content available on this page.\";\n }\n return categorizeText(text);\n };\n const getPageContent = () => {\n return document.body.innerText.replace(/\\s+/g, \" \").trim();\n };\n const downloadAudio = () => {\n alert(\"Download audio requires Backend TTS integration\");\n };\n const skip = (sec) => {\n const next = Math.max(0, Math.min(currentTime + sec, duration));\n highlightOnSkipRef.current = true;\n window.speechSynthesis.cancel();\n stopTimer();\n setCurrentTime(next);\n speakFromTime(next);\n startTimer(next);\n };\n const stop = () => {\n window.speechSynthesis.cancel();\n stopTimer();\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(0);\n textAreaRef.current?.setSelectionRange(0, 0);\n };\n useEffect12(() => {\n volumeRef.current = volume;\n }, [volume]);\n useEffect12(() => {\n speedRef.current = speed;\n }, [speed]);\n useEffect12(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n useEffect12(() => {\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 useEffect12(() => {\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 useEffect12(() => {\n if (!autoPlayRef.current) return;\n if (!text.trim()) return;\n autoPlayRef.current = false;\n speakFromTime(0);\n }, [text]);\n return /* @__PURE__ */ jsxs22(Container10, { \"data-testid\": \"text-to-audio-container\", children: [\n /* @__PURE__ */ jsxs22(Card5, { \"data-testid\": \"text-to-audio-card\", children: [\n /* @__PURE__ */ jsx27(Header2, { children: \"Text to Speech\" }),\n /* @__PURE__ */ jsx27(Body, { children: /* @__PURE__ */ jsx27(\n TextArea,\n {\n \"data-testid\": \"text-to-audio-textarea\",\n ref: textAreaRef,\n placeholder: \"Enter text here...\",\n value: text,\n onChange: (e) => setText(e.target.value)\n }\n ) }),\n /* @__PURE__ */ jsxs22(Controls, { children: [\n /* @__PURE__ */ jsxs22(Player, { children: [\n /* @__PURE__ */ jsx27(IconBtn, { \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ jsx27(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ jsx27(IconBtn, { \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ jsx27(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ jsx27(IconBtn, { \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ jsx27(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ jsx27(IconBtn, { \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ jsx27(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ jsx27(IconBtn, { \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ jsx27(\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__ */ jsx27(IconBtn, { \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ jsx27(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ jsx27(\n IconBtn,\n {\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__ */ jsxs22(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ jsx27(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ jsx27(\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__ */ jsx27(\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__ */ jsxs22(SeekWrapper, { children: [\n /* @__PURE__ */ jsx27(\n Seek,\n {\n \"data-testid\": \"seek-bar\",\n type: \"range\",\n min: 0,\n max: duration,\n step: 0.01,\n value: currentTime,\n style: {\n \"--progress\": `${currentTime / duration * 100}%`\n },\n onChange: (e) => {\n const t = Number(e.target.value);\n setCurrentTime(t);\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(t);\n }\n }\n ),\n /* @__PURE__ */ jsxs22(\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__ */ jsx27(\n GenerateBtn,\n {\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__ */ jsx27(\n GenerateBtn,\n {\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 /* @__PURE__ */ jsxs22(RightPanel, { children: [\n /* @__PURE__ */ jsxs22(SettingsCard, { children: [\n /* @__PURE__ */ jsxs22(SettingsHeader, { children: [\n /* @__PURE__ */ jsx27(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ jsxs22(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ jsx27(SliderBox, { children: /* @__PURE__ */ jsx27(\n StyledSlider,\n {\n \"data-testid\": \"text-to-audio-volume\",\n type: \"range\",\n min: 0,\n max: 1,\n step: 0.01,\n value: volume,\n style: { \"--value\": `${volume * 100}%` },\n onChange: (e) => setVolume(Number(e.target.value))\n }\n ) })\n ] }),\n /* @__PURE__ */ jsxs22(SideCard, { children: [\n /* @__PURE__ */ jsxs22(SideHeader, { children: [\n /* @__PURE__ */ jsx27(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ jsxs22(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ jsx27(SliderWrap, { children: /* @__PURE__ */ jsx27(\n StyledSlider,\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 style: {\n \"--value\": `${(speed - 0.5) / 1.5 * 100}%`\n },\n onChange: (e) => setSpeed(Number(e.target.value))\n }\n ) }),\n /* @__PURE__ */ jsxs22(\n \"div\",\n {\n style: {\n fontSize: 12,\n color: \"#7a8b86\",\n marginTop: 6,\n display: \"flex\",\n justifyContent: \"space-between\"\n },\n children: [\n /* @__PURE__ */ jsx27(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ jsx27(\"span\", { children: \"Faster\" })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs22(SideCard, { children: [\n /* @__PURE__ */ jsx27(SideHeader, { children: /* @__PURE__ */ jsx27(\"span\", { \"data-testid\": \"quick-summary\", children: \"Quick Summary\" }) }),\n /* @__PURE__ */ jsx27(\"p\", { style: { fontSize: 13, color: \"#4a5c57\", lineHeight: 1.5 }, children: mode === \"textarea\" ? categorizeText(text) : getQuickSummary() })\n ] })\n ] })\n ] });\n};\n\n// src/components/Notifications.tsx\nimport { useEffect as useEffect13, useRef as useRef9, useState as useState16 } from \"react\";\nimport { createPortal as createPortal2 } from \"react-dom\";\nimport styled28 from \"@emotion/styled\";\nimport { X as X4 } from \"lucide-react\";\nimport { jsx as jsx28, jsxs as jsxs23 } from \"@emotion/react/jsx-runtime\";\nvar Overlay2 = styled28.div`\n position: fixed;\n inset: 0;\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(0, 0, 0, 0.4);\n backdrop-filter: blur(6px);\n`;\nvar Card6 = styled28.div`\n position: relative;\n width: 100%;\n max-width: 420px;\n border-radius: 24px;\n border: 2px solid #c2e2d5;\n background: #f0f5f8;\n padding: 40px 32px;\n box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);\n`;\nvar CloseBtn = styled28.button`\n position: absolute;\n top: 20px;\n right: 20px;\n width: 32px;\n height: 32px;\n border-radius: 50%;\n background: white;\n border: none;\n box-shadow: 0 2px 6px rgba(0,0,0,0.15);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n`;\nvar Center = styled28.div`\n display: flex;\n justify-content: center;\n margin-bottom: 8px;\n`;\nvar Img = styled28.img`\n width: 144px;\n object-fit: contain;\n`;\nvar Title7 = styled28.h2`\n text-align: center;\n font-size: 24px;\n font-weight: 600;\n color: #4daf83;\n margin-bottom: 12px;\n`;\nvar Desc = styled28.p`\n text-align: center;\n font-size: 14px;\n color: #374151;\n margin-bottom: 32px;\n white-space: pre-line;\n`;\nvar PrimaryBtn = styled28.button`\n width: 100%;\n border-radius: 8px;\n padding: 12px;\n font-weight: 500;\n color: white;\n border: none;\n cursor: pointer;\n margin-bottom: 16px;\n background: linear-gradient(to right, #1b5fa7, #57b884);\n\n &:hover {\n box-shadow: 0 6px 18px rgba(0,0,0,0.25);\n }\n`;\nvar SecondaryBtn = styled28.button`\n width: 100%;\n border-radius: 8px;\n padding: 12px;\n border: 2px solid #8cb8e8;\n background: white;\n color: #1b5fa7;\n font-weight: 500;\n cursor: pointer;\n\n &:hover {\n background: #f2f8ff;\n }\n`;\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 = useRef9(null);\n const [status, setStatus] = useState16(\"prompt\");\n const [location, setLocation] = useState16(null);\n useEffect13(() => {\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 useEffect13(() => {\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 useEffect13(() => {\n if (!isOpen) return;\n const h = (e) => !ref.current?.contains(e.target) && onClose();\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, [isOpen]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx28(Overlay2, { children: /* @__PURE__ */ jsxs23(Card6, { ref, \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx28(CloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 16 }) }),\n image && /* @__PURE__ */ jsx28(Center, { children: /* @__PURE__ */ jsx28(Img, { src: image }) }),\n /* @__PURE__ */ jsx28(Title7, { children: title }),\n /* @__PURE__ */ jsx28(Desc, { children: description }),\n /* @__PURE__ */ jsx28(PrimaryBtn, { onClick: requestLocation, children: status === \"granted\" ? \"Location Enabled\" : allowText }),\n denyText && /* @__PURE__ */ jsx28(SecondaryBtn, { onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n }, children: denyText })\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 = useRef9(null);\n const [status, setStatus] = useState16(\"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 useEffect13(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx28(Overlay2, { children: /* @__PURE__ */ jsxs23(\n Card6,\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: [\n /* @__PURE__ */ jsx28(CloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 16 }) }),\n image && /* @__PURE__ */ jsx28(Center, { children: /* @__PURE__ */ jsx28(Img, { src: image, alt: \"Camera Access\" }) }),\n /* @__PURE__ */ jsx28(Title7, { children: title }),\n /* @__PURE__ */ jsx28(Desc, { children: description }),\n /* @__PURE__ */ jsx28(PrimaryBtn, { onClick: requestCamera, children: status === \"granted\" ? \"Camera Enabled\" : allowText }),\n denyText && /* @__PURE__ */ jsx28(\n SecondaryBtn,\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\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 = useRef9(null);\n const [status, setStatus] = useState16(\"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 useEffect13(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx28(Overlay2, { children: /* @__PURE__ */ jsxs23(\n Card6,\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: [\n /* @__PURE__ */ jsx28(CloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 16 }) }),\n image && /* @__PURE__ */ jsx28(Center, { children: /* @__PURE__ */ jsx28(Img, { src: image, alt: \"Microphone Access\" }) }),\n /* @__PURE__ */ jsx28(Title7, { children: title }),\n /* @__PURE__ */ jsx28(Desc, { children: description }),\n /* @__PURE__ */ jsx28(PrimaryBtn, { onClick: requestMic, children: status === \"granted\" ? \"Microphone Enabled\" : allowText }),\n denyText && /* @__PURE__ */ jsx28(\n SecondaryBtn,\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar PromoOverlay = styled28.div`\n position: fixed;\n inset: 0;\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(0, 0, 0, 0.4);\n backdrop-filter: blur(6px);\n`;\nvar PromoCard = styled28.div`\n width: 100%;\n max-width: 420px;\n border-radius: 16px;\n border: 2px solid #c5d9e6;\n background: #f1f7f7;\n box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);\n overflow: hidden;\n`;\nvar PromoHeader = styled28.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n background: linear-gradient(to right, #1761a3, #4daf83);\n`;\nvar PromoHeaderTitle = styled28.h3`\n color: white;\n font-size: 16px;\n font-weight: 500;\n`;\nvar PromoCloseBtn = styled28.button`\n width: 28px;\n height: 28px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.2);\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n &:hover {\n background: rgba(255, 255, 255, 0.3);\n }\n`;\nvar PromoContent = styled28.div`\n padding: 24px 20px;\n`;\nvar PromoTitle = styled28.h4`\n font-size: 18px;\n font-weight: 600;\n color: #111827;\n margin-bottom: 8px;\n`;\nvar PromoDesc = styled28.p`\n font-size: 14px;\n color: #878787;\n margin-bottom: 24px;\n`;\nvar PromoInput = styled28.input`\n width: 100%;\n padding: 12px 14px;\n border-radius: 8px;\n border: 2px solid #c2dae8;\n background: #eaf2f6;\n font-size: 14px;\n margin-bottom: 16px;\n\n &:focus {\n outline: none;\n border-color: #1b5fa7;\n }\n`;\nvar PromoCtaBtn = styled28.button`\n width: 100%;\n padding: 12px;\n border-radius: 8px;\n border: none;\n font-size: 14px;\n font-weight: 500;\n color: white;\n background: #1761a3;\n cursor: pointer;\n\n &:hover {\n background: #174f8a;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\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__ */ jsxs23(PromoCard, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs23(PromoHeader, { children: [\n /* @__PURE__ */ jsx28(PromoHeaderTitle, { children: headerTitle }),\n onClose && /* @__PURE__ */ jsx28(PromoCloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 14, color: \"white\" }) })\n ] }),\n /* @__PURE__ */ jsxs23(PromoContent, { children: [\n /* @__PURE__ */ jsx28(PromoTitle, { children: title }),\n /* @__PURE__ */ jsx28(PromoDesc, { children: description }),\n showInput && /* @__PURE__ */ jsx28(\n PromoInput,\n {\n type: \"email\",\n placeholder: inputPlaceholder,\n onChange: (e) => onInputChange?.(e.target.value)\n }\n ),\n /* @__PURE__ */ jsx28(PromoCtaBtn, { onClick: onCtaClick, children: ctaText })\n ] })\n ] });\n};\nvar MahatiPromotionModal = ({\n isOpen,\n onClose,\n ctaLink,\n openInNewTab,\n onCtaClick,\n testId,\n ...cardProps\n}) => {\n const ref = useRef9(null);\n const [email, setEmail] = useState16(\"\");\n useEffect13(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.(email);\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx28(PromoOverlay, { children: /* @__PURE__ */ jsx28(\"div\", { ref, \"data-testid\": testId, onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsx28(\n MahatiPromotionCard,\n {\n ...cardProps,\n onClose,\n onInputChange: setEmail,\n onCtaClick: handleCta\n }\n ) }) }),\n document.body\n );\n};\nvar PromoV2Overlay = styled28.div`\n position: fixed;\n inset: 0;\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(0, 0, 0, 0.4);\n backdrop-filter: blur(6px);\n padding: 16px;\n`;\nvar PromoV2Card = styled28.div`\n position: relative;\n width: 100%;\n max-width: 420px;\n border-radius: 16px;\n overflow: hidden;\n background: linear-gradient(\n to bottom,\n #4daf83,\n #2f8fa0,\n #1761a3\n );\n box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35);\n color: white;\n`;\nvar PromoV2Header = styled28.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n`;\nvar PromoV2HeaderTitle = styled28.h3`\n font-size: 16px;\n font-weight: 500;\n`;\nvar PromoV2CloseBtn = styled28.button`\n width: 28px;\n height: 28px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.2);\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n &:hover {\n background: rgba(255, 255, 255, 0.3);\n }\n`;\nvar PromoV2Content = styled28.div`\n padding: 40px 24px;\n`;\nvar PromoV2Title = styled28.h4`\n font-size: 28px;\n font-weight: 600;\n margin-bottom: 16px;\n`;\nvar PromoV2Desc = styled28.p`\n font-size: 14px;\n opacity: 0.9;\n margin-bottom: 40px;\n max-width: 80%;\n`;\nvar PromoV2CtaBtn = styled28.button`\n padding: 12px 32px;\n border-radius: 8px;\n border: none;\n background: white;\n color: #1761a3;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n\n &:hover {\n background: #f2f6fa;\n box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);\n }\n`;\nvar PromoV2Badge = styled28.img`\n position: absolute;\n bottom: 24px;\n right: -24px;\n width: 120px;\n height: 120px;\n object-fit: contain;\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 = useRef9(null);\n useEffect13(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx28(PromoV2Overlay, { children: /* @__PURE__ */ jsxs23(\n PromoV2Card,\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n children: [\n /* @__PURE__ */ jsxs23(PromoV2Header, { children: [\n /* @__PURE__ */ jsx28(PromoV2HeaderTitle, { children: headerTitle }),\n /* @__PURE__ */ jsx28(PromoV2CloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 14, color: \"white\" }) })\n ] }),\n /* @__PURE__ */ jsxs23(PromoV2Content, { children: [\n /* @__PURE__ */ jsx28(PromoV2Title, { children: title }),\n /* @__PURE__ */ jsx28(PromoV2Desc, { children: description }),\n /* @__PURE__ */ jsx28(PromoV2CtaBtn, { onClick: handleCta, children: ctaText })\n ] }),\n showBadgeImage && badgeImageSrc && /* @__PURE__ */ jsx28(PromoV2Badge, { src: badgeImageSrc, alt: \"Promotion Badge\" })\n ]\n }\n ) }),\n document.body\n );\n};\nvar PromoV3Overlay = styled28.div`\n position: fixed;\n inset: 0;\n z-index: 9999;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(0, 0, 0, 0.4);\n backdrop-filter: blur(6px);\n padding: 16px;\n`;\nvar PromoV3Card = styled28.div`\n position: relative;\n width: 100%;\n max-width: 420px;\n border-radius: 16px;\n border: 2px solid #cfe8dc;\n background: #f9fbfb;\n padding: 32px 24px;\n text-align: center;\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);\n`;\nvar PromoV3CloseBtn = styled28.button`\n position: absolute;\n top: 20px;\n right: 20px;\n width: 28px;\n height: 28px;\n border-radius: 50%;\n background: #f1f5f9;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n &:hover {\n background: #e5e7eb;\n }\n`;\nvar PromoV3ImageWrap = styled28.div`\n display: flex;\n justify-content: center;\n margin-bottom: 24px;\n`;\nvar PromoV3Image = styled28.img`\n width: 160px;\n height: 130px;\n object-fit: contain;\n`;\nvar PromoV3Title = styled28.h3`\n font-size: 22px;\n font-weight: 600;\n color: #4daf83;\n margin-bottom: 12px;\n`;\nvar PromoV3Desc = styled28.p`\n font-size: 14px;\n color: #6b7280;\n margin-bottom: 32px;\n`;\nvar PromoV3CtaBtn = styled28.button`\n width: 100%;\n border-radius: 8px;\n padding: 12px;\n font-size: 14px;\n font-weight: 500;\n color: white;\n border: none;\n cursor: pointer;\n background: linear-gradient(to right, #1761a3, #4daf83);\n\n &:hover {\n background: linear-gradient(to right, #174f8a, #4ca676);\n box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);\n }\n`;\nvar PromoV3SecondaryBtn = styled28.button`\n margin-top: 16px;\n font-size: 14px;\n font-weight: 500;\n color: #1761a3;\n background: none;\n border: none;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\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 = useRef9(null);\n useEffect13(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx28(PromoV3Overlay, { children: /* @__PURE__ */ jsxs23(\n PromoV3Card,\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n children: [\n /* @__PURE__ */ jsx28(PromoV3CloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 14 }) }),\n imageSrc && /* @__PURE__ */ jsx28(PromoV3ImageWrap, { children: /* @__PURE__ */ jsx28(PromoV3Image, { src: imageSrc, alt: \"Promotion\" }) }),\n /* @__PURE__ */ jsx28(PromoV3Title, { children: title }),\n /* @__PURE__ */ jsx28(PromoV3Desc, { children: description }),\n /* @__PURE__ */ jsx28(PromoV3CtaBtn, { onClick: handleCta, children: ctaText }),\n secondaryText && /* @__PURE__ */ jsx28(\n PromoV3SecondaryBtn,\n {\n onClick: () => {\n onSecondaryClick?.();\n onClose();\n },\n children: secondaryText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar NotificationWrapper = styled28.div`\n display: flex;\n align-items: flex-start;\n gap: 16px;\n width: 100%;\n max-width: 640px;\n border-radius: 16px;\n border: 2px solid #c2e2d5;\n background: #f1f7f7;\n padding: 12px 16px;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);\n`;\nvar LeftVisual = styled28.div`\n position: relative;\n width: 56px;\n height: 56px;\n flex-shrink: 0;\n\n @media (min-width: 768px) {\n width: 64px;\n height: 64px;\n }\n`;\nvar IconBox = styled28.div`\n width: 100%;\n height: 100%;\n border-radius: 10px;\n background: linear-gradient(to bottom right, #1761a3, #4daf83);\n display: flex;\n align-items: center;\n justify-content: center;\n`;\nvar IconImg = styled28.img`\n width: 20px;\n height: 20px;\n\n @media (min-width: 768px) {\n width: 24px;\n height: 24px;\n }\n`;\nvar AvatarImg = styled28.img`\n width: 100%;\n height: 100%;\n border-radius: 10px;\n object-fit: cover;\n`;\nvar Badge = styled28.div`\n position: absolute;\n bottom: -4px;\n right: -4px;\n\n width: 24px;\n height: 24px;\n\n border-radius: 50%;\n border: 2px solid white;\n\n background: ${({ bg }) => bg};\n\n display: flex;\n align-items: center;\n justify-content: center;\n`;\nvar BadgeText = styled28.span`\n font-size: 12px;\n font-weight: 700;\n color: white;\n line-height: 1;\n`;\nvar BadgeImg = styled28.img`\n width: 12px;\n height: 12px;\n`;\nvar Content2 = styled28.div`\n flex: 1;\n`;\nvar TitleRow = styled28.div`\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n`;\nvar NotificationTitle = styled28.p`\n font-size: 14px;\n font-weight: 600;\n color: #111827;\n\n @media (min-width: 768px) {\n font-size: 16px;\n }\n`;\nvar Time = styled28.span`\n font-size: 10px;\n color: #6b7280;\n white-space: nowrap;\n\n @media (min-width: 768px) {\n font-size: 12px;\n }\n`;\nvar Description2 = styled28.p`\n font-size: 12px;\n color: #6b7280;\n margin-bottom: 12px;\n\n @media (min-width: 768px) {\n font-size: 14px;\n }\n`;\nvar Actions = styled28.div`\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n @media (min-width: 640px) {\n flex-direction: row;\n }\n`;\nvar PrimaryAction = styled28.button`\n flex: 1;\n border-radius: 8px;\n padding: 10px 0;\n font-size: 14px;\n font-weight: 500;\n color: white;\n border: none;\n cursor: pointer;\n background: linear-gradient(to right, #1761a3, #4daf83);\n\n &:hover {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\n }\n`;\nvar SecondaryAction = styled28.button`\n flex: 1;\n border-radius: 8px;\n padding: 10px 0;\n font-size: 14px;\n font-weight: 500;\n border: 2px solid #b7d9c9;\n background: #eaf6f1;\n color: #2f6f5e;\n cursor: pointer;\n\n &:hover {\n background: #dff1ea;\n }\n`;\nvar NotificationCloseBtn = styled28.button`\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #d7e5ed;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n @media (min-width: 768px) {\n width: 32px;\n height: 32px;\n }\n\n &:hover {\n background: #dcefe6;\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__ */ jsxs23(NotificationWrapper, { \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs23(LeftVisual, { children: [\n iconSrc ? /* @__PURE__ */ jsx28(IconBox, { children: /* @__PURE__ */ jsx28(IconImg, { src: iconSrc, alt: \"\" }) }) : avatarSrc && /* @__PURE__ */ jsx28(AvatarImg, { src: avatarSrc, alt: \"User\" }),\n badgeIconSrc && badgeType && /* @__PURE__ */ jsx28(Badge, { bg: BADGE_BG_MAP[badgeType], children: /* @__PURE__ */ jsx28(BadgeImg, { src: badgeIconSrc, alt: \"\" }) })\n ] }),\n /* @__PURE__ */ jsxs23(Content2, { children: [\n /* @__PURE__ */ jsxs23(TitleRow, { children: [\n /* @__PURE__ */ jsx28(NotificationTitle, { children: title }),\n time && /* @__PURE__ */ jsx28(Time, { children: time })\n ] }),\n description && /* @__PURE__ */ jsx28(Description2, { children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ jsxs23(Actions, { children: [\n primaryActionText && /* @__PURE__ */ jsx28(PrimaryAction, { onClick: onPrimaryAction, children: primaryActionText }),\n secondaryActionText && /* @__PURE__ */ jsx28(SecondaryAction, { onClick: onSecondaryAction, children: secondaryActionText })\n ] })\n ] }),\n onClose && /* @__PURE__ */ jsx28(NotificationCloseBtn, { onClick: onClose, children: /* @__PURE__ */ jsx28(X4, { size: 14 }) })\n ] });\n};\nexport {\n Accordion,\n CardOverlayLoader,\n CardWithLoading,\n CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS,\n Filter,\n LoadingDots,\n LoadingDotsLinear,\n MahatiActivity,\n Button as MahatiButton,\n Calendar as MahatiCalendar,\n MahatiCameraAccessModal,\n Card as MahatiCard,\n MahatiChartAnalyticsWidget,\n ConfettiExplosion as MahatiConfettiExplosion,\n Dropdown as MahatiDropdown,\n FormContainer as MahatiFormContainer,\n Input as MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n Modal as MahatiModal,\n MahatiNotificationCard,\n MahatiPromotionModal as MahatiPromotionModal_V1,\n MahatiPromotionModalV2Modal as MahatiPromotionModal_V2,\n MahatiPromotionModalV3Modal as MahatiPromotionModal_V3,\n RealisticConfetti as MahatiRealisticConfetti,\n MahatiSearch,\n SearchableDropdown as MahatiSearchableDropdown,\n MahatiStatus,\n TabbedInterface as MahatiTabbedInterface,\n Table as MahatiTable,\n TableWithTab as MahatiTableWithTab,\n TexttoAudio as MahatiTexttoAudio,\n ToastMessage as MahatiToastMessage,\n Tooltip2 as MahatiTooltip,\n Spinner\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["d:\\insurgence\\cleanup\\uicomponents\\library\\dist\\index.mjs"],"names":["__getOwnPropNames","Object","getOwnPropertyNames","__commonJS","cb","mod","__require","exports","require_down_4","module","require_performance_peak_icon","require_calendar_3","require_increase","require_decrease","require_check_mark_1","require_danger_1","require_notification_1","require_close","require_check_mark_2","require_danger_2","require_danger_1_1","require_notification_2","require_close_copy_1","useState","ChevronDown","ChevronUp","jsx","jsxs","Accordion","title","children","defaultOpen","accordionTestId","headerTestId","contentTestId","open","setOpen","className","onClick","displayName","React2","jsx2","parseHeightWidth","match","parseInt","parseGap","gapClass","getColorByName","name","colors","blue","green","red","orange","purple","yellow","pink","teal","indigo","primary","secondary","success","danger","warning","info","toLowerCase","IconButtonGroup","forwardRef","direction","props","ref","gap","style","variantClasses","default","destructive","outline","ghost","link","dotted","pill","sizeClasses","sm","md","lg","icon","ButtonBase","variant","size","iconButton","iconButtonHeightClass","iconButtonWidthClass","iconButtonBgClass","iconButtonRadiusClass","iconButtonBgPaddingClass","iconButtonHoverBgClass","iconButtonHoverIntensity","testId","color","height","width","minHeight","minWidth","startsWith","background","borderRadius","Button","React3","useState2","ChevronDown2","ChevronUp2","jsx3","jsxs2","Card","cardContent","cardBackContent","collapsible","flippable","backgroundColor","onFlip","isFlipped","setIsFlipped","contentId","useId","handleFlip","newState","mainContent","variantStyles","elevated","outlined","subtle","figma","sizeStyles","type","e","stopPropagation","p","id","React4","X","Fragment","jsx4","jsxs3","MODAL_WIDTH_MAP","xl","getPositionClass","position","Modal","isOpen","onClose","subtitle","customWidth","margin","primaryAction","secondaryAction","headerIcon","showDivider","useEffect","onKey","key","document","addEventListener","removeEventListener","body","overflow","role","includes","strokeWidth","label","disabled","jsx5","FormContainer","onSubmit","React5","jsx6","jsxs4","Input","hasError","errorMessage","onChange","handleChange","useState4","useEffect3","useRef","useRef2","X2","ChevronDown3","createPortal","useState3","useEffect2","HiOutlineClock","HiChevronDown","HiChevronLeft","HiChevronRight","HiCalendarDays","Fragment2","jsx7","jsxs5","convertToDateString","date","year","month","String","padStart","day","isSameDate","date1","date2","formatDate","formatDateWithFormat","format","monthNum","monthNames","monthAbbr","formatTime","time","hour24","hour","period","hour2","minute2","minute","getDaysInMonth","monthIndex","Date","getDate","getFirstDayOfMonth","getDay","getMonthName","toLocaleDateString","DATE_FORMAT_OPTIONS","TIME_ZONE_OPTIONS","compareInternalDates","a","b","addDaysInternal","start","daysToAdd","y","m","d","dim","isBlockedDateHelper","config","days","startInternal","startDate","endInternal","currentInternal","afterOrOnStart","beforeOrOnEnd","getLocalTimeZone","timeZoneString","Intl","DateTimeFormat","resolvedOptions","timeZone","shortTimeZone","toLocaleTimeString","timeZoneName","split","SIZE_SCALES","getDeviceScale","window","innerWidth","Calendar","calendartestId","value","enableRangeSelection","rangeValue","onRangeChange","enableTimeSelection","timeValue","onTimeChange","showTimeFormatToggle","timeFormat","onTimeFormatChange","autoHide","showTodayButton","showClearButton","placeholder","onShow","onHide","showIcon","enableYearDropdown","showDateFormatSelector","dateFormat","onDateFormatChange","showTimeZoneSelector","timeZoneFormat","onTimeZoneFormatChange","blockDateConfig","previewTextStyles","globalTypography","today","getFullYear","currentYear","setCurrentYear","getMonth","currentMonth","setCurrentMonth","end","internalRangeValue","setInternalRangeValue","setIsOpen","activeField","setActiveField","showTimeSelector","setShowTimeSelector","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedPeriod","setSelectedPeriod","internalTimeFormat","setInternalTimeFormat","showYearDropdown","setShowYearDropdown","internalDateFormat","setInternalDateFormat","internalTimeZoneFormat","setInternalTimeZoneFormat","deviceScale","setDeviceScale","positionAbove","setPositionAbove","containerRef","calendarRef","sizeScale","scale","finalRangeValue","scaled","value2","Math","round","handleResize","current","calculatePosition","containerRect","getBoundingClientRect","calendarHeight","offsetHeight","spaceBelow","innerHeight","bottom","spaceAbove","top","bufferSpace","handleClickOutside","event","contains","target","daysInMonth","firstDay","monthName","previousMonth","nextMonth","selectDate","newRange","startTime","getTime","endTime","dateString","selectToday","todayDate","now","currentHour","getHours","currentMinute","getMinutes","hour12","localTZ","clearDate","toggleCalendar","handleStartFieldClick","handleEndFieldClick","handleChooseTimeClick","handleChooseDateClick","handleTimeFormatToggle","newFormat","handleTimeConfirm","handleDateConfirm","handleMonthYearClick","handleYearSelect","renderDays","isSelected","isInRange","currentTime","isToday","isBlocked","push","fontSize","i","totalCells","remainingCells","renderTimeSelector","hours12","Array","from","length","_","hours24","minutes","marginBottom","transform","paddingLeft","paddingRight","border","map","zone","marginTop","Number","paddingTop","flex","defaultIcon","readOnly","paddingBottom","cursor","opacity","padding","Fragment3","jsx8","jsxs6","DEFAULT_ACTIVITY_OPTIONS","DEFAULT_STATUS_OPTIONS","Filter","onApply","onReset","activityOptions","statusOptions","searchPlaceholder","activity","status","keyword","values","setValues","prev","resetField","resetAll","newValues","applyFilters","Section","range","SelectWrapper","opt","SelectIcon","MahatiActivity","options","triggerRef","dropdownRef","pos","setPos","selectedLabel","find","o","updatePosition","rect","scrollY","left","scrollX","handler","MahatiStatus","MahatiSearch","useEffect4","useState5","Fragment4","jsx9","jsxs7","getFontFamily","font","lower","trim","TabbedInterface","tabs","defaultActiveTab","onTabChange","draggableTabs","onReorderTabs","orientation","verticalPosition","showTabCloseIconInHeader","tabCloseIconPosition","tabCloseIconContent","onCloseTab","tabHeaderFont","tabContentFont","sectionTitleFont","sectionDescriptionFont","activeIndex","setActiveIndex","draggingIndex","setDraggingIndex","effectiveCloseIconContent","tabHeaderFontFamily","tabContentFontFamily","handleTabClick","index","handleDragStart","handleDragOver","preventDefault","handleDrop","fromIndex","toIndex","prevActive","active","handleDragEnd","headerButtons","tab","isDragging","showClose","closeIcon2","draggable","onDragStart","onDragOver","onDrop","onDragEnd","content","fontFamily","useState6","useRef3","useEffect5","jsx10","jsxs8","Dropdown","onSelect","internalSelected","setInternalSelected","selectedOption","handleSelect","option","handleButtonClick","basic","dark","underline","shadow","glass","gradient","React10","useEffect6","useState7","XMarkIcon","Fragment5","jsx11","jsxs9","getFontFamily2","renderCellValue","isValidElement","isArray","some","v","join","toLocaleString","toString","JSON","stringify","DefaultTabContent","headers","row","h","TableWithTab","tableProps","tabProps","rearrange","getRowId","renderTabContent","onRowOpenInTab","description","tabLabelKey","data","setTabs","labelColumnKey","sectionTitleFontFamily","sectionDescriptionFontFamily","t","rawLabel","rowIndex","handleRowClick","existsIndex","findIndex","next2","splice","next","handleCloseTab","filter","isRowSelected","handleReorderTabs","moved","tabbedInterfaceTabs","effectiveShowHeaderClose","header","colSpan","selected","rowId","React11","useState8","ArrowDownOnSquareIcon","XMarkIcon2","Fragment6","jsx12","jsxs10","Table","page","setPage","limit","setLimit","totalCount","highlightRowColor","actions","paginationRequired","paginationPosition","onDownloadPDF","onDownloadExcel","searchable","searchTerm","onResetSearch","onSearch","searchModeOptions","summary","summaryKey","summaryTitleField","summaryColumn","summaryColumnKey","summaryColumnMaxLength","textWrapColumns","textWrapMaxLength","textWrapColumnMaxLengths","tableTestId","searchMode","setSearchMode","expandedRowIndex","setExpandedRowIndex","Set","expandedRowIndexes","setExpandedRowIndexes","isPaginated","totalPages","max","ceil","currentPage","goToPage","clamped","min","renderPageNumbers","pages","siblings","summaryColKeyToUse","renderCell","item","truncated","substring","mode","idx","isExpanded","has","toggleRow","delete","add","useMemo","useMemo3","useState12","useEffect7","useRef4","useState9","jsx13","jsxs11","assetSrc","anyM","src","arrowDownIcon","getTriggerClasses","base","getMenuClasses","getOptionClasses","ChartDropdown","internalValue","setInternalValue","displayValue","optionValue","onKeyDown","alt","React13","Chart","ChartJS","ArcElement","Tooltip","Legend","CategoryScale","LinearScale","PointElement","LineElement","BarElement","Filler","Doughnut","Line","Bar","jsx14","register","makeAreaDataStraight","datasets","ds","tension","cubicInterpolationMode","PieLineBarChart","chartType","defaultOptions","isLineFamily","responsive","maintainAspectRatio","elements","line","plugins","legend","display","tooltip","intersect","titleColor","bodyColor","borderColor","borderWidth","displayColors","scales","x","grid","drawBorder","ticks","interaction","axis","cutout","chartOptions","renderChart","jsx15","jsxs12","BulletChart","bullets","percentageAchieved","achieved","achievedWidth","markerPosition","marker","marginLeft","jsx16","jsxs13","GaugeChart","gauges","fontWeight","gauge","percentage","angle","remaining","dailyAvg","viewBox","x1","y1","x2","y2","offset","stopColor","fill","stroke","strokeLinecap","transition","strokeDasharray","gradientUnits","stopOpacity","textAnchor","transformOrigin","DEFAULT_RISK_BANDS","rangeStart","rangeEnd","createRiskArcPath","centerX","centerY","radius","startAngle","endAngle","startRad","PI","endRad","cos","sin","largeArcFlag","getRiskLevel","score","bands","band","RiskGaugeChart","maxScore","currentLevel","bandIndex","arcPath","bandIdx","jsx17","jsxs14","HorizontalBarChart","bars","xAxisConfig","topPerformer","safeBars","bar","whiteSpace","labels","totalLabels","approxCharWidth","centerOffset","maxVal","barLengthPercentage","React14","jsx18","jsxs15","assetSrc2","arrowDownIcon2","GANTT_COLORS","emerald","GanttChart","selectedYear","selectedMonth","selectedProject","onProjectChange","isProjectDropdownOpen","setIsProjectDropdownOpen","projects","projectData","getMonthNames","monthRange","monthMap","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","month1","month2","getMonthNumber","monthNumberMap","getTodayPosition","currentDay","monthToNumber","selectedMonth1","selectedMonth2","selectedYearNum","dayPercent","positionInMonth","mobileLeft","desktopLeft","show","todayPosition","months","displayMonths","month1Num","month2Num","getTaskPosition","endDate","startDay","startMonth","endDay","endMonth","selectedMonth1Num","selectedMonth2Num","startPercent","isInSecondMonth","lineHeight","baseHeight","taskHeight","taskSpacing","tasks","DateRangeBoxes","alignItems","justifyContent","aspectRatio","boxShadow","project","smLeft","section","task","taskColor","React15","jsx19","jsxs16","LEGEND_COLORS","getActivityColor","getYearWeeks","calendarheatmapData","weeks","firstDayOfWeek","daysToMonday","firstMonday","currentDate","lastMonth","weekIndex","maxWeeks","MONTH_NAMES_FULL","MONTH_NAMES_SHORT","hasCurrentYearDate","dateStr","dayData","weekDays","setDate","dayIndex","thursday","weekMonth","monthLabel","CalendarHeatmapChart","selectedType","hoveredCell","setHoveredCell","visible","cellColor","tooltipData","setTooltipData","yearWeeks","dayRows","forEach","week","weekIdx","dayIdx","strokeLinejoin","rowIdx","cell","colIdx","isCurrentYear","cellKey","isHovered","onMouseEnter","currentTarget","onMouseLeave","marginRight","Fragment7","jsx20","jsxs17","DEFAULT_COLORS","LollipopChart","items","MenuButtonDots","maxValue","gridPositions","axisLabels","slice","textOverflow","reverse","maxWidth","jsx21","jsxs18","defaultGradient","ColumnChart","columns","yAxisConfig","safeColumns","minValue","yAxisLabels","formatValue","toFixed","calculateHeight","column","columnHeightPercentage","React16","useMemo2","useState10","useRef5","useEffect8","Fragment8","jsx22","jsxs19","createLinearPath","points","path","createAreaPath","linePath","lastPoint","firstPoint","calculatePercentageChange","firstValue","lastValue","abs","getTimeLabel","dataLength","timestamps","monthsDiff","daysDiff","years","floor","getDateRange","filteredTimestamps","allTimestamps","formatDateRange","formatSingleDate","sameYear","sd","sy","em","ed","ey","calculateSum","reduce","s","formatCurrencyValue","prefix","KPIChart","hoveredIndex","setHoveredIndex","tooltipPos","setTooltipPos","timePeriods","filteredData","cutoffDate","setMonth","setFullYear","filtered","filteredTS","timestamp","dataDate","percentageChange","isPositive","dynamicTimeLabel","dynamicDateRange","dynamicValue","chartWidth","chartHeight","calculatedPoints","linearPath","areaPath","gradientId","random","substr","handleMouseMove","svg","ownerSVGElement","clientX","nearestIndex","minDistance","point","distance","positiveGradientStop","trendColor","changeIndicatorBg","letterSpacing","preserveAspectRatio","isNaN","cx","cy","r","onMouseMove","borderTop","text","jsx23","jsxs20","DEFAULT_BAR_COLORS","revenue","profit","loss","cost","GroupBarChart","groups","legends","safeGroups","getColorMap","colorMap","BAR_COLORS","getProfitOrLoss","group","profitOrLoss","profitOrLossValue","isProfitable","profitLossColor","profitLossAbsValue","barIdx","textAlign","wordBreak","overflowWrap","useState11","jsx24","jsxs21","DEFAULT_COLORS2","aggregating","outstanding","writeOff","StackBarChart","setTooltip","safeData","COLORS","getLabel","l","defaultLabels","handleSegmentMouseEnter","total","totalHeight","aggregatingPercent","outstandingPercent","writeOffPercent","backdropFilter","Fragment9","jsx25","jsxs22","assetSrc3","FALLBACK_ICONS","performancePeakIcon","calendarIcon","increaseIcon","decreaseIcon","getIconSrc","imported","fallback","colorToClass","c","getStatusColors","statusConfig","textColor","tabLabel","charAt","toUpperCase","MenuDotsButton","MahatiChartAnalyticsWidget","chartTypes","initialChartType","filters","chartFilters","selectedFilters","chartDataMap","bulletData","gaugeData","horizontalBarData","columnChartData","groupBarData","stackBarData","lollipopData","kpiData","riskGaugeData","ganttData","heatmapData","onApplyFilters","quickStats","actionButtons","onChartTypeChange","onFiltersChange","details","setChartType","selectedGanttProject","setSelectedGanttProject","selectedCalendarHeatmapProject","setSelectedCalendarHeatmapProject","currentFilters","currentData","isPieFamily","bulletDetails","bullet","currentGanttData","baseData","projectName","newProgress","progress","newStatus","currentHorizontalBarTopPerformer","yearData","monthData","monthOrder","currentMonthIndex","indexOf","previousYear","previousYearData","previousMonthData","products","keys","maxRevenue","topProduct","minRevenue","Infinity","needsFocusProduct","product","Revenue","isIncrease","cur","topProductData","category","Profit","needsFocus","change","calendarPeakAndActiveDay","empty","peakDay","dayName","mostActiveDay","count","average","allDayData","dayOfWeekCounts","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","n","dateObj","dayNames","entries","stats","avg","formatPeakDate","weekday","currentBulletData","SelectYear","SelectMonth","SelectType","typeData","currentKPIData","kpiKey","currentGauge","sp","productData","xAxis","Cost","st","yAxis","lYearData","ly","lm","lc","lo","lCatData","selectedCategory","currentRiskGauges","sw","selectedWeek","allData","isActive","zIndex","val","statusColors","totalVolume","transactions","getBadgeBg","QuickInsightsCard","peakIconSrc","peakDate","peakEvents","calendarIconSrc","activeDayLabel","activeDayValue","activeAvg","dateLabel","sm2","dailyAvgNeeded","currentPace","daysRemaining","yearNum","lastDayOfMonth","lastDay","lastDayWeekday","lastFriday","formattedDate","currentRiskGauge","lastTask","TopPerformerCard","performer","totalRevenue","sum","contribution","ci","prevMonth","prevYear","prevTypeData","prevTop","growth","rank","sort","currentTotal","prevTotal","pctChange","bgColor","minimumFractionDigits","maximumFractionDigits","defaultLegends","getColor","revenueColor","profitColor","lossColor","g","topPL","isTopProfitable","prevGroups","lossProducts","needsFocusHasLoss","mt","ct","topTotal","mt2","ct2","weekNum","replace","prevWeek","prevDay","pt","ch","fid","f","f0","f1","f2","catData","bestItem","lowestItem","aboveAvg","React19","useState13","Fragment10","jsx26","jsxs23","Tooltip2","image","animation","setVisible","isReady","setIsReady","showAnimation","setShowAnimation","tooltipPosition","setTooltipPosition","adjustedPosition","setAdjustedPosition","tooltipRef","hasContent","tooltipRect","viewportWidth","viewportHeight","finalPosition","right","showTooltip","requestAnimationFrame","delay","triggerDelay","setTimeout","hideTooltip","handleUpdate","passive","renderTooltipContent","loading","renderAnimation","AnimationComponent","component","variantStyle","onFocus","onBlur","React20","useEffect9","ReactDOM","jsx27","jsxs24","assetSrc4","checkMarkIcon","dangerIcon","notificationIcon","closeIcon","checkMarkIcon2","dangerIcon2","dangerIcon1_1","notificationIcon2","closeIconCopy","FALLBACK_ICONS2","getIconSrc2","getStripGradient","getTitleColor","getIcon","objectFit","ToastMessage","customTitle","message","duration","custom","action","rest","displayTitle","hasActions","timer","clearTimeout","closeIconSrc","iconElement","iconSrc","iconWidth","iconHeight","titleFontFamily","messageFontFamily","messageColor","closeIconWidth","closeIconHeight","btn","useState14","useEffect10","useRef6","useMemo4","jsx28","ConfettiExplosion","particleCount","force","particleSize","stageHeight","particles","setParticles","animationFrameRef","timerRef","stableColors","newParticles","speed","fromLeft","startX","shape","rotation","rotationSpeed","vx","vy","gravity","life","animate","elapsed","prevParticles","particle","cancelAnimationFrame","starGradient","clipPath","useState15","useEffect11","useRef7","useMemo5","jsx29","RealisticConfetti","jsx30","jsxs25","SrOnly","Spinner","primaryColor","borderTopColor","CircularSpinner","ringCount","rings","ringSize","CardOverlayLoader","spinnerSize","spinnerBorderWidth","spinnerPrimary","spinnerTrack","backdrop","LoadingDots","dots","LoadingDotsLinear","CardWithLoading","imageUrl","useEffect12","useRef8","useState16","ChevronDown4","X3","Loader2","Fragment11","jsx31","jsxs26","SearchableDropdown","search","setSearch","useEffect13","useRef9","useState17","jsx32","jsxs27","ControlIcon","backgroundImage","backgroundRepeat","backgroundPosition","backgroundSize","defaultIcons","play","pause","stop","repeat","skipForward","skipBackward","tenForward","tenBackward","TexttoAudio","icons","WORDS_PER_SECOND","setText","setMode","playing","setPlaying","setCurrentTime","setDuration","volume","setVolume","setSpeed","loop","setLoop","utteranceRef","wordIndexRef","textAreaRef","highlightOnSkipRef","setSummary","loopMode","setLoopMode","loopCountRef","autoPlayRef","baseDurationRef","timerBaseRef","volumeRef","speedRef","categorizeText","input","text2","categories","Technology","keywords","Business","Education","Media","Human","Geography","Nature","Health","summaries","k","highlightWordAt","startIndex","ta","test","focus","setSelectionRange","formatTime2","sec","getSourceText","speakFromTime","source","words","startWordIndex","charOffset","speechSynthesis","cancel","stopTimer","u","SpeechSynthesisUtterance","rate","onboundary","charIndex","onend","speak","startTimer","fromTime","setInterval","togglePlay","resume","clearInterval","getQuickSummary","pageText","innerText","getPageContent","downloadAudio","alert","skip","baseDuration","newDuration","newCurrentTime","step","useEffect14","useRef10","useState18","createPortal2","X4","jsx33","jsxs28","MahatiLocationAccessModal","allowText","denyText","onAllow","onDeny","setStatus","location","setLocation","navigator","permissions","query","then","res","state","onchange","coords","requestLocation","geolocation","getCurrentPosition","enableHighAccuracy","MahatiCameraAccessModal","cardRef","requestCamera","stream","err","mediaDevices","getUserMedia","video","console","error","MahatiMicrophoneAccessModal","requestMic","audio","MahatiPromotionCard","headerTitle","ctaText","onCtaClick","showInput","inputPlaceholder","onInputChange","MahatiPromotionModal","ctaLink","openInNewTab","cardProps","email","setEmail","handleCta","href","MahatiPromotionModalV2Modal","showBadgeImage","badgeImageSrc","MahatiPromotionModalV3Modal","secondaryText","onSecondaryClick","imageSrc","BADGE_BG_MAP","like","mention","follow","comment","MahatiNotificationCard","avatarSrc","badgeIconSrc","badgeType","primaryActionText","onPrimaryAction","secondaryActionText","onSecondaryAction","MahatiButton","MahatiCalendar","MahatiCard","MahatiConfettiExplosion","MahatiDropdown","MahatiFormContainer","MahatiInput","MahatiModal","MahatiPromotionModal_V1","MahatiPromotionModal_V2","MahatiPromotionModal_V3","MahatiRealisticConfetti","MahatiSearchableDropdown","MahatiTabbedInterface","MahatiTable","MahatiTableWithTab","MahatiTexttoAudio","MahatiToastMessage","MahatiTooltip"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAIA,oBAAoBC,OAAOC,mBAAmB;AAClD,IAAIC,aAAa,oBAACC,IAAIC;WAAQ,SAASC;QACrC,OAAOD,OAAO,AAAC,CAAA,GAAGD,EAAE,CAACJ,kBAAkBI,GAAG,CAAC,EAAE,CAAA,AAAC,EAAE,AAACC,CAAAA,MAAM;YAAEE,SAAS,CAAC;QAAE,CAAA,EAAGA,OAAO,EAAEF,MAAMA,IAAIE,OAAO;IACpG;;AAEA,8BAA8B;AAC9B,IAAIC,iBAAiBL,WAAW;IAC9B,+BAAA,SAA8BI,OAAO,EAAEE,MAAM;QAC3CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,6CAA6C;AAC7C,IAAIG,gCAAgCP,WAAW;IAC7C,8CAAA,SAA6CI,OAAO,EAAEE,MAAM;QAC1DA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,kCAAkC;AAClC,IAAII,qBAAqBR,WAAW;IAClC,mCAAA,SAAkCI,OAAO,EAAEE,MAAM;QAC/CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,gCAAgC;AAChC,IAAIK,mBAAmBT,WAAW;IAChC,iCAAA,SAAgCI,OAAO,EAAEE,MAAM;QAC7CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,gCAAgC;AAChC,IAAIM,mBAAmBV,WAAW;IAChC,iCAAA,SAAgCI,OAAO,EAAEE,MAAM;QAC7CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,oCAAoC;AACpC,IAAIO,uBAAuBX,WAAW;IACpC,qCAAA,SAAoCI,OAAO,EAAEE,MAAM;QACjDA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,gCAAgC;AAChC,IAAIQ,mBAAmBZ,WAAW;IAChC,iCAAA,SAAgCI,OAAO,EAAEE,MAAM;QAC7CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,sCAAsC;AACtC,IAAIS,yBAAyBb,WAAW;IACtC,uCAAA,SAAsCI,OAAO,EAAEE,MAAM;QACnDA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,6BAA6B;AAC7B,IAAIU,gBAAgBd,WAAW;IAC7B,8BAAA,SAA6BI,OAAO,EAAEE,MAAM;QAC1CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,oCAAoC;AACpC,IAAIW,uBAAuBf,WAAW;IACpC,qCAAA,SAAoCI,OAAO,EAAEE,MAAM;QACjDA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,gCAAgC;AAChC,IAAIY,mBAAmBhB,WAAW;IAChC,iCAAA,SAAgCI,OAAO,EAAEE,MAAM;QAC7CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,kCAAkC;AAClC,IAAIa,qBAAqBjB,WAAW;IAClC,mCAAA,SAAkCI,OAAO,EAAEE,MAAM;QAC/CA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,sCAAsC;AACtC,IAAIc,yBAAyBlB,WAAW;IACtC,uCAAA,SAAsCI,OAAO,EAAEE,MAAM;QACnDA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,oCAAoC;AACpC,IAAIe,uBAAuBnB,WAAW;IACpC,qCAAA,SAAoCI,OAAO,EAAEE,MAAM;QACjDA,OAAOF,OAAO,GAAG;IACnB;AACF;AAEA,+BAA+B;AAC/B,SAASgB,QAAQ,QAAQ,QAAQ;AACjC,SAASC,WAAW,EAAEC,SAAS,QAAQ,eAAe;AACtD,SAASC,GAAG,EAAEC,IAAI,QAAQ,oBAAoB;AAC9C,SAASC,UAAU,KAOlB;QANCC,QADiB,MACjBA,OACAC,WAFiB,MAEjBA,+BAFiB,MAGjBC,aAAAA,8CAAc,4BACdC,kBAJiB,MAIjBA,iBACAC,eALiB,MAKjBA,cACAC,gBANiB,MAMjBA;IAEA,IAAwBX,6BAAAA,SAASQ,kBAA1BI,OAAiBZ,cAAXa,UAAWb;IACxB,OAAO,aAAa,GAAGI,KACrB,OACA;QACE,eAAeK;QACfK,WAAW;QACXP,UAAU;YACR,aAAa,GAAGH,KACd,UACA;gBACE,eAAeM;gBACfK,SAAS,SAATA;2BAAeF,QAAQ,CAACD;;gBACxBE,WAAW,AAAC,4TAaiF,OAA7FF,OAAO,4DAA4D,2BAA0B;gBAE7FL,UAAU;oBACR,aAAa,GAAGJ,IAAI,QAAQ;wBAAEI,UAAUD;oBAAM;oBAC9C,aAAa,GAAGH,IAAI,QAAQ;wBAAEW,WAAW;wBAA2CP,UAAUK,OAAO,aAAa,GAAGT,IAAID,WAAW;4BAAEY,WAAW;wBAAU,KAAK,aAAa,GAAGX,IAAIF,aAAa;4BAAEa,WAAW;wBAAU;oBAAG;iBAC5N;YACH;YAEFF,QAAQ,aAAa,GAAGT,IACtB,OACA;gBACE,eAAeQ;gBACfG,WAAW;gBACXP,UAAU,aAAa,GAAGJ,IAAI,OAAO;oBAAEW,WAAW;oBAAqBP,UAAAA;gBAAS;YAClF;SAEH;IACH;AAEJ;AACAF,UAAUW,WAAW,GAAG;AAExB,4BAA4B;AAC5B,OAAOC,YAAY,QAAQ;AAC3B,SAASd,OAAOe,IAAI,QAAQ,oBAAoB;AAChD,IAAIC,mBAAmB,0BAACL;IACtB,IAAI,CAACA,WAAW,OAAO;IACvB,IAAMM,QAAQN,UAAUM,KAAK,CAAC;IAC9B,IAAIA,OAAO;QACT,OAAO,AAAC,GAAyB,OAAvBC,SAASD,KAAK,CAAC,EAAE,IAAI,GAAE;IACnC;IACA,OAAO;AACT;AACA,IAAIE,WAAW,kBAACC;IACd,IAAI,CAACA,UAAU,OAAO;IACtB,IAAMH,QAAQG,SAASH,KAAK,CAAC;IAC7B,IAAIA,OAAO;QACT,OAAO,AAAC,GAAyB,OAAvBC,SAASD,KAAK,CAAC,EAAE,IAAI,GAAE;IACnC;IACA,OAAO;AACT;AACA,IAAII,iBAAiB,wBAACC;IACpB,IAAMC,SAAS;QACbC,MAAM;QACNC,OAAO;QACPC,KAAK;QACLC,QAAQ;QACRC,QAAQ;QACRC,QAAQ;QACRC,MAAM;QACNC,MAAM;QACNC,QAAQ;QACRC,SAAS;QACTC,WAAW;QACXC,SAAS;QACTC,QAAQ;QACRC,SAAS;QACTC,MAAM;IACR;IACA,OAAOf,MAAM,CAACD,iBAAAA,2BAAAA,KAAMiB,WAAW,GAAG,IAAIhB,OAAOU,OAAO;AACtD;AACA,IAAIO,kBAAkB1B,OAAO2B,UAAU,CACrC;;;;0EAAG9B,kBAAAA,kCAAW+B,WAAAA,wCAAY,wBAAOtB,iBAAAA,UAAUhB,iBAAAA,UAAauC;;;;;6CAASC;IAC/D,IAAMC,MAAM1B,SAASC;IACrB,OAAO,aAAa,GAAGL,KACrB,OACA;QACE6B,KAAAA;QACAE,OAAO;YAAED,KAAAA;QAAI;QACblC,WAAW,AAAC,eAAwFA,OAA1E+B,cAAc,QAAQ,yBAAyB,yBAAwB,KAAmB,OAAhB/B,aAAa;OAC9GgC;QACHvC,UAAAA;;AAGN;AAEFoC,gBAAgB3B,WAAW,GAAG;AAC9B,IAAIkC,iBAAiB;IACnB,0CAA0C;IAC1CC,SAAS;IACTC,aAAa;IACbC,SAAS;IACT,sEAAsE;IACtEhB,WAAW;IACXiB,OAAO;IACPC,MAAM;IACNhB,QAAQ;IACRiB,QAAQ;IACRC,MAAM;AACR;AACA,IAAIC,cAAc;IAChBC,IAAI;IACJC,IAAI;IACJC,IAAI;IACJC,MAAM;IACNX,SAAS;AACX;AACA,IAAIY,aAAa9C,OAAO2B,UAAU,CAChC;;;;0EACE9B,kBAAAA,gCACAkD,SAAAA,oCAAU,4CACVC,MAAAA,8BAAO,uBACPxC,aAAAA,8BACAyC,YAAAA,0CAAa,yBACbC,8BAAAA,uBACAC,6BAAAA,sBACAC,0BAAAA,mBACAC,8BAAAA,uBACAC,iCAAAA,0BACAC,+BAAAA,wBACAC,iCAAAA,0BACAlE,iBAAAA,UACAmE,eAAAA,QACAzB,cAAAA,OACGH;;;;;;;;;;;;;;;;6CACFC;IACD,IAAM4B,QAAQnD,eAAeC;IAC7B,IAAIyC,YAAY;QACd,IAAMU,SAASzD,iBAAiBgD;QAChC,IAAMU,QAAQ1D,iBAAiBiD;QAC/B,OAAO,aAAa,GAAGlD,KACrB,UACA;YACE6B,KAAAA;YACAE,OAAO;gBACL2B,QAAAA;gBACAC,OAAAA;gBACAC,WAAWF;gBACXG,UAAUF;gBACVF,OAAOA,MAAMK,UAAU,CAAC,YAAY,UAAUL;eAC3C1B;YAELnC,WAAW,AAAC,sMAKRyD,OADAD,yBAAyB,cAAa,kBAEtCD,OADAE,4BAA4B,WAAU,kBAGtCzD,OAFAuD,qBAAqB,eAAc,kEAEnB,OAAhBvD,aAAa,IAAG;WAEjBgC;YACHvC,UAAAA;;IAGN;IACA,OAAO,aAAa,GAAGW,KACrB,UACA;QACE6B,KAAAA;QACA,eAAe2B;QACfzB,OAAOxB,OAAO;YACZwD,YAAYN;YACZA,OAAO;YACPO,cAAclB,YAAY,SAAS,WAAW;WAC3Cf,SACDA;QACJnC,WAAW,AAAC,kWAUR4C,OADA,CAACjC,OAAOyB,cAAc,CAACc,QAAQ,GAAG,IAAG,gBAErClD,OADA4C,WAAW,CAACO,KAAK,EAAC,gBACF,OAAhBnD,aAAa,IAAG;OAEjBgC;QACHvC,UAAAA;;AAGN;AAEFwD,WAAW/C,WAAW,GAAG;AACzB,IAAImE,SAASpB;AACboB,OAAOxC,eAAe,GAAGA;AAEzB,0BAA0B;AAC1B,OAAOyC,UAAUpF,YAAYqF,SAAS,QAAQ,QAAQ;AACtD,SAASpF,eAAeqF,YAAY,EAAEpF,aAAaqF,UAAU,QAAQ,eAAe;AACpF,SAASpF,OAAOqF,IAAI,EAAEpF,QAAQqF,KAAK,QAAQ,oBAAoB;AAC/D,IAAIC,OAAON,OAAOxC,UAAU,CAC1B;;;;0EACEtC,cAAAA,OACAqF,oBAAAA,aACAC,wBAAAA,0CACAC,aAAAA,4CAAc,iDACdC,WAAAA,wCAAY,wBACZC,wBAAAA,iBACAb,qBAAAA,mCACAlB,SAAAA,oCAAU,4CACVC,MAAAA,8BAAO,8CACPnD,WAAAA,wCAAY,qBACZP,iBAAAA,mCACAC,aAAAA,4CAAc,yBACdwF,eAAAA,QACA/C,cAAAA,OACAyB,eAAAA,QACG5B;;;;;;;;;;;;;;;;6CACFC;IACD,IAAwBsC,8BAAAA,UAAU7E,kBAA3BI,OAAiByE,eAAXxE,UAAWwE;IACxB,IAAkCA,+BAAAA,UAAU,YAArCY,YAA2BZ,gBAAhBa,eAAgBb;IAClC,IAAMc,YAAYf,OAAOgB,KAAK;IAC9B,IAAMC,aAAa;QACjB,IAAI,CAACP,WAAW;QAChB,IAAMQ,WAAW,CAACL;QAClBC,aAAaI;QACbN,mBAAAA,6BAAAA,OAASM;IACX;IACA,IAAMC,cAAcZ,eAAepF;IACnC,IAAMiG,gBAAgB;QACpBrD,SAAS;QACTsD,UAAU;QACVC,UAAU;QACVC,QAAQ;QACRC,OAAO;IACT;IACA,IAAMC,aAAa;QACjBlD,IAAI;QACJR,SAAS;QACTU,IAAI;QACJ+C,OAAO;IACT;IACA,OAAO,aAAa,GAAGpB,KACrB,OACA;QACE1E,WAAWgF,YAAY,yBAAyB;QAChD/E,SAAS+E,YAAYO,aAAa,KAAK;QACvC9F,UAAU,aAAa,GAAGkF,MACxB,OACA;YACE1C,KAAAA;YACA,eAAe2B;YACf5D,WAAW,AAAC,mJAKV+F,OADAL,aAAa,CAACxC,QAAQ,EAAC,kBAEvB8B,OADAe,UAAU,CAAC5C,KAAK,EAAC,kBAEjBgC,OADAH,YAAY,sGAAsG,IAAG,kBAErHhF,OADAmF,YAAY,iBAAiB,IAAG,kBACtB,OAAVnF,WAAU;YAEZmC,OAAO;gBACL8C,iBAAiB/B,YAAY,WAAW+B,kBAAkBA,kBAAkB/B,YAAY,UAAU+B,mBAAmB,0BAA0B,KAAK;gBACpJb,cAAcA,gBAAgB;eAC3BjC;WAEFH;YACHvC,UAAU;gBACR,aAAa,GAAGkF,MAAM,OAAO;oBAAE3E,WAAWgF,YAAY,oBAAoB;oBAAIvF,UAAU;wBACtFD,SAAS,aAAa,GAAGmF,MACvB,OACA;4BACE3E,WAAW,AAAC,qCAAsE,OAAlCF,QAAQ2F,cAAc,SAAS;4BAC/EhG,UAAU;gCACR,aAAa,GAAGiF,KAAK,MAAM;oCAAE1E,WAAW;oCAAkDP,UAAUD;gCAAM;gCAC1GuF,eAAe,aAAa,GAAGL,KAC7B,UACA;oCACEsB,MAAM;oCACN/F,SAAS,SAATA,QAAUgG;wCACR,IAAIjB,WAAWiB,EAAEC,eAAe;wCAChCnG,QAAQ,SAACoG;mDAAM,CAACA;;oCAClB;oCACA,cAAcrG,OAAO,iBAAiB;oCACtC,iBAAiBA;oCACjB,iBAAiBuF;oCACjBrF,WAAW;oCACXP,UAAUK,OAAO,aAAa,GAAG4E,KAAKD,YAAY;wCAAEzE,WAAW;oCAAqB,KAAK,aAAa,GAAG0E,KAAKF,cAAc;wCAAExE,WAAW;oCAAqB;gCAChK;6BAEH;wBACH;wBAEFyF,eAAe,aAAa,GAAGf,KAC7B,OACA;4BACE0B,IAAIf;4BACJrF,WAAW,AAAC,kJAGuD,OAAnEF,OAAO,gCAAgC,6BAA4B;4BAEnEL,UAAU,aAAa,GAAGiF,KAAK,OAAO;gCAAE1E,WAAW;gCAAmBP,UAAUgG;4BAAY;wBAC9F;qBAEH;gBAAC;gBACFT,aAAaF,mBAAmB,aAAa,GAAGJ,KAC9C,OACA;oBACE1E,WAAW;oBACXP,UAAUqF;gBACZ;aAEH;;IAGP;AAEJ;AAEFF,KAAK1E,WAAW,GAAG;AAEnB,2BAA2B;AAC3B,YAAYmG,YAAY,QAAQ;AAChC,SAASC,CAAC,QAAQ,eAAe;AACjC,SAASC,QAAQ,EAAElH,OAAOmH,IAAI,EAAElH,QAAQmH,KAAK,QAAQ,oBAAoB;AACzE,IAAIC,kBAAkB;IACpB7D,IAAI;IACJR,SAAS;IACTS,IAAI;IACJC,IAAI;IACJ4D,IAAI;AACN;AACA,IAAIC,mBAAmB,0BAACC;IACtB,OAAQA;QACN,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT;YACE,OAAO;IACX;AACF;AACA,SAASC,MAAM,KAiBd;QAhBClD,SADa,MACbA,QACAmD,SAFa,MAEbA,QACAC,UAHa,MAGbA,SACAxH,QAJa,MAIbA,OACAyH,WALa,MAKbA,UACAxH,WANa,MAMbA,6BANa,MAObO,WAAAA,0CAAY,uBACZ+D,AAAOmD,cARM,MAQbnD,OACAD,SATa,MASbA,QACAqD,SAVa,MAUbA,QACAC,gBAXa,MAWbA,eACAC,kBAZa,MAYbA,iBACAC,aAba,MAabA,iCAba,MAcbC,aAAAA,8CAAc,6CAdD,MAebV,UAAAA,wCAAW,0CAfE,MAgBb1D,MAAAA,gCAAO;QAyGyBkE,wBAUAD;IAjHhC,IAAMrD,QAAQmD,wBAAAA,yBAAAA,cAAeR,eAAe,CAACvD,KAAK;IAClDkD,OAAOmB,SAAS,CAAC;QACf,IAAI,CAACT,QAAQ;QACb,IAAMU,QAAQ,eAACxB;mBAAMA,EAAEyB,GAAG,KAAK,YAAYV;;QAC3CW,SAASC,gBAAgB,CAAC,WAAWH;QACrC,OAAO;mBAAME,SAASE,mBAAmB,CAAC,WAAWJ;;IACvD,GAAG;QAACV;QAAQC;KAAQ;IACpBX,OAAOmB,SAAS,CAAC;QACfG,SAASG,IAAI,CAAC3F,KAAK,CAAC4F,QAAQ,GAAGhB,SAAS,WAAW;QACnD,OAAO;YACLY,SAASG,IAAI,CAAC3F,KAAK,CAAC4F,QAAQ,GAAG;QACjC;IACF,GAAG;QAAChB;KAAO;IACX,IAAI,CAACA,QAAQ,OAAO;IACpB,OAAO,aAAa,GAAGN,MAAMF,UAAU;QAAE9G,UAAU;YACjD,aAAa,GAAG+G,KACd,OACA;gBACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,cAAY,KAAK;gBACnD3D,SAAS+G;gBACThH,WAAW;YACb;YAEF,aAAa,GAAGwG,KACd,OACA;gBACExG,WAAW,AAAC,uDAEV,OAFgE4G,iBAChEC;gBAEFpH,UAAU,aAAa,GAAGgH,MACxB,OACA;oBACE,eAAe7C;oBACfoE,MAAM;oBACN,cAAc;oBACd/H,SAAS,SAATA,QAAUgG;+BAAMA,EAAEC,eAAe;;oBACjC/D,OAAO;wBACL4B,OAAO,OAAOA,UAAU,WAAW,AAAC,GAAQ,OAANA,OAAM,QAAMA;wBAClDD,MAAM,EAAEA,mBAAAA,oBAAAA,SAAW+C,SAASoB,QAAQ,CAAC,WAAWpB,SAASoB,QAAQ,CAAC,WAAW,SAAS;wBACtFd,QAAQ,OAAOA,WAAW,WAAW,AAAC,GAAS,OAAPA,QAAO,QAAMA;oBACvD;oBACAnH,WAAW,AAAC,+JAAiPA,OAAnF,CAAC6G,SAASoB,QAAQ,CAAC,WAAW,CAACpB,SAASoB,QAAQ,CAAC,WAAW,iBAAiB,IAAG,KAAa,OAAVjI;oBAC7PP,UAAU;wBACR,aAAa,GAAGgH,MACd,OACA;4BACE,eAAe7C,SAAS,AAAC,GAAS,OAAPA,QAAO,aAAW,KAAK;4BAClD5D,WAAW;4BACXP,UAAU;gCACR,aAAa,GAAGgH,MAAM,OAAO;oCAAEzG,WAAW;oCAAkCP,UAAU;wCACpF6H,cAAc,aAAa,GAAGd,KAAK,OAAO;4CAAE/G,UAAU6H;wCAAW;wCACjE,aAAa,GAAGb,MAAM,OAAO;4CAAEzG,WAAW;4CAAUP,UAAU;gDAC5DD,SAAS,aAAa,GAAGgH,KACvB,MACA;oDACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;oDACjD5D,WAAW;oDACXP,UAAUD;gDACZ;gDAEFyH,YAAY,aAAa,GAAGT,KAC1B,KACA;oDACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,eAAa,KAAK;oDACpD5D,WAAW;oDACXP,UAAUwH;gDACZ;6CAEH;wCAAC;qCACH;gCAAC;gCACF,aAAa,GAAGT,KACd,UACA;oCACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,gBAAc,KAAK;oCACrD3D,SAAS+G;oCACT,cAAc;oCACdhH,WAAW;oCACXP,UAAU,aAAa,GAAG+G,KAAKF,GAAG;wCAAEnD,MAAM;wCAAI+E,aAAa;oCAAE;gCAC/D;6BAEH;wBACH;wBAEF,aAAa,GAAG1B,KACd,OACA;4BACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,WAAS,KAAK;4BAChD5D,WAAW;4BACXP,UAAAA;wBACF;wBAED2H,CAAAA,iBAAiBC,eAAc,KAAM,aAAa,GAAGZ,MACpD,OACA;4BACE,eAAe7C,SAAS,AAAC,GAAS,OAAPA,QAAO,aAAW,KAAK;4BAClD5D,WAAW;4BACXP,UAAU;gCACR4H,mBAAmB,aAAa,GAAGb,KACjC,UACA;oCACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,oBAAkB,KAAK;oCACzD3D,SAASoH,gBAAgBpH,OAAO;oCAChCD,WAAW;oCACXP,QAAQ,GAAE4H,yBAAAA,gBAAgBc,KAAK,cAArBd,oCAAAA,yBAAyB;gCACrC;gCAEFD,iBAAiB,aAAa,GAAGZ,KAC/B,UACA;oCACE,eAAe5C,SAAS,AAAC,GAAS,OAAPA,QAAO,kBAAgB,KAAK;oCACvD3D,SAASmH,cAAcnH,OAAO;oCAC9BmI,UAAUhB,cAAcgB,QAAQ;oCAChCpI,WAAW,AAAC,yEAAsK,OAA9FoH,cAAcgB,QAAQ,GAAG,mCAAmC,mCAAkC;oCAClL3I,QAAQ,GAAE2H,uBAAAA,cAAce,KAAK,cAAnBf,kCAAAA,uBAAuB;gCACnC;6BAEH;wBACH;qBAEH;gBACH;YAEJ;SAEH;IAAC;AACJ;AACAN,MAAM5G,WAAW,GAAG;AAEpB,mCAAmC;AACnC,SAASb,OAAOgJ,IAAI,QAAQ,oBAAoB;AAChD,IAAIC,gBAAgB;QAClB7I,iBAAAA,UACA8I,iBAAAA,UACApG,cAAAA,OACAyB,eAAAA,iCACA5D,WAAAA,0CAAY;IAEZ,OAAO,aAAa,GAAGqI,KACrB,QACA;QACE,eAAezE;QACf2E,UAAAA;QACApG,OAAAA;QACAnC,WAAW,AAAC,iSAUE,OAAVA,WAAU;QAEdP,UAAAA;IACF;AAEJ;AACA6I,cAAcpI,WAAW,GAAG;AAE5B,2BAA2B;AAC3B,OAAOsI,YAAY,QAAQ;AAC3B,SAASnJ,OAAOoJ,IAAI,EAAEnJ,QAAQoJ,KAAK,QAAQ,oBAAoB;AAC/D,IAAIC,QAAQH,OAAO1G,UAAU,CAC3B;;;;gGACE8G,UAAAA,sCAAW,iDACXC,cAAAA,8CAAe,+CACf7I,WAAAA,wCAAY,qBACZ8I,iBAAAA,UACArJ,iBAAAA,UACAmE,eAAAA,QACG5B;;;;;;;6CACFC;IACD,IAAM8G,eAAe,sBAAC9C;QACpB,IAAIjE,MAAMoG,QAAQ,EAAE;QACpBU,qBAAAA,+BAAAA,SAAW7C;IACb;IACA,OAAO,aAAa,GAAGyC,MACrB,OACA;QACE,eAAe9E;QACf5D,WAAW;QACXP,UAAU;YACR,aAAa,GAAGgJ,KACd,SACA;gBACExG,KAAAA;gBACA6G,UAAUC;gBACV,eAAenF,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;gBACjD5D,WAAW,AAAC,gQAsBZA,OAXA4I,WAAW,wEAAwE,uHAAsH,2QAW/L,OAAV5I,WAAU;eAEPgC;YAGP4G,YAAYC,gBAAgB,aAAa,GAAGJ,KAC1C,QACA;gBACE,eAAe7E,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;gBACjD5D,WAAW;gBACXP,UAAUoJ;YACZ;SAEH;IACH;AAEJ;AAEFF,MAAMzI,WAAW,GAAG;AAEpB,4BAA4B;AAC5B,SAAShB,YAAY8J,SAAS,EAAExB,aAAayB,UAAU,EAAEC,UAAUC,OAAO,QAAQ,QAAQ;AAC1F,SAAS7C,KAAK8C,EAAE,EAAEjK,eAAekK,YAAY,QAAQ,eAAe;AACpE,SAASC,YAAY,QAAQ,YAAY;AAEzC,8BAA8B;AAC9B,SAASpK,YAAYqK,SAAS,EAAE/B,aAAagC,UAAU,EAAEN,MAAM,QAAQ,QAAQ;AAC/E,SAASO,cAAc,EAAEC,aAAa,EAAEC,aAAa,EAAEC,cAAc,QAAQ,iBAAiB;AAC9F,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAAStD,YAAYuD,SAAS,EAAEzK,OAAO0K,IAAI,EAAEzK,QAAQ0K,KAAK,QAAQ,oBAAoB;AACtF,IAAIC,sBAAsB,6BAACC;IACzB,IAAI,CAACA,MAAM,OAAO;IAClB,IAAMC,OAAOD,KAAKC,IAAI;IACtB,IAAMC,QAAQC,OAAOH,KAAKE,KAAK,GAAG,GAAGE,QAAQ,CAAC,GAAG;IACjD,IAAMC,MAAMF,OAAOH,KAAKK,GAAG,EAAED,QAAQ,CAAC,GAAG;IACzC,OAAO,AAAC,GAAUF,OAARD,MAAK,KAAYI,OAATH,OAAM,KAAO,OAAJG;AAC7B;AACA,IAAIC,aAAa,oBAACC,OAAOC;IACvB,IAAI,CAACD,SAAS,CAACC,OAAO,OAAO;IAC7B,OAAOD,MAAMN,IAAI,KAAKO,MAAMP,IAAI,IAAIM,MAAML,KAAK,KAAKM,MAAMN,KAAK,IAAIK,MAAMF,GAAG,KAAKG,MAAMH,GAAG;AAC5F;AACA,IAAII,aAAa,oBAACT;IAChB,IAAI,CAACA,MAAM,OAAO;IAClB,IAAME,QAAQC,OAAOH,KAAKE,KAAK,GAAG,GAAGE,QAAQ,CAAC,GAAG;IACjD,IAAMC,MAAMF,OAAOH,KAAKK,GAAG,EAAED,QAAQ,CAAC,GAAG;IACzC,IAAMH,OAAOE,OAAOH,KAAKC,IAAI;IAC7B,OAAO,AAAC,GAAWI,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;AAC5B;AACA,IAAIS,uBAAuB,8BAACV,MAAMW;IAChC,IAAI,CAACX,MAAM,OAAO;IAClB,IAAMY,WAAWZ,KAAKE,KAAK,GAAG;IAC9B,IAAMA,QAAQC,OAAOS,UAAUR,QAAQ,CAAC,GAAG;IAC3C,IAAMC,MAAMF,OAAOH,KAAKK,GAAG,EAAED,QAAQ,CAAC,GAAG;IACzC,IAAMH,OAAOE,OAAOH,KAAKC,IAAI;IAC7B,IAAMY,aAAa;QAAC;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;KAAM;IACvG,IAAMC,YAAYD,UAAU,CAACb,KAAKE,KAAK,CAAC;IACxC,IAAIS,WAAW,QAAQ;QACrB,OAAO,AAAC,GAAWN,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;IAC5B;IACA,OAAQU;QACN,KAAK;YACH,OAAO,AAAC,GAAWN,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;QAC5B,KAAK;YACH,OAAO,AAAC,GAASC,OAAPG,KAAI,KAAYJ,OAATC,OAAM,KAAQ,OAALD;QAC5B,KAAK;YACH,OAAO,AAAC,GAAUC,OAARD,MAAK,KAAYI,OAATH,OAAM,KAAO,OAAJG;QAC7B,KAAK;YACH,OAAO,AAAC,GAAeA,OAAbS,WAAU,KAAUb,OAAPI,KAAI,KAAQ,OAALJ;QAChC,KAAK;YACH,OAAO,AAAC,GAASa,OAAPT,KAAI,KAAgBJ,OAAba,WAAU,KAAQ,OAALb;QAChC,KAAK;YACH,OAAO,AAAC,GAAUa,OAARb,MAAK,KAAgBI,OAAbS,WAAU,KAAO,OAAJT;QACjC,KAAK;YACH,OAAO,AAAC,GAAeA,OAAbS,WAAU,KAAWb,OAARI,KAAI,MAAS,OAALJ;QACjC,KAAK;YACH,OAAO,AAAC,GAASa,OAAPT,KAAI,KAAgBJ,OAAba,WAAU,KAAQ,OAALb;QAChC,KAAK;YACH,OAAO,AAAC,GAAUa,OAARb,MAAK,KAAgBI,OAAbS,WAAU,KAAO,OAAJT;QACjC,KAAK;YACH,OAAO,AAAC,GAAWA,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;QAC5B,KAAK;YACH,OAAO,AAAC,GAASC,OAAPG,KAAI,KAAYJ,OAATC,OAAM,KAAQ,OAALD;QAC5B,KAAK;YACH,OAAO,AAAC,GAAUC,OAARD,MAAK,KAAYI,OAATH,OAAM,KAAO,OAAJG;QAC7B,KAAK;YACH,OAAO,AAAC,GAAeA,OAAbS,WAAU,KAAUb,OAAPI,KAAI,KAAQ,OAALJ;QAChC,KAAK;YACH,OAAO,AAAC,GAASa,OAAPT,KAAI,KAAgBJ,OAAba,WAAU,KAAQ,OAALb;QAChC,KAAK;YACH,OAAO,AAAC,GAAUa,OAARb,MAAK,KAAgBI,OAAbS,WAAU,KAAO,OAAJT;QACjC,KAAK;YACH,OAAO,AAAC,GAASH,OAAPG,KAAI,KAAYJ,OAATC,OAAM,KAAQ,OAALD;QAC5B,KAAK;YACH,OAAO,AAAC,GAAWI,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;QAC5B,KAAK;YACH,OAAO,AAAC,GAAUC,OAARD,MAAK,KAAYI,OAATH,OAAM,KAAO,OAAJG;QAC7B;YACE,OAAO,AAAC,GAAWA,OAATH,OAAM,KAAUD,OAAPI,KAAI,KAAQ,OAALJ;IAC9B;AACF;AACA,IAAIc,aAAa,oBAACC;QAAML,0EAAS;IAC/B,IAAI,CAACK,MAAM,OAAO;IAClB,IAAIL,WAAW,OAAO;QACpB,IAAIM,SAASD,KAAKE,IAAI;QACtB,IAAIF,KAAKG,MAAM,KAAK,QAAQH,KAAKE,IAAI,KAAK,IAAI;YAC5CD,SAASD,KAAKE,IAAI,GAAG;QACvB,OAAO,IAAIF,KAAKG,MAAM,KAAK,QAAQH,KAAKE,IAAI,KAAK,IAAI;YACnDD,SAAS;QACX;QACA,IAAMG,QAAQjB,OAAOc,QAAQb,QAAQ,CAAC,GAAG;QACzC,IAAMiB,UAAUlB,OAAOa,KAAKM,MAAM,EAAElB,QAAQ,CAAC,GAAG;QAChD,OAAO,AAAC,GAAWiB,OAATD,OAAM,KAAW,OAARC;IACrB;IACA,IAAMH,OAAOf,OAAOa,KAAKE,IAAI,EAAEd,QAAQ,CAAC,GAAG;IAC3C,IAAMkB,SAASnB,OAAOa,KAAKM,MAAM,EAAElB,QAAQ,CAAC,GAAG;IAC/C,OAAO,AAAC,GAAUkB,OAARJ,MAAK,KAAaF,OAAVM,QAAO,KAAe,OAAZN,KAAKG,MAAM;AACzC;AACA,IAAII,iBAAiB,wBAACtB,MAAMuB;IAC1B,OAAO,IAAIC,KAAKxB,MAAMuB,aAAa,GAAG,GAAGE,OAAO;AAClD;AACA,IAAIC,qBAAqB,4BAAC1B,MAAMuB;IAC9B,OAAO,IAAIC,KAAKxB,MAAMuB,YAAY,GAAGI,MAAM;AAC7C;AACA,IAAIC,eAAe,sBAACL;IAClB,OAAO,IAAIC,KAAK,MAAMD,YAAY,GAAGM,kBAAkB,CAAC,SAAS;QAC/D5B,OAAO;IACT;AACF;AACA,IAAI6B,sBAAsB;IACxB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,oBAAoB;IACtB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,uBAAuB,8BAACC,GAAGC;IAC7B,IAAID,EAAEjC,IAAI,KAAKkC,EAAElC,IAAI,EAAE,OAAOiC,EAAEjC,IAAI,GAAGkC,EAAElC,IAAI;IAC7C,IAAIiC,EAAEV,UAAU,KAAKW,EAAEX,UAAU,EAAE,OAAOU,EAAEV,UAAU,GAAGW,EAAEX,UAAU;IACrE,OAAOU,EAAE7B,GAAG,GAAG8B,EAAE9B,GAAG;AACtB;AACA,IAAI+B,kBAAkB,yBAACC,OAAOC;IAC5B,IAAIC,IAAIF,MAAMpC,IAAI;IAClB,IAAIuC,IAAIH,MAAMb,UAAU;IACxB,IAAIiB,IAAIJ,MAAMhC,GAAG,GAAGiC;IACpB,MAAO,KAAM;QACX,IAAMI,MAAMnB,eAAegB,GAAGC;QAC9B,IAAIC,KAAKC,KAAK;QACdD,KAAKC;QACLF,KAAK;QACL,IAAIA,IAAI,IAAI;YACVA,IAAI;YACJD,KAAK;QACP;IACF;IACA,OAAO;QAAEtC,MAAMsC;QAAGf,YAAYgB;QAAGnC,KAAKoC;IAAE;AAC1C;AACA,IAAIE,sBAAsB,6BAAC3C,MAAM4C;IAC/B,IAAI,CAACA,UAAUA,OAAOC,IAAI,IAAI,GAAG,OAAO;IACxC,IAAMC,gBAAgB;QACpB7C,MAAM2C,OAAOG,SAAS,CAAC9C,IAAI;QAC3BuB,YAAYoB,OAAOG,SAAS,CAAC7C,KAAK;QAClCG,KAAKuC,OAAOG,SAAS,CAAC1C,GAAG;IAC3B;IACA,IAAM2C,cAAcZ,gBAAgBU,eAAeF,OAAOC,IAAI,GAAG;IACjE,IAAMI,kBAAkB;QACtBhD,MAAMD,KAAKC,IAAI;QACfuB,YAAYxB,KAAKE,KAAK;QACtBG,KAAKL,KAAKK,GAAG;IACf;IACA,IAAM6C,iBAAiBjB,qBAAqBgB,iBAAiBH,kBAAkB;IAC/E,IAAMK,gBAAgBlB,qBAAqBgB,iBAAiBD,gBAAgB;IAC5E,OAAOE,kBAAkBC;AAC3B;AACA,IAAIC,mBAAmB;IACrB,IAAMC,iBAAiBC,KAAKC,cAAc,GAAGC,eAAe,GAAGC,QAAQ;IACvE,IAAMzD,OAAO,aAAa,GAAG,IAAIyB;IACjC,IAAMiC,gBAAgB1D,KAAK2D,kBAAkB,CAAC,SAAS;QAAEC,cAAc;IAAQ,GAAGC,KAAK,CAAC,IAAI,CAAC,EAAE;IAC/F,OAAOH,iBAAiBL;AAC1B;AACA,IAAIS,cAAc;IAChB,SAAS;IACT,UAAU;IACV,SAAS;IACT,eAAe;AACjB;AACA,IAAIC,iBAAiB;IACnB,IAAI,OAAOC,WAAW,aAAa,OAAO;IAC1C,IAAMnK,QAAQmK,OAAOC,UAAU;IAC/B,IAAIpK,QAAQ,KAAK,OAAO;IACxB,IAAIA,QAAQ,MAAM,OAAO;IACzB,OAAO;AACT;AACA,IAAIqK,WAAW;QACbC,uBAAAA,gBACAC,cAAAA,OACAxF,iBAAAA,8CACAyF,sBAAAA,gEAAuB,qCACvBC,mBAAAA,YACAC,sBAAAA,kDACAC,qBAAAA,8DAAsB,oCACtBC,kBAAAA,WACAC,qBAAAA,kDACAC,sBAAAA,gEAAuB,+DACvBC,YAAAA,4CAAa,2BACbC,2BAAAA,4CACAC,UAAAA,wCAAW,wDACXC,iBAAAA,sDAAkB,+DAClBC,iBAAAA,sDAAkB,2DAClBC,aAAAA,8CAAc,oCACdnP,kBAAAA,mCACAoI,UAAAA,wCAAW,yBACXgH,eAAAA,QACAC,eAAAA,QACArM,aAAAA,8BACAsM,UAAAA,wCAAW,4CACXnM,MAAAA,gCAAO,+DACPoM,oBAAAA,4DAAqB,yEACrBC,wBAAAA,oEAAyB,iEACzBC,YAAAA,4CAAa,4BACbC,2BAAAA,wDACAC,sBAAAA,gEAAuB,mEACvBC,gBAAAA,oDAAiB,gCACjBC,+BAAAA,wBACAC,wBAAAA,kDACAC,mBAAAA,0DAAoB,CAAC,8DACrBC,kBAAAA,wDAAmB,CAAC;;IAEpB,IAAMC,QAAQ,aAAa,GAAG,IAAItE;IAClC,IAAsCpC,8BAAAA,UACpC+E,CAAAA,kBAAAA,4BAAAA,MAAOnE,IAAI,KAAI8F,MAAMC,WAAW,SAD3BC,cAA+B5G,eAAlB6G,iBAAkB7G;IAGtC,IAAwCA,+BAAAA,kBACtC+E,kBAAAA,4BAAAA,MAAOlE,KAAK,uCAAI6F,MAAMI,QAAQ,SADzBC,eAAiC/G,gBAAnBgH,kBAAmBhH;IAGxC,IAAoDA,+BAAAA,UAAU;QAAEgD,OAAO;QAAMiE,KAAK;IAAK,QAAhFC,qBAA6ClH,gBAAzBmH,wBAAyBnH;IACpD,IAA4BA,+BAAAA,UAAU,YAA/BxC,SAAqBwC,gBAAboH,YAAapH;IAC5B,IAAsCA,+BAAAA,UAAU,cAAzCqH,cAA+BrH,gBAAlBsH,iBAAkBtH;IACtC,IAAgDA,+BAAAA,UAAU,YAAnDuH,mBAAyCvH,gBAAvBwH,sBAAuBxH;IAChD,IAAwCA,+BAAAA,UAAUoF,CAAAA,sBAAAA,gCAAAA,UAAWvD,IAAI,KAAI,SAA9D4F,eAAiCzH,gBAAnB0H,kBAAmB1H;IACxC,IAA4CA,+BAAAA,UAAUoF,CAAAA,sBAAAA,gCAAAA,UAAWnD,MAAM,KAAI,QAApE0F,iBAAqC3H,gBAArB4H,oBAAqB5H;IAC5C,IAA4CA,+BAAAA,UAAUoF,CAAAA,sBAAAA,gCAAAA,UAAWtD,MAAM,KAAI,WAApE+F,iBAAqC7H,gBAArB8H,oBAAqB9H;IAC5C,IAAoDA,+BAAAA,UAAUuF,iBAAvDwC,qBAA6C/H,gBAAzBgI,wBAAyBhI;IACpD,IAAgDA,gCAAAA,UAAU,YAAnDiI,mBAAyCjI,iBAAvBkI,sBAAuBlI;IAChD,IAAoDA,gCAAAA,UAAUkG,iBAAvDiC,qBAA6CnI,iBAAzBoI,wBAAyBpI;IACpD,IAA4DA,gCAAAA,UAAUqG,qBAA/DgC,yBAAqDrI,iBAA7BsI,4BAA6BtI;IAC5D,IAAsCA,gCAAAA,UAAU,QAAzCuI,cAA+BvI,iBAAlBwI,iBAAkBxI;IACtC,IAA0CA,gCAAAA,UAAU,YAA7CyI,gBAAmCzI,iBAApB0I,mBAAoB1I;IAC1C,IAAM2I,eAAehJ,OAAO;IAC5B,IAAMiJ,cAAcjJ,OAAO;IAC3B,IAAMkJ,YAAYpE,WAAW,CAAC7K,KAAK;IACnC,IAAMkP,QAAQD,YAAYN;IAC1B,IAAMQ,kBAAkB9D,uBAAAA,wBAAAA,aAAciC;IACtC,IAAM8B,SAAS,gBAACC;eAAWC,KAAKC,KAAK,CAACF,SAASH;;IAC/C7I,WAAW;QACT,IAAMmJ,eAAe;YACnBZ,eAAe9D;QACjB;QACA0E;QACAzE,OAAOtG,gBAAgB,CAAC,UAAU+K;QAClC,OAAO;YACLzE,OAAOrG,mBAAmB,CAAC,UAAU8K;QACvC;IACF,GAAG,EAAE;IACLnJ,WAAW;QACT,IAAI,CAACzC,UAAU,CAACmL,aAAaU,OAAO,IAAI,CAACT,YAAYS,OAAO,EAAE;QAC9D,IAAMC,oBAAoB;gBACFX,uBACCC;YADvB,IAAMW,iBAAgBZ,wBAAAA,aAAaU,OAAO,cAApBV,4CAAAA,sBAAsBa,qBAAqB;YACjE,IAAMC,iBAAiBb,EAAAA,uBAAAA,YAAYS,OAAO,cAAnBT,2CAAAA,qBAAqBc,YAAY,KAAI,MAAMZ;YAClE,IAAI,CAACS,eAAe;YACpB,IAAMI,aAAahF,OAAOiF,WAAW,GAAGL,cAAcM,MAAM;YAC5D,IAAMC,aAAaP,cAAcQ,GAAG;YACpC,IAAMC,cAAc;YACpB,IAAIL,aAAaF,iBAAiBO,eAAeF,aAAaL,iBAAiBO,aAAa;gBAC1FtB,iBAAiB;YACnB,OAAO;gBACLA,iBAAiB;YACnB;QACF;QACAY;QACA3E,OAAOtG,gBAAgB,CAAC,UAAUiL;QAClC3E,OAAOtG,gBAAgB,CAAC,UAAUiL,mBAAmB;QACrD,OAAO;YACL3E,OAAOrG,mBAAmB,CAAC,UAAUgL;YACrC3E,OAAOrG,mBAAmB,CAAC,UAAUgL,mBAAmB;QAC1D;IACF,GAAG;QAAC9L;QAAQsL;KAAM;IAClB7I,WAAW;QACT,IAAI8E,OAAO;YACT8B,eAAe9B,MAAMnE,IAAI;YACzBoG,gBAAgBjC,MAAMlE,KAAK;QAC7B;IACF,GAAG;QAACkE;KAAM;IACV9E,WAAW;QACT,IAAImF,WAAW;YACbsC,gBAAgBtC,UAAUvD,IAAI;YAC9B+F,kBAAkBxC,UAAUnD,MAAM;YAClC6F,kBAAkB1C,UAAUtD,MAAM;QACpC;IACF,GAAG;QAACsD;KAAU;IACdnF,WAAW;QACT+H,sBAAsBzC;IACxB,GAAG;QAACA;KAAW;IACftF,WAAW;QACTmI,sBAAsBlC;IACxB,GAAG;QAACA;KAAW;IACfjG,WAAW;QACTqI,0BAA0BjC;IAC5B,GAAG;QAACA;KAAe;IACnBpG,WAAW;QACT,IAAMgK,qBAAqB,4BAACC;YAC1B,IAAIvB,aAAaU,OAAO,IAAI,CAACV,aAAaU,OAAO,CAACc,QAAQ,CAACD,MAAME,MAAM,GAAG;gBACxE,IAAI5M,QAAQ;oBACV4J,UAAU;oBACVI,oBAAoB;oBACpBU,oBAAoB;oBACpBpC,mBAAAA,6BAAAA;gBACF;YACF;QACF;QACA,IAAItI,QAAQ;YACVY,SAASC,gBAAgB,CAAC,aAAa4L;QACzC;QACA,OAAO;YACL7L,SAASE,mBAAmB,CAAC,aAAa2L;QAC5C;IACF,GAAG;QAACzM;QAAQsI;KAAO;IACnB,IAAMuE,cAAcnI,eAAe0E,aAAaG;IAChD,IAAMuD,WAAWhI,mBAAmBsE,aAAaG;IACjD,IAAMwD,YAAY/H,aAAauE;IAC/B,IAAMyD,gBAAgB;QACpB,IAAIzD,iBAAiB,GAAG;YACtBC,gBAAgB;YAChBH,eAAeD,cAAc;QAC/B,OAAO;YACLI,gBAAgBD,eAAe;QACjC;IACF;IACA,IAAM0D,YAAY;QAChB,IAAI1D,iBAAiB,IAAI;YACvBC,gBAAgB;YAChBH,eAAeD,cAAc;QAC/B,OAAO;YACLI,gBAAgBD,eAAe;QACjC;IACF;IACA,IAAM2D,aAAa,oBAAC1J;QAClB,IAAML,OAAO;YACXC,MAAMgG;YACN/F,OAAOkG;YACP/F,KAAAA;QACF;QACA,IAAIgE,sBAAsB;YACxB,IAAIqC,gBAAgB,SAAS;gBAC3B,IAAMsD,WAAW;oBAAE3H,OAAOrC;oBAAMsG,KAAK8B,CAAAA,4BAAAA,sCAAAA,gBAAiB9B,GAAG,KAAI;gBAAK;gBAClE,IAAI,CAAChC,YAAYkC,sBAAsBwD;gBACvCzF,0BAAAA,oCAAAA,cAAgByF;gBAChBrD,eAAe;YACjB,OAAO;gBACL,IAAMtE,QAAQ+F,4BAAAA,sCAAAA,gBAAiB/F,KAAK;gBACpC,IAAIA,OAAO;oBACT,IAAM4H,YAAY,IAAIxI,KAAKY,MAAMpC,IAAI,EAAEoC,MAAMnC,KAAK,EAAEmC,MAAMhC,GAAG,EAAE6J,OAAO;oBACtE,IAAMC,UAAU,IAAI1I,KAAKzB,KAAKC,IAAI,EAAED,KAAKE,KAAK,EAAEF,KAAKK,GAAG,EAAE6J,OAAO;oBACjE,IAAIF;oBACJ,IAAIG,UAAUF,WAAW;wBACvBD,YAAW;4BAAE3H,OAAOrC;4BAAMsG,KAAKjE;wBAAM;oBACvC,OAAO;wBACL2H,YAAW;4BAAE3H,OAAAA;4BAAOiE,KAAKtG;wBAAK;oBAChC;oBACA,IAAI,CAACsE,YAAYkC,sBAAsBwD;oBACvCzF,0BAAAA,oCAAAA,cAAgByF;gBAClB,OAAO;oBACL,IAAMA,YAAW;wBAAE3H,OAAOrC;wBAAMsG,KAAK;oBAAK;oBAC1C,IAAI,CAAChC,YAAYkC,sBAAsBwD;oBACvCzF,0BAAAA,oCAAAA,cAAgByF;oBAChBrD,eAAe;gBACjB;YACF;QACF,OAAO;YACL,IAAMyD,aAAarK,oBAAoBC;YACvCpB,qBAAAA,+BAAAA,SAAWoB,MAAMoK;QACnB;QACA,IAAIxD,kBAAkB;YACpBC,oBAAoB;QACtB;QACA,IAAI/B,YAAa,CAAA,CAACT,wBAAwBA,wBAAwBqC,gBAAgB,UAAS0B,4BAAAA,sCAAAA,gBAAiB/F,KAAK,CAAD,GAAI;YAClHoE,UAAU;YACVI,oBAAoB;YACpB1B,mBAAAA,6BAAAA;QACF;IACF;IACA,IAAMkF,cAAc;QAClB,IAAMC,YAAY;YAChBrK,MAAM8F,MAAMC,WAAW;YACvB9F,OAAO6F,MAAMI,QAAQ;YACrB9F,KAAK0F,MAAMrE,OAAO;QACpB;QACAwE,eAAeoE,UAAUrK,IAAI;QAC7BoG,gBAAgBiE,UAAUpK,KAAK;QAC/B,IAAMkK,aAAarK,oBAAoBuK;QACvC1L,qBAAAA,+BAAAA,SAAW0L,WAAWF;QACtB,IAAI5F,uBAAuBoC,kBAAkB;YAC3C,IAAM2D,MAAM,aAAa,GAAG,IAAI9I;YAChC,IAAM+I,cAAcD,IAAIE,QAAQ;YAChC,IAAMC,gBAAgBH,IAAII,UAAU;YACpC,IAAIC;YACJ,IAAIzJ;YACJ,IAAIqJ,gBAAgB,GAAG;gBACrBI,SAAS;gBACTzJ,SAAS;YACX,OAAO,IAAIqJ,gBAAgB,IAAI;gBAC7BI,SAAS;gBACTzJ,SAAS;YACX,OAAO,IAAIqJ,cAAc,IAAI;gBAC3BI,SAASJ,cAAc;gBACvBrJ,SAAS;YACX,OAAO;gBACLyJ,SAASJ;gBACTrJ,SAAS;YACX;YACA4F,gBAAgB6D;YAChB3D,kBAAkByD;YAClBvD,kBAAkBhG;YAClBuD,yBAAAA,mCAAAA,aAAe;gBACbxD,MAAM0J;gBACNtJ,QAAQoJ;gBACRvJ,QAAAA;YACF;YACA,IAAIsE,sBAAsB;gBACxB,IAAMoF,UAAUzH;gBAChBuE,0BAA0BkD;gBAC1BlF,mCAAAA,6CAAAA,uBAAyBkF;YAC3B;QACF;QACA,IAAI/F,UAAU;YACZ2B,UAAU;YACVI,oBAAoB;YACpB1B,mBAAAA,6BAAAA;QACF;IACF;IACA,IAAM2F,YAAY;QAChB,IAAIzG,sBAAsB;YACxB,IAAM2F,WAAW;gBAAE3H,OAAO;gBAAMiE,KAAK;YAAK;YAC1C,IAAI,CAAChC,YAAYkC,sBAAsBwD;YACvCzF,0BAAAA,oCAAAA,cAAgByF;YAChBrD,eAAe;QACjB,OAAO;YACL/H,qBAAAA,+BAAAA,SAAW,MAAM;QACnB;QACA,IAAI4F,qBAAqB;YACvBE,yBAAAA,mCAAAA,aAAe;gBAAExD,MAAM;gBAAII,QAAQ;gBAAGH,QAAQ;YAAK;YACnD4F,gBAAgB;YAChBE,kBAAkB;YAClBE,kBAAkB;QACpB;IACF;IACA,IAAM4D,iBAAiB;QACrB,IAAI7M,UAAU;QACd,IAAM5C,WAAW,CAACuB;QAClB4J,UAAUnL;QACV,IAAIA,UAAU;YACZuL,oBAAoB;YACpB3B,mBAAAA,6BAAAA;QACF,OAAO;YACL2B,oBAAoB;YACpB1B,mBAAAA,6BAAAA;QACF;IACF;IACA,IAAM6F,wBAAwB;QAC5B,IAAI,CAACnO,QAAQ;YACX4J,UAAU;YACVvB,mBAAAA,6BAAAA;QACF;QACAyB,eAAe;QACfE,oBAAoB;IACtB;IACA,IAAMoE,sBAAsB;QAC1B,IAAI,CAACpO,QAAQ;YACX4J,UAAU;YACVvB,mBAAAA,6BAAAA;QACF;QACAyB,eAAe;QACfE,oBAAoB;IACtB;IACA,IAAMqE,wBAAwB;QAC5BrE,oBAAoB,CAACD;IACvB;IACA,IAAMuE,wBAAwB;QAC5BtE,oBAAoB;IACtB;IACA,IAAMuE,yBAAyB;QAC7B,IAAMC,YAAYjE,uBAAuB,QAAQ,QAAQ;QACzDC,sBAAsBgE;QACtBxG,+BAAAA,yCAAAA,mBAAqBwG;IACvB;IACA,IAAMC,oBAAoB;QACxB5G,yBAAAA,mCAAAA,aAAe;YACbxD,MAAM4F;YACNxF,QAAQ0F;YACR7F,QAAQ+F;QACV;QACAL,oBAAoB;IACtB;IACA,IAAM0E,oBAAoB;QACxB9E,UAAU;QACVtB,mBAAAA,6BAAAA;IACF;IACA,IAAMqG,uBAAuB;QAC3B,IAAInG,oBAAoB;YACtBkC,oBAAoB,CAACD;QACvB;IACF;IACA,IAAMmE,mBAAmB,0BAACxL;QACxBiG,eAAejG;QACfsH,oBAAoB;IACtB;IACA,IAAMmE,aAAa;;YAcf,IAAM1L,OAAO;gBACXC,MAAMgG;gBACN/F,OAAOkG;gBACP/F,KAAAA;YACF;YACA,IAAMsL,aAAatH,uBAAuB/D,WAAW8H,4BAAAA,sCAAAA,gBAAiB/F,KAAK,EAAErC,SAASM,WAAW8H,4BAAAA,sCAAAA,gBAAiB9B,GAAG,EAAEtG,QAAQM,WAAW8D,OAAOpE;YACjJ,IAAM4L,YAAYvH,yBAAwB+D,4BAAAA,sCAAAA,gBAAiB/F,KAAK,MAAI+F,4BAAAA,sCAAAA,gBAAiB9B,GAAG,IAAG,AAAC;gBAC1F,IAAMuF,cAAc,IAAIpK,KAAKzB,KAAKC,IAAI,EAAED,KAAKE,KAAK,EAAEF,KAAKK,GAAG,EAAE6J,OAAO;gBACrE,IAAMD,YAAY,IAAIxI,KACpB2G,gBAAgB/F,KAAK,CAACpC,IAAI,EAC1BmI,gBAAgB/F,KAAK,CAACnC,KAAK,EAC3BkI,gBAAgB/F,KAAK,CAAChC,GAAG,EACzB6J,OAAO;gBACT,IAAMC,UAAU,IAAI1I,KAClB2G,gBAAgB9B,GAAG,CAACrG,IAAI,EACxBmI,gBAAgB9B,GAAG,CAACpG,KAAK,EACzBkI,gBAAgB9B,GAAG,CAACjG,GAAG,EACvB6J,OAAO;gBACT,OAAO2B,cAAc5B,aAAa4B,cAAc1B;YAClD,MAAO;YACP,IAAM2B,UAAUxL,WACd;gBACEL,MAAM8F,MAAMC,WAAW;gBACvB9F,OAAO6F,MAAMI,QAAQ;gBACrB9F,KAAK0F,MAAMrE,OAAO;YACpB,GACA1B;YAEF,IAAM+L,YAAYpJ,oBAAoB3C,MAAM4F;YAC5C/C,KAAKmJ,IAAI,CACP,aAAa,GAAGnM,KACd,UACA;gBACE/D,MAAM;gBACN/F,SAAS,SAATA;oBACE,IAAI,CAACgW,WAAWhC,WAAW1J;gBAC7B;gBACAnC,UAAU6N;gBACVjW,WAAW,AAAC,yFAIlB,OADA6V,aAAa,sBAAsB,IAAG,UAEtC,OADA,CAACA,cAAcG,UAAU,6CAA6C,IAAG,UAEzEF,OADA,CAACD,cAAc,CAACG,WAAW,CAACF,YAAY,4CAA4C,IAAG,UAEvF,OADAA,aAAa,CAACD,aAAa,4CAA4C,IAAG,UAE1EI,OADA,CAACA,aAAa,CAACJ,aAAa,mCAAmC,IAAG,UACW,OAA7EI,YAAY,gDAAgD,kBAAiB;gBAEvE9T,OAAO;oBACL4B,OAAOsO,QAAQ;oBACfvO,QAAQuO,QAAQ;oBAChB8D,UAAU9D,QAAQ;oBAClBlO,YAAY0R,aAAa,+CAA+C,KAAK;gBAC/E;gBACApW,UAAU8K;YACZ,GACA,AAAC,WAAc,OAAJA;QAGjB;QAxEA,IAAMwC,OAAO,EAAE;QACf,IAAK,IAAIqJ,IAAI,GAAGA,IAAIvC,UAAUuC,IAAK;YACjCrJ,KAAKmJ,IAAI,CACP,aAAa,GAAGnM,KACd,OACA;gBACE5H,OAAO;oBAAE4B,OAAO,AAAC,GAAa,OAAXwO,OAAO,KAAI;oBAAKzO,QAAQ,AAAC,GAAa,OAAXyO,OAAO,KAAI;gBAAI;YAC/D,GACA,AAAC,eAAgB,OAAF6D;QAGrB;QACA,IAAK,IAAI7L,MAAM,GAAGA,OAAOqJ,aAAarJ;QA6DtC,IAAM8L,aAAaxC,WAAWD;QAC9B,IAAM0C,iBAAiBD,aAAa,MAAM,IAAI,IAAI,IAAIA,aAAa;QACnE,IAAK,IAAID,KAAI,GAAGA,KAAIE,gBAAgBF,KAAK;YACvCrJ,KAAKmJ,IAAI,CACP,aAAa,GAAGnM,KACd,OACA;gBACE5H,OAAO;oBAAE4B,OAAO,AAAC,GAAa,OAAXwO,OAAO,KAAI;oBAAKzO,QAAQ,AAAC,GAAa,OAAXyO,OAAO,KAAI;gBAAI;YAC/D,GACA,AAAC,aAAc,OAAF6D;QAGnB;QACA,OAAOrJ;IACT;IACA,IAAMwJ,qBAAqB;QACzB,IAAMC,UAAUC,MAAMC,IAAI,CAAC;YAAEC,QAAQ;QAAG,GAAG,SAACC,GAAGR;mBAAMA,IAAI;;QACzD,IAAMS,UAAUJ,MAAMC,IAAI,CAAC;YAAEC,QAAQ;QAAG,GAAG,SAACC,GAAGR;mBAAMA;;QACrD,IAAMU,UAAUL,MAAMC,IAAI,CAAC;YAAEC,QAAQ;QAAG,GAAG,SAACC,GAAGR;mBAAMA;;QACrD,OAAO,aAAa,GAAGpM,MAAM,OAAO;YAAEhK,WAAW;YAAwBP,UAAU;gBACjF,aAAa,GAAGuK,MAAM,OAAO;oBAAEhK,WAAW;oBAA0BP,UAAU;wBAC3EoP,CAAAA,wBAAwBW,0BAA0BG,oBAAmB,KAAM,aAAa,GAAG3F,MAAM,OAAO;4BAAE7H,OAAO;gCAAE4U,cAAcxE,OAAO;4BAAI;4BAAG9S,UAAU;gCACxJoP,wBAAwB,aAAa,GAAG9E,KAAK,OAAO;oCAAE5H,OAAO;wCAAE4U,cAAcxE,OAAO;oCAAI;oCAAG9S,UAAU,aAAa,GAAGuK,MAAM,OAAO;wCAAEhK,WAAW;wCAAuBP,UAAU;4CAC9K,aAAa,GAAGsK,KACd,QACA;gDACE/J,WAAW;gDACXmC,OAAO;oDAAEgU,UAAU9D,QAAQ;gDAAG;gDAC9B5S,UAAU;4CACZ;4CAEF,aAAa,GAAGuK,MACd,OACA;gDACEhK,WAAW;gDACXmC,OAAO;oDAAED,KAAKmQ,QAAQ;gDAAE;gDACxB5S,UAAU;oDACR,aAAa,GAAGsK,KACd,QACA;wDACE/J,WAAW,AAAC,iBAAmF,OAAnEsR,uBAAuB,QAAQ,mBAAmB;wDAC9EnP,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAC9B5S,UAAU;oDACZ;oDAEF,aAAa,GAAGsK,KACd,UACA;wDACE/D,MAAM;wDACN/F,SAASqV;wDACTtN,MAAM;wDACN,gBAAgBsJ,uBAAuB;wDACvCtR,WAAW;wDACXmC,OAAO;4DACL4B,OAAOsO,QAAQ;4DACfvO,QAAQuO,QAAQ;4DAChBlO,YAAYmN,uBAAuB,QAAQ,YAAY;wDACzD;wDACA7R,UAAU,aAAa,GAAGsK,KACxB,QACA;4DACE/J,WAAW;4DACXmC,OAAO;gEACL4B,OAAOsO,QAAQ;gEACfvO,QAAQuO,QAAQ;gEAChB2E,WAAW1F,uBAAuB,QAAQ,AAAC,cAAwB,OAAXe,QAAQ,IAAG,SAAO,AAAC,cAAuB,OAAVA,QAAQ,GAAE;4DACpG;wDACF;oDAEJ;oDAEF,aAAa,GAAGtI,KACd,QACA;wDACE/J,WAAW,AAAC,iBAAmF,OAAnEsR,uBAAuB,QAAQ,mBAAmB;wDAC9EnP,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAC9B5S,UAAU;oDACZ;iDAEH;4CACH;yCAEH;oCAAC;gCAAG;gCACJ+P,CAAAA,0BAA0BG,oBAAmB,KAAM,aAAa,GAAG3F,MAClE,OACA;oCACEhK,WAAW;oCACXmC,OAAO;wCAAED,KAAKmQ,QAAQ;oCAAG;oCACzB5S,UAAU;wCACR+P,0BAA0B,aAAa,GAAGxF,MAAM,OAAO;4CAAEhK,WAAW;4CAAwBP,UAAU;gDACpG,aAAa,GAAGsK,KACd,QACA;oDACE/J,WAAW;oDACXmC,OAAO;wDAAEgU,UAAU9D,QAAQ;oDAAG;oDAC9B5S,UAAU;gDACZ;gDAEF,aAAa,GAAGuK,MACd,OACA;oDACEhK,WAAW;oDACXmC,OAAO;wDAAE2B,QAAQuO,QAAQ;oDAAG;oDAC5B5S,UAAU;wDACR,aAAa,GAAGsK,KACd,UACA;4DACEuE,OAAOoD;4DACP5I,UAAU,SAAVA,SAAW7C;gEACT0L,sBAAsB1L,EAAE0N,MAAM,CAACrF,KAAK;gEACpCoB,+BAAAA,yCAAAA,mBAAqBzJ,EAAE0N,MAAM,CAACrF,KAAK;4DACrC;4DACAtO,WAAW;4DACXmC,OAAO;gEACL2B,QAAQ;gEACRC,OAAO;gEACPoS,UAAU9D,QAAQ;gEAClB4E,aAAa5E,QAAQ;gEACrB6E,cAAc7E,QAAQ;gEACtB8E,QAAQ;gEACRhT,YAAY;4DACd;4DACA1E,UAAUwM,oBAAoBmL,GAAG,CAAC,SAACvM;uEAAW,aAAa,GAAGd,KAAK,UAAU;oEAAEtK,UAAUoL;gEAAO,GAAGA;;wDACrG;wDAEF,aAAa,GAAGd,KACdL,eACA;4DACE1J,WAAW;4DACXmC,OAAO;gEAAEgU,UAAU9D,QAAQ;4DAAG;wDAChC;qDAEH;gDACH;6CAEH;wCAAC;wCACF1C,wBAAwB,aAAa,GAAG3F,MAAM,OAAO;4CAAEhK,WAAW;4CAAwBP,UAAU;gDAClG,aAAa,GAAGsK,KACd,QACA;oDACE/J,WAAW;oDACXmC,OAAO;wDAAEgU,UAAU9D,QAAQ;oDAAG;oDAC9B5S,UAAU;gDACZ;gDAEF,aAAa,GAAGuK,MACd,OACA;oDACEhK,WAAW;oDACXmC,OAAO;wDAAE2B,QAAQuO,QAAQ;oDAAG;oDAC5B5S,UAAU;wDACR,aAAa,GAAGsK,KACd,UACA;4DACEuE,OAAOsD;4DACP9I,UAAU,SAAVA,SAAW7C;gEACT4L,0BAA0B5L,EAAE0N,MAAM,CAACrF,KAAK;gEACxCuB,mCAAAA,6CAAAA,uBAAyB5J,EAAE0N,MAAM,CAACrF,KAAK;4DACzC;4DACAtO,WAAW;4DACXmC,OAAO;gEACL2B,QAAQ;gEACRC,OAAO;gEACPoS,UAAU9D,QAAQ;gEAClB4E,aAAa5E,QAAQ;gEACrB6E,cAAc7E,QAAQ;gEACtB8E,QAAQ;4DACV;4DACA1X,UAAUyM,kBAAkBkL,GAAG,CAAC,SAACC;uEAAS,aAAa,GAAGtN,KAAK,UAAU;oEAAEtK,UAAU4X;gEAAK,GAAGA;;wDAC/F;wDAEF,aAAa,GAAGtN,KACdL,eACA;4DACE1J,WAAW;4DACXmC,OAAO;gEAAEgU,UAAU9D,QAAQ;4DAAG;wDAChC;qDAEH;gDACH;6CAEH;wCAAC;qCACH;gCACH;6BAEH;wBAAC;wBACF,aAAa,GAAGrI,MAAM,OAAO;4BAAE7H,OAAO;gCAAEmV,WAAWjF,QAAQ;4BAAG;4BAAG5S,UAAU;gCACzE,aAAa,GAAGsK,KACd,SACA;oCACE/J,WAAW;oCACXmC,OAAO;wCACL4U,cAAc1E,QAAQ;wCACtB8D,UAAU9D,QAAQ;oCACpB;oCACA5S,UAAU;gCACZ;gCAEF,aAAa,GAAGuK,MACd,OACA;oCACEhK,WAAW;oCACXmC,OAAO;wCAAED,KAAKmQ,QAAQ;oCAAG;oCACzB5S,UAAU;wCACR,aAAa,GAAGuK,MAAM,OAAO;4CAAEhK,WAAW;4CAAmBP,UAAU;gDACrE,aAAa,GAAGsK,KACd,UACA;oDACEuE,OAAO0C;oDACPlI,UAAU,SAAVA,SAAW7C;+DAAMgL,gBAAgBsG,OAAOtR,EAAE0N,MAAM,CAACrF,KAAK;;oDACtDtO,WAAW;oDACXmC,OAAO;wDACL2B,QAAQuO,QAAQ;wDAChBtO,OAAO;wDACPoS,UAAU9D,QAAQ;wDAClB4E,aAAa5E,QAAQ;wDACrB6E,cAAc7E,QAAQ;oDACxB;oDACA5S,UAAU,AAAC6R,CAAAA,uBAAuB,QAAQuF,UAAUL,OAAM,EAAGY,GAAG,CAAC,SAAChM;+DAAS,aAAa,GAAGrB,KAAK,UAAU;4DAAEuE,OAAOlD;4DAAM3L,UAAU4K,OAAOe,MAAMd,QAAQ,CAAC,GAAG;wDAAK,GAAGc;;gDACtK;gDAEF,aAAa,GAAGrB,KACdL,eACA;oDACE1J,WAAW;oDACXmC,OAAO;wDAAEgU,UAAU9D,QAAQ;oDAAG;gDAChC;6CAEH;wCAAC;wCACF,aAAa,GAAGrI,MAAM,OAAO;4CAAEhK,WAAW;4CAAmBP,UAAU;gDACrE,aAAa,GAAGsK,KACd,UACA;oDACEuE,OAAO4C;oDACPpI,UAAU,SAAVA,SAAW7C;+DAAMkL,kBAAkBoG,OAAOtR,EAAE0N,MAAM,CAACrF,KAAK;;oDACxDtO,WAAW;oDACXmC,OAAO;wDACL2B,QAAQuO,QAAQ;wDAChBtO,OAAO;wDACPoS,UAAU9D,QAAQ;wDAClB4E,aAAa5E,QAAQ;wDACrB6E,cAAc7E,QAAQ;oDACxB;oDACA5S,UAAUqX,QAAQM,GAAG,CAAC,SAAC5L;+DAAW,aAAa,GAAGzB,KAAK,UAAU;4DAAEuE,OAAO9C;4DAAQ/L,UAAU4K,OAAOmB,QAAQlB,QAAQ,CAAC,GAAG;wDAAK,GAAGkB;;gDACjI;gDAEF,aAAa,GAAGzB,KACdL,eACA;oDACE1J,WAAW;oDACXmC,OAAO;wDAAEgU,UAAU9D,QAAQ;oDAAG;gDAChC;6CAEH;wCAAC;wCACFf,uBAAuB,SAAS,aAAa,GAAGtH,MAAM,OAAO;4CAAEhK,WAAW;4CAAmBP,UAAU;gDACrG,aAAa,GAAGuK,MACd,UACA;oDACEsE,OAAO8C;oDACPtI,UAAU,SAAVA,SAAW7C;+DAAMoL,kBAAkBpL,EAAE0N,MAAM,CAACrF,KAAK;;oDACjDtO,WAAW;oDACXmC,OAAO;wDACL2B,QAAQuO,QAAQ;wDAChBtO,OAAO;wDACPoS,UAAU9D,QAAQ;wDAClB4E,aAAa5E,QAAQ;wDACrB6E,cAAc7E,QAAQ;oDACxB;oDACA5S,UAAU;wDACR,aAAa,GAAGsK,KAAK,UAAU;4DAAEuE,OAAO;4DAAM7O,UAAU;wDAAK;wDAC7D,aAAa,GAAGsK,KAAK,UAAU;4DAAEuE,OAAO;4DAAM7O,UAAU;wDAAK;qDAC9D;gDACH;gDAEF,aAAa,GAAGsK,KACdL,eACA;oDACE1J,WAAW;oDACXmC,OAAO;wDAAEgU,UAAU9D,QAAQ;oDAAG;gDAChC;6CAEH;wCAAC;qCACH;gCACH;6BAEH;wBAAC;wBACF,aAAa,GAAGrI,MAAM,OAAO;4BAAE7H,OAAO;gCAAEmV,WAAWjF,QAAQ;4BAAG;4BAAG5S,UAAU;gCACzE,aAAa,GAAGsK,KACd,SACA;oCACE/J,WAAW;oCACXmC,OAAO;wCACL4U,cAAc1E,QAAQ;wCACtB8D,UAAU9D,QAAQ;oCACpB;oCACA5S,UAAU;gCACZ;gCAEF,aAAa,GAAGuK,MACd,KACA;oCACEhK,WAAW;oCACXmC,OAAO;wCAAEgU,UAAU9D,QAAQ;oCAAG;oCAC9B5S,UAAU;wCACRmL,qBAAqB0D,kBAAAA,mBAAAA,QAAS,MAAMoD;wCACpC;wCACAzG,WACE;4CAAEG,MAAM4F;4CAAcxF,QAAQ0F;4CAAgB7F,QAAQ+F;wCAAe,GACrEE;wCAEFM,2BAA2B,SAAS,AAAC,IAA0B,OAAvBA,0BAA2B;qCACpE;gCACH;6BAEH;wBAAC;qBACH;gBAAC;gBACF,aAAa,GAAG5H,MACd,OACA;oBACEhK,WAAW;oBACXmC,OAAO;wBAAEqV,YAAYnF,QAAQ;oBAAG;oBAChC5S,UAAU;wBACPwP,CAAAA,mBAAmBC,eAAc,KAAM,aAAa,GAAGlF,MACtD,OACA;4BACEhK,WAAW;4BACXmC,OAAO;gCACLD,KAAKmQ,QAAQ;gCACb0E,cAAc1E,QAAQ;4BACxB;4BACA5S,UAAU;gCACRwP,mBAAmB,aAAa,GAAGjF,MACjC,UACA;oCACE/J,SAASsU;oCACTvU,WAAW;oCACXmC,OAAO;wCACL2B,QAAQuO,QAAQ;wCAChB8D,UAAU9D,QAAQ;wCAClBlO,YAAY;wCACZN,OAAO;wCACP3B,KAAKmQ,QAAQ;wCACboF,MAAM,CAACvI,kBAAkB,SAAS;oCACpC;oCACAzP,UAAU;wCACR,aAAa,GAAGsK,KACdN,gBACA;4CACEtH,OAAO;gDACL4B,OAAOwO,OAAO;gDACdzO,QAAQyO,OAAO;4CACjB;wCACF;wCAEF;qCACD;gCACH;gCAEFrD,mBAAmB,aAAa,GAAGnF,KACjC,UACA;oCACE9J,SAAS+U;oCACThV,WAAW;oCACXmC,OAAO;wCACL2B,QAAQuO,QAAQ;wCAChB8D,UAAU9D,QAAQ;wCAClBlO,YAAY;wCACZN,OAAO;wCACP4T,MAAM,CAACxI,kBAAkB,SAAS;oCACpC;oCACAxP,UAAU;gCACZ;6BAEH;wBACH;wBAEF,aAAa,GAAGsK,KACd,UACA;4BACE9J,SAASuV;4BACTxV,WAAW;4BACXmC,OAAO;gCACL2B,QAAQuO,QAAQ;gCAChB8D,UAAU9D,QAAQ;gCAClBlO,YAAY;4BACd;4BACA1E,UAAU;wBACZ;qBAEH;gBACH;aAEH;QAAC;IACJ;IACA,IAAMiY,cAAc,aAAa,GAAG3N,KAAKF,gBAAgB;QAAE1H,OAAO;YAChE4B,OAAO,AAAC,GAAa,OAAXwO,OAAO,KAAI;YACrBzO,QAAQ,AAAC,GAAa,OAAXyO,OAAO,KAAI;QACxB;IAAE;IACF,OAAO,aAAa,GAAGvI,MACrB,OACA;QACE/H,KAAKiQ;QACLlS,WAAW,AAAC,YAA2B,OAAhBA,sBAAAA,uBAAAA,YAAa;QACpC,eAAeqO;QACf5O,UAAU;YACR,aAAa,GAAGuK,MAAM,OAAO;gBAAEhK,WAAW;gBAAYP,UAAU;oBAC9D6P,YAAY,aAAa,GAAGvF,KAC1B,OACA;wBACE/J,WAAW;wBACXmC,OAAO;4BAAE8U,aAAa1E,OAAO;wBAAI;wBACjC9S,UAAUuD,QAAQ0U;oBACpB;oBAEF,aAAa,GAAG3N,KACd,SACA;wBACE/D,MAAM;wBACN2R,UAAU;wBACVvP,UAAAA;wBACA+G,aAAAA;wBACAlP,SAASgV;wBACT3G,OAAOC,wBAAwB+D,kBAAkBA,gBAAgB/F,KAAK,IAAI+F,gBAAgB9B,GAAG,GAAG,AAAC,GAAyC7F,OAAvCA,WAAW2H,gBAAgB/F,KAAK,GAAE,OAAqC,OAAhC5B,WAAW2H,gBAAgB9B,GAAG,KAAM8B,gBAAgB/F,KAAK,GAAG,AAAC,GAAoC,OAAlC5B,WAAW2H,gBAAgB/F,KAAK,GAAE,YAAU,KAAKmC,uBAAuBJ,SAASK,YAAY,AAAC,GAAuB1D,OAArBN,WAAW2D,QAAO,KAA6C,OAA1CrD,WAAW0D,WAAW2C,uBAAwB3G,WAAW2D,kBAAAA,mBAAAA,QAAS;wBAChYtO,WAAW;wBACXmC,OAAO;4BACLqV,YAAYnF,QAAQ;4BACpBuF,eAAevF,QAAQ;4BACvB4E,aAAa3H,WAAW+C,QAAQ,KAAKA,QAAQ;4BAC7C6E,cAAc7E,QAAQ;4BACtB8D,UAAU9D,QAAQ;4BAClBwF,QAAQzP,WAAW,gBAAgB;4BACnC0P,SAAS1P,WAAW,MAAM;wBAC5B;oBACF;iBAEH;YAAC;YACFrB,UAAU,aAAa,GAAGgD,KACxB,OACA;gBACE9H,KAAKkQ;gBACLnS,WAAW;gBACXmC,OAAO;oBACL4B,OAAOsO,QAAQ;oBACfjO,cAAciO,QAAQ;oBACtB8E,QAAQ;oBACRG,WAAWtF,gBAAgB,KAAK,IAAIK,QAAQ;oBAC5C0E,cAAc/E,gBAAgBK,QAAQ,IAAI,KAAK;gBACjD;gBACA5S,UAAU,aAAa,GAAGuK,MACxB,OACA;oBACEhK,WAAW;oBACXmC,OAAO;wBACL4V,SAAS1F,QAAQ;wBACjBlO,YAAY;oBACd;oBACA1E,UAAU;wBACR,aAAa,GAAGsK,KACd,OACA;4BACE/J,WAAW;4BACXmC,OAAO;gCACLgU,UAAU9D,QAAQ;gCAClB0E,cAAc1E,QAAQ;4BACxB;4BACA5S,UAAU8O,uBAAuB,sBAAsB;wBACzD;wBAEF,aAAa,GAAGxE,KACd,OACA;4BACE/J,WAAW;4BACXmC,OAAO;gCACLD,KAAKmQ,QAAQ;gCACb0E,cAAc1E,QAAQ;4BACxB;4BACA5S,UAAU8O,uBAAuB,aAAa,GAAGvE,MAAMF,WAAW;gCAAErK,UAAU;oCAC5E,aAAa,GAAGuK,MACd,UACA;wCACEhE,MAAM;wCACN/F,SAASiV;wCACTlV,WAAW;wCACXmC,OAAO;4CACL2B,QAAQuO,QAAQ;4CAChB0F,SAAS,AAAC,KAAe,OAAX1F,QAAQ,IAAG;4CACzBlO,YAAYyM,gBAAgB,UAAU,+CAA+C;4CACrF/M,OAAO+M,gBAAgB,UAAU,UAAU;wCAC7C;wCACAnR,UAAU;4CACRiY;4CACA,aAAa,GAAG1N,MAAM,OAAO;gDAAEhK,WAAW;gDAA6BP,UAAU;oDAC/E,aAAa,GAAGsK,KACd,QACA;wDACE/J,WAAW;wDACXmC,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAC9B5S,UAAU;oDACZ;oDAEF,aAAa,GAAGsK,KAAK,QAAQ;wDAAE5H,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAAG5S,UAAU6S,CAAAA,4BAAAA,sCAAAA,gBAAiB/F,KAAK,IAAG5B,WAAW2H,gBAAgB/F,KAAK,IAAI;oDAAc;iDACtJ;4CAAC;yCACH;oCACH;oCAEF,aAAa,GAAGvC,MACd,UACA;wCACEhE,MAAM;wCACN/F,SAASkV;wCACTnV,WAAW;wCACXmC,OAAO;4CACL2B,QAAQuO,QAAQ;4CAChB0F,SAAS,AAAC,KAAe,OAAX1F,QAAQ,IAAG;4CACzBlO,YAAYyM,gBAAgB,QAAQ,+CAA+C;4CACnF/M,OAAO+M,gBAAgB,QAAQ,UAAU;wCAC3C;wCACAnR,UAAU;4CACRiY;4CACA,aAAa,GAAG1N,MAAM,OAAO;gDAAEhK,WAAW;gDAA6BP,UAAU;oDAC/E,aAAa,GAAGsK,KAAK,QAAQ;wDAAE5H,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAAG5S,UAAU;oDAAU;oDACpF,aAAa,GAAGsK,KAAK,QAAQ;wDAAE5H,OAAO;4DAAEgU,UAAU9D,QAAQ;wDAAG;wDAAG5S,UAAU6S,CAAAA,4BAAAA,sCAAAA,gBAAiB9B,GAAG,IAAG7F,WAAW2H,gBAAgB9B,GAAG,IAAI;oDAAc;iDAClJ;4CAAC;yCACH;oCACH;iCAEH;4BAAC,KAAK,aAAa,GAAGxG,MAAMF,WAAW;gCAAErK,UAAU;oCAClD,aAAa,GAAGuK,MACd,UACA;wCACEhE,MAAM;wCACN/F,SAASoV;wCACTrV,WAAW;wCACXmC,OAAO;4CACL2B,QAAQuO,QAAQ;4CAChB0F,SAAS,AAAC,KAAe,OAAX1F,QAAQ,IAAG;4CACzBlO,YAAY,CAAC2M,oBAAoBpC,sBAAsB,+CAA+C;4CACtG7K,OAAO,CAACiN,oBAAoBpC,sBAAsB,UAAU;wCAC9D;wCACAjP,UAAU;4CACRiY;4CACA,aAAa,GAAG3N,KAAK,QAAQ;gDAAE5H,OAAO;oDAAEgU,UAAU9D,QAAQ;gDAAG;gDAAG5S,UAAUkL,WAAW2D,kBAAAA,mBAAAA,QAAS,SAAS;4CAAc;yCACtH;oCACH;oCAEFI,uBAAuB,aAAa,GAAG1E,MACrC,UACA;wCACEhE,MAAM;wCACN/F,SAASmV;wCACTpV,WAAW;wCACXmC,OAAO;4CACL2B,QAAQuO,QAAQ;4CAChB0F,SAAS,AAAC,KAAe,OAAX1F,QAAQ,IAAG;4CACzBlO,YAAY2M,mBAAmB,+CAA+C;4CAC9EjN,OAAOiN,mBAAmB,UAAU;wCACtC;wCACArR,UAAU;4CACR,aAAa,GAAGsK,KACdN,gBACA;gDACEtH,OAAO;oDACL4B,OAAOwO,OAAO;oDACdzO,QAAQyO,OAAO;gDACjB;4CACF;4CAEF,aAAa,GAAGxI,KAAK,QAAQ;gDAAE5H,OAAO;oDAAEgU,UAAU9D,QAAQ;gDAAG;gDAAG5S,UAAUkP,YAAY1D,WACpF0D,WACA2C,sBACE;4CAAc;yCACnB;oCACH;iCAEH;4BAAC;wBACJ;wBAEF,aAAa,GAAGvH,KAAK,OAAO;4BAAE5H,OAAO;gCAAE4U,cAAc1E,QAAQ;4BAAG;4BAAG5S,UAAU,aAAa,GAAGuK,MAAM,OAAO;gCAAEhK,WAAW;gCAAqCP,UAAU;oCACpK,aAAa,GAAGsK,KACd,UACA;wCACE,cAAc;wCACd9J,SAAS8T;wCACT/T,WAAW;wCACXmC,OAAO;4CACL4B,OAAOsO,QAAQ;4CACfvO,QAAQuO,QAAQ;wCAClB;wCACA5S,UAAU,aAAa,GAAGsK,KACxBJ,eACA;4CACExH,OAAO;gDACL4B,OAAOwO,OAAO;gDACdzO,QAAQyO,OAAO;4CACjB;wCACF;oCAEJ;oCAEF,aAAa,GAAGvI,MACd,UACA;wCACE/J,SAASyV;wCACT1V,WAAW;wCACXmC,OAAO;4CAAEgU,UAAU9D,QAAQ;wCAAG;wCAC9B5S,UAAU;4CACRqU;4CACA;4CACA3D;yCACD;oCACH;oCAEF,aAAa,GAAGpG,KACd,UACA;wCACE,cAAc;wCACd9J,SAAS+T;wCACThU,WAAW;wCACXmC,OAAO;4CACL4B,OAAOsO,QAAQ;4CACfvO,QAAQuO,QAAQ;wCAClB;wCACA5S,UAAU,aAAa,GAAGsK,KACxBH,gBACA;4CACEzH,OAAO;gDACL4B,OAAOwO,OAAO;gDACdzO,QAAQyO,OAAO;4CACjB;wCACF;oCAEJ;iCAEH;4BAAC;wBAAG;wBACL,aAAa,GAAGxI,KACd,OACA;4BACE/J,WAAW;4BACXmC,OAAO;gCAAED,KAAKmQ,QAAQ;4BAAE;4BACxB5S,UAAUmW;wBACZ;wBAEF,aAAa,GAAG5L,MACd,OACA;4BACEhK,WAAW;4BACXmC,OAAO;gCAAE4V,SAAS1F,QAAQ;4BAAE;4BAC5B5S,UAAU;gCACR,aAAa,GAAGuK,MACd,OACA;oCACEhK,WAAW;oCACXmC,OAAO;wCAAED,KAAKmQ,QAAQ;oCAAG;oCACzB5S,UAAU;wCACRwP,mBAAmB,aAAa,GAAGjF,MACjC,UACA;4CACE/J,SAASsU;4CACTvU,WAAW;4CACXmC,OAAO;gDACL2B,QAAQuO,QAAQ;gDAChBlO,YAAY;gDACZN,OAAO;4CACT;4CACApE,UAAU;gDACR,aAAa,GAAGsK,KACdF,gBACA;oDACE1H,OAAO;wDACL4B,OAAOwO,OAAO;wDACdzO,QAAQyO,OAAO;oDACjB;gDACF;gDAEF;6CACD;wCACH;wCAEFrD,mBAAmB,aAAa,GAAGnF,KACjC,UACA;4CACE9J,SAAS+U;4CACThV,WAAW;4CACXmC,OAAO;gDACL2B,QAAQuO,QAAQ;gDAChBlO,YAAY;gDACZN,OAAO;4CACT;4CACApE,UAAU;wCACZ;qCAEH;gCACH;gCAEF,aAAa,GAAGsK,KACd,UACA;oCACE9J,SAASwV;oCACTzV,WAAW;oCACXmC,OAAO;wCACL2B,QAAQuO,QAAQ;wCAChBlO,YAAY;oCACd;oCACA1E,UAAU;gCACZ;6BAEH;wBACH;qBAEH;gBACH;YAEJ;SAEH;IACH;AAEJ;AACA2O,SAASlO,WAAW,GAAG;AAEvB,4BAA4B;AAC5B,SAASqG,YAAYyR,SAAS,EAAE3Y,OAAO4Y,IAAI,EAAE3Y,QAAQ4Y,KAAK,QAAQ,oBAAoB;AACtF,IAAIC,2BAA2B;IAC7B;QAAEhQ,OAAO;QAAmBmG,OAAO;IAAG;IACtC;QAAEnG,OAAO;QAAiBmG,OAAO;IAAgB;IACjD;QAAEnG,OAAO;QAASmG,OAAO;IAAQ;IACjC;QAAEnG,OAAO;QAAUmG,OAAO;IAAS;IACnC;QAAEnG,OAAO;QAAUmG,OAAO;IAAS;CACpC;AACD,IAAI8J,yBAAyB;IAC3B;QAAEjQ,OAAO;QAAiBmG,OAAO;IAAG;IACpC;QAAEnG,OAAO;QAAWmG,OAAO;IAAU;IACrC;QAAEnG,OAAO;QAAYmG,OAAO;IAAW;IACvC;QAAEnG,OAAO;QAAYmG,OAAO;IAAW;CACxC;AACD,IAAI+J,SAAS;QACXC,gBAAAA,SACAC,gBAAAA,wCACAC,iBAAAA,sDAAkBL,gFAClBM,eAAAA,kDAAgBL,gFAChBM,mBAAAA,0DAAoB,wCACpB9U,eAAAA;IAEA,IAAwBoF,8BAAAA,UAAU,YAA3BlJ,OAAiBkJ,eAAXjJ,UAAWiJ;IACxB,IAA4BA,+BAAAA,UAAU;QACpCkB,MAAM;YAAEqC,OAAO;YAAMiE,KAAK;QAAK;QAC/BmI,UAAU;QACVC,QAAQ;QACRC,SAAS;IACX,QALOC,SAAqB9P,gBAAb+P,YAAa/P;IAM5B,IAAMD,eAAe,sBAACpI,MAAM2N;QAC1ByK,UAAU,SAACC;mBAAU,wCAAKA,OAAM,qBAACrY,MAAO2N;;IAC1C;IACA,IAAM2K,aAAa,oBAACtY;QAClB,IAAIA,SAAS,QAAQ;YACnBoY,UAAU,SAACC;uBAAU,wCAChBA;oBACH9O,MAAM;wBAAEqC,OAAO;wBAAMiE,KAAK;oBAAK;;;QAEnC,OAAO;YACLuI,UAAU,SAACC;uBAAU,wCAAKA,OAAM,qBAACrY,MAAO;;QAC1C;IACF;IACA,IAAMuY,WAAW;QACf,IAAMC,YAAY;YAChBjP,MAAM;gBAAEqC,OAAO;gBAAMiE,KAAK;YAAK;YAC/BmI,UAAU;YACVC,QAAQ;YACRC,SAAS;QACX;QACAE,UAAUI;QACV,IAAIZ,SAASA;aACR,IAAID,SAASA,QAAQa;IAC5B;IACA,IAAMC,eAAe;QACnB,IAAId,SAASA,QAAQQ;QACrB/Y,QAAQ;IACV;IACA,OAAO,aAAa,GAAGmY,MAAM,OAAO;QAAElY,WAAW;QAAY,eAAe4D;QAAQnE,UAAU;YAC5F,aAAa,GAAGwY,KACd,UACA;gBACEjS,MAAM;gBACN,eAAepC,SAAS,AAAC,GAAS,OAAPA,QAAO,aAAW,KAAK;gBAClD3D,SAAS,SAATA;2BAAeF,QAAQ,SAACoG;+BAAM,CAACA;;;gBAC/BnG,WAAW;gBACXP,UAAU;YACZ;YAEFK,QAAQ,aAAa,GAAGmY,KACtB,OACA;gBACEjY,WAAW;gBACX,eAAe4D,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;gBACjDnE,UAAU,aAAa,GAAGyY,MAAM,OAAO;oBAAElY,WAAW;oBAAgEP,UAAU;wBAC5H,aAAa,GAAGyY,MAAM,OAAO;4BAAElY,WAAW;4BAAsFP,UAAU;gCACxI,aAAa,GAAGwY,KAAK,MAAM;oCAAEjY,WAAW;oCAA2BP,UAAU;gCAAa;gCAC1F,aAAa,GAAGwY,KACd,UACA;oCACEjS,MAAM;oCACN,eAAepC,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;oCACjD3D,SAAS,SAATA;+CAAeF,QAAQ;;oCACvBC,WAAW;oCACXP,UAAU,aAAa,GAAGwY,KAAK7O,IAAI;wCAAEpJ,WAAW;oCAAyB;gCAC3E;6BAEH;wBAAC;wBACF,aAAa,GAAGiY,KAAKoB,SAAS;4BAAE7Z,OAAO;4BAAc+Y,SAAS,SAATA;uCAAeU,WAAW;;4BAASxZ,UAAU,aAAa,GAAGwY,KAChH7J,UACA;gCACEG,sBAAsB;gCACtBC,YAAYsK,OAAO5O,IAAI;gCACvBuE,eAAe,SAAfA,cAAgB6K;2CAAUvQ,aAAa,QAAQuQ;;gCAC/CnW,MAAM;4BACR;wBACA;wBACF,aAAa,GAAG+U,MAAMqB,eAAe;4BAAE9Z,UAAU;gCAC/C,aAAa,GAAGwY,KACd,UACA;oCACEjY,WAAW;oCACXsO,OAAOwK,OAAOH,QAAQ;oCACtB7P,UAAU,SAAVA,SAAW7C;+CAAM8C,aAAa,YAAY9C,EAAE0N,MAAM,CAACrF,KAAK;;oCACxD7O,UAAU+Y,gBAAgBpB,GAAG,CAAC,SAACoC;+CAAQ,aAAa,GAAGvB,KAAK,UAAU;4CAAE3J,OAAOkL,IAAIlL,KAAK;4CAAE7O,UAAU+Z,IAAIrR,KAAK;wCAAC,GAAGqR,IAAIlL,KAAK;;gCAC5H;gCAEF,aAAa,GAAG2J,KAAKwB,YAAY,CAAC;6BACnC;wBAAC;wBACF,aAAa,GAAGvB,MAAMqB,eAAe;4BAAE9Z,UAAU;gCAC/C,aAAa,GAAGwY,KACd,UACA;oCACEjY,WAAW;oCACXsO,OAAOwK,OAAOF,MAAM;oCACpB9P,UAAU,SAAVA,SAAW7C;+CAAM8C,aAAa,UAAU9C,EAAE0N,MAAM,CAACrF,KAAK;;oCACtD7O,UAAUgZ,cAAcrB,GAAG,CAAC,SAACoC;+CAAQ,aAAa,GAAGvB,KAAK,UAAU;4CAAE3J,OAAOkL,IAAIlL,KAAK;4CAAE7O,UAAU+Z,IAAIrR,KAAK;wCAAC,GAAGqR,IAAIlL,KAAK;;gCAC1H;gCAEF,aAAa,GAAG2J,KAAKwB,YAAY,CAAC;6BACnC;wBAAC;wBACF,aAAa,GAAGxB,KACd,SACA;4BACEjY,WAAW;4BACXsO,OAAOwK,OAAOD,OAAO;4BACrB1J,aAAauJ;4BACb5P,UAAU,SAAVA,SAAW7C;uCAAM8C,aAAa,WAAW9C,EAAE0N,MAAM,CAACrF,KAAK;;wBACzD;wBAEF,aAAa,GAAG4J,MAAM,OAAO;4BAAElY,WAAW;4BAA4FP,UAAU;gCAC9I,aAAa,GAAGwY,KACd,UACA;oCACEjS,MAAM;oCACN,eAAepC,SAAS,AAAC,GAAS,OAAPA,QAAO,eAAa,KAAK;oCACpD3D,SAASiZ;oCACTlZ,WAAW;oCACXP,UAAU;gCACZ;gCAEF,aAAa,GAAGwY,KACd,UACA;oCACEjS,MAAM;oCACN,eAAepC,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;oCACjD3D,SAASmZ;oCACTpZ,WAAW;oCACXP,UAAU;gCACZ;6BAEH;wBAAC;qBACH;gBAAC;YACJ;SAEH;IAAC;AACJ;AACA,IAAI4Z,UAAU;QACZ7Z,cAAAA,OACA+Y,gBAAAA,SACA9Y,iBAAAA;WACI,aAAa,GAAGyY,MAAM,OAAO;QAAElY,WAAW;QAAiGP,UAAU;YACzJ,aAAa,GAAGyY,MAAM,OAAO;gBAAElY,WAAW;gBAA6BP,UAAU;oBAC/E,aAAa,GAAGwY,KAAK,MAAM;wBAAEjY,WAAW;wBAAyBP,UAAUD;oBAAM;oBACjF,aAAa,GAAGyY,KAAK,UAAU;wBAAEjS,MAAM;wBAAU/F,SAASsY;wBAASvY,WAAW;wBAAyDP,UAAU;oBAAQ;iBAC1J;YAAC;YACFA;SACD;IAAC;;AACF,IAAI8Z,gBAAgB;QAAG9Z,iBAAAA;WAAe,aAAa,GAAGwY,KAAK,OAAO;QAAEjY,WAAW;QAAwBP,UAAAA;IAAS;;AAChH,IAAIga,aAAa;WAAM,aAAa,GAAGxB,KAAK,QAAQ;QAAEjY,WAAW;QAAgFP,UAAU,aAAa,GAAGwY,KAAK5O,cAAc;YAAErJ,WAAW;QAAU;IAAG;;AACxN,IAAI0Z,iBAAiB;QACnBpL,cAAAA,OACAxF,iBAAAA,iCACA6Q,SAAAA,sCAAUxB,+DACVhV,MAAAA,gCAAO,wBACPS,eAAAA;QAMsB+V;IAJtB,IAAwB3Q,8BAAAA,UAAU,YAA3BlJ,OAAiBkJ,eAAXjJ,UAAWiJ;IACxB,IAAM4Q,aAAazQ,QAAQ;IAC3B,IAAM0Q,cAAc1Q,QAAQ;IAC5B,IAAsBH,+BAAAA,UAAU,WAAzB8Q,MAAe9Q,gBAAV+Q,SAAU/Q;IACtB,IAAMgR,gBAAgBL,EAAAA,gBAAAA,QAAQM,IAAI,CAAC,SAACC;eAAMA,EAAE5L,KAAK,IAAIA;oBAA/BqL,oCAAAA,cAAuCxR,KAAK,KAAI;IACtE,IAAMgS,iBAAiB;QACrB,IAAI,CAACP,WAAWhH,OAAO,EAAE;QACzB,IAAMwH,OAAOR,WAAWhH,OAAO,CAACG,qBAAqB;QACrDgH,OAAO;YACLzG,KAAK8G,KAAKhH,MAAM,GAAGlF,OAAOmM,OAAO,GAAG;YACpCC,MAAMF,KAAKE,IAAI,GAAGpM,OAAOqM,OAAO;YAChCxW,OAAOqW,KAAKrW,KAAK;QACnB;IACF;IACAkF,WAAW;QACT,IAAI,CAACnJ,MAAM;QACXqa;QACAjM,OAAOtG,gBAAgB,CAAC,UAAUuS,gBAAgB;QAClDjM,OAAOtG,gBAAgB,CAAC,UAAUuS;QAClC,OAAO;YACLjM,OAAOrG,mBAAmB,CAAC,UAAUsS,gBAAgB;YACrDjM,OAAOrG,mBAAmB,CAAC,UAAUsS;QACvC;IACF,GAAG;QAACra;KAAK;IACTmJ,WAAW;QACT,IAAMuR,UAAU,iBAACvU;gBACX2T,qBAA0CC;YAA9C,IAAID,EAAAA,sBAAAA,WAAWhH,OAAO,cAAlBgH,0CAAAA,oBAAoBlG,QAAQ,CAACzN,EAAE0N,MAAM,QAAKkG,uBAAAA,YAAYjH,OAAO,cAAnBiH,2CAAAA,qBAAqBnG,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACrF;YACF;YACA5T,QAAQ;QACV;QACA4H,SAASC,gBAAgB,CAAC,aAAa4S;QACvC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,aAAa2S;;IACzD,GAAG,EAAE;IACL,OAAO,aAAa,GAAGtC,MAAMF,WAAW;QAAEvY,UAAU;YAClD,aAAa,GAAGyY,MACd,OACA;gBACE,eAAetU,SAAS,AAAC,GAAS,OAAPA,QAAO,cAAY,KAAK;gBACnD3B,KAAK2X;gBACL3Z,SAAS,SAATA;2BAAeF,QAAQ,SAACoG;+BAAM,CAACA;;;gBAC/BnG,WAAW,AAAC,0LASRmD,OADArD,OAAO,6CAA6C,oBAAmB,gBAC1B,OAA7CqD,SAAS,UAAU,cAAc,aAAY;gBAEjD1D,UAAU;oBACR,aAAa,GAAGwY,KAAK,QAAQ;wBAAEjY,WAAW;wBAAoBP,UAAUua;oBAAc;oBACtF,aAAa,GAAG/B,KACd5O,cACA;wBACErJ,WAAW,AAAC,qCAA6D,OAAzBF,OAAO,eAAe;oBACxE;iBAEH;YACH;YAEFA,QAAQga,OAAOxQ,aACb,aAAa,GAAG2O,KACd,OACA;gBACE,eAAerU,SAAS,AAAC,GAAS,OAAPA,QAAO,eAAa,KAAK;gBACpD3B,KAAK4X;gBACL1X,OAAO;oBACLmR,KAAKwG,IAAIxG,GAAG;oBACZgH,MAAMR,IAAIQ,IAAI;oBACdvW,OAAO+V,IAAI/V,KAAK;oBAChB8C,UAAU;gBACZ;gBACA7G,WAAW;gBACXP,UAAUka,QAAQvC,GAAG,CAAC,SAACoC;2BAAQ,aAAa,GAAGvB,KAC7C,OACA;wBACE,eAAerU,SAAS,AAAC,GAAmByG,OAAjBzG,QAAO,YAA4B,OAAlByG,OAAOmP,IAAIlL,KAAK,KAAM,KAAK;wBACvErO,SAAS,SAATA;4BACE6I,SAAS0Q,IAAIlL,KAAK;4BAClBvO,QAAQ;wBACV;wBACAC,WAAW;wBACXP,UAAU+Z,IAAIrR,KAAK;oBACrB,GACAkC,OAAOmP,IAAIlL,KAAK;;YAEpB,IAEF3G,SAASG,IAAI;SAEhB;IAAC;AACJ;AACA,IAAI2S,eAAe;QACjBnM,cAAAA,OACAxF,iBAAAA,iCACA6Q,SAAAA,sCAAUvB,6DACVjV,MAAAA,gCAAO,wBACPS,eAAAA;QAMsB+V;IAJtB,IAAwB3Q,8BAAAA,UAAU,YAA3BlJ,OAAiBkJ,eAAXjJ,UAAWiJ;IACxB,IAAM4Q,aAAazQ,QAAQ;IAC3B,IAAM0Q,cAAc1Q,QAAQ;IAC5B,IAAsBH,+BAAAA,UAAU,WAAzB8Q,MAAe9Q,gBAAV+Q,SAAU/Q;IACtB,IAAMgR,gBAAgBL,EAAAA,gBAAAA,QAAQM,IAAI,CAAC,SAACC;eAAMA,EAAE5L,KAAK,IAAIA;oBAA/BqL,oCAAAA,cAAuCxR,KAAK,KAAI;IACtE,IAAMgS,iBAAiB;QACrB,IAAI,CAACP,WAAWhH,OAAO,EAAE;QACzB,IAAMwH,OAAOR,WAAWhH,OAAO,CAACG,qBAAqB;QACrDgH,OAAO;YACLzG,KAAK8G,KAAKhH,MAAM,GAAGlF,OAAOmM,OAAO,GAAG;YACpCC,MAAMF,KAAKE,IAAI,GAAGpM,OAAOqM,OAAO;YAChCxW,OAAOqW,KAAKrW,KAAK;QACnB;IACF;IACAkF,WAAW;QACT,IAAI,CAACnJ,MAAM;QACXqa;QACAjM,OAAOtG,gBAAgB,CAAC,UAAUuS,gBAAgB;QAClDjM,OAAOtG,gBAAgB,CAAC,UAAUuS;QAClC,OAAO;YACLjM,OAAOrG,mBAAmB,CAAC,UAAUsS,gBAAgB;YACrDjM,OAAOrG,mBAAmB,CAAC,UAAUsS;QACvC;IACF,GAAG;QAACra;KAAK;IACTmJ,WAAW;QACT,IAAMuR,UAAU,iBAACvU;gBACX2T,qBAA0CC;YAA9C,IAAID,EAAAA,sBAAAA,WAAWhH,OAAO,cAAlBgH,0CAAAA,oBAAoBlG,QAAQ,CAACzN,EAAE0N,MAAM,QAAKkG,uBAAAA,YAAYjH,OAAO,cAAnBiH,2CAAAA,qBAAqBnG,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;YACvF5T,QAAQ;QACV;QACA4H,SAASC,gBAAgB,CAAC,aAAa4S;QACvC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,aAAa2S;;IACzD,GAAG,EAAE;IACL,OAAO,aAAa,GAAGtC,MAAMF,WAAW;QAAEvY,UAAU;YAClD,aAAa,GAAGyY,MACd,OACA;gBACE,eAAetU,SAAS,AAAC,GAAS,OAAPA,QAAO,cAAY,KAAK;gBACnD3B,KAAK2X;gBACL3Z,SAAS,SAATA;2BAAeF,QAAQ,SAACoG;+BAAM,CAACA;;;gBAC/BnG,WAAW,AAAC,0LASRmD,OADArD,OAAO,6CAA6C,oBAAmB,gBAC1B,OAA7CqD,SAAS,UAAU,cAAc,aAAY;gBAEjD1D,UAAU;oBACR,aAAa,GAAGwY,KAAK,QAAQ;wBAAEjY,WAAW;wBAAoBP,UAAUua;oBAAc;oBACtF,aAAa,GAAG/B,KACd5O,cACA;wBACErJ,WAAW,AAAC,qCAA6D,OAAzBF,OAAO,eAAe;oBACxE;iBAEH;YACH;YAEFA,QAAQga,OAAOxQ,aACb,aAAa,GAAG2O,KACd,OACA;gBACE,eAAerU,SAAS,AAAC,GAAS,OAAPA,QAAO,eAAa,KAAK;gBACpD3B,KAAK4X;gBACL1X,OAAO;oBACLmR,KAAKwG,IAAIxG,GAAG;oBACZgH,MAAMR,IAAIQ,IAAI;oBACdvW,OAAO+V,IAAI/V,KAAK;oBAChB8C,UAAU;gBACZ;gBACA7G,WAAW;gBACXP,UAAUka,QAAQvC,GAAG,CAAC,SAACoC;2BAAQ,aAAa,GAAGvB,KAC7C,OACA;wBACEhY,SAAS,SAATA;4BACE6I,SAAS0Q,IAAIlL,KAAK;4BAClBvO,QAAQ;wBACV;wBACAC,WAAW;wBACXP,UAAU+Z,IAAIrR,KAAK;oBACrB,GACAkC,OAAOmP,IAAIlL,KAAK;;YAEpB,IAEF3G,SAASG,IAAI;SAEhB;IAAC;AACJ;AACA,IAAI4S,eAAe;QACjBpM,cAAAA,OACAxF,iBAAAA,qCACAqG,aAAAA,8CAAc,sDACdhM,MAAAA,gCAAO,wBACPS,eAAAA;WACI,aAAa,GAAGqU,KACpB,SACA;QACE,eAAerU;QACfoC,MAAM;QACNsI,OAAAA;QACAa,aAAAA;QACArG,UAAU,SAAVA,UAAW7C;mBAAM6C,SAAS7C,EAAE0N,MAAM,CAACrF,KAAK;;QACxCtO,WAAW,AAAC,mLASqC,OAA7CmD,SAAS,UAAU,cAAc,aAAY;IAEnD;;AAEFkV,OAAOnY,WAAW,GAAG;AACrBwZ,eAAexZ,WAAW,GAAG;AAC7Bua,aAAava,WAAW,GAAG;AAC3Bwa,aAAaxa,WAAW,GAAG;AAE3B,qCAAqC;AACrC,SAASsH,aAAamT,UAAU,EAAEzb,YAAY0b,SAAS,QAAQ,QAAQ;AACvE,SAASrU,YAAYsU,SAAS,EAAExb,OAAOyb,IAAI,EAAExb,QAAQyb,KAAK,QAAQ,oBAAoB;AACtF,IAAIC,gBAAgB,uBAACC;IACnB,IAAI,CAACA,MAAM,OAAO;IAClB,IAAMC,QAAQD,KAAKrZ,WAAW,GAAGuZ,IAAI;IACrC,IAAID,UAAU,UAAUA,UAAU,cAChC,OAAO;IACT,IAAIA,UAAU,SACZ,OAAO;IACT,IAAIA,UAAU,UAAUA,UAAU,aAChC,OAAO;IACT,IAAIA,UAAU,WACZ,OAAO;IACT,OAAO,AAAC,IAAQ,OAALD,MAAK;AAClB;AACA,IAAIG,kBAAkB;QACpBC,aAAAA,6BACAnY,SAAAA,sCAAU,8DACVoY,kBAAAA,wDAAmB,6BACnBC,oBAAAA,0CACAC,eAAAA,kDAAgB,8BAChBC,sBAAAA,0CACAC,aAAAA,8CAAc,mEACdC,kBAAAA,wDAAmB,0EACnBC,0BAAAA,wEAA2B,6EAC3BC,sBAAAA,gEAAuB,uCACvBC,4BAAAA,qBACAC,mBAAAA,YACAC,sBAAAA,eACAC,uBAAAA,gBACAC,yBAAAA,kBACAC,+BAAAA,wBACAvY,eAAAA;IAEA,IAAsCgX,8BAAAA,UAAUU,uBAAzCc,cAA+BxB,eAAlByB,iBAAkBzB;IACtC,IAA0CA,+BAAAA,UAAU,WAA7C0B,gBAAmC1B,gBAApB2B,mBAAoB3B;IAC1C,IAAM4B,4BAA4BV,gCAAAA,iCAAAA,sBAAuB;IACzD,IAAMW,sBAAsBzB,cAAcgB;IAC1C,IAAMU,uBAAuB1B,cAAciB;IAC3CtB,WAAW;QACT,IAAIW,qBAAqBc,aAAa;YACpCC,eAAef;QACjB;IACF,GAAG;QAACA;KAAiB;IACrBX,WAAW;QACT,IAAI,CAACU,KAAK1E,MAAM,EAAE;YAChB0F,eAAe;YACf;QACF;QACAA,eACE,SAACrD;mBAASA,OAAO,IAAI,IAAIA,QAAQqC,KAAK1E,MAAM,GAAG0E,KAAK1E,MAAM,GAAG,IAAIqC;;IAErE,GAAG;QAACqC,KAAK1E,MAAM;KAAC;IAChB,IAAMgG,iBAAiB,wBAACC;QACtBP,eAAeO;QACfrB,wBAAAA,kCAAAA,YAAcqB;IAChB;IACA,IAAMC,kBAAkB,yBAACD;QACvB,IAAI,CAACpB,eAAe;QACpBe,iBAAiBK;IACnB;IACA,IAAME,iBAAiB,wBAACrJ;QACtB,IAAI,CAAC+H,eAAe;QACpB/H,MAAMsJ,cAAc;IACtB;IACA,IAAMC,aAAa,oBAACJ;QAClB,IAAI,CAACpB,eAAe;QACpB,IAAIc,kBAAkB,MAAM;YAC1BC,iBAAiB;YACjB;QACF;QACA,IAAMU,YAAYX;QAClB,IAAMY,UAAUN;QAChB,IAAIK,cAAcC,SAAS;YACzBX,iBAAiB;YACjB;QACF;QACAF,eAAe,SAACc;YACd,IAAIC,SAASD;YACb,IAAIC,WAAWH,WAAW,OAAOC;YACjC,IAAID,YAAYC,SAAS;gBACvB,IAAIE,SAASH,aAAaG,UAAUF,SAAS,OAAOE,SAAS;YAC/D,OAAO,IAAIH,YAAYC,SAAS;gBAC9B,IAAIE,UAAUF,WAAWE,SAASH,WAAW,OAAOG,SAAS;YAC/D;YACA,OAAOA;QACT;QACA3B,0BAAAA,oCAAAA,cAAgBwB,WAAWC;QAC3BX,iBAAiB;IACnB;IACA,IAAMc,gBAAgB;QACpB,IAAI,CAAC7B,eAAe;QACpBe,iBAAiB;IACnB;IACA,IAAMe,gBAAgB,aAAa,GAAGxC,KAAKD,WAAW;QAAEpb,UAAU4b,KAAKjE,GAAG,CAAC,SAACmG,KAAKX;YAC/E,IAAMQ,SAASR,UAAUR;YACzB,IAAMoB,aAAahC,iBAAiBc,kBAAkBM;YACtD,IAAMa,YAAY7B,4BAA4B,CAAC,CAACG;YAChD,IAAM2B,aAAaD,YAAY,aAAa,GAAG3C,KAC7C,QACA;gBACE9S,MAAM;gBACN,cAAc;gBACd/H,SAAS,SAATA,QAAUgG;oBACRA,EAAEC,eAAe;oBACjB6V,uBAAAA,iCAAAA,WAAaa;gBACf;gBACA5c,WAAW;gBACXP,UAAU+c;YACZ,KACE;YACJ,OAAO,aAAa,GAAGzB,MACrB,UACA;gBACE/U,MAAM;gBACN/F,SAAS,SAATA;2BAAe0c,eAAeC;;gBAC9Be,WAAWnC;gBACXoC,aAAa,SAAbA;2BAAmBf,gBAAgBD;;gBACnCiB,YAAYf;gBACZgB,QAAQ,SAARA;2BAAcd,WAAWJ;;gBACzBmB,WAAWV;gBACXrd,WAAW,AAAC,yGAEhBwd,OADA9B,gBAAgB,aAAa,qBAAqB,eAAc,QAEhExY,OADAsa,aAAa,0BAA0B,IAAG,QAC+9B,OAAzgCta,YAAY,SAASka,SAAS,gDAAgD,sDAAsDla,YAAY,YAAYka,SAAS,qEAAqE,iFAAiFla,YAAY,WAAWka,SAAS,uCAAuC,2CAA2Cla,YAAY,aAAaka,SAAS,uEAAuE,2CAA2Cla,YAAY,WAAWka,SAAS,iDAAiD,4BAA4Bla,YAAY,UAAUka,SAAS,sFAAsF,kDAAkDla,YAAY,SAASka,SAAS,6CAA6C,uCAAuCA,SAAS,mBAAmB;gBAC/9B3d,UAAU;oBACR,aAAa,GAAGsb,MAAM,OAAO;wBAAE/a,WAAW;wBAAkDP,UAAU;4BACpG,aAAa,GAAGsb,MAAM,OAAO;gCAAE/a,WAAW;gCAAmCP,UAAU;oCACrFoc,yBAAyB,UAAU6B;oCACnCH,IAAIva,IAAI,IAAI,aAAa,GAAG8X,KAAK,QAAQ;wCAAErb,UAAU8d,IAAIva,IAAI;oCAAC;oCAC9D,aAAa,GAAG8X,KAAK,QAAQ;wCAAE9a,WAAW;wCAAYP,UAAU8d,IAAIpV,KAAK;oCAAC;iCAC3E;4BAAC;4BACF0T,yBAAyB,WAAW6B;yBACrC;oBAAC;oBACFxa,YAAY,eAAe,aAAa,GAAG4X,KACzC,QACA;wBACE9a,WAAW,AAAC,YAGlBod,OAH6B1B,gBAAgB,aAAa,gCAAgC,uCAAsC,yGAG3F,OAArC0B,SAAS,gBAAgB,aAAY;oBAEjC;iBAEH;YACH,GACAR;QAEJ;IAAG;IACH,IAAMoB,UAAU,aAAa,GAAGlD,KAC9B,OACA;QACE9a,WAAW;QACXmC,OAAO;YAAE8b,YAAYvB;QAAqB;QAC1Cjd,UAAU4b,KAAKjE,GAAG,CAAC,SAACmG,KAAKX;YACvB,IAAMQ,SAASR,UAAUR;YACzB,OAAO,aAAa,GAAGtB,KACrB,OACA;gBACE9a,WAAW,AAAC,mCAAqH,OAAnFod,SAAS,yBAAyB;gBAChF3d,UAAU8d,IAAIS,OAAO;YACvB,GACApB;QAEJ;IACF;IAEF,IAAIlB,gBAAgB,cAAc;QAChC,OAAO,aAAa,GAAGX,MACrB,OACA;YACE,eAAenX;YACf5D,WAAW,AAAC,kGACqN,OAArOkD,YAAY,SAAS,2DAA2DA,YAAY,UAAU,0EAA0E;YAC5KzD,UAAU;gBACR,aAAa,GAAGqb,KAAK,OAAO;oBAAE9a,WAAW;oBAA0EP,UAAU6d;gBAAc;gBAC3IU;aACD;QACH;IAEJ;IACA,OAAO,aAAa,GAAGlD,KACrB,OACA;QACE,eAAelX;QACf5D,WAAW,AAAC,kGACuN,OAArOkD,YAAY,SAAS,2DAA2DA,YAAY,UAAU,0EAA0E;QAC9KzD,UAAUkc,qBAAqB,SAAS,aAAa,GAAGZ,MAAM,OAAO;YAAE/a,WAAW;YAAqDP,UAAU;gBAC/I,aAAa,GAAGqb,KAAK,OAAO;oBAAE9a,WAAW;oBAAuEP,UAAU6d;gBAAc;gBACxI,aAAa,GAAGxC,KAAK,OAAO;oBAAErb,UAAUue;gBAAQ;aACjD;QAAC,KAAK,aAAa,GAAGjD,MAAM,OAAO;YAAE/a,WAAW;YAAqDP,UAAU;gBAC9G,aAAa,GAAGqb,KAAK,OAAO;oBAAErb,UAAUue;gBAAQ;gBAChD,aAAa,GAAGlD,KAAK,OAAO;oBAAE9a,WAAW;oBAAuEP,UAAU6d;gBAAc;aACzI;QAAC;IACJ;AAEJ;AACAlC,gBAAgBlb,WAAW,GAAG;AAE9B,8BAA8B;AAC9B,SAAShB,YAAYgf,SAAS,EAAEhV,UAAUiV,OAAO,EAAE3W,aAAa4W,UAAU,QAAQ,QAAQ;AAC1F,SAAS/e,OAAOgf,KAAK,EAAE/e,QAAQgf,KAAK,QAAQ,oBAAoB;AAChE,IAAIC,WAAW;QACb5E,gBAAAA,SACArL,cAAAA,OACAkQ,iBAAAA,iCACAtb,SAAAA,sCAAU,mDACVlD,WAAAA,0CAAY,kDACZmP,aAAAA,8CAAc,iEACd/G,UAAAA,wCAAW,yBACXxE,eAAAA;IAEA,IAAwBsa,8BAAAA,UAAU,YAA3Bpe,OAAiBoe,eAAXne,UAAWme;IACxB,IAAgDA,+BAAAA,UAAU,WAAnDO,mBAAyCP,gBAAvBQ,sBAAuBR;IAChD,IAAMrE,cAAcsE,QAAQ;IAC5B,IAAMQ,iBAAiBrQ,UAAU,KAAK,IAAIqL,QAAQM,IAAI,CAAC,SAACT;eAAQA,IAAIlL,KAAK,KAAKA;SAASmQ;IACvFL,WAAW;YACA5K,qBAAT,SAASA,mBAAmBC,KAAK;YAC/B,IAAIoG,YAAYjH,OAAO,IAAI,CAACiH,YAAYjH,OAAO,CAACc,QAAQ,CAACD,MAAME,MAAM,GAAG;gBACtE5T,QAAQ;YACV;QACF;QACA,IAAID,MAAM;YACR6H,SAASC,gBAAgB,CAAC,aAAa4L;QACzC;QACA,OAAO;YACL7L,SAASE,mBAAmB,CAAC,aAAa2L;QAC5C;IACF,GAAG;QAAC1T;KAAK;IACT,IAAM8e,eAAe,sBAACC;QACpB,IAAIzW,UAAU;QACd,IAAIkG,UAAU,KAAK,GAAGoQ,oBAAoBG;QAC1CL,SAASK,OAAOvQ,KAAK;QACrBvO,QAAQ;IACV;IACA,IAAM+e,oBAAoB;QACxB,IAAI,CAAC1W,UAAU;YACbrI,QAAQ,CAACD;QACX;IACF;IACA,OAAO,aAAa,GAAGwe,MACrB,OACA;QACErc,KAAK4X;QACL7Z,WAAW,AAAC,oDAAmE,OAAhBA,aAAa;QAC5E,eAAe4D;QACfnE,UAAU;YACR,aAAa,GAAG4e,MACd,UACA;gBACEpe,SAAS6e;gBACT1W,UAAAA;gBACApC,MAAM;gBACNhG,WAAW,AAAC,qJAKhB,OAFAoI,WAAW,8DAA8D,IAAG,cAW7D,OATf,CAACA,YAAY,CAAA;oBACP2W,OAAO;oBACPxc,SAAS;oBACTI,MAAM;oBACNqc,MAAM;oBACNC,WAAW;oBACXC,QAAQ;oBACRC,OAAO;oBACPC,UAAU;gBACZ,CAAA,CAAC,CAAClc,QAAQ,EAAC;gBAEXzD,UAAUkf,CAAAA,2BAAAA,qCAAAA,eAAgBjX,GAAG,KAAIyH;YACnC;YAEFrP,QAAQ,CAACsI,YAAY,aAAa,GAAGiW,MACnC,OACA;gBACEre,WAAW,AAAC,mRAIsG,OAApHkD,YAAY,UAAU,mFAAmF,YAAW;gBAElHzD,UAAUka,QAAQvC,GAAG,CAAC,SAACoC,KAAKoD;2BAAU,aAAa,GAAGyB,MACpD,OACA;wBACEpe,SAAS,SAATA;mCAAe2e,aAAapF;;wBAC5BxZ,WAAW,AAAC,kHAId4c,OADA1Z,YAAY,UAAU,oCAAoC,sBAAqB,kBAE/E0Z,OADAA,UAAU,IAAI,yBAAyB,IAAG,kBACiB,OAA3DA,UAAUjD,QAAQhD,MAAM,GAAG,IAAI,yBAAyB,IAAG;wBAEzDlX,UAAU+Z,IAAI9R,GAAG;oBACnB,GACA8R,IAAIlL,KAAK;;YAEb;SAEH;IACH;AAEJ;AACAiQ,SAASre,WAAW,GAAG;AAEvB,kCAAkC;AAClC,OAAOmf,WAAW7X,aAAa8X,UAAU,EAAEpgB,YAAYqgB,SAAS,QAAQ,QAAQ;AAChF,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASjZ,YAAYkZ,SAAS,EAAEpgB,OAAOqgB,KAAK,EAAEpgB,QAAQqgB,KAAK,QAAQ,oBAAoB;AACvF,IAAIC,iBAAiB,wBAAC3E;IACpB,IAAI,CAACA,MACH,OAAO;IACT,IAAMC,QAAQD,KAAKrZ,WAAW,GAAGuZ,IAAI;IACrC,IAAID,UAAU,UAAUA,UAAU,cAChC,OAAO;IACT,IAAIA,UAAU,SAAS,OAAO;IAC9B,IAAIA,UAAU,UAAUA,UAAU,aAChC,OAAO;IACT,IAAIA,UAAU,WAAW,OAAO;IAChC,OAAO,AAAC,IAAQ,OAALD,MAAK;AAClB;AACA,SAAS4E,gBAAgBvR,KAAK;IAC5B,IAAI+Q,QAAQS,cAAc,CAACxR,QAAQ,OAAOA;IAC1C,IAAIA,UAAU,QAAQA,UAAU,KAAK,GAAG;QACtC,OAAO,aAAa,GAAGoR,MAAM,QAAQ;YAAE1f,WAAW;YAAkBP,UAAU;QAAI;IACpF;IACA,IAAIgX,MAAMsJ,OAAO,CAACzR,QAAQ;QACxB,IAAIA,MAAM0R,IAAI,CAAC,SAACC;mBAAMZ,QAAQS,cAAc,CAACG;YAAK,OAAO,aAAa,GAAGP,MAAMD,WAAW;YAAEhgB,UAAU6O;QAAM;QAC5G,OAAOA,MAAM4R,IAAI,CAAC;IACpB;IACA,IAAI5R,AAAK,YAALA,OAAiB3C,OAAM,OAAO2C,MAAM6R,cAAc;IACtD,IAAI,OAAO7R,UAAU,WAAW,OAAOA,QAAQ,QAAQ;IACvD,IAAI,OAAOA,UAAU,UAAU,OAAOA,MAAM8R,QAAQ;IACpD,IAAI,CAAA,OAAO9R,sCAAP,SAAOA,MAAI,MAAM,UAAU,OAAO+R,KAAKC,SAAS,CAAChS;IACrD,OAAOjE,OAAOiE;AAChB;AACA,SAASiS,kBAAkB,KAG1B;QAFCC,UADyB,MACzBA,SACAC,MAFyB,MAEzBA;IAEA,OAAO,aAAa,GAAGf,MAAM,OAAO;QAAE1f,WAAW;QAAuBP,UAAU+gB,QAAQpJ,GAAG,CAAC,SAACsJ;mBAAM,aAAa,GAAGf,MACnH,OACA;gBACE3f,WAAW;gBACXP,UAAU;oBACR,aAAa,GAAGigB,MAAM,QAAQ;wBAAE1f,WAAW;wBAA+EP,UAAUihB,EAAEvY,KAAK;oBAAC;oBAC5I,aAAa,GAAGuX,MAAM,QAAQ;wBAAE1f,WAAW;wBAAqCP,UAAUogB,gBAAgBY,GAAG,CAACC,EAAEhZ,GAAG,CAAC;oBAAE;iBACvH;YACH,GACAgZ,EAAEhZ,GAAG;;IACJ;AACL;AACA,SAASiZ,aAAa,KAarB;QAZCC,aADoB,MACpBA,YACAC,WAFoB,MAEpBA,6BAFoB,MAGpBC,WAAAA,0CAAY,0BACZC,WAJoB,MAIpBA,UACAC,mBALoB,MAKpBA,kBACAC,iBANoB,MAMpBA,gBACAzhB,QAPoB,MAOpBA,OACA0hB,cARoB,MAQpBA,aACAC,cAToB,MASpBA,aACAjF,mBAVoB,MAUpBA,kBACAC,yBAXoB,MAWpBA,wBACAvY,SAZoB,MAYpBA;;QAIsC4c;IAFtC,IAAQA,UAAkBI,WAAlBJ,SAASY,OAASR,WAATQ;IACjB,IAAwB7B,8BAAAA,UAAU,EAAE,OAA7BlE,OAAiBkE,eAAX8B,UAAW9B;IACxB,IAAM+B,iBAAiBH,wBAAAA,yBAAAA,eAAeX,YAAAA,OAAO,CAAC,EAAE,cAAVA,gCAAAA,UAAY9Y,GAAG;IACrD,IAAM6Z,yBAAyB3B,eAAe1D;IAC9C,IAAMsF,+BAA+B5B,eAAezD;IACpDmD,WAAW;QACT,IAAI,CAACjE,KAAK1E,MAAM,EAAE;QAClB0K,QACE,SAACrI;mBAASA,KAAK5B,GAAG,CAAC,SAACqK;gBAClB,IAAMhB,MAAMgB,EAAEhB,GAAG;gBACjB,IAAMiB,WAAWJ,kBAAkBb,GAAG,CAACa,eAAe,KAAK,KAAK,IAAIb,GAAG,CAACa,eAAe,GAAGG,EAAErb,EAAE;gBAC9F,IAAM+B,QAAQ,OAAOuZ,aAAa,YAAY,OAAOA,aAAa,WAAWrX,OAAOqX,YAAY,AAAC,OAAqB,OAAfD,EAAEE,QAAQ,GAAG;gBACpH,OAAO,wCAAKF;oBAAGtZ,OAAAA;;YACjB;;IAEJ,GAAG;QAACgZ;QAAaX;KAAQ;IACzB,IAAMoB,iBAAiB,wBAACnB,KAAK7D;QAC3B,IAAMxW,KAAK2a,WAAWA,SAASN,KAAK7D,SAASA;QAC7CyE,QAAQ,SAACrI;YACP,IAAM6I,cAAc7I,KAAK8I,SAAS,CAAC,SAACL;uBAAMA,EAAErb,EAAE,KAAKA;;YACnD,IAAIyb,gBAAgB,CAAC,GAAG;gBACtB,IAAME,QAAS,qBAAG/I;gBAClB+I,MAAMC,MAAM,CAACH,aAAa;gBAC1B,OAAOE;YACT;YACA,IAAML,WAAWJ,kBAAkBb,GAAG,CAACa,eAAe,KAAK,KAAK,IAAIb,GAAG,CAACa,eAAe,GAAGlb;YAC1F,IAAM+B,QAAQ,OAAOuZ,aAAa,YAAY,OAAOA,aAAa,WAAWrX,OAAOqX,YAAY,AAAC,OAAgB,OAAV9E,QAAQ;YAC/G,IAAMqF,OAAO,AAAC,qBAAGjJ,aAAJ;gBAAU;oBAAE5S,IAAAA;oBAAI+B,OAAAA;oBAAOsY,KAAAA;oBAAKkB,UAAU/E;gBAAM;aAAE;YAC3DqE,2BAAAA,qCAAAA,eAAiBR;YACjB,OAAOwB;QACT;IACF;IACA,IAAMC,iBAAiB,wBAAC9b;QACtBib,QAAQ,SAACrI;mBAASA,KAAKmJ,MAAM,CAAC,SAACV;uBAAMA,EAAErb,EAAE,KAAKA;;;IAChD;IACA,IAAMgc,gBAAgB,uBAAC3B,KAAK7D;QAC1B,IAAMxW,KAAK2a,WAAWA,SAASN,KAAK7D,SAASA;QAC7C,OAAOvB,KAAK2E,IAAI,CAAC,SAACyB;mBAAMA,EAAErb,EAAE,KAAKA;;IACnC;IACA,IAAMic,oBAAoB,2BAACpF,WAAWC;QACpCmE,QAAQ,SAACrI;YACP,IAAMiJ,OAAQ,qBAAGjJ;YACjB,IAAgBiJ,gCAAAA,KAAKD,MAAM,CAAC/E,WAAW,QAAhCqF,QAASL;YAChBA,KAAKD,MAAM,CAAC9E,SAAS,GAAGoF;YACxB,OAAOL;QACT;IACF;IACA,IAAMM,sBAAsBlH,KAAKjE,GAAG,CAAC,SAACqK;eAAO;YAC3CtZ,OAAOsZ,EAAEtZ,KAAK;YACd6V,SAAS,aAAa,GAAG2B,MAAM,OAAO;gBAAE3f,WAAW;gBAAuBP,UAAU;oBAClF,aAAa,GAAGigB,MAAM,OAAO;wBAAE1f,WAAW;wBAAoBP,UAAU,aAAa,GAAGkgB,MACtF,UACA;4BACE3Z,MAAM;4BACN/F,SAAS,SAATA;uCAAeiiB,eAAeT,EAAErb,EAAE;;4BAClCpG,WAAW;4BACXP,UAAU;gCACR,aAAa,GAAGigB,MAAMF,WAAW;oCAAExf,WAAW;gCAAU;gCACxD,aAAa,GAAG0f,MAAM,QAAQ;oCAAEjgB,UAAU;gCAAY;6BACvD;wBACH;oBACA;oBACFuhB,mBAAmBA,iBAAiBS,EAAEhB,GAAG,IAAI,aAAa,GAAGf,MAAMa,mBAAmB;wBAAEC,SAAAA;wBAASC,KAAKgB,EAAEhB,GAAG;oBAAC;iBAC7G;YAAC;QACJ;;IACA,IAAM+B,mCAA2B3B,qBAAAA,+BAAAA,SAAUjF,wBAAwB,uCAAI;IACvE,OAAO,aAAa,GAAG+D,MACrB,OACA;QACE,eAAe/b;QACf5D,WAAW;QACXP,UAAU;YACPD,CAAAA,SAAS0hB,WAAU,KAAM,aAAa,GAAGvB,MAAM,OAAO;gBAAE3f,WAAW;gBAAQP,UAAU;oBACpFD,SAAS,aAAa,GAAGkgB,MACvB,MACA;wBACE1f,WAAW;wBACXmC,OAAO;4BAAE8b,YAAYsD;wBAAuB;wBAC5C9hB,UAAUD;oBACZ;oBAEF0hB,eAAe,aAAa,GAAGxB,MAC7B,KACA;wBACE1f,WAAW;wBACXmC,OAAO;4BAAE8b,YAAYuD;wBAA6B;wBAClD/hB,UAAUyhB;oBACZ;iBAEH;YAAC;YACF,aAAa,GAAGxB,MAAM,OAAO;gBAAE1f,WAAW;gBAA6DP,UAAU,aAAa,GAAGigB,MAAM,OAAO;oBAAE1f,WAAW;oBAAiBP,UAAU,aAAa,GAAGkgB,MAAM,SAAS;wBAAE3f,WAAW;wBAAsCP,UAAU;4BAChR,aAAa,GAAGigB,MAAM,SAAS;gCAAE1f,WAAW;gCAAgDP,UAAU,aAAa,GAAGigB,MAAM,MAAM;oCAAEjgB,UAAU+gB,QAAQpJ,GAAG,CAAC,SAACqL;+CAAW,aAAa,GAAG/C,MACpL,MACA;4CACE1f,WAAW;4CACXP,UAAUgjB,OAAOta,KAAK;wCACxB,GACAsa,OAAO/a,GAAG;;gCACT;4BAAG;4BACN,aAAa,GAAGiY,MAAM,SAAS;gCAAE3f,WAAW;gCAAYP,UAAU;oCAChE2hB,KAAKzK,MAAM,KAAK,KAAK,aAAa,GAAG+I,MAAM,MAAM;wCAAEjgB,UAAU,aAAa,GAAGigB,MAC3E,MACA;4CACEgD,SAASlC,QAAQ7J,MAAM;4CACvB3W,WAAW;4CACXP,UAAU;wCACZ;oCACA;oCACF2hB,KAAKhK,GAAG,CAAC,SAACqJ,KAAK7D;wCACb,IAAM+F,WAAWP,cAAc3B,KAAK7D;wCACpC,IAAMgG,QAAQ7B,WAAWA,SAASN,KAAK7D,SAASA;wCAChD,OAAO,aAAa,GAAG8C,MACrB,MACA;4CACEzf,SAAS,SAATA;uDAAe2hB,eAAenB,KAAK7D;;4CACnC5c,WAAW,AAAC,yEAAyG,OAAjC2iB,WAAW,mBAAmB;4CAClHljB,UAAU+gB,QAAQpJ,GAAG,CAAC,SAACqL;uDAAW,aAAa,GAAG/C,MAChD,MACA;oDACE1f,WAAW;oDACXP,UAAUogB,gBACRY,GAAG,CAACgC,OAAO/a,GAAG,CAAC;gDAEnB,GACA+a,OAAO/a,GAAG;;wCAEd,GACA2C,OAAOuY;oCAEX;iCACD;4BAAC;yBACH;oBAAC;gBAAG;YAAG;YACRvH,KAAK1E,MAAM,GAAG,KAAK,aAAa,GAAGgJ,MAAM,OAAO;gBAAE3f,WAAW;gBAAQP,UAAU;oBAC7E,aAAa,GAAGkgB,MAAM,OAAO;wBAAE3f,WAAW;wBAA0CP,UAAU;4BAC5F,aAAa,GAAGkgB,MAAM,MAAM;gCAAE3f,WAAW;gCAAgEP,UAAU;oCACjH;oCACA4b,KAAK1E,MAAM;oCACX;iCACD;4BAAC;4BACFmK,aAAa,aAAa,GAAGpB,MAAM,KAAK;gCAAE1f,WAAW;gCAA0BP,UAAU;4BAA8C;yBACxI;oBAAC;oBACF,aAAa,GAAGigB,MACdtE,iBACA,wCACKyF;wBACHxF,MAAMkH;wBACN/G,eAAesF;wBACfrF,eAAeqF,YAAYuB,oBAAoB,KAAK;wBACpDzG,0BAA0B4G;wBAC1BzG,YAAY,SAAZA,WAAaa;4BACX,IAAMjJ,SAAS0H,IAAI,CAACuB,MAAM;4BAC1B,IAAI,CAACjJ,QAAQ;4BACbuO,eAAevO,OAAOvN,EAAE;wBAC1B;;iBAGL;YAAC;SACH;IACH;AAEJ;AACAua,aAAazgB,WAAW,GAAG;AAE3B,2BAA2B;AAC3B,OAAO2iB,WAAW3jB,YAAY4jB,SAAS,QAAQ,QAAQ;AACvD,SACEC,qBAAqB,EACrBvD,aAAawD,UAAU,QAClB,8BAA8B;AACrC,SAASzc,YAAY0c,SAAS,EAAE5jB,OAAO6jB,KAAK,EAAE5jB,QAAQ6jB,MAAM,QAAQ,oBAAoB;AACxF,IAAIC,QAAQ;QACV5C,gBAAAA,SACAY,aAAAA,MACAiC,aAAAA,MACAC,gBAAAA,SACAC,cAAAA,OACAC,iBAAAA,UACAC,mBAAAA,YACAC,0BAAAA,mBACAC,gBAAAA,SACAC,2BAAAA,sDACAC,oBAAAA,4DAAqB,6CACrBC,sBAAAA,eACAC,wBAAAA,2CACAC,YAAAA,4CAAa,qDACbC,YAAAA,4CAAa,wBACbC,sBAAAA,eACAC,iBAAAA,2CACAC,mBAAAA,0DAAoB;QAAC;QAAY;KAAa,6BAC9CC,gBAAAA,mCACAC,YAAAA,4CAAa,gEACbC,mBAAAA,0DAAoB,gEACpBC,eAAAA,kDAAgB,8BAChBC,yBAAAA,wDACAC,wBAAAA,oEAAyB,qCACzBC,wBAAAA,kDACAC,mBAAAA,0DAAoB,gCACpBC,iCAAAA,0BACAC,oBAAAA;IAEA,IAAoChC,8BAAAA,UAClCsB,iBAAiB,CAAC,EAAE,OADfW,aAA6BjC,eAAjBkC,gBAAiBlC;IAGpC,IAAgDA,+BAAAA,UAAU,WAAnDmC,mBAAyCnC,gBAAvBoC,sBAAuBpC;IAChD,IAAoDA,+BAAAA,UAClD,aAAa,GAAG,IAAIqC,YADfC,qBAA6CtC,gBAAzBuC,wBAAyBvC;IAGpD,IAAMwC,cAAc1B;IACpB,IAAM7a,eAAe,sBAAC9C;QACpBke,qBAAAA,+BAAAA,SAAWle,EAAE0N,MAAM,CAACrF,KAAK,EAAEyW;IAC7B;IACA,IAAMQ,aAAaD,cAAc7S,KAAK+S,GAAG,CAAC,GAAG/S,KAAKgT,IAAI,CAAC,AAAChC,CAAAA,cAAc,CAAA,IAAMF,CAAAA,SAAS,CAAA,MAAO;IAC5F,IAAMmC,cAAcJ,cAAc,OAAOjC,SAAS,YAAYA,OAAO,IAAIA,OAAO,IAAI;IACpF,IAAMsC,WAAW,kBAACxf;QAChB,IAAI,CAACmf,aAAa;QAClB,IAAMM,UAAUnT,KAAK+S,GAAG,CAAC,GAAG/S,KAAKoT,GAAG,CAACN,YAAYpf;QACjDmd,oBAAAA,8BAAAA,QAAUsC;IACZ;IACA,IAAME,oBAAoB;;YAoBtBC,MAAM7P,IAAI,CACR,aAAa,GAAGgN,MACd,UACA;gBACEjjB,SAAS,SAATA;2BAAe0lB,SAASvP;;gBACxBhO,UAAUsd,gBAAgBtP;gBAC1BpW,WAAW,AAAC,oDAAyJ,OAAtG0lB,gBAAgBtP,IAAI,mCAAmC;gBACtH3W,UAAU2W;YACZ,GACAA;QAGN;QA/BA,IAAI,CAACkP,eAAeC,cAAc,GAAG,OAAO;QAC5C,IAAMQ,QAAQ,EAAE;QAChB,IAAMC,WAAW;QACjBD,MAAM7P,IAAI,CACR,aAAa,GAAGgN,MACd,UACA;YACEjjB,SAAS,SAATA;uBAAe0lB,SAAS;;YACxBvd,UAAUsd,gBAAgB;YAC1B1lB,WAAW,AAAC,oDAAyJ,OAAtG0lB,gBAAgB,IAAI,mCAAmC;YACtHjmB,UAAU;QACZ,GACA;QAGJ,IAAM8M,QAAQkG,KAAK+S,GAAG,CAAC,GAAGE,cAAcM;QACxC,IAAMxV,MAAMiC,KAAKoT,GAAG,CAACN,aAAa,GAAGG,cAAcM;QACnD,IAAIzZ,QAAQ,GAAGwZ,MAAM7P,IAAI,CAAC,aAAa,GAAGgN,MAAM,QAAQ;YAAEzjB,UAAU;QAAM,GAAG;QAC7E,IAAK,IAAI2W,IAAI7J,OAAO6J,KAAK5F,KAAK4F;QAc9B,IAAI5F,MAAM+U,aAAa,GAAGQ,MAAM7P,IAAI,CAAC,aAAa,GAAGgN,MAAM,QAAQ;YAAEzjB,UAAU;QAAM,GAAG;QACxF,IAAI8lB,aAAa,GAAG;YAClBQ,MAAM7P,IAAI,CACR,aAAa,GAAGgN,MACd,UACA;gBACEjjB,SAAS,SAATA;2BAAe0lB,SAASJ;;gBACxBnd,UAAUsd,gBAAgBH;gBAC1BvlB,WAAW,AAAC,oDAAkK,OAA/G0lB,gBAAgBH,aAAa,mCAAmC;gBAC/H9lB,UAAU8lB;YACZ,GACAA;QAGN;QACA,OAAOQ;IACT;IACA,IAAME,qBAAqBxB,oBAAoBH;IAC/C,IAAM4B,aAAa,oBAAC5X,OAAO5G;QACzB,IAAI4G,SAAS,MAAM,OAAO;QAC1B,IAAIuU,QAAQ/C,cAAc,CAACxR,QAAQ,OAAOA;QAC1C,IAAI,OAAOA,UAAU,WAAW,OAAOA,QAAQ,QAAQ;QACvD,IAAIA,AAAK,YAALA,OAAiB3C,OAAM,OAAO2C,MAAM6R,cAAc;QACtD,IAAI1J,MAAMsJ,OAAO,CAACzR,QAAQ;YACxB,IAAIA,MAAM0R,IAAI,CAAC,SAACmG;uBAAStD,QAAQ/C,cAAc,CAACqG;gBAAQ,OAAO,aAAa,GAAGjD,MAAMD,WAAW;gBAAExjB,UAAU6O;YAAM;YAClH,OAAOA,MAAM4R,IAAI,CAAC;QACpB;QACA,IAAI,CAAA,OAAO5R,sCAAP,SAAOA,MAAI,MAAM,UAAU,OAAO+R,KAAKC,SAAS,CAAChS;QACrD,IAAI,OAAOA,UAAU,UAAU;YAC7B,IAAIqW,4BAAAA,sCAAAA,gBAAiB1c,QAAQ,CAACP,MAAM;oBACtBmd;gBAAZ,IAAMW,OAAMX,gBAAAA,qCAAAA,+CAAAA,wBAA0B,CAACnd,IAAI,yCAAIkd,+BAAnCC,kBAAAA,OAAwD;gBACpE,IAAMuB,YAAY9X,MAAMqI,MAAM,IAAI6O,MAAMlX,QAAQA,MAAM+X,SAAS,CAAC,GAAGb,OAAO;gBAC1E,OAAO,aAAa,GAAGtC,MACrB,OACA;oBACEljB,WAAW;oBACXR,OAAO8O;oBACP7O,UAAU2mB;gBACZ;YAEJ;QACF;QACA,OAAO/b,OAAOiE;IAChB;IACA,OAAO,aAAa,GAAG6U,OAAOF,WAAW;QAAExjB,UAAU;YAClDukB,CAAAA,cAAcD,mBAAmBD,aAAY,KAAM,aAAa,GAAGX,OAAO,OAAO;gBAAEnjB,WAAW;gBAA6CP,UAAU;oBACpJukB,cAAc,aAAa,GAAGb,OAAO,OAAO;wBAAEnjB,WAAW;wBAA2BP,UAAU;4BAC5F,aAAa,GAAG0jB,OAAO,OAAO;gCAAEnjB,WAAW;gCAAYP,UAAU;oCAC/D,aAAa,GAAGyjB,MACd,SACA;wCACE5U,OAAO2V;wCACPnb,UAAUC;wCACVoG,aAAa;wCACbnP,WAAW;oCACb;oCAEFikB,cAAc,aAAa,GAAGf,MAC5B,UACA;wCACEjjB,SAASikB;wCACTlkB,WAAW;wCACXP,UAAU,aAAa,GAAGyjB,MAAMF,YAAY;4CAAEhjB,WAAW;wCAAU;oCACrE;iCAEH;4BAAC;4BACF,aAAa,GAAGkjB,MACd,UACA;gCACE5U,OAAOyW;gCACPjc,UAAU,SAAVA,SAAW7C;2CAAM+e,cAAc/e,EAAE0N,MAAM,CAACrF,KAAK;;gCAC7CtO,WAAW;gCACXP,UAAU2kB,kBAAkBhN,GAAG,CAAC,SAACkP;2CAAS,aAAa,GAAGpD,MAAM,UAAU;wCAAE5U,OAAOgY;wCAAM7mB,UAAU6mB,SAAS,eAAe,gBAAgB;oCAAW,GAAGA;;4BAC3J;yBAEH;oBAAC;oBACDxC,CAAAA,iBAAiBC,eAAc,KAAM,aAAa,GAAGZ,OAAO,OAAO;wBAAEnjB,WAAW;wBAAcP,UAAU;4BACvGqkB,iBAAiB,aAAa,GAAGZ,MAC/B,UACA;gCACEjjB,SAAS,SAATA;2CAAe6jB,cAAc1C,MAAMZ;;gCACnCxgB,WAAW;gCACXP,UAAU,aAAa,GAAGyjB,MAAMH,uBAAuB;oCAAE/iB,WAAW;gCAAU;4BAChF;4BAEF+jB,mBAAmB,aAAa,GAAGb,MACjC,UACA;gCACEjjB,SAAS,SAATA;2CAAe8jB,gBAAgB3C,MAAMZ;;gCACrCxgB,WAAW;gCACXP,UAAU;4BACZ;yBAEH;oBAAC;iBACH;YAAC;YACF,aAAa,GAAGyjB,MACd,OACA;gBACEljB,WAAW;gBACX,eAAe8kB;gBACfrlB,UAAU,aAAa,GAAG0jB,OAAO,SAAS;oBAAEnjB,WAAW;oBAAoCP,UAAU;wBACnG,aAAa,GAAGyjB,MAAM,SAAS;4BAAEljB,WAAW;4BAAgDP,UAAU,aAAa,GAAG0jB,OAAO,MAAM;gCAAE1jB,UAAU;oCAC7I+gB,QAAQpJ,GAAG,CAAC,SAACqL,QAAQ8D;+CAAQ,aAAa,GAAGrD,MAC3C,MACA;4CACEljB,WAAW;4CACXP,UAAUgjB,OAAOta,KAAK;wCACxB,GACAoe;;oCAEF5C,WAAW,aAAa,GAAGT,MAAM,MAAM;wCAAEljB,WAAW;wCAAkCP,UAAU;oCAAU;iCAC3G;4BAAC;wBAAG;wBACL,aAAa,GAAGyjB,MAAM,SAAS;4BAAEzjB,UAAU2hB,KAAKzK,MAAM,GAAG,IAAIyK,KAAKhK,GAAG,CAAC,SAACqJ,KAAKkB;gCAC1E,IAAM6E,aAAanC,YAAY,WAAWY,qBAAqBtD,WAAWyD,mBAAmBqB,GAAG,CAAC9E;gCACjG,IAAM+E,YAAY;oCAChB,IAAI,CAACrC,SAAS;oCACd,IAAIA,YAAY,UAAU;wCACxBa,oBAAoB,SAAClM;mDAASA,SAAS2I,WAAW,OAAOA;;oCAC3D,OAAO;wCACL0D,sBAAsB,SAACrM;4CACrB,IAAMiJ,OAAO,IAAIkD,IAAInM;4CACrBiJ,KAAKwE,GAAG,CAAC9E,YAAYM,KAAK0E,MAAM,CAAChF,YAAYM,KAAK2E,GAAG,CAACjF;4CACtD,OAAOM;wCACT;oCACF;gCACF;gCACA,OAAO,aAAa,GAAGkB,OAAON,QAAQtc,QAAQ,EAAE;oCAAE9G,UAAU;wCAC1D,aAAa,GAAG0jB,OACd,MACA;4CACEljB,SAASymB;4CACT1mB,WAAW;4CACXmC,OAAOuhB,oBAAoB;gDAAEze,iBAAiBye;4CAAkB,IAAI,KAAK;4CACzEjkB,UAAU;gDACR+gB,QAAQpJ,GAAG,CAAC,SAACqL,QAAQrM;2DAAM,aAAa,GAAG8M,MAAM,MAAM;wDAAEljB,WAAW;wDAA6FP,UAAUymB,WAAWzF,GAAG,CAACgC,OAAO/a,GAAG,CAAC,EAAE+a,OAAO/a,GAAG;oDAAE,GAAG0O;;gDACtNuN,WAAW,aAAa,GAAGT,MAAM,MAAM;oDAAEljB,WAAW;oDAAyBP,UAAUkkB,QAAQlD;gDAAK;6CACrG;wCACH;wCAEF4D,WAAWmC,cAAc,aAAa,GAAGtD,MAAM,MAAM;4CAAEzjB,UAAU,aAAa,GAAGyjB,MAC/E,MACA;gDACER,SAASlC,QAAQ7J,MAAM,GAAIgN,CAAAA,UAAU,IAAI,CAAA;gDACzC3jB,WAAW;gDACXP,UAAUghB,GAAG,CAAC6D,WAAW;4CAC3B;wCACA;qCACH;gCAAC,GAAG3C;4BACP,KAAK,aAAa,GAAGuB,MAAM,MAAM;gCAAEzjB,UAAU,aAAa,GAAGyjB,MAC3D,MACA;oCACER,SAASlC,QAAQ7J,MAAM,GAAIgN,CAAAA,UAAU,IAAI,CAAA;oCACzC3jB,WAAW;oCACXP,UAAU;gCACZ;4BACA;wBAAG;qBACN;gBAAC;YACJ;YAEFmkB,sBAAsB2B,aAAa,KAAK,aAAa,GAAGpC,OAAO,OAAO;gBAAEnjB,WAAW;gBAA+CP,UAAU;oBAC1I,aAAa,GAAGyjB,MACd,UACA;wBACEjjB,SAAS,SAATA;mCAAe0lB,SAASD,cAAc;;wBACtCtd,UAAUsd,gBAAgB;wBAC1B1lB,WAAW;wBACXP,UAAU;oBACZ;oBAEFqmB;oBACA,aAAa,GAAG5C,MACd,UACA;wBACEjjB,SAAS,SAATA;mCAAe0lB,SAASD,cAAc;;wBACtCtd,UAAUsd,gBAAgBH;wBAC1BvlB,WAAW;wBACXP,UAAU;oBACZ;iBAEH;YAAC;SACH;IAAC;AACJ;AAEA,gDAAgD;AAChD,SAASonB,WAAWC,QAAQ,EAAE5nB,YAAY6nB,UAAU,QAAQ,QAAQ;AAEpE,mCAAmC;AACnC,SAASvf,aAAawf,UAAU,EAAEH,OAAO,EAAE3d,UAAU+d,OAAO,EAAE/nB,YAAYgoB,SAAS,QAAQ,QAAQ;AACnG,SAAS7nB,OAAO8nB,KAAK,EAAE7nB,QAAQ8nB,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,WAAW,kBAAC3a;IACd,IAAI,OAAOA,MAAM,UAAU,OAAOA;IAClC,IAAM4a,OAAO5a;IACb,IAAI,QAAO4a,iBAAAA,2BAAAA,KAAMC,GAAG,MAAK,UAAU,OAAOD,KAAKC,GAAG;IAClD,IAAM5a,IAAI2a,iBAAAA,2BAAAA,KAAMjlB,OAAO;IACvB,IAAI,OAAOsK,MAAM,UAAU,OAAOA;IAClC,IAAI,QAAOA,cAAAA,wBAAAA,EAAG4a,GAAG,MAAK,UAAU,OAAO5a,EAAE4a,GAAG;IAC5C,OAAO;AACT;AACA,IAAIC,gBAAgBrpB;AACpB,IAAIspB,oBAAoB,2BAACvkB;IACvB,IAAMwkB,OAAO;IACb,OAAQxkB;QACN,KAAK;YACH,OAAO,AAAC,GAAO,OAALwkB,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB,KAAK;YACH,OAAO,AAAC,GAAO,OAALA,MAAK;QACjB;YACE,OAAO,AAAC,GAAO,OAALA,MAAK;IACnB;AACF;AACA,IAAIC,iBAAiB,wBAACzkB;IACpB,IAAMwkB,OAAO;IACb,IAAIxkB,YAAY,gBAAgB;QAC9B,OAAO,AAAC,GAAO,OAALwkB,MAAK;IACjB;IACA,OAAO,AAAC,GAAO,OAALA,MAAK;AACjB;AACA,IAAIE,mBAAmB,0BAAC1kB,SAAS2S;IAC/B,IAAM6R,OAAO;IACb,IAAIxkB,YAAY,gBAAgB;QAC9B,OAAO,AAAC,GAAuF2S,OAArF6R,MAAK,kFAAqI,OAArD7R,aAAa,6BAA6B,YAAW;IACtJ;IACA,OAAO,AAAC,GAAoDA,OAAlD6R,MAAK,+CAAkG,OAArD7R,aAAa,6BAA6B,YAAW;AACnH;AACA,IAAIgS,gBAAgB;QAClBlO,gBAAAA,SACArL,cAAAA,OACAkQ,iBAAAA,UACArW,cAAAA,8BACAjF,SAAAA,sCAAU,0BACVlD,kBAAAA,WACA4D,eAAAA;IAEA,IAA4BsjB,8BAAAA,UAAU,YAA/BngB,SAAqBmgB,eAAbvW,YAAauW;IAC5B,IAA0CA,+BAAAA,UAAU5Y,YAA7CwZ,gBAAmCZ,gBAApBa,mBAAoBb;IAC1C,IAAMrN,cAAcoN,QAAQ;IAC5BD,WAAW;QACT,IAAI1Y,UAAU,KAAK,GAAGyZ,iBAAiBzZ;IACzC,GAAG;QAACA;KAAM;IACV,IAAM0Z,eAAe1Z,UAAU,KAAK,IAAIA,QAAQwZ;IAChD,IAAMnJ,iBAAiBkI,QACrB;eAAMlN,QAAQM,IAAI,CAAC,SAACT;mBAAQA,IAAIlL,KAAK,KAAK0Z;;OAC1C;QAACrO;QAASqO;KAAa;IAEzBhB,WAAW;QACT,IAAMxT,qBAAqB,4BAACC;YAC1B,IAAIoG,YAAYjH,OAAO,IAAI,CAACiH,YAAYjH,OAAO,CAACc,QAAQ,CAACD,MAAME,MAAM,GAAG;gBACtEhD,UAAU;YACZ;QACF;QACAhJ,SAASC,gBAAgB,CAAC,aAAa4L;QACvC,OAAO;mBAAM7L,SAASE,mBAAmB,CAAC,aAAa2L;;IACzD,GAAG,EAAE;IACL,IAAMoL,eAAe,sBAACqJ;QACpBzJ,SAASyJ;QACT,IAAI3Z,UAAU,KAAK,GAAG;YACpByZ,iBAAiBE;QACnB;QACAtX,UAAU;IACZ;IACA,OAAO,aAAa,GAAGyW,OACrB,OACA;QACEnlB,KAAK4X;QACL7Z,WAAW,AAAC,yBAAwC,OAAhBA,aAAa;QACjD,eAAe4D;QACfnE,UAAU;YACR0I,SAAS,aAAa,GAAGgf,MAAM,SAAS;gBAAEnnB,WAAW;gBAA0DP,UAAU0I;YAAM;YAC/H,aAAa,GAAGif,OACd,UACA;gBACEphB,MAAM;gBACNhG,WAAWynB,kBAAkBvkB;gBAC7BjD,SAAS,SAATA;2BAAe0Q,UAAU,CAAC5J;;gBAC1BmhB,WAAW,SAAXA,UAAYjiB;oBACV,IAAIA,EAAEyB,GAAG,KAAK,WAAWzB,EAAEyB,GAAG,KAAK,KAAK;wBACtCzB,EAAE8W,cAAc;wBAChBpM,UAAU,CAAC5J;oBACb;gBACF;gBACA,iBAAiB;gBACjB,iBAAiBA;gBACjBtH,UAAU;oBACR,aAAa,GAAG0nB,MAAM,QAAQ;wBAAEnnB,WAAW;wBAAmDP,UAAUkf,CAAAA,2BAAAA,qCAAAA,eAAgBjX,GAAG,KAAI;oBAAY;oBAC3I,aAAa,GAAGyf,MACd,OACA;wBACEI,KAAKF,SAASG;wBACdW,KAAK;wBACLnoB,WAAW;oBACb;iBAEH;YACH;YAEF+G,UAAU,aAAa,GAAGogB,MAAM,OAAO;gBAAEnnB,WAAW2nB,eAAezkB;gBAAU8E,MAAM;gBAAWvI,UAAUka,QAAQvC,GAAG,CAAC,SAACyH;2BAAW,aAAa,GAAGsI,MAC9I,UACA;wBACEnhB,MAAM;wBACNhG,WAAW4nB,iBAAiB1kB,SAAS2b,OAAOvQ,KAAK,KAAK0Z;wBACtD/nB,SAAS,SAATA;mCAAe2e,aAAaC,OAAOvQ,KAAK;;wBACxCtG,MAAM;wBACN,iBAAiB6W,OAAOvQ,KAAK,KAAK0Z;wBAClCvoB,UAAUof,OAAOnX,GAAG;oBACtB,GACAmX,OAAOnX,GAAG;;YACT;SACJ;IACH;AAEJ;AACAmgB,cAAc3nB,WAAW,GAAG;AAE5B,qCAAqC;AACrC,OAAOkoB,aAAa,QAAQ;AAC5B,SACEC,SAASC,OAAO,EAChBC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,aAAa,EACbC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,UAAU,EACVC,MAAM,QACD,WAAW;AAClB,SAASC,QAAQ,EAAEC,IAAI,EAAEC,GAAG,QAAQ,kBAAkB;AACtD,SAAS7pB,OAAO8pB,KAAK,QAAQ,oBAAoB;AACjDb,QAAQc,QAAQ,CACdb,YACAC,SACAC,QACAC,eACAC,aACAC,cACAC,aACAC,YACAC;AAEF,IAAIM,uBAAuB,8BAACjI;IAC1B,IAAMkI,WAAW7S,MAAMsJ,OAAO,CAACqB,KAAKkI,QAAQ,IAAIlI,KAAKkI,QAAQ,GAAG,EAAE;IAClE,OAAO,wCACFlI;QACHkI,UAAUA,SAASlS,GAAG,CAAC,SAACmS;mBAAQ,wCAC3BA;gBACHC,SAAS;gBACTC,wBAAwB;;;;AAG9B;AACA,IAAIC,kBAAkB;QACpBC,kBAAAA,WACAvI,aAAAA,MACAzH,gBAAAA;IAEA,IAAMiQ,iBAAiBxB,QAAQvB,OAAO,CAAC;QACrC,IAAMgD,eAAeF,cAAc,UAAUA,cAAc;QAC3D,IAAIE,cAAc;YAChB,OAAO;gBACLC,YAAY;gBACZC,qBAAqB;gBACrBC,UAAU;oBAAEC,MAAM;wBAAET,SAAS;oBAAE;gBAAE;gBACjCU,SAAS;oBACPC,QAAQ;wBAAEC,SAAS;oBAAM;oBACzBC,SAAS;wBACP/D,MAAM;wBACNgE,WAAW;wBACXrlB,iBAAiB;wBACjBslB,YAAY;wBACZC,WAAW;wBACXC,aAAa;wBACbC,aAAa;wBACb3S,SAAS;wBACT4S,eAAe;oBACjB;gBACF;gBACAC,QAAQ;oBACNC,GAAG;wBACDC,MAAM;4BAAEV,SAAS;4BAAMvmB,OAAO;4BAAuBknB,YAAY;wBAAM;wBACvEC,OAAO;4BAAEnnB,OAAO;4BAAuBoX,MAAM;gCAAE9X,MAAM;4BAAG;wBAAE;oBAC5D;oBACAsJ,GAAG;wBACDqe,MAAM;4BAAEV,SAAS;4BAAMvmB,OAAO;4BAAuBknB,YAAY;wBAAM;wBACvEC,OAAO;4BAAEnnB,OAAO;4BAAuBoX,MAAM;gCAAE9X,MAAM;4BAAG;wBAAE;wBAC1D0iB,KAAK;wBACLL,KAAK;oBACP;gBACF;gBACAyF,aAAa;oBAAE3E,MAAM;oBAAW4E,MAAM;oBAAKZ,WAAW;gBAAM;YAC9D;QACF;QACA,OAAO;YACLR,YAAY;YACZC,qBAAqB;YACrBoB,QAAQxB,cAAc,SAASA,cAAc,aAAa,QAAQ,KAAK;YACvEO,SAAS;gBAAEC,QAAQ;oBAAEC,SAAS;gBAAM;YAAE;QACxC;IACF,GAAG;QAACT;KAAU;IACd,IAAMyB,eAAezR,WAAWiQ;IAChC,IAAMyB,cAAc;QAClB,OAAQ1B;YACN,KAAK;YACL,KAAK;gBACH,OAAO,aAAa,GAAGR,MAAMF,MAAM;oBAAE7H,MAAAA;oBAAMzH,SAASyR;gBAAa,GAAGzB;YACtE,KAAK;gBACH,OAAO,aAAa,GAAGR,MAAMD,KAAK;oBAAE9H,MAAAA;oBAAMzH,SAASyR;gBAAa,GAAGzB;YACrE,KAAK;YACL,KAAK;gBACH,OAAO,aAAa,GAAGR,MAAMH,UAAU;oBAAE5H,MAAAA;oBAAMzH,SAASyR;gBAAa,GAAGzB;YAC1E;gBACE,OAAO;QACX;IACF;IACA,OAAO,aAAa,GAAGR,MAAM,OAAO;QAAEnpB,WAAW;QAA2DP,UAAU4rB;IAAc;AACtI;AACA3B,gBAAgBxpB,WAAW,GAAG;AAE9B,iCAAiC;AACjC,SAASb,OAAOisB,KAAK,EAAEhsB,QAAQisB,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,cAAc;QAAGhsB,cAAAA,OAAOisB,gBAAAA,SAAS7nB,eAAAA;IACnC,OAAO,aAAa,GAAG2nB,OAAO,OAAO;QAAEvrB,WAAW;QAA+B,eAAe4D;QAAQnE,UAAU;YAChH,aAAa,GAAG6rB,MAAM,OAAO;gBAAEtrB,WAAW;gBAAwGP,UAAUD;YAAM;YAClK,aAAa,GAAG8rB,MAAM,OAAO;gBAAEtrB,WAAW;gBAA+CP,UAAUgsB,QAAQrU,GAAG,CAAC,SAAC/K;oBAC9G,IAAMqf,qBAAqBjZ,KAAKC,KAAK,CAACrG,EAAEsf,QAAQ,GAAGtf,EAAEsH,MAAM,GAAG;oBAC9D,IAAMiY,gBAAgBnZ,KAAKoT,GAAG,CAACxZ,EAAEsf,QAAQ,GAAGtf,EAAEsH,MAAM,GAAG,KAAK;oBAC5D,IAAMkY,iBAAiBpZ,KAAKoT,GAAG,CAACxZ,EAAEyf,MAAM,GAAGzf,EAAEsH,MAAM,GAAG,KAAK;oBAC3D,OAAO,aAAa,GAAG4X,OACrB,OACA;wBACEvrB,WAAW;wBACX,eAAe4D,SAAS,AAAC,GAAiByI,OAAfzI,QAAO,UAAe,OAAPyI,EAAE1L,IAAI,IAAK,KAAK;wBAC1DlB,UAAU;4BACR,aAAa,GAAG6rB,MAAM,OAAO;gCAAEtrB,WAAW;gCAAsGP,UAAU4M,EAAE1L,IAAI;4BAAC;4BACjK,aAAa,GAAG4qB,OAAO,OAAO;gCAAEvrB,WAAW;gCAA4DP,UAAU;oCAC/G,aAAa,GAAG8rB,OAAO,OAAO;wCAAEvrB,WAAW;wCAAgCP,UAAU;4CACnF,aAAa,GAAG8rB,OAAO,OAAO;gDAAEvrB,WAAW;gDAAuIP,UAAU;oDAC1L;oDACA4M,EAAEsf,QAAQ,CAACxL,cAAc;oDACzB;oDACA9T,EAAEsH,MAAM,CAACwM,cAAc;iDACxB;4CAAC;4CACF,aAAa,GAAGoL,OAAO,OAAO;gDAAEvrB,WAAW;gDAAiFP,UAAU;oDACpI,aAAa,GAAG6rB,MACd,OACA;wDACEtrB,WAAW;wDACXmC,OAAO;4DAAE4B,OAAO,AAAC,GAAgB,OAAd6nB,eAAc;wDAAG;wDACpC,eAAehoB,SAAS,AAAC,GAAgByI,OAAdzI,QAAO,SAAc,OAAPyI,EAAE1L,IAAI,IAAK,KAAK;oDAC3D;oDAEF,aAAa,GAAG2qB,MACd,OACA;wDACEtrB,WAAW;wDACXmC,OAAO;4DAAEmY,MAAM,AAAC,GAAiB,OAAfuR,gBAAe;4DAAI7U,WAAW;wDAAmB;wDACnE,eAAepT,SAAS,AAAC,GAAmByI,OAAjBzI,QAAO,YAAiB,OAAPyI,EAAE1L,IAAI,IAAK,KAAK;oDAC9D;iDAEH;4CAAC;4CACF,aAAa,GAAG2qB,MAAM,OAAO;gDAAEtrB,WAAW;gDAAqCP,UAAU,aAAa,GAAG8rB,OAAO,OAAO;oDAAEvrB,WAAW;oDAAoCP,UAAU;wDAChL,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGP,UAAU;wDAAI;wDAChK,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGmC,OAAO;gEAAE4pB,YAAY;4DAAO;4DAAGtsB,UAAU;wDAAK;wDAChM,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGmC,OAAO;gEAAE4pB,YAAY;4DAAO;4DAAGtsB,UAAU;wDAAK;wDAChM,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGmC,OAAO;gEAAE4pB,YAAY;4DAAO;4DAAGtsB,UAAU;wDAAK;wDAChM,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGmC,OAAO;gEAAE4pB,YAAY;4DAAO;4DAAGtsB,UAAU;wDAAK;wDAChM,aAAa,GAAG6rB,MAAM,QAAQ;4DAAEtrB,WAAW;4DAAuGmC,OAAO;gEAAE4pB,YAAY;4DAAO;4DAAGtsB,UAAU;wDAAM;qDAClM;gDAAC;4CAAG;yCACN;oCAAC;oCACF,aAAa,GAAG8rB,OACd,OACA;wCACEvrB,WAAW;wCACX,eAAe4D,SAAS,AAAC,GAAuByI,OAArBzI,QAAO,gBAAqB,OAAPyI,EAAE1L,IAAI,IAAK,KAAK;wCAChElB,UAAU;4CACRisB;4CACA;yCACD;oCACH;iCAEH;4BAAC;yBACH;oBACH,GACArf,EAAE1L,IAAI;gBAEV;YAAG;SACJ;IAAC;AACJ;AACA6qB,YAAYtrB,WAAW,GAAG;AAE1B,gCAAgC;AAChC,SAASb,OAAO2sB,KAAK,EAAE1sB,QAAQ2sB,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,aAAa;QAAG1sB,cAAAA,OAAO2sB,eAAAA,QAAQvoB,eAAAA;IACjC,OAAO,aAAa,GAAGqoB,OAAO,OAAO;QAAEjsB,WAAW;QAA+B,eAAe4D;QAAQnE,UAAU;YAChH,aAAa,GAAGusB,MACd,OACA;gBACEhsB,WAAW;gBACXmC,OAAO;oBACL0B,OAAO;oBACPoa,YAAY;oBACZ9H,UAAU;oBACViW,YAAY;gBACd;gBACA3sB,UAAUD;YACZ;YAEF,aAAa,GAAGwsB,MAAM,OAAO;gBAAEhsB,WAAW;gBAAwBP,UAAU0sB,OAAO/U,GAAG,CAAC,SAACiV,OAAOzP;oBAC7F,IAAM0P,aAAa7Z,KAAKoT,GAAG,CAACwG,MAAM/d,KAAK,GAAG+d,MAAM7G,GAAG,GAAG,KAAK;oBAC3D,IAAM+G,QAAQD,aAAa,MAAM,MAAM;oBACvC,IAAME,YAAYH,MAAM7G,GAAG,GAAG6G,MAAM/d,KAAK;oBACzC,IAAMme,WAAWha,KAAKC,KAAK,CAAC2Z,MAAM/d,KAAK,GAAG;oBAC1C,OAAO,aAAa,GAAG2d,OAAO,OAAO;wBAAEjsB,WAAW;wBAAUP,UAAU;4BACpE,aAAa,GAAGwsB,OAAO,OAAO;gCAAEjsB,WAAW;gCAA4CP,UAAU;oCAC/F,aAAa,GAAGwsB,OACd,OACA;wCACEjsB,WAAW;wCACXmC,OAAO;4CAAE2B,QAAQ;wCAAQ;wCACzBrE,UAAU;4CACR,aAAa,GAAGwsB,OAAO,OAAO;gDAAEjsB,WAAW;gDAAiB0sB,SAAS;gDAAejtB,UAAU;oDAC5F,aAAa,GAAGusB,MAAM,QAAQ;wDAAEvsB,UAAU,aAAa,GAAGwsB,OAAO,kBAAkB;4DAAE7lB,IAAI,AAAC,gBAAqB,OAANwW;4DAAS+P,IAAI;4DAAMC,IAAI;4DAAMC,IAAI;4DAAQC,IAAI;4DAAMrtB,UAAU;gEACpK,aAAa,GAAGusB,MAAM,QAAQ;oEAAEe,QAAQ;oEAAMC,WAAW;gEAAoB;gEAC7E,aAAa,GAAGhB,MAAM,QAAQ;oEAAEe,QAAQ;oEAAQC,WAAW;gEAAqB;6DACjF;wDAAC;oDAAG;oDACL,aAAa,GAAGhB,MACd,QACA;wDACErf,GAAG;wDACHsgB,MAAM;wDACNC,QAAQ;wDACRhlB,aAAa;wDACbilB,eAAe;oDACjB;oDAEF,aAAa,GAAGnB,MACd,QACA;wDACErf,GAAG;wDACHsgB,MAAM;wDACNC,QAAQ,AAAC,qBAA0B,OAANtQ,OAAM;wDACnC1U,aAAa;wDACbilB,eAAe;wDACfhrB,OAAO;4DAAEirB,YAAY;wDAAuB;wDAC5CC,iBAAiB,AAAC,GAA2B,OAAzBf,aAAa,MAAM,OAAM;oDAC/C;oDAEF;wDACE;4DAAEzB,GAAG;4DAAIpe,GAAG;4DAAKgV,GAAG;wDAAI;wDACxB;4DAAEoJ,GAAG;4DAAIpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACxB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACzB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACzB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAKgV,GAAG;wDAAM;qDAC5B,CAACrK,GAAG,CAAC;4DAAGyT,UAAAA,GAAGpe,UAAAA,GAAGgV,UAAAA;+DAAQ,aAAa,GAAGuK,MACrC,QACA;4DACEnB,GAAAA;4DACApe,GAAAA;4DACAtK,OAAO;gEACL8b,YAAY;gEACZ9H,UAAU;gEACViW,YAAY;gEACZa,MAAM;4DACR;4DACAxtB,UAAUgiB;wDACZ,GACAA;;oDAEF,aAAa,GAAGwK,OAAO,KAAK;wDAAEjV,WAAW;wDAAsBvX,UAAU;4DACvE,aAAa,GAAGusB,MAAM,QAAQ;gEAAEvsB,UAAU,aAAa,GAAGwsB,OACxD,kBACA;oEACE7lB,IAAI,AAAC,iBAAsB,OAANwW;oEACrB+P,IAAI;oEACJC,IAAI;oEACJC,IAAI;oEACJC,IAAI;oEACJQ,eAAe;oEACf7tB,UAAU;wEACR,aAAa,GAAGusB,MAAM,QAAQ;4EAAEe,QAAQ;4EAAMC,WAAW;4EAAqBO,aAAa;wEAAM;wEACjG,aAAa,GAAGvB,MAAM,QAAQ;4EAAEe,QAAQ;4EAAQC,WAAW;4EAAsBO,aAAa;wEAAM;qEACrG;gEACH;4DACA;4DACF,aAAa,GAAGvB,MACd,QACA;gEACErf,GAAG;gEACHsgB,MAAM,AAAC,sBAA2B,OAANrQ,OAAM;4DACpC;yDAEH;oDAAC;oDACF,aAAa,GAAGoP,MACd,QACA;wDACEnB,GAAG;wDACHpe,GAAG;wDACH+gB,YAAY;wDACZrrB,OAAO;4DAAE8b,YAAY;4DAAuB9H,UAAU;4DAAQiW,YAAY;4DAAKa,MAAM;wDAAsB;wDAC3GxtB,UAAU;oDACZ;oDAEF,aAAa,GAAGwsB,OACd,QACA;wDACEpB,GAAG;wDACHpe,GAAG;wDACH+gB,YAAY;wDACZrrB,OAAO;4DAAE8b,YAAY;4DAAuB9H,UAAU;4DAAQiW,YAAY;4DAAKa,MAAM;wDAAgB;wDACrGxtB,UAAU;4DACRgT,KAAKC,KAAK,CAAC4Z;4DACX;yDACD;oDACH;oDAEF,aAAa,GAAGN,MAAM,KAAK;wDAAEhV,WAAW;wDAAuBvX,UAAU,aAAa,GAAGusB,MACvF,KACA;4DACE7pB,OAAO;gEACLirB,YAAY;gEACZpW,WAAW,AAAC,UAAe,OAANuV,OAAM;gEAC3BkB,iBAAiB;4DACnB;4DACAhuB,UAAU,aAAa,GAAGusB,MAAM,QAAQ;gEAAErf,GAAG;gEAAmCsgB,MAAM;4DAAmB;wDAC3G;oDACA;iDACH;4CAAC;4CACF,aAAa,GAAGhB,OACd,OACA;gDACEjsB,WAAW;gDACXmC,OAAO;oDACL0B,OAAO;oDACPoa,YAAY;oDACZ9H,UAAU;oDACViW,YAAY;gDACd;gDACA3sB,UAAU;oDACR;oDACAgT,KAAKC,KAAK,CAAC4Z;oDACX;iDACD;4CACH;yCAEH;oCACH;oCAEF,aAAa,GAAGL,OAAO,OAAO;wCAAEjsB,WAAW;wCAAsCP,UAAU;4CACzF,aAAa,GAAGusB,MAAM,OAAO;gDAAEhsB,WAAW;gDAAyBP,UAAU;oDAC3E;wDAAE0I,OAAO;wDAAUmG,OAAO+d,MAAM7G,GAAG,CAACrF,cAAc;oDAAG;oDACrD;wDAAEhY,OAAO;wDAAYmG,OAAO+d,MAAM/d,KAAK,CAAC6R,cAAc;oDAAG;iDAC1D,CAAC/I,GAAG,CAAC;wDAAGjP,cAAAA,OAAOmG,cAAAA;2DAAY,aAAa,GAAG2d,OAAO,OAAO;wDAAEjsB,WAAW;wDAAiBP,UAAU;4DAChG,aAAa,GAAGusB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAuBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;oEAAKrV,cAAc;gEAAM;gEAAGtX,UAAU0I;4DAAM;4DACpL,aAAa,GAAG6jB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAiBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;gEAAI;gEAAG3sB,UAAU6O;4DAAM;yDAC1J;oDAAC,GAAGnG;;4CAAQ;4CACb,aAAa,GAAG6jB,MAAM,OAAO;gDAAEhsB,WAAW;gDAAeP,UAAU;oDACjE;wDAAE0I,OAAO;wDAAamG,OAAOke,UAAUrM,cAAc;oDAAG;oDACxD;wDAAEhY,OAAO;wDAAoBmG,OAAO,AAAC,GAA4B,OAA1Bme,SAAStM,cAAc,IAAG;oDAAQ;iDAC1E,CAAC/I,GAAG,CAAC;wDAAGjP,cAAAA,OAAOmG,cAAAA;2DAAY,aAAa,GAAG2d,OAAO,OAAO;wDAAEjsB,WAAW;wDAAiBP,UAAU;4DAChG,aAAa,GAAGusB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAuBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;oEAAKrV,cAAc;gEAAM;gEAAGtX,UAAU0I;4DAAM;4DACpL,aAAa,GAAG6jB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAiBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;gEAAI;gEAAG3sB,UAAU6O;4DAAM;yDAC1J;oDAAC,GAAGnG;;4CAAQ;yCACd;oCAAC;iCACH;4BAAC;4BACFyU,QAAQuP,OAAOxV,MAAM,GAAG,KAAK,aAAa,GAAGqV,MAAM,OAAO;gCAAEhsB,WAAW;gCAAcmC,OAAO;oCAAEgC,YAAY;gCAAsB;4BAAE;yBACnI;oBAAC,GAAGyY;gBACP;YAAG;SACJ;IAAC;AACJ;AACAsP,WAAWhsB,WAAW,GAAG;AACzB,IAAIwtB,qBAAqB;IACvB;QAAEvlB,OAAO;QAAiBtE,OAAO;QAAW8pB,YAAY;QAAGC,UAAU;IAAG;IACxE;QAAEzlB,OAAO;QAAatE,OAAO;QAAW8pB,YAAY;QAAIC,UAAU;IAAG;IACrE;QAAEzlB,OAAO;QAAUtE,OAAO;QAAW8pB,YAAY;QAAIC,UAAU;IAAG;IAClE;QAAEzlB,OAAO;QAAUtE,OAAO;QAAW8pB,YAAY;QAAIC,UAAU;IAAG;IAClE;QAAEzlB,OAAO;QAAiBtE,OAAO;QAAW8pB,YAAY;QAAIC,UAAU;IAAI;CAC3E;AACD,IAAIC,oBAAoB,2BAACC,SAASC,SAASC,QAAQC,YAAYC;IAC7D,IAAMC,WAAW,AAACF,CAAAA,aAAa,GAAE,IAAKxb,KAAK2b,EAAE,GAAG;IAChD,IAAMC,SAAS,AAACH,CAAAA,WAAW,GAAE,IAAKzb,KAAK2b,EAAE,GAAG;IAC5C,IAAMzB,KAAKmB,UAAUE,SAASvb,KAAK6b,GAAG,CAACH;IACvC,IAAMvB,KAAKmB,UAAUC,SAASvb,KAAK8b,GAAG,CAACJ;IACvC,IAAMtB,KAAKiB,UAAUE,SAASvb,KAAK6b,GAAG,CAACD;IACvC,IAAMvB,KAAKiB,UAAUC,SAASvb,KAAK8b,GAAG,CAACF;IACvC,IAAMG,eAAeN,WAAWD,aAAa,MAAM,IAAI;IACvD,OAAO,AAAC,KAAUrB,OAAND,IAAG,KAAWqB,OAARpB,IAAG,OAAeoB,OAAVA,QAAO,KAAeQ,OAAZR,QAAO,OAAuBnB,OAAlB2B,cAAa,OAAW1B,OAAND,IAAG,KAAM,OAAHC;AAC1E;AACA,IAAI2B,eAAe,sBAACC,OAAOC;QACpB,kCAAA,2BAAA;;QAAL,QAAK,YAAcA,0BAAd,SAAA,6BAAA,QAAA,yBAAA,iCAAqB;YAArB,IAAMC,OAAN;YACH,IAAIF,SAASE,KAAKjB,UAAU,IAAIe,SAASE,KAAKhB,QAAQ,EAAE,OAAOgB,KAAKzmB,KAAK;QAC3E;;QAFK;QAAA;;;iBAAA,6BAAA;gBAAA;;;gBAAA;sBAAA;;;;IAGL,OAAOwmB,KAAK,CAAC,EAAE,CAACxmB,KAAK;AACvB;AACA,IAAI0mB,iBAAiB;QAAGrvB,cAAAA,OAAO2sB,eAAAA;IAC7B,OAAO,aAAa,GAAGF,OAAO,OAAO;QAAEjsB,WAAW;QAA+BP,UAAU;YACzF,aAAa,GAAGusB,MACd,OACA;gBACEhsB,WAAW;gBACXmC,OAAO;oBAAE0B,OAAO;oBAAqBoa,YAAY;oBAAuB9H,UAAU;oBAAQiW,YAAY;gBAAI;gBAC1G3sB,UAAUD;YACZ;YAEF,aAAa,GAAGwsB,MAAM,OAAO;gBAAEhsB,WAAW;gBAAwBP,UAAU0sB,OAAO/U,GAAG,CAAC,SAACiV,OAAOzP;oBAC7F,IAAM+R,QAAQtC,MAAMsC,KAAK,IAAIjB;oBAC7B,IAAMoB,WAAWzC,MAAM7G,GAAG,IAAI;oBAC9B,IAAM8G,aAAa7Z,KAAKoT,GAAG,CAACwG,MAAMqC,KAAK,GAAGI,WAAW,KAAK;oBAC1D,IAAMvC,QAAQD,aAAa,MAAM,MAAM;oBACvC,IAAMyC,eAAeN,aAAanC,YAAYqC;oBAC9C,IAAMnC,YAAYsC,WAAWzC,MAAMqC,KAAK;oBACxC,IAAMjC,WAAWha,KAAKC,KAAK,CAAC2Z,MAAMqC,KAAK,GAAG;oBAC1C,OAAO,aAAa,GAAGzC,OAAO,OAAO;wBAAEjsB,WAAW;wBAAUP,UAAU;4BACpE,aAAa,GAAGwsB,OAAO,OAAO;gCAAEjsB,WAAW;gCAA4CP,UAAU;oCAC/F,aAAa,GAAGwsB,OAAO,OAAO;wCAAEjsB,WAAW;wCAA8CmC,OAAO;4CAAE2B,QAAQ;wCAAQ;wCAAGrE,UAAU;4CAC7H,aAAa,GAAGwsB,OAAO,OAAO;gDAAEjsB,WAAW;gDAAiB0sB,SAAS;gDAAejtB,UAAU;oDAC5FkvB,MAAMvX,GAAG,CAAC,SAACwX,MAAMI;wDACf,IAAMf,aAAaW,KAAKjB,UAAU,GAAG,MAAM;wDAC3C,IAAMO,WAAWU,KAAKhB,QAAQ,GAAG,MAAM;wDACvC,IAAMqB,UAAUpB,kBAAkB,KAAK,KAAK,KAAKI,YAAYC;wDAC7D,OAAO,aAAa,GAAGlC,MACrB,QACA;4DACErf,GAAGsiB;4DACHhC,MAAM;4DACNC,QAAQ0B,KAAK/qB,KAAK;4DAClBqE,aAAa;4DACbilB,eAAe;4DACfhrB,OAAO;gEAAEirB,YAAY;4DAAuB;wDAC9C,GACA4B;oDAEJ;oDACA;wDACE;4DAAEnE,GAAG;4DAAIpe,GAAG;4DAAKgV,GAAG;wDAAI;wDACxB;4DAAEoJ,GAAG;4DAAIpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACxB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACzB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAIgV,GAAG;wDAAK;wDACzB;4DAAEoJ,GAAG;4DAAKpe,GAAG;4DAAKgV,GAAG;wDAAM;qDAC5B,CAACrK,GAAG,CAAC;4DAAGyT,UAAAA,GAAGpe,UAAAA,GAAGgV,UAAAA;+DAAQ,aAAa,GAAGuK,MACrC,QACA;4DACEnB,GAAAA;4DACApe,GAAAA;4DACAtK,OAAO;gEAAE8b,YAAY;gEAAuB9H,UAAU;gEAAQiW,YAAY;gEAAKa,MAAM;4DAAmB;4DACxGxtB,UAAUgiB;wDACZ,GACAA;;oDAEF,aAAa,GAAGwK,OAAO,KAAK;wDAAEjV,WAAW;wDAAsBvX,UAAU;4DACvE,aAAa,GAAGusB,MAAM,QAAQ;gEAAEvsB,UAAU,aAAa,GAAGwsB,OACxD,kBACA;oEACE7lB,IAAI,AAAC,qBAA0B,OAANwW;oEACzB+P,IAAI;oEACJC,IAAI;oEACJC,IAAI;oEACJC,IAAI;oEACJQ,eAAe;oEACf7tB,UAAU;wEACR,aAAa,GAAGusB,MAAM,QAAQ;4EAAEe,QAAQ;4EAAMC,WAAW;4EAAuBO,aAAa;wEAAM;wEACnG,aAAa,GAAGvB,MAAM,QAAQ;4EAAEe,QAAQ;4EAAQC,WAAW;4EAAqBO,aAAa;wEAAO;qEACrG;gEACH;4DACA;4DACF,aAAa,GAAGvB,MACd,QACA;gEACErf,GAAG;gEACHsgB,MAAM,AAAC,0BAA+B,OAANrQ,OAAM;4DACxC;yDAEH;oDAAC;oDACF,aAAa,GAAGoP,MACd,QACA;wDACEnB,GAAG;wDACHpe,GAAG;wDACH+gB,YAAY;wDACZrrB,OAAO;4DAAE8b,YAAY;4DAAuB9H,UAAU;4DAAQiW,YAAY;4DAAKa,MAAM;wDAAsB;wDAC3GxtB,UAAU;oDACZ;oDAEF,aAAa,GAAGwsB,OACd,QACA;wDACEpB,GAAG;wDACHpe,GAAG;wDACH+gB,YAAY;wDACZrrB,OAAO;4DAAE8b,YAAY;4DAAuB9H,UAAU;4DAAQiW,YAAY;4DAAKa,MAAM;wDAAgB;wDACrGxtB,UAAU;4DACRgT,KAAKC,KAAK,CAAC4Z;4DACX;yDACD;oDACH;oDAEF,aAAa,GAAGN,MAAM,KAAK;wDAAEhV,WAAW;wDAAuBvX,UAAU,aAAa,GAAGusB,MAAM,KAAK;4DAAE7pB,OAAO;gEAAEirB,YAAY;gEAAwBpW,WAAW,AAAC,UAAe,OAANuV,OAAM;gEAAOkB,iBAAiB;4DAAM;4DAAGhuB,UAAU,aAAa,GAAGusB,MAAM,QAAQ;gEAAErf,GAAG;gEAAmCsgB,MAAM;4DAAmB;wDAAG;oDAAG;iDAC/T;4CAAC;4CACF,aAAa,GAAGhB,OACd,OACA;gDACEjsB,WAAW;gDACXmC,OAAO;oDAAE0B,OAAO;oDAAuBoa,YAAY;oDAAuB9H,UAAU;oDAAQiW,YAAY;gDAAI;gDAC5G3sB,UAAU;oDACR;oDACAsvB;iDACD;4CACH;yCAEH;oCAAC;oCACF,aAAa,GAAG9C,OAAO,OAAO;wCAAEjsB,WAAW;wCAAsCP,UAAU;4CACzF,aAAa,GAAGusB,MAAM,OAAO;gDAAEhsB,WAAW;gDAAyBP,UAAU;oDAC3E;wDAAE0I,OAAO;wDAAWmG,OAAOwgB,SAAS3O,cAAc;oDAAG;oDACrD;wDAAEhY,OAAO;wDAAiBmG,OAAO+d,MAAMqC,KAAK,CAACvO,cAAc;oDAAG;iDAC/D,CAAC/I,GAAG,CAAC;wDAAGjP,cAAAA,OAAOmG,cAAAA;2DAAY,aAAa,GAAG2d,OAAO,OAAO;wDAAEjsB,WAAW;wDAAiBP,UAAU;4DAChG,aAAa,GAAGusB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAuBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;oEAAKrV,cAAc;gEAAM;gEAAGtX,UAAU0I;4DAAM;4DACpL,aAAa,GAAG6jB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAiBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;gEAAI;gEAAG3sB,UAAU6O;4DAAM;yDAC1J;oDAAC,GAAGnG;;4CAAQ;4CACb,aAAa,GAAG6jB,MAAM,OAAO;gDAAEhsB,WAAW;gDAAeP,UAAU;oDACjE;wDAAE0I,OAAO;wDAAcmG,OAAOke,UAAUrM,cAAc;oDAAG;oDACzD;wDAAEhY,OAAO;wDAAiBmG,OAAO,AAAC,GAA4B,OAA1Bme,SAAStM,cAAc,IAAG;oDAAQ;iDACvE,CAAC/I,GAAG,CAAC;wDAAGjP,cAAAA,OAAOmG,cAAAA;2DAAY,aAAa,GAAG2d,OAAO,OAAO;wDAAEjsB,WAAW;wDAAiBP,UAAU;4DAChG,aAAa,GAAGusB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAuBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;oEAAKrV,cAAc;gEAAM;gEAAGtX,UAAU0I;4DAAM;4DACpL,aAAa,GAAG6jB,MAAM,QAAQ;gEAAE7pB,OAAO;oEAAE0B,OAAO;oEAAiBoa,YAAY;oEAAuB9H,UAAU;oEAAQiW,YAAY;gEAAI;gEAAG3sB,UAAU6O;4DAAM;yDAC1J;oDAAC,GAAGnG;;4CAAQ;yCACd;oCAAC;iCACH;4BAAC;4BACF,aAAa,GAAG6jB,MAAM,OAAO;gCAAEhsB,WAAW;gCAAsDP,UAAUkvB,MAAMvX,GAAG,CAAC,SAACwX,MAAMM;2CAAY,aAAa,GAAGjD,OAAO,OAAO;wCAAEjsB,WAAW;wCAA2BP,UAAU;4CACrN,aAAa,GAAGusB,MACd,OACA;gDACEhsB,WAAW;gDACXmC,OAAO;oDAAE8C,iBAAiB2pB,KAAK/qB,KAAK;gDAAC;4CACvC;4CAEF,aAAa,GAAGmoB,MACd,QACA;gDACE7pB,OAAO;oDACL8b,YAAY;oDACZ9H,UAAU;oDACVtS,OAAO;oDACPuoB,YAAY;gDACd;gDACA3sB,UAAUmvB,KAAKzmB,KAAK;4CACtB;yCAEH;oCAAC,GAAG+mB;;4BAAU;4BACftS,QAAQuP,OAAOxV,MAAM,GAAG,KAAK,aAAa,GAAGqV,MAAM,OAAO;gCAAEhsB,WAAW;gCAAcmC,OAAO;oCAAEgC,YAAY;gCAAsB;4BAAE;yBACnI;oBAAC,GAAGyY;gBACP;YAAG;SACJ;IAAC;AACJ;AACAiS,eAAe3uB,WAAW,GAAG;AAE7B,wCAAwC;AACxC,SAASb,OAAO8vB,KAAK,EAAE7vB,QAAQ8vB,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,qBAAqB;QACvB7vB,cAAAA,OACA8vB,aAAAA,MACAC,oBAAAA,aACAC,qBAAAA,cACA5rB,eAAAA;IAEA,IAAM6rB,WAAWH,QAAQ,EAAE;IAC3B,OAAO,aAAa,GAAGF,OAAO,OAAO;QAAEpvB,WAAW;QAA+B,eAAe4D;QAAQnE,UAAU;YAChH,aAAa,GAAG0vB,MAAM,OAAO;gBAAEnvB,WAAW;gBAA0CP,UAAU,aAAa,GAAG0vB,MAC5G,UACA;oBACEnvB,WAAW;oBACX,eAAe4D,SAAS,AAAC,GAAS,OAAPA,QAAO,kBAAgB,KAAK;oBACvDnE,UAAU,aAAa,GAAG0vB,MAAM,OAAO;wBAAEnvB,WAAW;wBAA2BP,UAAU;4BAAC;4BAAG;4BAAG;yBAAE,CAAC2X,GAAG,CAAC,SAAChB;mCAAM,aAAa,GAAG+Y,MAAM,QAAQ;gCAAEnvB,WAAW;gCAA8CmC,OAAO;oCAAE8C,iBAAiB;gCAAsB;4BAAE,GAAGmR;;oBAAI;gBAClQ;YACA;YACF,aAAa,GAAG+Y,MACd,OACA;gBACEnvB,WAAW;gBACXmC,OAAO;oBAAE0B,OAAO;oBAAqBoa,YAAY;oBAAuB9H,UAAU;oBAAQiW,YAAY;gBAAI;gBAC1G,eAAexoB,SAAS,AAAC,GAAS,OAAPA,QAAO,YAAU,KAAK;gBACjDnE,UAAUD;YACZ;YAEF,aAAa,GAAG4vB,OAAO,OAAO;gBAAEpvB,WAAW;gBAA0BP,UAAU;oBAC7E,aAAa,GAAG0vB,MAAM,OAAO;wBAAEnvB,WAAW;wBAAoCmC,OAAO;4BAAE6B,WAAW;wBAAQ;wBAAGvE,UAAUgwB,SAASrY,GAAG,CAAC,SAACsY,KAAK9S;mCAAU,aAAa,GAAGuS,MAClK,OACA;gCACEnvB,WAAW;gCACXmC,OAAO;oCAAE2B,QAAQ;oCAAQiT,cAAc6F,QAAQ6S,SAAS9Y,MAAM,GAAG,IAAI,SAAS;gCAAE;gCAChF,eAAe/S,SAAS,AAAC,GAAkBgZ,OAAhBhZ,QAAO,WAAe,OAANgZ,SAAU,KAAK;gCAC1Dnd,UAAU,aAAa,GAAG0vB,MACxB,QACA;oCACEhtB,OAAO;wCACL0B,OAAO;wCACPoa,YAAY;wCACZ9H,UAAU;wCACViW,YAAY;wCACZuD,YAAY;oCACd;oCACA3vB,WAAW;oCACXP,UAAUiwB,IAAI/uB,IAAI;gCACpB;4BAEJ,GACA+uB,IAAI/uB,IAAI;;oBACP;oBACH,aAAa,GAAGyuB,OAAO,OAAO;wBAAEpvB,WAAW;wBAAmBP,UAAU;4BACtE,aAAa,GAAG2vB,OAAO,OAAO;gCAAEpvB,WAAW;gCAAwCmC,OAAO;oCAAE2B,QAAQ;gCAAQ;gCAAGrE,UAAU;oCACvH8vB,eAAeA,YAAYK,MAAM,CAACxY,GAAG,CAAC,SAACjP,OAAOoe;wCAC5C,IAAMsJ,cAAcN,YAAYK,MAAM,CAACjZ,MAAM;wCAC7C,IAAM9P,WAAW0f,MAAOsJ,CAAAA,cAAc,CAAA,IAAK;wCAC3C,IAAMC,kBAAkB;wCACxB,IAAMC,eAAe1lB,OAAOlC,OAAOwO,MAAM,GAAGmZ,kBAAkB;wCAC9D,OAAO,aAAa,GAAGX,MACrB,OACA;4CACEnvB,WAAW;4CACXmC,OAAO;gDACLmY,MAAM,AAAC,QAAsByV,OAAflpB,UAAS,QAAmB,OAAbkpB,cAAa;gDAC1CjsB,QAAQ;gDACRmB,iBAAiB;4CACnB;wCACF,GACAshB;oCAEJ;oCACA,aAAa,GAAG4I,MAAM,OAAO;wCAAEnvB,WAAW;wCAAuCmC,OAAO;4CAAE2B,QAAQ;4CAASmB,iBAAiB;wCAAsB;oCAAE;oCACpJ,aAAa,GAAGkqB,MAAM,OAAO;wCAAEnvB,WAAW;wCAAyCmC,OAAO;4CAAEiR,QAAQ;4CAAQnO,iBAAiB;wCAAsB;oCAAE;iCACtJ;4BAAC;4BACF,aAAa,GAAGkqB,MAAM,OAAO;gCAAEnvB,WAAW;gCAAoCmC,OAAO;oCAAE6B,WAAW;gCAAQ;gCAAGvE,UAAUgwB,SAASrY,GAAG,CAAC,SAACsY,KAAK9S;oCACxI,IAAMoT,SAAST,CAAAA,wBAAAA,kCAAAA,YAAa/J,GAAG,KAAI;oCACnC,IAAMyK,sBAAsBP,IAAIphB,KAAK,GAAG0hB,SAAS;oCACjD,OAAO,aAAa,GAAGb,MACrB,OACA;wCACEnvB,WAAW;wCACXmC,OAAO;4CAAE2B,QAAQ;4CAAQiT,cAAc6F,QAAQ6S,SAAS9Y,MAAM,GAAG,IAAI,SAAS;wCAAE;wCAChF,eAAe/S,SAAS,AAAC,GAAgBgZ,OAAdhZ,QAAO,SAAa,OAANgZ,SAAU,KAAK;wCACxDnd,UAAU,aAAa,GAAG0vB,MAAM,OAAO;4CAAEnvB,WAAW;4CAA4BP,UAAU,aAAa,GAAG0vB,MACxG,OACA;gDACEnvB,WAAW;gDACXmC,OAAO;oDAAE4B,OAAO,AAAC,GAAsB,OAApBksB,qBAAoB;oDAAI9rB,YAAYurB,IAAI7rB,KAAK;gDAAC;gDACjE,eAAeD,SAAS,AAAC,GAAgBgZ,OAAdhZ,QAAO,SAAa,OAANgZ,SAAU,KAAK;4CAC1D;wCACA;oCACJ,GACA8S,IAAI/uB,IAAI;gCAEZ;4BAAG;4BACH,aAAa,GAAGwuB,MAAM,OAAO;gCAAEnvB,WAAW;gCAAyDmC,OAAO;oCAAEmV,WAAW;gCAAO;gCAAG7X,UAAU8vB,eAAeA,YAAYK,MAAM,CAACxY,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAG4I,MAC/M,QACA;wCACEhtB,OAAO;4CAAE0B,OAAO;4CAAoBoa,YAAY;4CAAuB9H,UAAU;4CAAQiW,YAAY;wCAAI;wCACzGpsB,WAAW;wCACXP,UAAU0I;oCACZ,GACAoe;;4BACC;yBACJ;oBAAC;iBACH;YAAC;SACH;IAAC;AACJ;AACA8I,mBAAmBnvB,WAAW,GAAG;AAEjC,gCAAgC;AAChC,OAAOgwB,aAAa,QAAQ;AAC5B,SAAS7wB,OAAO8wB,KAAK,EAAE7wB,QAAQ8wB,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,YAAY,mBAAC3jB;IACf,IAAI,OAAOA,MAAM,UAAU,OAAOA;IAClC,IAAM4a,OAAO5a;IACb,IAAI,QAAO4a,iBAAAA,2BAAAA,KAAMC,GAAG,MAAK,UAAU,OAAOD,KAAKC,GAAG;IAClD,IAAM5a,IAAI2a,iBAAAA,2BAAAA,KAAMjlB,OAAO;IACvB,IAAI,OAAOsK,MAAM,UAAU,OAAOA;IAClC,IAAI,QAAOA,cAAAA,wBAAAA,EAAG4a,GAAG,MAAK,UAAU,OAAO5a,EAAE4a,GAAG;IAC5C,OAAO;AACT;AACA,IAAI+I,iBAAiBnyB;AACrB,IAAIoyB,eAAe;IACjBzvB,OAAO;IACPD,MAAM;IACNG,QAAQ;IACRD,KAAK;IACLE,QAAQ;IACRG,MAAM;IACND,MAAM;IACND,QAAQ;IACRG,QAAQ;IACRmvB,SAAS;AACX;AACA,IAAIC,aAAa;QACfrP,aAAAA,MACAsP,qBAAAA,cACAC,sBAAAA,eACAC,wBAAAA,iBACAC,wBAAAA,iBACAjtB,eAAAA;IAEA,IAA0DssB,qCAAAA,QAAQhxB,QAAQ,CAAC,YAApE4xB,wBAAmDZ,sBAA5Ba,2BAA4Bb;IAC1D,IAAMc,WAAW;QAAC;QAAa;KAAY;IAC3C,IAAMC,cAAc7P;IACpB,IAAM8P,gBAAgB,uBAACC;QACrB,IAAMC,WAAW;YACfC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;QACP;QACA,IAAyBb,yCAAAA,WAAWpjB,KAAK,CAAC,OAAOqJ,GAAG,CAAC,SAAC1K;mBAAMA,EAAEyO,IAAI;gBAA3D8W,SAAkBd,0BAAVe,SAAUf;QACzB,OAAO;YAACC,QAAQ,CAACa,OAAO;YAAEb,QAAQ,CAACc,OAAO;SAAC;IAC7C;IACA,IAAMC,iBAAiB,wBAAChB;QACtB,IAAMiB,iBAAiB;YACrBf,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;QACP;QACA,IAAyBb,yCAAAA,WAAWpjB,KAAK,CAAC,OAAOqJ,GAAG,CAAC,SAAC1K;mBAAMA,EAAEyO,IAAI;gBAA3D8W,SAAkBd,0BAAVe,SAAUf;QACzB,OAAO;YAACiB,cAAc,CAACH,OAAO;YAAEG,cAAc,CAACF,OAAO;SAAC;IACzD;IACA,IAAMG,mBAAmB;QACvB,IAAMpiB,QAAQ,aAAa,GAAG,IAAItE;QAClC,IAAMwE,cAAcF,MAAMC,WAAW;QACrC,IAAMI,eAAeL,MAAMI,QAAQ,KAAK;QACxC,IAAMiiB,aAAariB,MAAMrE,OAAO;QAChC,IAAyB+kB,4CAAAA,cAAc5iB,KAAK,CAAC,OAAOqJ,GAAG,CAAC,SAAC1K;mBAAMA,EAAEyO,IAAI;gBAA9D8W,SAAkBtB,6BAAVuB,SAAUvB;QACzB,IAAM4B,gBAAgB;YACpBlB,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;QACP;QACA,IAAMQ,iBAAiBD,aAAa,CAACN,OAAO;QAC5C,IAAMQ,iBAAiBF,aAAa,CAACL,OAAO;QAC5C,IAAMQ,kBAAkBnyB,SAASmwB;QACjC,IAAIvgB,gBAAgBuiB,iBAAiB,OAAO;QAC5C,IAAIhnB,aAAa,CAAC;QAClB,IAAI4E,iBAAiBkiB,gBAAgB9mB,aAAa;aAC7C,IAAI4E,iBAAiBmiB,gBAAgB/mB,aAAa;aAClD,OAAO;QACZ,IAAMkI,cAAc;QACpB,IAAM+e,aAAa,AAACL,CAAAA,aAAa,CAAA,IAAK1e;QACtC,IAAMgf,kBAAkBD,aAAa;QACrC,IAAME,aAAannB,eAAe,IAAI,MAAMknB,kBAAkB,MAAMA;QACpE,IAAME,cAAcpnB,eAAe,IAAI,MAAMknB,kBAAkB,MAAMA;QACrE,OAAO;YACLG,MAAM;YACNF,YAAYpgB,KAAKC,KAAK,CAACmgB,aAAa,OAAO;YAC3CC,aAAargB,KAAKC,KAAK,CAACogB,cAAc,OAAO;QAC/C;IACF;IACA,IAAME,gBAAgBX;IACtB,IAAMY,SAAS/B,cAAcP;IAC7B,IAAMuC,gBAAgBD,OAAO7b,GAAG,CAAC,SAAC1K;eAAM,AAAC,GAAOgkB,OAALhkB,GAAE,KAAgB,OAAbgkB;;IAChD,IAA+ByB,mCAAAA,eAAexB,oBAAvCwC,YAAwBhB,oBAAbiB,YAAajB;IAC/B,IAAMkB,kBAAkB,yBAACpmB,WAAWqmB;QAClC,IAA+BrmB,wCAAAA,UAAUc,KAAK,CAAC,KAAKqJ,GAAG,CAACG,aAAjDgc,WAAwBtmB,yBAAdumB,aAAcvmB;QAC/B,IAA2BqmB,sCAAAA,QAAQvlB,KAAK,CAAC,KAAKqJ,GAAG,CAACG,aAA3Ckc,SAAoBH,uBAAZI,WAAYJ;QAC3B,IAAyB3C,4CAAAA,cAAc5iB,KAAK,CAAC,OAAOqJ,GAAG,CAAC,SAAC1K;mBAAMA,EAAEyO,IAAI;gBAA9D8W,SAAkBtB,6BAAVuB,SAAUvB;QACzB,IAAM4B,gBAAgB;YACpBlB,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;YACLC,KAAK;QACP;QACA,IAAM2B,oBAAoBpB,aAAa,CAACN,OAAO;QAC/C,IAAM2B,oBAAoBrB,aAAa,CAACL,OAAO;QAC/C,IAAMte,cAAc;QACpB,IAAIlI,aAAa,CAAC;QAClB,IAAImoB,eAAe;QACnB,IAAI9vB,QAAQ;QACZ,IAAI+vB,kBAAkB;QACtB,IAAIN,eAAeG,qBAAqBD,aAAaC,mBAAmB;YACtEjoB,aAAa;YACbmoB,eAAe,AAACN,CAAAA,WAAW,CAAA,IAAK3f,cAAc;YAC9C7P,QAAQ0vB,SAAS7f,cAAc,MAAMigB;QACvC,OAAO,IAAIL,eAAeI,qBAAqBF,aAAaE,mBAAmB;YAC7EloB,aAAa;YACbooB,kBAAkB;YAClBD,eAAe,AAACN,CAAAA,WAAW,CAAA,IAAK3f,cAAc;YAC9C7P,QAAQ0vB,SAAS7f,cAAc,MAAMigB;QACvC,OAAO,IAAIL,eAAeG,qBAAqBD,aAAaE,mBAAmB;YAC7EloB,aAAa;YACbmoB,eAAe,AAACN,CAAAA,WAAW,CAAA,IAAK3f,cAAc;YAC9C7P,QAAQ,MAAM0vB,SAAS7f,cAAc,MAAMigB;QAC7C;QACA,OAAO;YAAEA,cAAAA;YAAc9vB,OAAAA;YAAO2H,YAAAA;YAAYooB,iBAAAA;QAAgB;IAC5D;IACA,IAAMC,aAAa7D,QAAQrJ,OAAO,CAAC;QACjC,IAAMmN,aAAa;QACnB,IAAMC,aAAa;QACnB,IAAMC,cAAc;QACpB,OAAOF,aAAa/C,YAAYkD,KAAK,CAACxd,MAAM,GAAIsd,CAAAA,aAAaC,WAAU;IACzE,GAAG;QAACjD,YAAYkD,KAAK,CAACxd,MAAM;KAAC;IAC7B,IAAMyd,iBAAiB;YAAGtpB,iBAAAA;eAAe,aAAa,GAAGqlB,MAAM,OAAO;YAAEnwB,WAAW;YAAcP,UAAU;gBACxG,MAAsBqL,OAAjBA,UAAS,UAAiB,OAATA;gBACtB,MAAsBA,OAAjBA,UAAS,UAAiB,OAATA;gBACtB,MAAsBA,OAAjBA,UAAS,UAAiB,OAATA;gBACtB,MAAsBA,OAAjBA,UAAS,UAAiB,OAATA;aACxB,CAACsM,GAAG,CAAC,SAACkC;uBAAU,aAAa,GAAG6W,MAC/B,OACA;oBACEnwB,WAAW;oBACXmC,OAAO;wBAAEgC,YAAY;wBAA0BimB,SAAS;wBAAQiK,YAAY;wBAAUC,gBAAgB;oBAAS;oBAC/G70B,UAAU,aAAa,GAAG0wB,MACxB,QACA;wBACEhuB,OAAO;4BACL0B,OAAO;4BACPoa,YAAY;4BACZ9H,UAAU;4BACViW,YAAY;wBACd;wBACA3sB,UAAU6Z;oBACZ;gBAEJ,GACAA;;QACC;;IACH,OAAO,aAAa,GAAG8W,OAAO,OAAO;QAAEpwB,WAAW;QAA+B,eAAe4D;QAAQnE,UAAU;YAChH,aAAa,GAAG2wB,OAAO,OAAO;gBAAEpwB,WAAW;gBAAkDP,UAAU;oBACrG,aAAa,GAAG2wB,OAAO,OAAO;wBAAEpwB,WAAW;wBAAYP,UAAU;4BAC/D,aAAa,GAAG2wB,OACd,UACA;gCACEpwB,WAAW;gCACXC,SAAS,SAATA;2CAAe8wB,yBAAyB,CAACD;;gCACzCrxB,UAAU;oCACR,aAAa,GAAG0wB,MACd,QACA;wCACEhuB,OAAO;4CACL0B,OAAO;4CACPoa,YAAY;4CACZ9H,UAAU;4CACViW,YAAY;wCACd;wCACA3sB,UAAUmxB;oCACZ;oCAEF,aAAa,GAAGT,MACd,OACA;wCACEhuB,OAAO;4CACL4B,OAAO;4CACPD,QAAQ;4CACRK,YAAY,AAAC,OAAgC,OAA1BksB,UAAUC,iBAAgB;4CAC7CiE,aAAa;4CACbvd,WAAW8Z,wBAAwB,mBAAmB;4CACtD1D,YAAY;wCACd;oCACF;iCAEH;4BACH;4BAEF0D,yBAAyB,aAAa,GAAGX,MACvC,OACA;gCACEnwB,WAAW;gCACXmC,OAAO;oCACLgV,QAAQ;oCACRqd,WAAW;gCACb;gCACA/0B,UAAUuxB,SAAS5Z,GAAG,CAAC,SAACqd,SAASlO;2CAAQ,aAAa,GAAG4J,MACvD,UACA;wCACEnwB,WAAW,AAAC,mHAAoKumB,OAAlDA,QAAQ,IAAI,gCAAgC,IAAG,KAAoE,OAAjEA,QAAQyK,SAASra,MAAM,GAAG,IAAI,gCAAgC;wCAC9O1W,SAAS,SAATA;4CACE4wB,gBAAgB4D;4CAChB1D,yBAAyB;wCAC3B;wCACAtxB,UAAU,aAAa,GAAG0wB,MACxB,QACA;4CACEhuB,OAAO;gDACL0B,OAAO;gDACPoa,YAAY;gDACZ9H,UAAU;gDACViW,YAAY;4CACd;4CACA3sB,UAAUg1B;wCACZ;oCAEJ,GACAA;;4BAEJ;yBAEH;oBAAC;oBACF,aAAa,GAAGtE,MACd,UACA;wBACEnwB,WAAW;wBACXP,UAAU,aAAa,GAAG0wB,MAAM,OAAO;4BAAEnwB,WAAW;4BAA2BP,UAAU;gCAAC;gCAAG;gCAAG;6BAAE,CAAC2X,GAAG,CAAC,SAAChB;uCAAM,aAAa,GAAG+Z,MAC5H,QACA;oCACEnwB,WAAW;oCACXmC,OAAO;wCAAEgC,YAAY;oCAAsB;gCAC7C,GACAiS;;wBACC;oBACL;iBAEH;YAAC;YACF,aAAa,GAAGga,OAAO,OAAO;gBAAEpwB,WAAW;gBAAqBP,UAAU;oBACxE,aAAa,GAAG0wB,MAAM,OAAO;wBAAEnwB,WAAW;oBAA6C;oBACvF;wBACE;4BAAEsa,MAAM;4BAASoa,QAAQ;4BAASvsB,OAAO+qB,aAAa,CAAC,EAAE;wBAAC;wBAC1D;4BAAE5Y,MAAM;4BAASoa,QAAQ;4BAASvsB,OAAO+qB,aAAa,CAAC,EAAE;wBAAC;qBAC3D,CAAC9b,GAAG,CAAC;4BAAGkD,aAAAA,MAAMoa,eAAAA,QAAQvsB,cAAAA;+BAAY,aAAa,GAAGgoB,MACjD,OACA;4BACEnwB,WAAW;4BACXmC,OAAO;gCACLmY,MAAAA;gCACAnW,YAAY;4BACd;4BACA1E,UAAU,aAAa,GAAG0wB,MACxB,QACA;gCACEhuB,OAAO;oCACL8b,YAAY;oCACZ9H,UAAU;oCACViW,YAAY;oCACZvoB,OAAO;gCACT;gCACApE,UAAU0I;4BACZ;wBAEJ,GACAA;;iBAEH;YAAC;YACF,aAAa,GAAGioB,OAAO,OAAO;gBAAEpwB,WAAW;gBAAqBP,UAAU;oBACxE,aAAa,GAAG0wB,MAAM,OAAO;wBAAEnwB,WAAW;wBAAYmC,OAAO;4BAAEmY,MAAM;wBAAQ;wBAAG7a,UAAU,aAAa,GAAG0wB,MAAMiE,gBAAgB;4BAAEtpB,UAAUqoB;wBAAU;oBAAG;oBACzJ,aAAa,GAAGhD,MAAM,OAAO;wBAAEnwB,WAAW;wBAAYmC,OAAO;4BAAEmY,MAAM;wBAAQ;wBAAG7a,UAAU,aAAa,GAAG0wB,MAAMiE,gBAAgB;4BAAEtpB,UAAUsoB;wBAAU;oBAAG;iBAC1J;YAAC;YACF,aAAa,GAAGhD,OAAO,OAAO;gBAAEpwB,WAAW;gBAAYP,UAAU;oBAC/D;wBAAC;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;qBAAE,CAAC2X,GAAG,CAAC,SAACud;+BAAY,aAAa,GAAGxE,MAC3D,OACA;4BACEnwB,WAAW;4BACXmC,OAAO;gCACL8C,iBAAiB;gCACjBqV,MAAM,AAAC,GAAqB,OAAnB,MAAMqa,UAAU,IAAG;gCAC5BrhB,KAAK;gCACLxP,QAAQ,AAAC,GAAa,OAAXiwB,YAAW;4BACxB;wBACF,GACA,AAAC,MAAa,OAARY;;oBAER,aAAa,GAAGxE,MACd,OACA;wBACEnwB,WAAW;wBACXmC,OAAO;4BACL8C,iBAAiB;4BACjBqV,MAAM,AAAC,GAAoB,OAAlB,MAAM,IAAI,KAAK,IAAG;4BAC3BhH,KAAK;4BACLxP,QAAQ,AAAC,GAAa,OAAXiwB,YAAW;wBACxB;oBACF;oBAEF;wBAAC;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;wBAAG;qBAAE,CAAC3c,GAAG,CAAC,SAACud;+BAAY,aAAa,GAAGxE,MAC3D,OACA;4BACEnwB,WAAW;4BACXmC,OAAO;gCACL8C,iBAAiB;gCACjBqV,MAAM,AAAC,GAA0B,OAAxB,MAAMqa,UAAU,KAAK,IAAG;gCACjCrhB,KAAK;gCACLxP,QAAQ,AAAC,GAAa,OAAXiwB,YAAW;4BACxB;wBACF,GACA,AAAC,MAAa,OAARY;;oBAER3B,CAAAA,0BAAAA,oCAAAA,cAAeD,IAAI,KAAI,aAAa,GAAG5C,MACrC,OACA;wBACEnwB,WAAW;wBACXmC,OAAO;4BACLgC,YAAY;4BACZmW,MAAM,AAAC,GAA2B,OAAzB0Y,cAAcH,UAAU,EAAC;4BAClCvf,KAAK;4BACLxP,QAAQ,AAAC,GAAkB,OAAhBiwB,aAAa,IAAG;wBAC7B;wBACAt0B,UAAU,aAAa,GAAG0wB,MACxB,OACA;4BACEnwB,WAAW;4BACXmC,OAAO;gCACLgC,YAAY;gCACZmP,KAAK;gCACLgH,MAAM;4BACR;4BACA7a,UAAU,aAAa,GAAG0wB,MACxB,QACA;gCACEhuB,OAAO;oCACL0B,OAAO;oCACPoa,YAAY;oCACZ9H,UAAU;oCACViW,YAAY;gCACd;gCACA3sB,UAAU;4BACZ;wBAEJ;oBAEJ;oBAEF,aAAa,GAAG0wB,MAAM,OAAO;wBAAEnwB,WAAW;wBAA6CP,UAAUwxB,YAAYkD,KAAK,CAAC/c,GAAG,CAAC,SAACwd;4BACtH,IAA6DvB,mBAAAA,gBAC3DuB,KAAK3nB,SAAS,EACd2nB,KAAKtB,OAAO,GAFNO,eAAqDR,iBAArDQ,cAAc9vB,QAAuCsvB,iBAAvCtvB,OAAO2H,aAAgC2nB,iBAAhC3nB,YAAYooB,kBAAoBT,iBAApBS;4BAIzC,IAAIpoB,eAAe,CAAC,GAAG,OAAO;4BAC9B,IAAMmpB,YAAYtE,YAAY,CAACqE,KAAK/wB,KAAK,CAAC,IAAI0sB,aAAa1vB,IAAI;4BAC/D,OAAO,aAAa,GAAGuvB,OAAO,OAAO;gCAAEpwB,WAAW;gCAAqBP,UAAU;oCAC/E,aAAa,GAAG0wB,MACd,OACA;wCACEnwB,WAAW;wCACXmC,OAAO;4CACL4B,OAAO;4CACPF,OAAO;4CACPoa,YAAY;4CACZ9H,UAAU;4CACViW,YAAY;wCACd;wCACA3sB,UAAUm1B,KAAKj0B,IAAI;oCACrB;oCAEF,aAAa,GAAGwvB,MAAM,OAAO;wCAAEnwB,WAAW;wCAA8BP,UAAU,aAAa,GAAG0wB,MAChG,OACA;4CACEnwB,WAAW;4CACXmC,OAAO;gDACLmY,MAAMwZ,kBAAkB,UAAU;gDAClC/vB,OAAO;4CACT;4CACAtE,UAAU,aAAa,GAAG2wB,OACxB,OACA;gDACEpwB,WAAW;gDACX,eAAe,AAAC,cAAqB,OAAR40B,KAAKxuB,EAAE;gDACpCjE,OAAO;oDACLmY,MAAM,AAAC,GAAe,OAAbuZ,cAAa;oDACtB9vB,OAAO,AAAC,GAAQ,OAANA,OAAM;oDAChBkB,iBAAiB4vB;gDACnB;gDACAp1B,UAAU;oDACR,aAAa,GAAG0wB,MACd,QACA;wDACEnwB,WAAW;wDACXmC,OAAO;4DACL8b,YAAY;4DACZ9H,UAAU;4DACViW,YAAY;wDACd;wDACA3sB,UAAUm1B,KAAKj0B,IAAI;oDACrB;oDAEF,aAAa,GAAGwvB,MACd,OACA;wDACEnwB,WAAW;wDACXmC,OAAO;4DACLgU,UAAU;4DACV8H,YAAY;4DACZmO,YAAY;4DACZnnB,iBAAiB;4DACjBpB,OAAOgxB;wDACT;wDACAp1B,UAAUm1B,KAAKhc,MAAM;oDACvB;iDAEH;4CACH;wCAEJ;oCACA;iCACH;4BAAC,GAAGgc,KAAKxuB,EAAE;wBACd;oBAAG;iBACJ;YAAC;SACH;IAAC;AACJ;AACAqqB,WAAWvwB,WAAW,GAAG;AAEzB,0CAA0C;AAC1C,OAAO40B,aAAa,QAAQ;AAC5B,SAASz1B,OAAO01B,KAAK,EAAEz1B,QAAQ01B,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,gBAAgB;IAClB;IACA;IACA;IACA;IACA;CACD;AACD,SAASC,iBAAiB5mB,KAAK;IAC7B,IAAIA,UAAU,GAAG,OAAO;IACxB,IAAIA,QAAQ,KAAK,OAAO;IACxB,IAAIA,QAAQ,KAAK,OAAO;IACxB,IAAIA,QAAQ,KAAK,OAAO;IACxB,OAAO;AACT;AACA,SAAS6mB,aAAahrB,IAAI,EAAEirB,mBAAmB,EAAEX,OAAO,EAAEzuB,IAAI;IAC5D,IAAMqvB,QAAQ,EAAE;IAChB,IAAMpoB,YAAY,IAAItB,KAAKxB,MAAM,GAAG;IACpC,IAAMmrB,iBAAiBroB,UAAUnB,MAAM;IACvC,IAAMypB,eAAeD,mBAAmB,IAAI,CAAC,IAAI,IAAIA;IACrD,IAAME,cAAc,IAAI7pB,KAAKxB,MAAM,GAAG,IAAIorB;IAC1C,IAAME,cAAc,IAAI9pB,KAAK6pB;IAC7B,IAAIE,YAAY,CAAC;IACjB,IAAIC,YAAY;IAChB,IAAMC,WAAW;IACjB,IAAMC,mBAAmB;QACvB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IACD,IAAMC,oBAAoB;QACxB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IACD,MAAOH,YAAYC,SAAU;;YAIzB,IAAM1rB,OAAO,IAAIyB,KAAK8pB;YACtB,IAAIvrB,KAAKgG,WAAW,OAAO/F,MAAM4rB,qBAAqB;YACtD,IAAIznB,QAAQ;YACZ,IAAIpE,KAAKgG,WAAW,OAAO/F,MAAM;oBAG3BirB,0CAAAA,qCAAAA;gBAFJ,IAAMY,UAAU,AAAC,GAAwB3rB,OAAtBH,KAAKgG,WAAW,IAAG,KAAmD7F,OAAhDA,OAAOH,KAAKmG,QAAQ,KAAK,GAAG/F,QAAQ,CAAC,GAAG,MAAK,KAA2C,OAAxCD,OAAOH,KAAK0B,OAAO,IAAItB,QAAQ,CAAC,GAAG;gBAC5H,IAAMwJ,YAAY+hB,gBAAgB,CAAC3rB,KAAKmG,QAAQ,GAAG;gBACnD,IAAI+kB,gCAAAA,2CAAAA,+BAAAA,mBAAqB,CAACX,QAAQ,cAA9BW,oDAAAA,sCAAAA,4BAAgC,CAAC/qB,OAAOF,MAAM,cAA9CirB,2DAAAA,2CAAAA,mCAAgD,CAACpvB,KAAK,cAAtDovB,+DAAAA,wCAAwD,CAACthB,UAAU,EAAE;oBACvE,IAAMmiB,UAAUb,mBAAmB,CAACX,QAAQ,CAACpqB,OAAOF,MAAM,CAACnE,KAAK,CAAC8N,UAAU,CAACsN,IAAI,CAACnH,IAAI,CACnF,SAACtN;+BAAMA,EAAEzC,IAAI,KAAK8rB;;oBAEpB,IAAIC,SAAS3nB,QAAQ2nB,QAAQ3nB,KAAK;gBACpC;YACF;YACA4nB,SAAShgB,IAAI,CAAC;gBAAEhM,MAAAA;gBAAMoE,OAAAA;YAAM;YAC5BmnB,YAAYU,OAAO,CAACV,YAAY7pB,OAAO,KAAK;QAC9C;QAlBA,IAAMsqB,WAAW,EAAE;QACnB,IAAIH,qBAAqB;QACzB,IAAK,IAAIK,WAAW,GAAGA,WAAW,GAAGA;QAiBrC,IAAIL,oBAAoB;YACtB,IAAMM,WAAWH,QAAQ,CAAC,EAAE,CAAChsB,IAAI;YACjC,IAAMosB,YAAYD,SAAShmB,QAAQ;YACnC,IAAIkmB,aAAAA,KAAAA;YACJ,IAAID,cAAcZ,aAAaW,SAASnmB,WAAW,OAAO/F,MAAM;gBAC9DosB,aAAaT,iBAAiB,CAACQ,UAAU;gBACzCZ,YAAYY;YACd;YACAjB,MAAMnf,IAAI,CAAC;gBAAEnJ,MAAMmpB;gBAAUK,YAAAA;YAAW;QAC1C;QACA,IAAId,YAAYvlB,WAAW,KAAK/F,QAAQsrB,YAAYplB,QAAQ,KAAK,GAAG;QACpEslB;IACF;IACA,OAAON;AACT;AACA,IAAImB,uBAAuB;QACzBpV,aAAAA,MACAwP,wBAAAA,iBACAF,qBAAAA,cACA+F,qBAAAA,cACA5F,wBAAAA,iBACAuE,4BAAAA,qBACAxxB,eAAAA;IAEA,IAA0DkxB,qCAAAA,QAAQ51B,QAAQ,CAAC,YAApE4xB,wBAAmDgE,sBAA5B/D,2BAA4B+D;IAC1D,IAAsCA,sCAAAA,QAAQ51B,QAAQ,CAAC,WAAhDw3B,cAA+B5B,uBAAlB6B,iBAAkB7B;IACtC,IAAsCA,sCAAAA,QAAQ51B,QAAQ,CAAC;QACrD03B,SAAS;QACTxsB,OAAO;QACPG,KAAK;QACL+D,OAAO;QACPzH,UAAU;YAAEgkB,GAAG;YAAGpe,GAAG;QAAE;QACvBoqB,WAAW;IACb,QAPOC,cAA+BhC,uBAAlBiC,iBAAkBjC;IAQtC,IAAM9D,WAAW;QAAC;QAAa;KAAY;IAC3C,IAAM7mB,OAAO5J,SAASmwB;IACtB,IAAMsG,YAAY7B,aAAahrB,MAAMirB,uBAAuB,CAAC,GAAGxE,iBAAiB6F;IACjF,IAAMQ,UAAU;QAAC,EAAE;QAAE,EAAE;QAAE,EAAE;QAAE,EAAE;QAAE,EAAE;QAAE,EAAE;QAAE,EAAE;KAAC;IAC5CD,UAAUE,OAAO,CAAC,SAACC,MAAMC;QACvBD,KAAKpqB,IAAI,CAACmqB,OAAO,CAAC,SAAC3sB,KAAK8sB;YACtBJ,OAAO,CAACI,OAAO,CAACnhB,IAAI,CAAC,wCAAK3L;gBAAK6sB,SAAAA;;QACjC;IACF;IACA,OAAO,aAAa,GAAGpC,OAAO,OAAO;QAAEh1B,WAAW;QAA+B,eAAe4D;QAAQnE,UAAU;YAChH,aAAa,GAAGu1B,OAAO,OAAO;gBAAEh1B,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAGs1B,MAAM,OAAO;wBAAE/0B,WAAW;wBAA2BP,UAAU,aAAa,GAAGu1B,OAAO,OAAO;4BAAEh1B,WAAW;4BAAYP,UAAU;gCAC9I,aAAa,GAAGu1B,OACd,UACA;oCACEh1B,WAAW;oCACXC,SAAS,SAATA;+CAAe8wB,yBAAyB,CAACD;;oCACzCrxB,UAAU;wCACR,aAAa,GAAGs1B,MAAM,QAAQ;4CAAE/0B,WAAW;4CAAwFP,UAAUmxB;wCAAgB;wCAC7J,aAAa,GAAGmE,MACd,OACA;4CACEhxB,OAAO;4CACPD,QAAQ;4CACR4oB,SAAS;4CACTO,MAAM;4CACNjtB,WAAW;4CACXmC,OAAO;gDAAE6U,WAAW8Z,wBAAwB,mBAAmB;4CAAe;4CAC9ErxB,UAAU,aAAa,GAAGs1B,MACxB,QACA;gDACEpoB,GAAG;gDACHugB,QAAQ;gDACRhlB,aAAa;gDACbilB,eAAe;gDACfmK,gBAAgB;4CAClB;wCAEJ;qCAEH;gCACH;gCAEFxG,yBAAyB,aAAa,GAAGiE,MAAM,OAAO;oCAAE/0B,WAAW;oCAAyGP,UAAUuxB,SAAS5Z,GAAG,CAAC,SAACqd,SAASlO;+CAAQ,aAAa,GAAGwO,MACnO,UACA;4CACE/0B,WAAW;gDACT;gDACAumB,QAAQ,IAAI,gCAAgC;gDAC5CA,QAAQyK,SAASra,MAAM,GAAG,IAAI,gCAAgC;6CAC/D,CAACuJ,IAAI,CAAC;4CACPjgB,SAAS,SAATA;gDACE4wB,gBAAgB4D;gDAChB1D,yBAAyB;4CAC3B;4CACAtxB,UAAU,aAAa,GAAGs1B,MAAM,QAAQ;gDAAE/0B,WAAW;gDAAwFP,UAAUg1B;4CAAQ;wCACjK,GACAA;;gCACC;6BACJ;wBAAC;oBAAG;oBACL,aAAa,GAAGM,MAAM,UAAU;wBAAE/0B,WAAW;wBAA4IP,UAAU,aAAa,GAAGu1B,OAAO,OAAO;4BAAEh1B,WAAW;4BAAcP,UAAU;gCACpQ,aAAa,GAAGs1B,MAAM,QAAQ;oCAAE/0B,WAAW;gCAAmC;gCAC9E,aAAa,GAAG+0B,MAAM,QAAQ;oCAAE/0B,WAAW;gCAAmC;gCAC9E,aAAa,GAAG+0B,MAAM,QAAQ;oCAAE/0B,WAAW;gCAAmC;6BAC/E;wBAAC;oBAAG;iBACN;YAAC;YACF,aAAa,GAAGg1B,OAAO,OAAO;gBAAEh1B,WAAW;gBAAiDP,UAAU;oBACpG,aAAa,GAAGs1B,MAAM,QAAQ;wBAAE/0B,WAAW;wBAAqFP,UAAU;oBAAO;oBACjJw1B,cAAc7d,GAAG,CAAC,SAACvT;+BAAU,aAAa,GAAGkxB,MAC3C,OACA;4BACE/0B,WAAW;4BACXmC,OAAO;gCAAE8C,iBAAiBpB;4BAAM;wBAClC,GACAA;;oBAEF,aAAa,GAAGkxB,MAAM,QAAQ;wBAAE/0B,WAAW;wBAAqFP,UAAU;oBAAO;iBAClJ;YAAC;YACF,aAAa,GAAGu1B,OAAO,OAAO;gBAAEh1B,WAAW;gBAAeP,UAAU;oBAClE,aAAa,GAAGs1B,MAAM,OAAO;wBAAE/0B,WAAW;wBAAkDP,UAAU;4BAAC;4BAAK;4BAAK;4BAAK;4BAAK;4BAAK;4BAAK;yBAAI,CAAC2X,GAAG,CAAC,SAAC7M,KAAKgc;mCAAQ,aAAa,GAAGwO,MAC1K,OACA;gCACE/0B,WAAW;gCACXP,UAAU8K;4BACZ,GACAgc;;oBACC;oBACH,aAAa,GAAGwO,MAAM,OAAO;wBAAE/0B,WAAW;wBAAUP,UAAU,aAAa,GAAGu1B,OAAO,OAAO;4BAAEh1B,WAAW;4BAAaP,UAAU;gCAC9H,aAAa,GAAGs1B,MAAM,OAAO;oCAAE/0B,WAAW;oCAA8BP,UAAUu3B,UAAU5f,GAAG,CAAC,SAAC+f,MAAM5Q;+CAAQ,aAAa,GAAGwO,MAAM,OAAO;4CAAE/0B,WAAW;4CAAqBP,UAAU03B,KAAKZ,UAAU,IAAI,aAAa,GAAGxB,MAAM,QAAQ;gDAAE/0B,WAAW;gDAA+EP,UAAU03B,KAAKZ,UAAU;4CAAC;wCAAG,GAAGhQ;;gCAAM;gCAC3W0Q,QAAQ7f,GAAG,CAAC,SAACqJ,KAAK8W;2CAAW,aAAa,GAAGxC,MAAM,OAAO;wCAAE/0B,WAAW;wCAAuBP,UAAUghB,IAAIrJ,GAAG,CAAC,SAACogB,MAAMC;4CACrH,IAAQvtB,OAAgBstB,KAAhBttB,MAAMoE,QAAUkpB,KAAVlpB;4CACd,IAAMzK,QAAQqxB,iBAAiB5mB;4CAC/B,IAAMopB,gBAAgBxtB,KAAKgG,WAAW,OAAO/F;4CAC7C,IAAMwtB,UAAU,AAAC,GAAYF,OAAVF,QAAO,KAAU,OAAPE;4CAC7B,IAAMG,YAAYlB,gBAAgBiB;4CAClC,OAAO,aAAa,GAAG5C,MACrB,OACA;gDACE/0B,WAAW;gDACXmC,OAAO;oDACL8C,iBAAiByyB,gBAAgB7zB,QAAQ;oDACzCiU,SAAS4f,gBAAgB,IAAI;oDAC7B7f,QAAQ6f,gBAAgB,YAAY;oDACpC1gB,WAAW4gB,aAAaF,gBAAgB,gBAAgB;gDAC1D;gDACAG,cAAc,SAAdA,aAAe5xB;oDACb,IAAIyxB,eAAe;wDACjBf,eAAegB;wDACf,IAAMvd,OAAOnU,EAAE6xB,aAAa,CAAC/kB,qBAAqB;wDAClD,IAAMe,YAAY5J,KAAK8B,kBAAkB,CAAC,SAAS;4DAAE5B,OAAO;wDAAO;wDACnE2sB,eAAe;4DACbH,SAAS;4DACTxsB,OAAO,AAAC,GAAeF,OAAb4J,WAAU,KAAsB,OAAnB5J,KAAKgG,WAAW;4DACvC3F,KAAKL,KAAK0B,OAAO;4DACjB0C,OAAAA;4DACAuoB,WAAWhzB;4DACXgD,UAAU;gEAAEgkB,GAAGzQ,KAAKE,IAAI,GAAGF,KAAKrW,KAAK,GAAG;gEAAG0I,GAAG2N,KAAK9G,GAAG;4DAAC;wDACzD;oDACF;gDACF;gDACAykB,cAAc,SAAdA;oDACEpB,eAAe;oDACfI,eAAe,SAAC/d;+DAAU,wCAAKA;4DAAM4d,SAAS;;;gDAChD;gDACAn3B,UAAUi4B,iBAAiBppB,QAAQ,KAAK,aAAa,GAAGymB,MACtD,OACA;oDACE/0B,WAAW;oDACXmC,OAAO;wDAAE2V,SAAS8f,YAAY,IAAI;oDAAE;oDACpCn4B,UAAU,aAAa,GAAGs1B,MAAM,QAAQ;wDAAE/0B,WAAW;wDAA2EP,UAAUyK,KAAK0B,OAAO;oDAAG;gDAC3J;4CAEJ,GACA6rB;wCAEJ;oCAAG,GAAGF;;6BACP;wBAAC;oBAAG;iBACN;YAAC;YACFT,YAAYF,OAAO,IAAI,aAAa,GAAG7B,MACrC,OACA;gBACE/0B,WAAW;gBACXmC,OAAO;oBACLmY,MAAMwc,YAAYjwB,QAAQ,CAACgkB,CAAC;oBAC5BvX,KAAKwjB,YAAYjwB,QAAQ,CAAC4F,CAAC;oBAC3BuK,WAAW;gBACb;gBACAvX,UAAU,aAAa,GAAGu1B,OACxB,OACA;oBACEh1B,WAAW;oBACXmC,OAAO;wBACLgV,QAAQ;wBACRqd,WAAW;wBACXzc,SAAS;oBACX;oBACAtY,UAAU;wBACR,aAAa,GAAGu1B,OAAO,OAAO;4BAAEh1B,WAAW;4BAAsGP,UAAU;gCACzJq3B,YAAY1sB,KAAK,CAAC2D,KAAK,CAAC,IAAI,CAAC,EAAE;gCAC/B;gCACA+oB,YAAYvsB,GAAG;6BAChB;wBAAC;wBACF,aAAa,GAAGwqB,MACd,OACA;4BACE/0B,WAAW;4BACXmC,OAAO;gCAAE4pB,YAAY;gCAAQiM,aAAa;gCAASj0B,OAAO;4BAAoB;wBAChF;wBAEF,aAAa,GAAGixB,OAAO,OAAO;4BAAEh1B,WAAW;4BAA2BP,UAAU;gCAC9E,aAAa,GAAGs1B,MACd,OACA;oCACE/0B,WAAW;oCACXmC,OAAO;wCAAE8C,iBAAiB6xB,YAAYD,SAAS;oCAAC;gCAClD;gCAEF,aAAa,GAAG7B,OAAO,QAAQ;oCAAEh1B,WAAW;oCAAiHP,UAAU;wCACrK;wCACAq3B,YAAYxoB,KAAK,CAAC6R,cAAc;wCAChC;qCACD;gCAAC;6BACH;wBAAC;qBACH;gBACH;YAEJ;SAEH;IAAC;AACJ;AACAqW,qBAAqBt2B,WAAW,GAAG;AAEnC,mCAAmC;AACnC,SAASqG,YAAY0xB,SAAS,EAAE54B,OAAO64B,KAAK,EAAE54B,QAAQ64B,MAAM,QAAQ,oBAAoB;AACxF,IAAIC,iBAAiB;IACnB;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,gBAAgB;QAClB74B,cAAAA,OACA84B,cAAAA,kCACA5c,aAAAA,8CAAc;QAWGjJ;IATjB,IAAI,CAAC6lB,SAASA,MAAM3hB,MAAM,KAAK,GAAG;QAChC,OAAO,aAAa,GAAGwhB,OAAO,OAAO;YAAEn4B,WAAW;YAA+BP,UAAU;gBACzF,aAAa,GAAG04B,OAAO,OAAO;oBAAEn4B,WAAW;oBAA0CP,UAAU;wBAC7F,aAAa,GAAGy4B,MAAM,OAAO;4BAAE/1B,OAAO;gCAAE0B,OAAO;gCAAqBoa,YAAY;gCAAuB9H,UAAU;gCAAQiW,YAAY;4BAAI;4BAAGpsB,WAAW;4BAAgBP,UAAUD;wBAAM;wBACvL,aAAa,GAAG04B,MAAMK,gBAAgB,CAAC;qBACxC;gBAAC;gBACF,aAAa,GAAGL,MAAM,OAAO;oBAAEl4B,WAAW;oBAA2CmC,OAAO;wBAAE0B,OAAO;wBAAuBsS,UAAU;oBAAO;oBAAG1W,UAAU;gBAAoB;aAC/K;QAAC;IACJ;IACA,IAAM+4B,WAAW/lB,CAAAA,QAAAA,MAAK+S,GAAG,OAAR/S,OAAAA,AAAS,qBAAG6lB,MAAMlhB,GAAG,CAAC,SAAC+O;eAASA,KAAK7X,KAAK;eAA1CmE;QAA6C;KAAE;IAChE,IAAMgmB,gBAAgB;QAAC;QAAG;QAAI;QAAI;QAAI;KAAI;IAC1C,IAAMC,aAAaD,cAAcrhB,GAAG,CAAC,SAAC0C;eAAQrH,KAAKC,KAAK,CAACoH,MAAM,MAAM0e;;IACrE,OAAO,aAAa,GAAGL,OAAO,OAAO;QAAEn4B,WAAW;QAA+BP,UAAU;YACzF,aAAa,GAAG04B,OAAO,OAAO;gBAAEn4B,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAGy4B,MAAM,OAAO;wBAAE/1B,OAAO;4BAAE0B,OAAO;4BAAqBoa,YAAY;4BAAuB9H,UAAU;4BAAQiW,YAAY;wBAAI;wBAAGpsB,WAAW;wBAAgBP,UAAUD;oBAAM;oBACvL,aAAa,GAAG04B,MAAMK,gBAAgB,CAAC;iBACxC;YAAC;YACF,aAAa,GAAGL,MAAM,OAAO;gBAAEl4B,WAAW;gBAA2EP,UAAU,aAAa,GAAGy4B,MAAM,OAAO;oBAAEl4B,WAAW;oBAAgDP,UAAUic,gBAAgB,eAAe,aAAa,GAAGyc,OAAOF,WAAW;wBAAEx4B,UAAU;4BAC9S,aAAa,GAAG04B,OAAO,OAAO;gCAAEn4B,WAAW;gCAA2EP,UAAU;oCAC9H,aAAa,GAAG04B,OAAO,OAAO;wCAAEn4B,WAAW;wCAAoEP,UAAU;4CACvH,aAAa,GAAGy4B,MAAM,OAAO;gDAAEl4B,WAAW;gDAAuCmC,OAAO;oDAAEgC,YAAY;gDAAsB;4CAAE;4CAC9Hs0B,cAAcE,KAAK,CAAC,GAAGvhB,GAAG,CAAC,SAAC0C,KAAKyM;uDAAQ,aAAa,GAAG2R,MAAM,OAAO;oDAAEl4B,WAAW;oDAAgCmC,OAAO;wDAAEmY,MAAM,AAAC,GAAM,OAAJR,KAAI;wDAAI3V,YAAY;oDAAwB;gDAAE,GAAGoiB;;yCACvL;oCAAC;oCACF,aAAa,GAAG2R,MAAM,OAAO;wCAAEl4B,WAAW;wCAA+CmC,OAAO;4CAAEgC,YAAY;wCAAsB;oCAAE;oCACtIm0B,MAAMlhB,GAAG,CAAC,SAAC+O,MAAMvJ;wCACf,IAAM0P,aAAanG,KAAK7X,KAAK,GAAGkqB,WAAW;wCAC3C,IAAM30B,QAAQsiB,KAAKtiB,KAAK,IAAIu0B,cAAc,CAACxb,QAAQwb,eAAezhB,MAAM,CAAC;wCACzE,OAAO,aAAa,GAAGwhB,OAAO,OAAO;4CAAEn4B,WAAW;4CAAoCP,UAAU;gDAC9F,aAAa,GAAGy4B,MAAM,OAAO;oDAAEl4B,WAAW;oDAA4BmC,OAAO;wDAAE4B,OAAO;wDAASuW,MAAM;oDAAS;oDAAG7a,UAAU,aAAa,GAAGy4B,MAAM,QAAQ;wDAAE/1B,OAAO;4DAAE0B,OAAO;4DAAoBoa,YAAY;4DAAuB9H,UAAU;4DAAQiW,YAAY;4DAAKrkB,UAAU;4DAAU6wB,cAAc;4DAAYjJ,YAAY;4DAAUvF,SAAS;wDAAQ;wDAAGpqB,WAAW;wDAAcP,UAAU0mB,KAAKhe,KAAK;oDAAC;gDAAG;gDAC9Y,aAAa,GAAGgwB,OAAO,OAAO;oDAAEn4B,WAAW;oDAA0CP,UAAU;wDAC7F,aAAa,GAAGy4B,MACd,OACA;4DACEl4B,WAAW;4DACXmC,OAAO;gEAAE4B,OAAO,AAAC,GAAa,OAAXuoB,YAAW;gEAAIxoB,QAAQ;gEAAOK,YAAYN;4DAAM;4DACnEpE,UAAU,aAAa,GAAGy4B,MACxB,OACA;gEACEl4B,WAAW;gEACXmC,OAAO;oEACL6U,WAAW;oEACX7S,YAAYN;oEACZ2wB,WAAW;gEACb;4DACF;wDAEJ;wDAEF,aAAa,GAAG0D,MACd,QACA;4DACEl4B,WAAW;4DACXmC,OAAO;gEAAE0B,OAAO;gEAAoBoa,YAAY;4DAAsB;4DACtExe,UAAU0mB,KAAK7X,KAAK;wDACtB;qDAEH;gDAAC;6CACH;wCAAC,GAAG,AAAC,GAAgBsO,OAAduJ,KAAKhe,KAAK,EAAC,KAAS,OAANyU;oCACxB;iCACD;4BAAC;4BACF,aAAa,GAAGsb,MAAM,OAAO;gCAAEl4B,WAAW;gCAAwCmC,OAAO;oCAAE8b,YAAY;oCAAuB9H,UAAU;oCAAQtS,OAAO;gCAAsB;gCAAGpE,UAAUi5B,WAAWthB,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAG2R,MAAM,QAAQ;wCAAEz4B,UAAU0I;oCAAM,GAAGoe;;4BAAM;yBACnR;oBAAC,KACA,kBAAkB,GAClB,aAAa,GAAG4R,OACd,OACA;wBACEn4B,WAAW;wBACXmC,OAAO;4BAAE6B,WAAW;wBAAQ;wBAC5BvE,UAAU;4BACR,aAAa,GAAG04B,OAAO,OAAO;gCAAEn4B,WAAW;gCAAwEP,UAAU;oCAC3H,aAAa,GAAGy4B,MAAM,OAAO;wCAAEl4B,WAAW;wCAAyCmC,OAAO;4CAAEgC,YAAY;wCAAsB;oCAAE;oCAChI,aAAa,GAAG+zB,MAAM,OAAO;wCAAEl4B,WAAW;wCAAuCmC,OAAO;4CAAEgC,YAAY;wCAAsB;oCAAE;oCAC9Hs0B,cAAcE,KAAK,CAAC,GAAGvhB,GAAG,CAAC,SAAC0C,KAAKyM;+CAAQ,aAAa,GAAG2R,MAAM,OAAO;4CAAEl4B,WAAW;4CAAgCmC,OAAO;gDAAEmR,KAAK,AAAC,GAAY,OAAV,MAAMwG,KAAI;gDAAI3V,YAAY;4CAAwB;wCAAE,GAAGoiB;;iCAC5L;4BAAC;4BACF,aAAa,GAAG2R,MACd,OACA;gCACEl4B,WAAW;gCACXmC,OAAO;oCAAE8b,YAAY;oCAAuB9H,UAAU;oCAAQtS,OAAO;gCAAsB;gCAC3FpE,UAAU,AAAC,qBAAGi5B,YAAYG,OAAO,GAAGzhB,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAG2R,MAAM,QAAQ;wCAAEz4B,UAAU0I;oCAAM,GAAGoe;;4BAC7G;4BAEF,aAAa,GAAG2R,MAAM,OAAO;gCAAEl4B,WAAW;gCAAmEP,UAAU64B,MAAMlhB,GAAG,CAAC,SAAC+O,MAAMvJ;oCACtI,IAAM0P,aAAanG,KAAK7X,KAAK,GAAGkqB,WAAW;oCAC3C,IAAM30B,QAAQsiB,KAAKtiB,KAAK,IAAIu0B,cAAc,CAACxb,QAAQwb,eAAezhB,MAAM,CAAC;oCACzE,OAAO,aAAa,GAAGwhB,OAAO,OAAO;wCAAEn4B,WAAW;wCAAsFP,UAAU;4CAChJ,aAAa,GAAGy4B,MAAM,OAAO;gDAAEl4B,WAAW;gDAAsEP,UAAU,aAAa,GAAG04B,OACxI,OACA;oDACEn4B,WAAW;oDACXmC,OAAO;wDACL2B,QAAQ,AAAC,GAAa,OAAXwoB,YAAW;wDACtBnoB,YAAYN;wDACZG,WAAWsoB,aAAa,IAAI,QAAQ;oDACtC;oDACA7sB,UAAU;wDACR,aAAa,GAAGy4B,MACd,OACA;4DACEl4B,WAAW;4DACXmC,OAAO;gEACLmR,KAAK;gEACL0D,WAAW;gEACX7S,YAAYN;gEACZ2wB,WAAW;4DACb;wDACF;wDAEF,aAAa,GAAG0D,MACd,QACA;4DACEl4B,WAAW;4DACXmC,OAAO;gEACLmR,KAAK;gEACL0D,WAAW;gEACXnT,OAAO;gEACPoa,YAAY;4DACd;4DACAxe,UAAU0mB,KAAK7X,KAAK;wDACtB;qDAEH;gDACH;4CACA;4CACF,aAAa,GAAG4pB,MACd,OACA;gDACEl4B,WAAW;gDACXmC,OAAO;oDAAEiR,QAAQ;oDAASkH,MAAM;oDAAOtD,WAAW;oDAAoB8hB,UAAU;gDAAQ;gDACxFr5B,UAAU,aAAa,GAAGy4B,MAAM,QAAQ;oDAAE/1B,OAAO;wDAAE0B,OAAO;wDAAoBoa,YAAY;wDAAuB9H,UAAU;wDAAQiW,YAAY;oDAAI;oDAAGpsB,WAAW;oDAAcP,UAAU0mB,KAAKhe,KAAK;gDAAC;4CACtM;yCAEH;oCAAC,GAAG,AAAC,GAAgByU,OAAduJ,KAAKhe,KAAK,EAAC,KAAS,OAANyU;gCACxB;4BAAG;yBACJ;oBACH;gBAEF;YAAG;SACN;IAAC;AACJ;AACA,IAAI2b,iBAAiB;WAAM,aAAa,GAAGL,MAAM,UAAU;QAAEl4B,WAAW;QAA+IP,UAAU,aAAa,GAAGy4B,MAAM,OAAO;YAAEl4B,WAAW;YAAcP,UAAU;gBAAC;gBAAG;gBAAG;aAAE,CAAC2X,GAAG,CAAC,SAAChB;uBAAM,aAAa,GAAG8hB,MAAM,QAAQ;oBAAEl4B,WAAW;oBAAwBmC,OAAO;wBAAEgC,YAAY;oBAAsB;gBAAE,GAAGiS;;QAAI;IAAG;;AAClbiiB,cAAcn4B,WAAW,GAAG;AAE5B,iCAAiC;AACjC,SAASb,OAAO05B,KAAK,EAAEz5B,QAAQ05B,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,kBAAkB;AACtB,IAAIC,cAAc;QAChB15B,cAAAA,OACA25B,gBAAAA,SACAC,oBAAAA;IAEA,IAAMC,cAAcF,WAAW,EAAE;IACjC,IAAMX,WAAWY,CAAAA,wBAAAA,kCAAAA,YAAa5T,GAAG,KAAI;IACrC,IAAM8T,WAAWF,CAAAA,wBAAAA,kCAAAA,YAAavT,GAAG,KAAI;IACrC,IAAM0T,cAAcH,CAAAA,wBAAAA,kCAAAA,YAAaxJ,MAAM,KAAI;QAAC;QAAG;QAAK;QAAK;QAAK;KAAI;IAClE,IAAM4J,cAAc,qBAAClrB;QACnB,IAAIA,SAAS,KAAK,OAAO,AAAC,GAA2B,OAAzB,AAACA,CAAAA,QAAQ,GAAE,EAAGmrB,OAAO,CAAC,IAAG;QACrD,OAAOnrB,MAAM8R,QAAQ;IACvB;IACA,IAAMsZ,kBAAkB,yBAACprB;QACvB,IAAIkqB,aAAac,UAAU,OAAO;QAClC,IAAMhN,aAAa,AAAChe,CAAAA,QAAQgrB,QAAO,IAAMd,CAAAA,WAAWc,QAAO,IAAK;QAChE,OAAO7mB,KAAK+S,GAAG,CAAC,GAAG/S,KAAKoT,GAAG,CAAC,KAAKyG;IACnC;IACA,OAAO,aAAa,GAAG0M,OAAO,OAAO;QAAEh5B,WAAW;QAA+BP,UAAU;YACzF,aAAa,GAAGu5B,OAAO,OAAO;gBAAEh5B,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAGs5B,MAAM,OAAO;wBAAE/4B,WAAW;wBAAwGP,UAAUD;oBAAM;oBAClK,aAAa,GAAGu5B,MAAM,UAAU;wBAAE/4B,WAAW;wBAA6JP,UAAU,aAAa,GAAGu5B,OAAO,OAAO;4BAAEh5B,WAAW;4BAAcP,UAAU;gCACrR,aAAa,GAAGs5B,MAAM,QAAQ;oCAAE/4B,WAAW;gCAAgD;gCAC3F,aAAa,GAAG+4B,MAAM,QAAQ;oCAAE/4B,WAAW;gCAAgD;gCAC3F,aAAa,GAAG+4B,MAAM,QAAQ;oCAAE/4B,WAAW;gCAAgD;6BAC5F;wBAAC;oBAAG;iBACN;YAAC;YACF,aAAa,GAAGg5B,OAAO,OAAO;gBAAEh5B,WAAW;gBAAsDP,UAAU;oBACzG,aAAa,GAAGu5B,OAAO,OAAO;wBAAEh5B,WAAW;wBAAwCP,UAAU;4BAC3F,aAAa,GAAGs5B,MAAM,OAAO;gCAAE/4B,WAAW;gCAA6EP,UAAU85B,YAAYZ,KAAK,GAAGE,OAAO,GAAGzhB,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAGwS,MACjM,QACA;wCACE/4B,WAAW;wCACXP,UAAU0I,SAAS,MAAM,AAAC,GAAc,OAAZA,QAAQ,KAAI,OAAKA;oCAC/C,GACA,AAAC,KAAQ,OAAJoe;;4BACJ;4BACH,aAAa,GAAGyS,OAAO,OAAO;gCAAEh5B,WAAW;gCAA2CP,UAAU;oCAC9F,aAAa,GAAGu5B,OAAO,OAAO;wCAAEh5B,WAAW;wCAAwCP,UAAU;4CAC3F85B,YAAYniB,GAAG,CAAC,SAACjP,OAAOoe;gDACtB,IAAM1f,WAAW,MAAM,AAACsB,CAAAA,QAAQoxB,WAAW,CAAC,EAAC,AAAC,IAAKA,CAAAA,WAAW,CAACA,YAAY5iB,MAAM,GAAG,EAAE,GAAG4iB,WAAW,CAAC,EAAC,AAAC,IAAI;gDAC3G,OAAO,aAAa,GAAGR,MACrB,OACA;oDACE,eAAe,AAAC,UAAa,OAAJxS;oDACzBvmB,WAAW;oDACXmC,OAAO;wDAAEmR,KAAK,AAAC,GAAW,OAATzM,UAAS;oDAAG;gDAC/B,GACA,AAAC,QAAW,OAAJ0f;4CAEZ;4CACA,aAAa,GAAGwS,MAAM,OAAO;gDAAE/4B,WAAW;4CAAsE;4CAChH,aAAa,GAAG+4B,MAAM,OAAO;gDAAE/4B,WAAW;4CAAwE;yCACnH;oCAAC;oCACF,aAAa,GAAG+4B,MAAM,OAAO;wCAAE/4B,WAAW;wCAA4EP,UAAU45B,YAAYjiB,GAAG,CAAC,SAACuiB,QAAQ/c;4CACvJ,IAAMgd,yBAAyBF,gBAAgBC,OAAOrrB,KAAK;4CAC3D,IAAM8Q,WAAWua,OAAOva,QAAQ,IAAIua,OAAO91B,KAAK,IAAIo1B;4CACpD,OAAO,aAAa,GAAGF,MACrB,OACA;gDACE/4B,WAAW;gDACXP,UAAU,aAAa,GAAGs5B,MACxB,OACA;oDACE/4B,WAAW;oDACXmC,OAAO;wDACL2B,QAAQ,AAAC,GAAyB,OAAvB81B,wBAAuB;wDAClCz1B,YAAYib;oDACd;oDACA3f,UAAU,aAAa,GAAGs5B,MAAM,OAAO;wDAAE/4B,WAAW;wDAAwKP,UAAU+5B,YAAYG,OAAOrrB,KAAK;oDAAE;gDAClQ;4CAEJ,GACA,AAAC,GAAiBsO,OAAf+c,OAAOh5B,IAAI,EAAC,KAAS,OAANic;wCAEtB;oCAAG;iCACJ;4BAAC;yBACH;oBAAC;oBACF,aAAa,GAAGmc,MACd,OACA;wBACE/4B,WAAW;wBACXmC,OAAO;4BAAE4pB,YAAY;4BAAQhoB,OAAO;wBAAoB;wBACxDtE,UAAU45B,YAAYjiB,GAAG,CAAC,SAACuiB,QAAQ/c;mCAAU,aAAa,GAAGmc,MAC3D,OACA;gCACE/4B,WAAW;gCACXP,UAAU,aAAa,GAAGs5B,MAAM,QAAQ;oCAAE/4B,WAAW;oCAAwKP,UAAUk6B,OAAOh5B,IAAI;gCAAC;4BACrP,GACA,AAAC,SAAc,OAANic;;oBAEb;iBAEH;YAAC;SACH;IAAC;AACJ;AACAsc,YAAYh5B,WAAW,GAAG;AAE1B,8BAA8B;AAC9B,OAAO25B,WAAWhT,WAAWiT,QAAQ,EAAE56B,YAAY66B,UAAU,EAAE7wB,UAAU8wB,OAAO,EAAExyB,aAAayyB,UAAU,QAAQ,QAAQ;AACzH,SAAS1zB,YAAY2zB,SAAS,EAAE76B,OAAO86B,KAAK,EAAE76B,QAAQ86B,MAAM,QAAQ,oBAAoB;AACxF,IAAIC,mBAAmB,0BAACC;IACtB,IAAIA,OAAO3jB,MAAM,KAAK,GAAG,OAAO;IAChC,IAAI2jB,OAAO3jB,MAAM,KAAK,GAAG,OAAO,AAAC,KAAmB2jB,OAAfA,MAAM,CAAC,EAAE,CAACzP,CAAC,EAAC,KAAe,OAAZyP,MAAM,CAAC,EAAE,CAAC7tB,CAAC;IAC/D,IAAI8tB,OAAO,AAAC,KAAmBD,OAAfA,MAAM,CAAC,EAAE,CAACzP,CAAC,EAAC,KAAe,OAAZyP,MAAM,CAAC,EAAE,CAAC7tB,CAAC;IAC1C,IAAK,IAAI2J,IAAI,GAAGA,IAAIkkB,OAAO3jB,MAAM,EAAEP,IAAKmkB,QAAQ,AAAC,MAAoBD,OAAfA,MAAM,CAAClkB,EAAE,CAACyU,CAAC,EAAC,KAAe,OAAZyP,MAAM,CAAClkB,EAAE,CAAC3J,CAAC;IAChF,OAAO8tB;AACT;AACA,IAAIC,iBAAiB,wBAACF,QAAQx2B;IAC5B,IAAIw2B,OAAO3jB,MAAM,KAAK,GAAG,OAAO;IAChC,IAAM8jB,WAAWJ,iBAAiBC;IAClC,IAAMI,YAAYJ,MAAM,CAACA,OAAO3jB,MAAM,GAAG,EAAE;IAC3C,IAAMgkB,aAAaL,MAAM,CAAC,EAAE;IAC5B,OAAO,AAAC,GAAgBI,OAAdD,UAAS,OAAoB32B,OAAf42B,UAAU7P,CAAC,EAAC,KAAe8P,OAAZ72B,QAAO,OAAqBA,OAAhB62B,WAAW9P,CAAC,EAAC,KAAU,OAAP/mB,QAAO;AAC5E;AACA,IAAI82B,4BAA4B,mCAACxZ;IAC/B,IAAI,CAACA,QAAQA,KAAKzK,MAAM,GAAG,GAAG,OAAO;IACrC,IAAMkkB,aAAazZ,IAAI,CAAC,EAAE;IAC1B,IAAM0Z,YAAY1Z,IAAI,CAACA,KAAKzK,MAAM,GAAG,EAAE;IACvC,IAAIkkB,eAAe,GAAG,OAAOC,YAAY,IAAI,MAAMA,YAAY,IAAI,CAAC,MAAM;IAC1E,OAAOroB,KAAKC,KAAK,CAAC,AAACooB,CAAAA,YAAYD,UAAS,IAAKpoB,KAAKsoB,GAAG,CAACF,cAAc,OAAO;AAC7E;AACA,IAAIG,eAAe,sBAAC3vB,QAAQ4vB,YAAYC;IACtC,OAAQ7vB;QACN,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,IAAI6vB,cAAcA,WAAWvkB,MAAM,IAAI,GAAG;gBACxC,IAAM1J,YAAY,IAAItB,KAAKuvB,UAAU,CAAC,EAAE;gBACxC,IAAM5H,UAAU,IAAI3nB,KAAKuvB,UAAU,CAACA,WAAWvkB,MAAM,GAAG,EAAE;gBAC1D,IAAMwkB,aAAa,AAAC7H,CAAAA,QAAQpjB,WAAW,KAAKjD,UAAUiD,WAAW,EAAC,IAAK,KAAMojB,CAAAA,QAAQjjB,QAAQ,KAAKpD,UAAUoD,QAAQ,EAAC;gBACrH,IAAI8qB,eAAe,GAAG;oBACpB,IAAMC,WAAW3oB,KAAKgT,IAAI,CAAC,AAAC6N,CAAAA,QAAQlf,OAAO,KAAKnH,UAAUmH,OAAO,EAAC,IAAK;oBACvE,OAAO,AAAC,QAAsBgnB,OAAfA,UAAS,QAA8B,OAAxBA,WAAW,IAAI,MAAM;gBACrD,OAAO,IAAID,aAAa,IAAI;oBAC1B,OAAO,AAAC,QAA0BA,OAAnBA,YAAW,UAAkC,OAA1BA,aAAa,IAAI,MAAM;gBAC3D,OAAO;oBACL,IAAME,QAAQ5oB,KAAK6oB,KAAK,CAACH,aAAa;oBACtC,IAAMlI,SAASkI,aAAa;oBAC5B,OAAOlI,WAAW,IAAI,AAAC,QAAoBoI,OAAbA,OAAM,SAA4B,OAArBA,QAAQ,IAAI,MAAM,MAAO,AAAC,QAAiBpI,OAAVoI,OAAM,MAAW,OAAPpI,QAAO;gBAC/F;YACF;YACA,OAAO,AAAC,aAAuB,OAAXgI,YAAW;QACjC;YACE,OAAO;IACX;AACF;AACA,IAAIM,eAAe,sBAAClwB,QAAQmwB,oBAAoBC;IAC9C,IAAIpwB,WAAW,SAASowB,iBAAiBA,cAAc9kB,MAAM,IAAI,GAAG;QAClE,OAAO+kB,gBAAgB,IAAI/vB,KAAK8vB,aAAa,CAAC,EAAE,GAAG,IAAI9vB,KAAK8vB,aAAa,CAACA,cAAc9kB,MAAM,GAAG,EAAE;IACrG;IACA,IAAI6kB,sBAAsBA,mBAAmB7kB,MAAM,IAAI,GAAG;QACxD,OAAO+kB,gBAAgB,IAAI/vB,KAAK6vB,kBAAkB,CAAC,EAAE,GAAG,IAAI7vB,KAAK6vB,kBAAkB,CAACA,mBAAmB7kB,MAAM,GAAG,EAAE;IACpH,OAAO,IAAI6kB,sBAAsBA,mBAAmB7kB,MAAM,KAAK,GAAG;QAChE,OAAOglB,iBAAiB,IAAIhwB,KAAK6vB,kBAAkB,CAAC,EAAE;IACxD;IACA,OAAO;AACT;AACA,IAAIE,kBAAkB,yBAACzuB,WAAWqmB;IAChC,IAAMvoB,aAAa;QAAC;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;KAAM;IACvG,IAAM6wB,WAAW3uB,UAAUiD,WAAW,OAAOojB,QAAQpjB,WAAW;IAChE,IAAMrN,KAAKkI,UAAU,CAACkC,UAAUoD,QAAQ,GAAG;IAC3C,IAAMwrB,KAAKxxB,OAAO4C,UAAUrB,OAAO,IAAItB,QAAQ,CAAC,GAAG;IACnD,IAAMwxB,KAAK7uB,UAAUiD,WAAW;IAChC,IAAM6rB,KAAKhxB,UAAU,CAACuoB,QAAQjjB,QAAQ,GAAG;IACzC,IAAM2rB,KAAK3xB,OAAOipB,QAAQ1nB,OAAO,IAAItB,QAAQ,CAAC,GAAG;IACjD,IAAM2xB,KAAK3I,QAAQpjB,WAAW;IAC9B,OAAO0rB,WAAW,AAAC,GAAQC,OAANh5B,IAAG,KAAWk5B,OAARF,IAAG,OAAWG,OAAND,IAAG,KAAM,OAAHC,MAAO,AAAC,GAAQH,OAANh5B,IAAG,KAASi5B,OAAND,IAAG,KAAWE,OAARD,IAAG,OAAWE,OAAND,IAAG,KAASE,OAAND,IAAG,KAAM,OAAHC;AACrF;AACA,IAAIN,mBAAmB,0BAACzxB;IACtB,IAAMa,aAAa;QAAC;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;QAAO;KAAM;IACvG,OAAO,AAAC,GAAiCV,OAA/BU,UAAU,CAACb,KAAKmG,QAAQ,GAAG,EAAC,KAA+CnG,OAA5CG,OAAOH,KAAK0B,OAAO,IAAItB,QAAQ,CAAC,GAAG,MAAK,MAAuB,OAAnBJ,KAAKgG,WAAW;AACvG;AACA,IAAIgsB,eAAe,sBAAC9a;;mBAASA,iBAAAA,2BAAAA,KAAM+a,MAAM,CAAC,SAACC,GAAGnc;eAAMmc,IAAInc;OAAG,yCAAM;;AACjE,IAAIoc,sBAAsB,6BAAC/tB;IACzB,IAAIA,UAAU,GAAG,OAAO;IACxB,IAAMysB,MAAMtoB,KAAKsoB,GAAG,CAACzsB;IACrB,IAAMguB,SAAShuB,QAAQ,IAAI,MAAM;IACjC,IAAIysB,OAAO,KAAK,OAAO,AAAC,GAAY,OAAVuB,QAAO,KAA0B,OAAvB,AAACvB,CAAAA,MAAM,GAAE,EAAGtB,OAAO,CAAC,IAAG;IAC3D,IAAIsB,OAAO,KAAK,OAAO,AAAC,GAAY,OAAVuB,QAAO,KAA0B,OAAvB,AAACvB,CAAAA,MAAM,GAAE,EAAGtB,OAAO,CAAC,IAAG;IAC3D,IAAIsB,OAAO,KAAK,OAAO,AAAC,GAAY,OAAVuB,QAAO,KAA0B,OAAvB,AAACvB,CAAAA,MAAM,GAAE,EAAGtB,OAAO,CAAC,IAAG;IAC3D,OAAO,AAAC,GAAYsB,OAAVuB,QAAO,KAAkB,OAAfvB,IAAItB,OAAO,CAAC;AAClC;AACA,IAAI8C,WAAW;QAAGnb,aAAAA;IAChB,IAAwCyY,qCAAAA,QAAQ36B,QAAQ,CAAC,WAAlDs9B,eAAiC3C,sBAAnB4C,kBAAmB5C;IACxC,IAAoCA,sCAAAA,QAAQ36B,QAAQ,CAAC;QAAE2rB,GAAG;QAAGpe,GAAG;IAAE,QAA3DiwB,aAA6B7C,uBAAjB8C,gBAAiB9C;IACpC,IAA4CA,sCAAAA,QAAQ36B,QAAQ,CAC1DkiB,KAAKwb,WAAW,IAAIxb,KAAKwb,WAAW,CAACjmB,MAAM,GAAG,IAAIyK,KAAKwb,WAAW,CAACxb,KAAKwb,WAAW,CAACjmB,MAAM,GAAG,EAAE,GAAG,YAD7FvF,iBAAqCyoB,uBAArBxoB,oBAAqBwoB;IAG5C,IAAM3nB,eAAe2nB,QAAQ3wB,MAAM,CAAC;IACpC,IAA6C4wB,YAAAA,SAAS;QACpD,IAAI,CAAC1Y,KAAKwb,WAAW,IAAI,CAACxb,KAAK8Z,UAAU,IAAI9pB,mBAAmB,OAAO;YACrE,OAAO;gBAAEyrB,cAAczb,KAAKA,IAAI;gBAAEoa,oBAAoBpa,KAAK8Z,UAAU,IAAI,EAAE;YAAC;QAC9E;QACA,IAAMzmB,MAAM,aAAa,GAAG,IAAI9I;QAChC,IAAImxB,aAAa,aAAa,GAAG,IAAInxB;QACrC,OAAQyF;YACN,KAAK;gBACH0rB,WAAW3G,OAAO,CAAC1hB,IAAI7I,OAAO,KAAK;gBACnC;YACF,KAAK;gBACHkxB,WAAW3G,OAAO,CAAC1hB,IAAI7I,OAAO,KAAK;gBACnC;YACF,KAAK;gBACHkxB,WAAWC,QAAQ,CAACtoB,IAAIpE,QAAQ,KAAK;gBACrC;YACF,KAAK;gBACHysB,WAAWC,QAAQ,CAACtoB,IAAIpE,QAAQ,KAAK;gBACrC;YACF,KAAK;gBACHysB,WAAWE,WAAW,CAACvoB,IAAIvE,WAAW,KAAK;gBAC3C;YACF;gBACE,OAAO;oBAAE2sB,cAAczb,KAAKA,IAAI;oBAAEoa,oBAAoBpa,KAAK8Z,UAAU,IAAI,EAAE;gBAAC;QAChF;QACA,IAAM+B,WAAW,EAAE;QACnB,IAAMC,aAAa,EAAE;QACrB9b,KAAK8Z,UAAU,CAAChE,OAAO,CAAC,SAACiG,WAAWvgB;YAClC,IAAMwgB,WAAW,IAAIzxB,KAAKwxB;YAC1B,IAAIC,YAAYN,cAAcM,YAAY3oB,OAAOmI,QAAQwE,KAAKA,IAAI,CAACzK,MAAM,EAAE;gBACzEsmB,SAAS/mB,IAAI,CAACkL,KAAKA,IAAI,CAACxE,MAAM;gBAC9BsgB,WAAWhnB,IAAI,CAACinB;YAClB;QACF;QACA,OAAO;YACLN,cAAcI,SAAStmB,MAAM,GAAG,IAAIsmB,WAAW7b,KAAKA,IAAI;YACxDoa,oBAAoB0B,WAAWvmB,MAAM,GAAG,IAAIumB,aAAa9b,KAAK8Z,UAAU,IAAI,EAAE;QAChF;IACF,GAAG;QAAC9Z,KAAKA,IAAI;QAAEA,KAAK8Z,UAAU;QAAE9Z,KAAKwb,WAAW;QAAExrB;KAAe,GAtCzDyrB,eAAqC/C,UAArC+C,cAAcrB,qBAAuB1B,UAAvB0B;IAuCtB,IAAM6B,mBAAmBvD,SAAS;eAAMc,0BAA0BiC;OAAe;QAACA;KAAa;IAC/F,IAAMS,aAAaD,oBAAoB;IACvC,IAAME,mBAAmBzD,SAAS;eAAMkB,aAAa5pB,gBAAgByrB,aAAalmB,MAAM,EAAEyK,KAAK8Z,UAAU;OAAG;QAAC9pB;QAAgByrB,aAAalmB,MAAM;QAAEyK,KAAK8Z,UAAU;KAAC;IAClK,IAAMsC,mBAAmB1D,SAAS;eAAMyB,aAAanqB,gBAAgBoqB,oBAAoBpa,KAAK8Z,UAAU;OAAG;QAAC9pB;QAAgBoqB;QAAoBpa,KAAK8Z,UAAU;KAAC;IAChK,IAAMuC,eAAe3D,SAAS;eAAMuC,oBAAoBH,aAAaW;OAAgB;QAACA;KAAa;IACnG,IAA4C/C,aAAAA,SAAS;YAKvCrnB,OACAA;QALZ,IAAM1O,QAAQ;QACd,IAAMD,SAAS;QACf,IAAMiU,UAAU;QAChB,IAAI,CAAC8kB,gBAAgBA,aAAalmB,MAAM,KAAK,GAAG,OAAO;YAAE2jB,QAAQ,EAAE;YAAEhB,UAAU;YAAGd,UAAU;YAAGkF,YAAY35B;YAAO45B,aAAa75B;QAAO;QACtI,IAAM+hB,MAAMpT,CAAAA,QAAAA,MAAKoT,GAAG,OAARpT,OAAS,qBAAGoqB;QACxB,IAAMrX,MAAM/S,CAAAA,SAAAA,MAAK+S,GAAG,OAAR/S,QAAS,qBAAGoqB;QACxB,IAAMvjB,QAAQkM,MAAMK,OAAO;QAC3B,IAAM+X,mBAAmBf,aAAazlB,GAAG,CAAC,SAAC9I,OAAOsO;mBAAW;gBAC3DiO,GAAG9S,UAAU6E,QAASigB,CAAAA,aAAalmB,MAAM,GAAG,CAAA,IAAM5S,CAAAA,QAAQgU,UAAU,CAAA;gBACpEtL,GAAG3I,SAASiU,UAAU,AAACzJ,CAAAA,QAAQuX,GAAE,IAAKvM,QAASxV,CAAAA,SAASiU,UAAU,CAAA;gBAClEzJ,OAAAA;YACF;;QACA,OAAO;YAAEgsB,QAAQsD;YAAkBtE,UAAUzT;YAAK2S,UAAUhT;YAAKkY,YAAY35B;YAAO45B,aAAa75B;QAAO;IAC1G,GAAG;QAAC+4B;KAAa,GAdTvC,SAAoCR,WAApCQ,QAAQoD,aAA4B5D,WAA5B4D,YAAYC,cAAgB7D,WAAhB6D;IAe5B,IAAME,aAAa/D,SAAS;eAAMO,iBAAiBC;OAAS;QAACA;KAAO;IACpE,IAAMwD,WAAWhE,SAAS;eAAMU,eAAeF,QAAQqD;OAAc;QAACrD;QAAQqD;KAAY;IAC1F,IAAMI,aAAajE,SACjB;eAAM,AAAC,gBAAuDrnB,OAAxC6qB,aAAa,aAAa,YAAW,KAA2C,OAAxC7qB,KAAKurB,MAAM,GAAG5d,QAAQ,CAAC,IAAI6d,MAAM,CAAC,GAAG;OACnG;QAACX;KAAW;IAEd,IAAMY,kBAAkB,yBAACzqB;QACvB,IAAI,CAACvB,aAAaU,OAAO,IAAI0nB,OAAO3jB,MAAM,KAAK,GAAG;QAClD,IAAMwnB,MAAM1qB,MAAMqkB,aAAa,CAACsG,eAAe;QAC/C,IAAI,CAACD,KAAK;QACV,IAAM/jB,OAAO+jB,IAAIprB,qBAAqB;QACtC,IAAM8X,IAAI,AAACpX,CAAAA,MAAM4qB,OAAO,GAAGjkB,KAAKE,IAAG,AAAC,IAAIF,KAAKrW,KAAK,GAAG25B;QACrD,IAAIY,eAAe;QACnB,IAAIC,cAAc9rB,KAAKsoB,GAAG,CAACT,MAAM,CAAC,EAAE,CAACzP,CAAC,GAAGA;QACzCyP,OAAOpD,OAAO,CAAC,SAACsH,OAAO5hB;YACrB,IAAM6hB,WAAWhsB,KAAKsoB,GAAG,CAACyD,MAAM3T,CAAC,GAAGA;YACpC,IAAI4T,WAAWF,aAAa;gBAC1BA,cAAcE;gBACdH,eAAe1hB;YACjB;QACF;QACA6f,gBAAgB6B;QAChB3B,cAAc;YACZ9R,GAAGyP,MAAM,CAACgE,aAAa,CAACzT,CAAC,GAAG6S,aAAatjB,KAAKrW,KAAK;YACnD0I,GAAG6tB,MAAM,CAACgE,aAAa,CAAC7xB,CAAC,GAAGkxB,cAAcvjB,KAAKtW,MAAM;QACvD;IACF;IACA,IAAM46B,uBAAuBpB,aAAa;QACxC;YAAEvQ,QAAQ;YAAMlpB,OAAO;QAAsB;QAC7C;YAAEkpB,QAAQ;YAAOlpB,OAAO;QAAsB;QAC9C;YAAEkpB,QAAQ;YAAQlpB,OAAO;QAAuB;KACjD,GAAG;QACF;YAAEkpB,QAAQ;YAAMlpB,OAAO;QAAsB;QAC7C;YAAEkpB,QAAQ;YAAOlpB,OAAO;QAAsB;QAC9C;YAAEkpB,QAAQ;YAAQlpB,OAAO;QAAuB;KACjD;IACD,IAAM86B,aAAarB,aAAa,sBAAsB;IACtD,IAAMsB,oBAAoBtB,aAAa,wBAAwB;IAC/D,OAAO,aAAa,GAAGlD,OACrB,OACA;QACEn4B,KAAKiQ;QACLlS,WAAW;QACXmC,OAAO;YACL2B,QAAQ;YACRqT,QAAQ;YACRhT,YAAY;YACZqwB,WAAW;QACb;QACA/0B,UAAU;YACR,aAAa,GAAG26B,OAAO,OAAO;gBAAEp6B,WAAW;gBAA8DP,UAAU;oBACjH,aAAa,GAAG06B,MAAM,OAAO;wBAAEn6B,WAAW;wBAAmBP,UAAU,aAAa,GAAG06B,MACrF,MACA;4BACEn6B,WAAW;4BACXmC,OAAO;gCAAE0B,OAAO;gCAAuBoa,YAAY;gCAAkC4gB,eAAe;4BAAU;4BAC9Gp/B,UAAU2hB,KAAK5hB,KAAK;wBACtB;oBACA;oBACF4hB,KAAKwb,WAAW,IAAIxb,KAAKwb,WAAW,CAACjmB,MAAM,GAAG,KAAK,aAAa,GAAGwjB,MAAM,OAAO;wBAAEn6B,WAAW;wBAA2EP,UAAU2hB,KAAKwb,WAAW,CAACxlB,GAAG,CAAC,SAAC/L;mCAAW,aAAa,GAAG8uB,MACjO,UACA;gCACEn0B,MAAM;gCACN/F,SAAS,SAATA;2CAAeoR,kBAAkBhG;;gCACjCrL,WAAW;gCACXmC,OAAO;oCACL8b,YAAY;oCACZhZ,iBAAiBmM,mBAAmB/F,SAAS,sBAAsB;oCACnExH,OAAOuN,mBAAmB/F,SAAS,UAAU;gCAC/C;gCACA5L,UAAU4L;4BACZ,GACAA;;oBACC;oBACH,aAAa,GAAG8uB,MAAM,OAAO;wBAAEn6B,WAAW;wBAAiBP,UAAU,aAAa,GAAG26B,OACnF,OACA;4BACEp6B,WAAW;4BACXmC,OAAO;gCAAE8C,iBAAiB25B;gCAAmBxR,YAAY;4BAAoC;4BAC7F3tB,UAAU;gCACR,aAAa,GAAG06B,MACd,OACA;oCACEn6B,WAAW;oCACX0sB,SAAS;oCACTvqB,OAAO;wCAAE8qB,MAAM0R;wCAAYvR,YAAY;oCAAwB;oCAC/D3tB,UAAU69B,aAAa,aAAa,GAAGnD,MAAM,QAAQ;wCAAExtB,GAAG;oCAA4B,KAAK,aAAa,GAAGwtB,MAAM,QAAQ;wCAAExtB,GAAG;oCAA6B;gCAC7J;gCAEF,aAAa,GAAGytB,OACd,QACA;oCACEp6B,WAAW;oCACXmC,OAAO;wCAAE0B,OAAO86B;wCAAY1gB,YAAY;wCAAkCmP,YAAY;oCAAyB;oCAC/G3tB,UAAU;wCACRgT,KAAKsoB,GAAG,CAACsC;wCACT;qCACD;gCACH;6BAEH;wBACH;oBACA;iBACH;YAAC;YACF,aAAa,GAAGlD,MAAM,OAAO;gBAAEn6B,WAAW;gBAAkCP,UAAU,aAAa,GAAG06B,MACpG,OACA;oBACEn6B,WAAW;oBACXmC,OAAO;wBAAE0B,OAAO;wBAAoBoa,YAAY;wBAAkC4gB,eAAe;wBAAWzR,YAAY;oBAA2B;oBACnJ3tB,UAAUg+B;gBACZ;YACA;YACF,aAAa,GAAGrD,OAAO,OAAO;gBAAEp6B,WAAW;gBAA6FP,UAAU;oBAChJ,aAAa,GAAG26B,OACd,OACA;wBACEp6B,WAAW;wBACX0sB,SAAS,AAAC,OAAoBiR,OAAdD,YAAW,KAAe,OAAZC;wBAC9BmB,qBAAqB;wBACrBr/B,UAAU;4BACR,aAAa,GAAG06B,MAAM,QAAQ;gCAAE16B,UAAU,aAAa,GAAG06B,MAAM,kBAAkB;oCAAE/zB,IAAI23B;oCAAYpR,IAAI;oCAAMC,IAAI;oCAAMC,IAAI;oCAAMC,IAAI;oCAAQrtB,UAAUi/B,qBAAqBtnB,GAAG,CAAC,SAACglB;+CAAM,aAAa,GAAGjC,MAAM,QAAQ;4CAAEpN,QAAQqP,EAAErP,MAAM;4CAAEC,WAAWoP,EAAEv4B,KAAK;wCAAC,GAAGu4B,EAAErP,MAAM;;gCAAG;4BAAG;4BAC9Q,aAAa,GAAGoN,MAAM,QAAQ;gCAAExtB,GAAGmxB;gCAAU7Q,MAAM,AAAC,QAAkB,OAAX8Q,YAAW;gCAAI7Q,QAAQ;gCAAQ/qB,OAAO;oCAAEirB,YAAY;gCAA4C;4BAAE;4BAC7J,aAAa,GAAG+M,MACd,QACA;gCACExtB,GAAGkxB;gCACH5Q,MAAM;gCACNC,QAAQyR;gCACRz2B,aAAa;gCACbilB,eAAe;gCACfmK,gBAAgB;gCAChBn1B,OAAO;oCAAEirB,YAAY;gCAA8C;4BACrE;4BAEFoP,iBAAiB,QAAQlC,MAAM,CAACkC,aAAa,IAAI,CAACuC,MAAMzE,MAAM,CAACkC,aAAa,CAAC3R,CAAC,KAAK,aAAa,GAAGuP,OAAOF,WAAW;gCAAEz6B,UAAU;oCAC/H,aAAa,GAAG06B,MACd,QACA;wCACExN,IAAI2N,MAAM,CAACkC,aAAa,CAAC3R,CAAC;wCAC1B+B,IAAI;wCACJC,IAAIyN,MAAM,CAACkC,aAAa,CAAC3R,CAAC;wCAC1BiC,IAAI6Q;wCACJzQ,QAAQ;wCACRhlB,aAAa;wCACbmlB,iBAAiB;wCACjBlrB,OAAO;4CAAE2V,SAAS;4CAAGsV,YAAY;wCAAe;oCAClD;oCAEF,aAAa,GAAG+M,MACd,UACA;wCACE6E,IAAI1E,MAAM,CAACkC,aAAa,CAAC3R,CAAC;wCAC1BoU,IAAI3E,MAAM,CAACkC,aAAa,CAAC/vB,CAAC;wCAC1ByyB,GAAG;wCACHjS,MAAM0R;wCACNzR,QAAQ;wCACRhlB,aAAa;wCACb/F,OAAO;4CAAE2V,SAAS;4CAAGsV,YAAY;wCAAe;oCAClD;iCAEH;4BAAC;4BACF,aAAa,GAAG+M,MACd,QACA;gCACEtP,GAAG;gCACHpe,GAAG;gCACH1I,OAAO25B;gCACP55B,QAAQ65B;gCACR1Q,MAAM;gCACN9qB,OAAO;oCAAE0V,QAAQ;gCAAY;gCAC7BsnB,aAAajB;gCACbnG,cAAc,SAAdA;2CAAoB0E,gBAAgB;;4BACtC;yBAEH;oBACH;oBAEFD,iBAAiB,QAAQlC,MAAM,CAACkC,aAAa,IAAI,aAAa,GAAGrC,MAC/D,OACA;wBACEn6B,WAAW;wBACXmC,OAAO;4BACLmY,MAAMoiB,WAAW7R,CAAC;4BAClBvX,KAAKopB,WAAWjwB,CAAC;4BACjBxH,iBAAiB;4BACjBpB,OAAO;4BACPoa,YAAY;4BACZjH,WAAW;4BACXwd,WAAW;4BACXrd,QAAQ;4BACRW,SAAS;4BACTsV,YAAY;wBACd;wBACA3tB,UAAU66B,MAAM,CAACkC,aAAa,CAACluB,KAAK,CAAC6R,cAAc;oBACrD;iBAEH;YAAC;YACF,aAAa,GAAGga,MACd,OACA;gBACEn6B,WAAW;gBACXmC,OAAO;oBAAEi9B,WAAW;gBAAkC;gBACtD3/B,UAAU;oBAAC89B;oBAAkBC;iBAAiB,CAACpmB,GAAG,CAAC,SAACioB,MAAMjpB;2BAAM,aAAa,GAAG+jB,MAC9E,QACA;wBACEn6B,WAAW;wBACXmC,OAAO;4BAAE0B,OAAO;4BAAuBoa,YAAY;4BAAkCmP,YAAY;wBAA2B;wBAC5H3tB,UAAU4/B;oBACZ,GACAjpB;;YAEJ;SAEH;IACH;AAEJ;AACAmmB,SAASr8B,WAAW,GAAG;AAEvB,mCAAmC;AACnC,SAASb,OAAOigC,KAAK,EAAEhgC,QAAQigC,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,qBAAqB;IACvBC,SAAS;IACTC,QAAQ;IACRC,MAAM;IACNC,MAAM;AACR;AACA,IAAIC,gBAAgB;QAClBrgC,cAAAA,OACAsgC,eAAAA,QACAC,gBAAAA,SACA3G,oBAAAA;IAEA,IAAM4G,aAAaF,UAAU,EAAE;IAC/B,IAAMtH,WAAWY,CAAAA,wBAAAA,kCAAAA,YAAa5T,GAAG,KAAI;IACrC,IAAM8T,WAAWF,CAAAA,wBAAAA,kCAAAA,YAAavT,GAAG,KAAI;IACrC,IAAM0T,cAAcH,CAAAA,wBAAAA,kCAAAA,YAAaxJ,MAAM,KAAI;QAAC;QAAG;QAAI;QAAI;QAAI;QAAK;KAAI;IACpE,IAAMqQ,cAAc;QAClB,IAAI,CAACF,WAAWA,QAAQppB,MAAM,KAAK,GAAG,OAAO6oB;QAC7C,IAAMU,WAAW,CAAC;QAClBH,QAAQ7I,OAAO,CAAC,SAAC/M;YACf+V,QAAQ,CAAC/V,OAAOziB,GAAG,CAAC,GAAGyiB,OAAOtmB,KAAK;QACrC;QACA,OAAOq8B;IACT;IACA,IAAMC,aAAaF;IACnB,IAAMvG,kBAAkB,yBAACprB;QACvB,IAAIkqB,aAAac,UAAU,OAAO;QAClC,OAAO7mB,KAAK+S,GAAG,CAAC,GAAG/S,KAAKoT,GAAG,CAAC,KAAK,AAACvX,CAAAA,QAAQgrB,QAAO,IAAMd,CAAAA,WAAWc,QAAO,IAAK;IAChF;IACA,IAAM8G,kBAAkB,yBAACC;QACvB,IAAIA,MAAMC,YAAY,KAAK,KAAK,KAAKD,MAAMC,YAAY,KAAK,MAAM,OAAOD,MAAMC,YAAY;QAC3F,OAAOD,MAAMZ,OAAO,GAAGY,MAAMT,IAAI;IACnC;IACA,OAAO,aAAa,GAAGL,OAAO,OAAO;QAAEv/B,WAAW;QAA+BP,UAAU;YACzF,aAAa,GAAG8/B,OAAO,OAAO;gBAAEv/B,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAG6/B,MACd,OACA;wBACEn9B,OAAO;4BAAE0B,OAAO;4BAAqBoa,YAAY;4BAAuB9H,UAAU;4BAAQiW,YAAY;wBAAI;wBAC1GpsB,WAAW;wBACXP,UAAUD;oBACZ;oBAEF,aAAa,GAAG8/B,MAAM,UAAU;wBAAEt/B,WAAW;wBAA6JP,UAAU,aAAa,GAAG6/B,MAAM,OAAO;4BAAEt/B,WAAW;4BAA2BP,UAAU;gCAAC;gCAAG;gCAAG;6BAAE,CAAC2X,GAAG,CAAC,SAAChB;uCAAM,aAAa,GAAGkpB,MAAM,QAAQ;oCAAEt/B,WAAW;oCAA8CmC,OAAO;wCAAE8C,iBAAiB;oCAAsB;gCAAE,GAAGmR;;wBAAI;oBAAG;iBAC9c;YAAC;YACF,aAAa,GAAGmpB,OAAO,OAAO;gBAAEv/B,WAAW;gBAAsDP,UAAU;oBACzG,aAAa,GAAG8/B,OAAO,OAAO;wBAAEv/B,WAAW;wBAAwCP,UAAU;4BAC3F,aAAa,GAAG6/B,MAAM,OAAO;gCAAEt/B,WAAW;gCAA8DmC,OAAO;oCAAE4B,OAAO;oCAAQD,QAAQ;gCAAQ;gCAAGrE,UAAU85B,YAAYZ,KAAK,GAAGE,OAAO,GAAGzhB,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAG+Y,MAC7N,QACA;wCACEn9B,OAAO;4CAAE0B,OAAO;4CAAoBoa,YAAY;4CAAuB9H,UAAU;4CAAQiW,YAAY;wCAAI;wCACzGpsB,WAAW;wCACXP,UAAU0I;oCACZ,GACAoe;;4BACC;4BACH,aAAa,GAAGgZ,OAAO,OAAO;gCAAEv/B,WAAW;gCAAiCmC,OAAO;oCAAE2B,QAAQ;gCAAQ;gCAAGrE,UAAU;oCAChH,aAAa,GAAG8/B,OAAO,OAAO;wCAAEv/B,WAAW;wCAAwCP,UAAU;4CAC3F85B,YAAYniB,GAAG,CAAC,SAACjP,OAAOoe;gDACtB,IAAM1f,WAAW,MAAM,AAACsB,CAAAA,QAAQoxB,WAAW,CAAC,EAAC,AAAC,IAAKA,CAAAA,WAAW,CAACA,YAAY5iB,MAAM,GAAG,EAAE,GAAG4iB,WAAW,CAAC,EAAC,AAAC,IAAI;gDAC3G,OAAO,aAAa,GAAG+F,MACrB,OACA;oDACEt/B,WAAW;oDACXmC,OAAO;wDAAEmR,KAAK,AAAC,GAAW,OAATzM,UAAS;wDAAI5B,iBAAiB;oDAAsB;gDACvE,GACAshB;4CAEJ;4CACA,aAAa,GAAG+Y,MAAM,OAAO;gDAAEt/B,WAAW;gDAAgDmC,OAAO;oDAAE8C,iBAAiB;gDAAsB;4CAAE;4CAC5I,aAAa,GAAGq6B,MAAM,OAAO;gDAAEt/B,WAAW;gDAAkDmC,OAAO;oDAAE8C,iBAAiB;gDAAsB;4CAAE;yCAC/I;oCAAC;oCACF,aAAa,GAAGq6B,MAAM,OAAO;wCAAEt/B,WAAW;wCAAsEP,UAAUugC,WAAW5oB,GAAG,CAAC,SAACipB,OAAOzjB;4CAC/I,IAAM2jB,oBAAoBH,gBAAgBC;4CAC1C,IAAMG,eAAeD,qBAAqB;4CAC1C,IAAME,kBAAkBD,eAAeL,WAAWT,MAAM,GAAGS,WAAWR,IAAI;4CAC1E,IAAMe,qBAAqBjuB,KAAKsoB,GAAG,CAACwF;4CACpC,OAAO,aAAa,GAAGjB,MAAM,OAAO;gDAAEt/B,WAAW;gDAA4EP,UAAU;oDACrI;wDAAE6O,OAAO+xB,MAAMZ,OAAO;wDAAE57B,OAAOs8B,WAAWV,OAAO;oDAAC;oDAClD;wDAAEnxB,OAAOoyB;wDAAoB78B,OAAO48B;oDAAgB;oDACpD;wDAAEnyB,OAAO+xB,MAAMT,IAAI;wDAAE/7B,OAAOs8B,WAAWP,IAAI;oDAAC;iDAC7C,CAACxoB,GAAG,CAAC,gBAAmBupB;wDAAhBryB,cAAAA,OAAOzK,cAAAA;2DAAoB,aAAa,GAAGy7B,MAAM,OAAO;wDAAEt/B,WAAW;wDAA8EP,UAAU,aAAa,GAAG6/B,MACpL,OACA;4DACEt/B,WAAW;4DACXmC,OAAO;gEAAE2B,QAAQ,AAAC,GAAyB,OAAvB41B,gBAAgBprB,QAAO;gEAAInK,YAAYN;4DAAM;4DACjEpE,UAAU,aAAa,GAAG6/B,MACxB,OACA;gEACEt/B,WAAW;gEACXmC,OAAO;oEACLmR,KAAK;oEACLzP,OAAO;oEACPoa,YAAY;oEACZ9H,UAAU;oEACViW,YAAY;gEACd;gEACA3sB,UAAU6O,MAAM8R,QAAQ;4DAC1B;wDAEJ;oDACA,GAAGugB;;4CAAS,GAAG,AAAC,GAAgB/jB,OAAdyjB,MAAM1/B,IAAI,EAAC,KAAS,OAANic;wCACpC;oCAAG;iCACJ;4BAAC;yBACH;oBAAC;oBACF,aAAa,GAAG0iB,MAAM,OAAO;wBAAEt/B,WAAW;wBAAqCmC,OAAO;4BAAE4pB,YAAY;4BAAQhoB,OAAO;wBAAoB;wBAAGtE,UAAUugC,WAAW5oB,GAAG,CAAC,SAACipB,OAAOzjB;mCAAU,aAAa,GAAG0iB,MAAM,OAAO;gCAAEt/B,WAAW;gCAAuDP,UAAU,aAAa,GAAG6/B,MAC9S,QACA;oCACEn9B,OAAO;wCACL0B,OAAO;wCACPoa,YAAY;wCACZ9H,UAAU;wCACViW,YAAY;wCACZwU,WAAW;wCACXC,WAAW;wCACXC,cAAc;wCACd/M,YAAY;wCACZpE,YAAY;oCACd;oCACA3vB,WAAW;oCACXP,UAAU4gC,MAAM1/B,IAAI;gCACtB;4BACA,GAAGic;;oBAAQ;iBACd;YAAC;SACH;IAAC;AACJ;AACAijB,cAAc3/B,WAAW,GAAG;AAE5B,mCAAmC;AACnC,SAAShB,YAAY6hC,UAAU,QAAQ,QAAQ;AAC/C,SAAS1hC,OAAO2hC,KAAK,EAAE1hC,QAAQ2hC,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,kBAAkB;IACpBC,aAAa;IACbC,aAAa;IACbC,UAAU;AACZ;AACA,IAAIC,gBAAgB;QAClB9hC,cAAAA,OACA4hB,aAAAA,MACA2e,gBAAAA,SACA3G,oBAAAA;IAEA,IAA8B2H,+BAAAA,WAAW,WAAlC1W,UAAuB0W,gBAAdQ,aAAcR;IAC9B,IAAMS,WAAWpgB,QAAQ,EAAE;IAC3B,IAAMoX,WAAWY,CAAAA,wBAAAA,kCAAAA,YAAa5T,GAAG,KAAI;IACrC,IAAM8T,WAAWF,CAAAA,wBAAAA,kCAAAA,YAAavT,GAAG,KAAI;IACrC,IAAM0T,cAAcH,CAAAA,wBAAAA,kCAAAA,YAAaxJ,MAAM,KAAI;QAAC;QAAG;QAAI;QAAI;QAAI;QAAK;KAAI;IACpE,IAAMqQ,cAAc;QAClB,IAAI,CAACF,WAAWA,QAAQppB,MAAM,KAAK,GAAG,OAAOuqB;QAC7C,IAAMhB,WAAW,CAAC;QAClBH,QAAQ7I,OAAO,CAAC,SAAC/M;YACf+V,QAAQ,CAAC/V,OAAOziB,GAAG,CAAC,GAAGyiB,OAAOtmB,KAAK;QACrC;QACA,OAAOq8B;IACT;IACA,IAAMuB,SAASxB;IACf,IAAMyB,WAAW,kBAACh6B;QAChB,IAAIq4B,WAAWA,QAAQppB,MAAM,GAAG,GAAG;YACjC,IAAMwT,SAAS4V,QAAQ9lB,IAAI,CAAC,SAAC0nB;uBAAMA,EAAEj6B,GAAG,KAAKA;;YAC7C,IAAIyiB,QAAQ,OAAOA,OAAOhiB,KAAK;QACjC;QACA,IAAMy5B,gBAAgB;YACpBT,aAAa;YACbC,aAAa;YACbC,UAAU;QACZ;QACA,OAAOO,aAAa,CAACl6B,IAAI,IAAIA;IAC/B;IACA,IAAM8xB,cAAc,qBAAClrB;QACnB,IAAIA,SAAS,KAAK,OAAO,AAAC,IAA4B,OAAzB,AAACA,CAAAA,QAAQ,GAAE,EAAGmrB,OAAO,CAAC,IAAG;QACtD,OAAO,AAAC,IAAS,OAANnrB;IACb;IACA,IAAMorB,kBAAkB,yBAACprB;QACvB,IAAIkqB,aAAac,UAAU,OAAO;QAClC,OAAO7mB,KAAK+S,GAAG,CAAC,GAAG/S,KAAKoT,GAAG,CAAC,KAAK,AAACvX,CAAAA,QAAQgrB,QAAO,IAAMd,CAAAA,WAAWc,QAAO,IAAK;IAChF;IACA,IAAMuI,0BAA0B,iCAACpuB,OAAOwiB,SAASjwB;QAC/C,IAAMoU,OAAO3G,MAAMqkB,aAAa,CAAC/kB,qBAAqB;QACtDwuB,WAAW;YAAEh3B,KAAK0rB,QAAQ1rB,GAAG;YAAEvE,MAAAA;YAAMsI,OAAO2nB,OAAO,CAACjwB,KAAK;YAAEmC,OAAOu5B,SAAS17B;YAAO6kB,GAAGzQ,KAAKE,IAAI,GAAGF,KAAKrW,KAAK,GAAG;YAAG0I,GAAG2N,KAAK9G,GAAG;QAAC;IAC/H;IACA,OAAO,aAAa,GAAG2tB,OAAO,OAAO;QAAEjhC,WAAW;QAA+BP,UAAU;YACzF,aAAa,GAAGwhC,OAAO,OAAO;gBAAEjhC,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAGuhC,MAAM,OAAO;wBAAE7+B,OAAO;4BAAE0B,OAAO;4BAAqBoa,YAAY;4BAAuB9H,UAAU;4BAAQiW,YAAY;wBAAI;wBAAGpsB,WAAW;wBAAgBP,UAAUD;oBAAM;oBACvL,aAAa,GAAGwhC,MAAM,UAAU;wBAAEhhC,WAAW;wBAA6JP,UAAU,aAAa,GAAGuhC,MAAM,OAAO;4BAAEhhC,WAAW;4BAA2BP,UAAU;gCAAC;gCAAG;gCAAG;6BAAE,CAAC2X,GAAG,CAAC,SAAChB;uCAAM,aAAa,GAAG4qB,MAAM,QAAQ;oCAAEhhC,WAAW;oCAA8CmC,OAAO;wCAAE8C,iBAAiB;oCAAsB;gCAAE,GAAGmR;;wBAAI;oBAAG;iBAC9c;YAAC;YACF,aAAa,GAAG6qB,OAAO,OAAO;gBAAEjhC,WAAW;gBAAsDP,UAAU;oBACzG,aAAa,GAAGwhC,OAAO,OAAO;wBAAEjhC,WAAW;wBAAwCP,UAAU;4BAC3F,aAAa,GAAGuhC,MAAM,OAAO;gCAAEhhC,WAAW;gCAAgEmC,OAAO;oCAAE4B,OAAO;oCAAQD,QAAQ;gCAAQ;gCAAGrE,UAAU85B,YAAYZ,KAAK,GAAGE,OAAO,GAAGzhB,GAAG,CAAC,SAACjP,OAAOoe;2CAAQ,aAAa,GAAG0a,OAAO,QAAQ;wCAAE9+B,OAAO;4CAAE0B,OAAO;4CAAoBoa,YAAY;4CAAuB9H,UAAU;4CAAQiW,YAAY;wCAAI;wCAAGpsB,WAAW;wCAAcP,UAAU;4CAC/X;4CACA0I;yCACD;oCAAC,GAAGoe;;4BAAM;4BACX,aAAa,GAAG0a,OAAO,OAAO;gCAAEjhC,WAAW;gCAAiCmC,OAAO;oCAAE2B,QAAQ;gCAAQ;gCAAGrE,UAAU;oCAChH,aAAa,GAAGwhC,OAAO,OAAO;wCAAEjhC,WAAW;wCAAwCP,UAAU;4CAC3F85B,YAAYniB,GAAG,CAAC,SAACjP,OAAOoe;gDACtB,IAAM1f,WAAW,MAAM,AAACsB,CAAAA,QAAQoxB,WAAW,CAAC,EAAC,AAAC,IAAKA,CAAAA,WAAW,CAACA,YAAY5iB,MAAM,GAAG,EAAE,GAAG4iB,WAAW,CAAC,EAAC,AAAC,IAAI;gDAC3G,OAAO,aAAa,GAAGyH,MAAM,OAAO;oDAAEhhC,WAAW;oDAAsCmC,OAAO;wDAAEmR,KAAK,AAAC,GAAW,OAATzM,UAAS;wDAAI5B,iBAAiB;oDAAsB;gDAAE,GAAGshB;4CACnK;4CACA,aAAa,GAAGya,MAAM,OAAO;gDAAEhhC,WAAW;gDAAgDmC,OAAO;oDAAE8C,iBAAiB;gDAAsB;4CAAE;4CAC5I,aAAa,GAAG+7B,MAAM,OAAO;gDAAEhhC,WAAW;gDAAkDmC,OAAO;oDAAE8C,iBAAiB;gDAAsB;4CAAE;yCAC/I;oCAAC;oCACF,aAAa,GAAG+7B,MAAM,OAAO;wCAAEhhC,WAAW;wCAAsEP,UAAU+hC,SAASpqB,GAAG,CAAC,SAAC6e,SAASrZ;4CAC/I,IAAMklB,QAAQ7L,QAAQkL,WAAW,GAAGlL,QAAQmL,WAAW,GAAGnL,QAAQoL,QAAQ;4CAC1E,IAAMU,cAAcrI,gBAAgBoI;4CACpC,IAAME,qBAAqBF,QAAQ,IAAI7L,QAAQkL,WAAW,GAAGW,QAAQ,MAAM;4CAC3E,IAAMG,qBAAqBH,QAAQ,IAAI7L,QAAQmL,WAAW,GAAGU,QAAQ,MAAM;4CAC3E,IAAMI,kBAAkBJ,QAAQ,IAAI7L,QAAQoL,QAAQ,GAAGS,QAAQ,MAAM;4CACrE,OAAO,aAAa,GAAGd,MAAM,OAAO;gDAAEhhC,WAAW;gDAAoFP,UAAU,aAAa,GAAGwhC,OAC7J,OACA;oDACEjhC,WAAW;oDACXmC,OAAO;wDAAE2B,QAAQ,AAAC,GAAc,OAAZi+B,aAAY;oDAAG;oDACnCtiC,UAAU;wDACR,aAAa,GAAGuhC,MACd,OACA;4DACEhhC,WAAW;4DACXmC,OAAO;gEAAEmR,KAAK;gEAASzP,OAAO;gEAAoBoa,YAAY;4DAAsB;4DACpFxe,UAAU+5B,YAAYsI;wDACxB;wDAEF7L,QAAQoL,QAAQ,GAAG,KAAK,aAAa,GAAGL,MACtC,OACA;4DACEhhC,WAAW;4DACXmC,OAAO;gEAAE2B,QAAQ,AAAC,GAAkB,OAAhBo+B,iBAAgB;gEAAIj9B,iBAAiBw8B,OAAOJ,QAAQ,IAAIH,gBAAgBG,QAAQ;4DAAC;4DACrGxJ,cAAc,SAAdA,aAAe5xB;uEAAM47B,wBAAwB57B,GAAGgwB,SAAS;;4DACzD8B,cAAc,SAAdA;uEAAoBwJ,WAAW;;wDACjC;wDAEFtL,QAAQmL,WAAW,GAAG,KAAK,aAAa,GAAGJ,MACzC,OACA;4DACEhhC,WAAW;4DACXmC,OAAO;gEAAE2B,QAAQ,AAAC,GAAqB,OAAnBm+B,oBAAmB;gEAAIh9B,iBAAiBw8B,OAAOL,WAAW,IAAIF,gBAAgBE,WAAW;4DAAC;4DAC9GvJ,cAAc,SAAdA,aAAe5xB;uEAAM47B,wBAAwB57B,GAAGgwB,SAAS;;4DACzD8B,cAAc,SAAdA;uEAAoBwJ,WAAW;;wDACjC;wDAEFtL,QAAQkL,WAAW,GAAG,KAAK,aAAa,GAAGH,MACzC,OACA;4DACEhhC,WAAW;4DACXmC,OAAO;gEAAE2B,QAAQ,AAAC,GAAqB,OAAnBk+B,oBAAmB;gEAAI/8B,iBAAiBw8B,OAAON,WAAW,IAAID,gBAAgBC,WAAW;4DAAC;4DAC9GtJ,cAAc,SAAdA,aAAe5xB;uEAAM47B,wBAAwB57B,GAAGgwB,SAAS;;4DACzD8B,cAAc,SAAdA;uEAAoBwJ,WAAW;;wDACjC;qDAEH;gDACH;4CACA,GAAG,AAAC,GAAiB3kB,OAAfqZ,QAAQ1rB,GAAG,EAAC,KAAS,OAANqS;wCACzB;oCAAG;iCACJ;4BAAC;yBACH;oBAAC;oBACF,aAAa,GAAGokB,MAAM,OAAO;wBAAEhhC,WAAW;wBAAqCmC,OAAO;4BAAE4pB,YAAY;4BAAQhoB,OAAO;wBAAoB;wBAAGtE,UAAU+hC,SAASpqB,GAAG,CAAC,SAAC6e,SAASrZ;mCAAU,aAAa,GAAGokB,MAAM,OAAO;gCAAEhhC,WAAW;gCAAqEP,UAAU,aAAa,GAAGuhC,MAC5T,QACA;oCACE7+B,OAAO;wCACL0B,OAAO;wCACPoa,YAAY;wCACZ9H,UAAU;wCACViW,YAAY;wCACZwU,WAAW;wCACXC,WAAW;wCACXC,cAAc;wCACd/M,YAAY;wCACZpE,YAAY;oCACd;oCACA3vB,WAAW;oCACXP,UAAUw2B,QAAQ1rB,GAAG;gCACvB;4BACA,GAAGqS;;oBAAQ;iBACd;YAAC;YACFyN,WAAW,aAAa,GAAG4W,OACzB,OACA;gBACEjhC,WAAW;gBACXmC,OAAO;oBACLmY,MAAM+P,QAAQQ,CAAC;oBACfvX,KAAK+W,QAAQ5d,CAAC;oBACdxH,iBAAiB;oBACjBk9B,gBAAgB;oBAChBt+B,OAAO;oBACPoa,YAAY;oBACZuW,WAAW;oBACXrd,QAAQ;oBACRH,WAAW;oBACXc,SAAS;gBACX;gBACArY,UAAU;oBACR,aAAa,GAAGwhC,OAAO,OAAO;wBAAEjhC,WAAW;wBAA2CmC,OAAO;4BAAE0B,OAAO;wBAAkB;wBAAGpE,UAAU;4BACnI4qB,QAAQ9f,GAAG;4BACX;4BACA8f,QAAQliB,KAAK;yBACd;oBAAC;oBACF,aAAa,GAAG84B,OAAO,OAAO;wBAAEjhC,WAAW;wBAAwCmC,OAAO;4BAAE0B,OAAO;wBAAgB;wBAAGpE,UAAU;4BAC9H;4BACA4qB,QAAQ/b,KAAK;yBACd;oBAAC;iBACH;YACH;SAEH;IAAC;AACJ;AACAgzB,cAAcphC,WAAW,GAAG;AAE5B,gDAAgD;AAChD,SAASqG,YAAY67B,SAAS,EAAE/iC,OAAOgjC,KAAK,EAAE/iC,QAAQgjC,MAAM,QAAQ,oBAAoB;AACxF,IAAIC,YAAY,mBAAC71B;IACf,IAAI,OAAOA,MAAM,UAAU,OAAOA;IAClC,IAAM4a,OAAO5a;IACb,IAAI,QAAO4a,iBAAAA,2BAAAA,KAAMC,GAAG,MAAK,UAAU,OAAOD,KAAKC,GAAG;IAClD,IAAM5a,IAAI2a,iBAAAA,2BAAAA,KAAMjlB,OAAO;IACvB,IAAI,OAAOsK,MAAM,UAAU,OAAOA;IAClC,IAAI,QAAOA,cAAAA,wBAAAA,EAAG4a,GAAG,MAAK,UAAU,OAAO5a,EAAE4a,GAAG;IAC5C,OAAO;AACT;AACA,IAAIib,iBAAiB;IACnBC,qBAAqB;IACrBC,cAAc;IACdC,cAAc;IACdC,cAAc;AAChB;AACA,IAAIC,aAAa,oBAACC,UAAUC;IAC1B,IAAMxb,MAAMgb,UAAUO;IACtB,OAAOvb,OAAOwb;AAChB;AACA,IAAIN,sBAAsB;AAC1B,IAAIC,eAAe;AACnB,IAAIC,eAAe;AACnB,IAAIC,eAAe;AACnB,IAAI;IACFH,sBAAsBpkC;IACtBqkC,eAAepkC;IACfqkC,eAAepkC;IACfqkC,eAAepkC;AACjB,EAAE,OAAOyH,GAAG,CACZ;AACA,IAAI+8B,eAAe,sBAACn/B;IAClB,IAAMo/B,IAAI,OAAOp/B,UAAU,WAAWA,MAAMjC,WAAW,KAAK;IAC5D,IAAIqhC,EAAE/+B,UAAU,CAAC,YAAY++B,EAAE/+B,UAAU,CAAC,SAAS,OAAO++B;IAC1D,IAAM7rB,MAAM;QACV,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;QACX,WAAW;IACb;IACA,OAAOA,GAAG,CAAC6rB,EAAE,IAAK,CAAA,OAAOp/B,UAAU,WAAWA,QAAQ,SAAQ;AAChE;AACA,IAAIq/B,kBAAkB,yBAACtqB;IACrB,IAAMuqB,eAAe;QACnB,eAAe;YAAEC,WAAW;YAAqBn+B,iBAAiB;QAAuB;QACzF,WAAW;YAAEm+B,WAAW;YAAqBn+B,iBAAiB;QAAuB;QACrF,aAAa;YAAEm+B,WAAW;YAAsBn+B,iBAAiB;QAAwB;IAC3F;IACA,OAAOk+B,YAAY,CAACvqB,OAAO,IAAIuqB,YAAY,CAAC,cAAc;AAC5D;AACA,IAAIE,WAAW,kBAACr9B;IACd,IAAIA,SAAS,QAAQ,OAAO;IAC5B,IAAIA,SAAS,UAAU,OAAO;IAC9B,IAAIA,SAAS,SAAS,OAAO;IAC7B,IAAIA,SAAS,aAAa,OAAO;IACjC,IAAIA,SAAS,SAAS,OAAO;IAC7B,IAAIA,SAAS,mBAAmB,OAAO;IACvC,IAAIA,SAAS,iBAAiB,OAAO;IACrC,IAAIA,SAAS,eAAe,OAAO;IACnC,IAAIA,SAAS,YAAY,OAAO;IAChC,IAAIA,SAAS,YAAY,OAAO;IAChC,IAAIA,SAAS,YAAY,OAAO;IAChC,IAAIA,SAAS,OAAO,OAAO;IAC3B,OAAO,AAAC,GAA+C,OAA7CA,KAAKs9B,MAAM,CAAC,GAAGC,WAAW,KAAKv9B,KAAK2yB,KAAK,CAAC,IAAG;AACzD;AACA,IAAI6K,iBAAiB;WAAM,aAAa,GAAGnB,MACzC,UACA;QACEr8B,MAAM;QACNhG,WAAW;QACXP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;YAAEtiC,WAAW;YAAcP,UAAU;gBAC3E,aAAa,GAAG4iC,MAAM,QAAQ;oBAAEriC,WAAW;gBAAgD;gBAC3F,aAAa,GAAGqiC,MAAM,QAAQ;oBAAEriC,WAAW;gBAAgD;gBAC3F,aAAa,GAAGqiC,MAAM,QAAQ;oBAAEriC,WAAW;gBAAgD;aAC5F;QAAC;IACJ;;AAEF,IAAIyjC,6BAA6B;QAC/BjkC,cAAAA,OACAkkC,mBAAAA,YACAC,yBAAAA,kBACAC,gBAAAA,SACAC,qBAAAA,cACAC,wBAAAA,iBACAC,qBAAAA,cACAC,mBAAAA,YACAC,kBAAAA,WACAC,0BAAAA,mBACAC,wBAAAA,iBACAC,qBAAAA,cACAC,qBAAAA,cACAC,qBAAAA,cACAC,gBAAAA,SACAC,sBAAAA,eACAC,kBAAAA,WACAC,oBAAAA,aACAtP,4BAAAA,qBACAuP,uBAAAA,gBACAC,mBAAAA,YACAC,sBAAAA,eACAC,0BAAAA,mBACAC,wBAAAA,iBACAC,gBAAAA;QA6f4JR,oBAAAA,mBAAAA,kBAAAA;IA3f5J,IAAkCzd,+BAAAA,WAAW4c,uBAAtCha,YAA2B5C,gBAAhBke,eAAgBle;IAClC,IAAwDA,gCAAAA,WAAW,kBAA5Dme,uBAAiDne,iBAA3Boe,0BAA2Bpe;IACxD,IAA4EA,gCAAAA,WAAW,kBAAhFqe,iCAAqEre,iBAArCse,oCAAqCte;IAC5E,IAAMue,iBAAiBxe,SAAS;QAC9B,IAAI+c,gBAAgBA,YAAY,CAACla,UAAU,EAAE,OAAOka,YAAY,CAACla,UAAU,IAAI,EAAE;QACjF,OAAOia;IACT,GAAG;QAACja;QAAWka;QAAcD;KAAQ;IACrC,IAAM2B,cAAcze,SAAS;QAC3B,IAAMY,OAAOqc,YAAY,CAACpa,UAAU;QACpC,IAAIA,cAAc,UAAUjC,MAAM,OAAO2B,qBAAqB3B;QAC9D,OAAOA;IACT,GAAG;QAACqc;QAAcpa;KAAU;IAC5B,IAAME,eAAeF,cAAc,UAAUA,cAAc;IAC3D,IAAM6b,cAAc7b,cAAc,SAASA,cAAc;IACzD,IAAM8b,gBAAgB3e,SAAS;QAC7B,IAAI6C,cAAc,aAAYqa,uBAAAA,iCAAAA,WAAYvY,OAAO,GAAE;YACjD,OAAOuY,WAAWvY,OAAO,CAACrU,GAAG,CAAC,SAACsuB;gBAC7B,IAAMha,qBAAqBjZ,KAAKC,KAAK,CAACgzB,OAAO/Z,QAAQ,GAAG+Z,OAAO/xB,MAAM,GAAG;gBACxE,OAAO;oBAAExL,OAAOu9B,OAAO/kC,IAAI;oBAAE2N,OAAO,AAAC,GAAqB,OAAnBod,oBAAmB;oBAASxK,aAAa,AAAC,GAAqB,OAAnBwK,oBAAmB;oBAAuB7nB,OAAO;gBAAwB;YAC9J;QACF;QACA,OAAO,EAAE;IACX,GAAG;QAAC8lB;QAAWqa;KAAW;IAC1B,IAAM2B,mBAAmB7e,SAAS;QAChC,IAAI6C,cAAc,WAAW8a,WAAW;gBAGrBA;YAFjB,IAAMt6B,OAAO25B,eAAe,CAAC,aAAa,IAAI;YAC9C,IAAM99B,OAAO89B,eAAe,CAAC,aAAa,IAAI;YAC9C,IAAM8B,YAAWnB,kBAAAA,SAAS,CAACt6B,KAAK,cAAfs6B,sCAAAA,eAAiB,CAACz+B,KAAK;YACxC,IAAI,CAAC4/B,UAAU,OAAO,KAAK;YAC3B,IAAIV,yBAAyB,aAAa;gBACxC,OAAO;oBACL1lC,OAAO,AAAC,GAAsB0lC,OAApBU,SAASpmC,KAAK,EAAC,OAA0B,OAArB0lC;oBAC9BW,aAAa,AAAC,GAA4BX,OAA1BU,SAASC,WAAW,EAAC,OAA0B,OAArBX;oBAC1C/Q,OAAOyR,SAASzR,KAAK,CAAC/c,GAAG,CAAC,SAACwd;wBACzB,IAAMkR,cAAcrzB,KAAK+S,GAAG,CAAC,GAAGoP,KAAKmR,QAAQ,GAAG;wBAChD,IAAIC,YAAYpR,KAAKhc,MAAM;wBAC3B,IAAIgc,KAAKmR,QAAQ,IAAI,MAAMnR,KAAKhc,MAAM,KAAK,aAAaotB,YAAY;wBACpE,OAAO,wCAAKpR;4BAAMmR,UAAUD;4BAAaltB,QAAQotB;;oBACnD;gBACF;YACF;YACA,OAAO,wCAAKJ;gBAAUpmC,OAAO,AAAC,GAAsB0lC,OAApBU,SAASpmC,KAAK,EAAC,OAA0B,OAArB0lC;gBAAwBW,aAAa,AAAC,GAA4BX,OAA1BU,SAASC,WAAW,EAAC,OAA0B,OAArBX;;QACxH;QACA,OAAO,KAAK;IACd,GAAG;QAACvb;QAAW8a;QAAWX;QAAiBoB;KAAqB;IAChE,IAAMe,mCAAmCnf,SAAS;QAChD,IAAI6C,cAAc,mBAAmB,CAACua,mBAAmB,OAAO,KAAK;QACrE,IAAMxT,eAAeoT,eAAe,CAAC,aAAa,IAAI;QACtD,IAAMnT,gBAAgBmT,eAAe,CAAC,cAAc,IAAI;QACxD,IAAMoC,WAAWhC,iBAAiB,CAACxT,aAAa;QAChD,IAAMyV,YAAYD,qBAAAA,+BAAAA,QAAU,CAACvV,cAAc;QAC3C,IAAI,CAACwV,WAAW,OAAO,KAAK;QAC5B,IAAMC,aAAa;YAAC;YAAW;YAAY;YAAS;YAAS;YAAO;YAAQ;YAAQ;YAAU;YAAa;YAAW;YAAY;SAAW;QAC7I,IAAMC,oBAAoBD,WAAWE,OAAO,CAAC3V;QAC7C,IAAM5c,gBAAgBsyB,oBAAoB,IAAID,UAAU,CAACC,oBAAoB,EAAE,GAAG;QAClF,IAAME,eAAeF,oBAAoB,IAAI3V,eAAermB,OAAOkN,OAAOmZ,gBAAgB;QAC1F,IAAM8V,mBAAmBtC,iBAAiB,CAACqC,aAAa;QACxD,IAAME,oBAAoBD,6BAAAA,uCAAAA,gBAAkB,CAACzyB,cAAc;QAC3D,IAAM2yB,WAAW9oC,OAAO+oC,IAAI,CAACR;QAC7B,IAAIS,aAAa,GAAGC,aAAa,IAAIC,aAAaC,UAAUC,oBAAoB;QAChFN,SAASxP,OAAO,CAAC,SAAC+P;YAChB,IAAMxH,UAAU0G,SAAS,CAACc,QAAQ,CAACC,OAAO;YAC1C,IAAIzH,UAAUmH,YAAY;gBACxBA,aAAanH;gBACboH,aAAaI;YACf;YACA,IAAIxH,UAAUqH,YAAY;gBACxBA,aAAarH;gBACbuH,oBAAoBC;YACtB;QACF;QACA,IAAI5J,mBAAmB,GAAG8J,aAAa;QACvC,IAAIV,qBAAqBA,iBAAiB,CAACI,WAAW,EAAE;YACtD,IAAMO,MAAMjB,SAAS,CAACU,WAAW,CAACK,OAAO,EAAEluB,OAAOytB,iBAAiB,CAACI,WAAW,CAACK,OAAO;YACvF,IAAIluB,SAAS,GAAG;gBACdqkB,mBAAmB,AAAC+J,CAAAA,MAAMpuB,IAAG,IAAKA,OAAO;gBACzCmuB,aAAa9J,oBAAoB;YACnC;QACF;QACA,IAAMgK,iBAAiBlB,SAAS,CAACU,WAAW;QAC5C,OAAO;YAAES,UAAU;YAAY3mC,MAAMkmC;YAAYpH,SAAS,AAAC,GAAyB,OAAvB4H,eAAeH,OAAO,EAAC;YAAIxH,QAAQ,AAAC,GAAwB,OAAtB2H,eAAeE,MAAM,EAAC;YAAIC,YAAYR;YAAmBS,QAAQ,AAAC,GAAwC,OAAtCh1B,KAAKsoB,GAAG,CAACsC,kBAAkB5D,OAAO,CAAC,IAAG;YAAI0N,YAAAA;QAAW;IAC9N,GAAG;QAACxd;QAAWua;QAAmBJ;KAAgB;IAClD,IAAM4D,2BAA2B5gB,SAAS;YAMnCsO,mCAAAA;QALL,IAAMuS,QAAQ;YAAEC,SAAS;gBAAE19B,MAAM;gBAAI29B,SAAS;gBAAIv5B,OAAO;YAAE;YAAGw5B,eAAe;gBAAED,SAAS;gBAAIE,OAAO;gBAAGC,SAAS;YAAE;QAAE;QACnH,IAAIre,cAAc,qBAAqB,CAACyL,qBAAqB,OAAOuS;QACpE,IAAMx9B,OAAO25B,eAAe,CAAC,aAAa,IAAI;QAC9C,IAAM99B,OAAO89B,eAAe,CAAC,aAAa,IAAI;QAC9C,IAAMrP,UAAU2Q;QAChB,IAAI,GAAChQ,+BAAAA,mBAAmB,CAACX,QAAQ,cAA5BW,oDAAAA,oCAAAA,4BAA8B,CAACjrB,KAAK,cAApCirB,wDAAAA,iCAAsC,CAACpvB,KAAK,GAAE,OAAO2hC;QAC1D,IAAMzB,WAAW9Q,mBAAmB,CAACX,QAAQ,CAACtqB,KAAK,CAACnE,KAAK;QACzD,IAAIiiC,aAAa,EAAE;QACnB,IAAMC,kBAAkB;YAAEC,QAAQ;gBAAErG,OAAO;gBAAGiG,OAAO;YAAE;YAAGK,QAAQ;gBAAEtG,OAAO;gBAAGiG,OAAO;YAAE;YAAGM,SAAS;gBAAEvG,OAAO;gBAAGiG,OAAO;YAAE;YAAGO,WAAW;gBAAExG,OAAO;gBAAGiG,OAAO;YAAE;YAAGQ,UAAU;gBAAEzG,OAAO;gBAAGiG,OAAO;YAAE;YAAGS,QAAQ;gBAAE1G,OAAO;gBAAGiG,OAAO;YAAE;YAAGU,UAAU;gBAAE3G,OAAO;gBAAGiG,OAAO;YAAE;QAAE;QACjQnqC,OAAO+oC,IAAI,CAACT,UAAUhP,OAAO,CAAC,SAACpjB;YAC7B,IAAMqyB,YAAYD,QAAQ,CAACpyB,UAAU;YACrC,IAAIqyB,CAAAA,sBAAAA,gCAAAA,UAAW/kB,IAAI,KAAI3K,MAAMsJ,OAAO,CAAComB,UAAU/kB,IAAI,GAAG;gBACpD+kB,UAAU/kB,IAAI,CAAC8V,OAAO,CAAC,SAAC/Q;oBACtB,IAAkBA,wCAAAA,KAAKjc,IAAI,CAAC6D,KAAK,CAAC,KAAKqJ,GAAG,CAAC,SAACsxB;+BAAMnoC,SAASmoC;4BAApDj8B,IAAW0Z,yBAARzZ,IAAQyZ,yBAALxZ,IAAKwZ;oBAClB,IAAMwiB,UAAU,IAAIh9B,KAAKc,GAAGC,IAAI,GAAGC;oBACnC,IAAMi8B,WAAW;wBAAC;wBAAU;wBAAU;wBAAW;wBAAa;wBAAY;wBAAU;qBAAW;oBAC/F,IAAMf,UAAUe,QAAQ,CAACD,QAAQ78B,MAAM,GAAG;oBAC1Cm8B,WAAW/xB,IAAI,CAAC;wBAAEhM,MAAMic,KAAKjc,IAAI;wBAAEoE,OAAO6X,KAAK7X,KAAK;wBAAEu5B,SAAAA;oBAAQ;oBAC9D,IAAIK,eAAe,CAACL,QAAQ,EAAE;wBAC5BK,eAAe,CAACL,QAAQ,CAAC/F,KAAK,IAAI3b,KAAK7X,KAAK;wBAC5C45B,eAAe,CAACL,QAAQ,CAACE,KAAK,IAAI;oBACpC;gBACF;YACF;QACF;QACA,IAAIH,UAAU;YAAE19B,MAAM;YAAI29B,SAAS;YAAIv5B,OAAO;QAAE;QAChD,IAAI25B,WAAWtxB,MAAM,GAAG,GAAGixB,UAAUK,WAAW9L,MAAM,CAAC,SAAC3W,KAAK4hB;mBAAQA,IAAI94B,KAAK,GAAGkX,IAAIlX,KAAK,GAAG84B,MAAM5hB;;QACnG,IAAIsiB,gBAAgB;YAAED,SAAS;YAAIE,OAAO;YAAGC,SAAS;QAAE;QACxDpqC,OAAOirC,OAAO,CAACX,iBAAiBhR,OAAO,CAAC;qDAAE2Q,qBAASiB;YACjD,IAAIA,MAAMf,KAAK,GAAG,GAAG;gBACnB,IAAMgB,MAAMD,MAAMhH,KAAK,GAAGgH,MAAMf,KAAK;gBACrC,IAAIgB,MAAMjB,cAAcE,OAAO,EAAEF,gBAAgB;oBAAED,SAAAA;oBAASE,OAAOe,MAAMf,KAAK;oBAAEC,SAASv1B,KAAKC,KAAK,CAACq2B;gBAAK;YAC3G;QACF;QACA,OAAO;YAAEnB,SAAAA;YAASE,eAAAA;QAAc;IAClC,GAAG;QAACne;QAAWyL;QAAqB0O;QAAiBsB;KAA+B;IACpF,IAAM4D,iBAAiB,wBAAChT;QACtB,IAAI,CAACA,SAAS,OAAO;QACrB,IAAI;YACF,OAAO,IAAIrqB,KAAKqqB,SAAShqB,kBAAkB,CAAC,SAAS;gBAAEi9B,SAAS;gBAAS7+B,OAAO;gBAASG,KAAK;YAAU;QAC1G,EAAE,eAAM;YACN,OAAO;QACT;IACF;IACA,IAAM2+B,oBAAoBpiB,SAAS;QACjC,IAAI,CAACkd,YAAY,OAAO;QACxB,IAAM75B,OAAO25B,gBAAgBqF,UAAU,IAAI;QAC3C,IAAM/+B,QAAQ05B,gBAAgBsF,WAAW,IAAI;QAC7C,IAAMpjC,OAAO89B,gBAAgBuF,UAAU,IAAI;QAC3C,IAAMnD,WAAWlC,UAAU,CAAC75B,KAAK;QACjC,IAAI+7B,UAAU;YACZ,IAAMoD,WAAWpD,QAAQ,CAAClgC,KAAK;YAC/B,IAAIsjC,UAAU;gBACZ,IAAMnD,YAAYmD,QAAQ,CAACl/B,MAAM;gBACjC,IAAI+7B,sBAAAA,gCAAAA,UAAW1a,OAAO,EAAE,OAAO;oBAAEjsB,OAAO2mC,UAAU3mC,KAAK,IAAIwkC,WAAWxkC,KAAK;oBAAEisB,SAAS0a,UAAU1a,OAAO;gBAAC;YAC1G;QACF;QACA,OAAO;YAAEjsB,OAAOwkC,WAAWxkC,KAAK;YAAEisB,SAASuY,WAAWvY,OAAO;QAAC;IAChE,GAAG;QAACuY;QAAYF;KAAgB;IAChC,IAAMyF,iBAAiBziB,SAAS;QAC9B,IAAI6C,cAAc,SAAS,CAAC4a,SAAS,OAAO;QAC5C,IAAMiF,SAAS1F,eAAe,CAAC,YAAY;QAC3C,IAAI,CAAC0F,QAAQ,OAAOjF,OAAO,CAAC3mC,OAAO+oC,IAAI,CAACpC,QAAQ,CAAC,EAAE,CAAC,IAAI;QACxD,OAAOA,OAAO,CAACiF,OAAO,IAAI;IAC5B,GAAG;QAAC7f;QAAW4a;QAAST;KAAgB;IACxC,IAAMzY,cAAc;QAClB,OAAQ1B;YACN,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;gBACH,IAAI4b,aAAa,OAAO,aAAa,GAAGlD,MAAM3Y,iBAAiB;oBAAEC,WAAAA;oBAAWvI,MAAMmkB;gBAAY;gBAC9F,OAAO;YACT,KAAK;gBACH,IAAI2D,mBAAmB,OAAO,aAAa,GAAG7G,MAAM7W,aAAa;oBAAEhsB,OAAO0pC,kBAAkB1pC,KAAK;oBAAEisB,SAASyd,kBAAkBzd,OAAO;gBAAC;gBACtI,OAAO;YACT,KAAK;gBAAS;oBACZ,IAAIwY,WAAW;4BAITA;wBAHJ,IAAMnI,KAAKgI,eAAe,CAAC,aAAa,IAAI;wBAC5C,IAAMjhC,KAAKihC,eAAe,CAAC,cAAc,IAAI;wBAC7C,IAAI2F,eAAexF,UAAU9X,MAAM,IAAI,EAAE;wBACzC,KAAI8X,gBAAAA,SAAS,CAACnI,GAAG,cAAbmI,oCAAAA,aAAe,CAACphC,GAAG,EAAE4mC,eAAexF,SAAS,CAACnI,GAAG,CAACj5B,GAAG;wBACzD,OAAO,aAAa,GAAGw/B,MAAMnW,YAAY;4BAAE1sB,OAAO;4BAAuB2sB,QAAQsd;wBAAa;oBAChG;oBACA,OAAO;gBACT;YACA,KAAK;gBAAS;oBACZ,IAAI9D,kBAAkB;wBACpB,IAAMv7B,QAAQ05B,eAAe,CAAC,cAAc,IAAI;wBAChD,IAAM35B,OAAO25B,eAAe,CAAC,aAAa,IAAI;wBAC9C,OAAO,aAAa,GAAGzB,MAAM5R,YAAY;4BAAErP,MAAMukB;4BAAkBjV,cAAcvmB;4BAAMwmB,eAAevmB;4BAAOwmB,iBAAiBsU;4BAAsBrU,iBAAiBsU;wBAAwB;oBAC/L;oBACA,OAAO;gBACT;YACA,KAAK;gBAAmB;oBACtB,IAAI/P,gCAAAA,0CAAAA,mBAAqB,CAACgQ,+BAA+B,EAAE;wBACzD,IAAMj7B,QAAO25B,eAAe,CAAC,aAAa,IAAI;wBAC9C,IAAM99B,OAAO89B,eAAe,CAAC,aAAa,IAAI;wBAC9C,IAAM7S,cAAcmE,mBAAmB,CAACgQ,+BAA+B;wBACvE,IAAMc,WAAWjV,WAAW,CAAC9mB,MAAK;wBAClC,IAAI,EAAC+7B,qBAAAA,+BAAAA,QAAU,CAAClgC,KAAK,GAAE,OAAO;wBAC9B,OAAO,aAAa,GAAGq8B,MAAM7L,sBAAsB;4BAAEpV,MAAM8kB,QAAQ,CAAClgC,KAAK;4BAAE4qB,iBAAiBwU;4BAAgC1U,cAAcvmB;4BAAMssB,cAAczwB;4BAAM6qB,iBAAiBwU;4BAAmCjQ,qBAAAA;wBAAoB;oBAC9O;oBACA,OAAO;gBACT;YACA,KAAK;gBAAiB;wBAQA8O;oBAPpB,IAAI,CAACA,mBAAmB,OAAO;oBAC/B,IAAMpI,MAAKgI,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMjhC,MAAKihC,eAAe,CAAC,cAAc,IAAI;oBAC7C,IAAM4F,KAAK5F,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMoC,YAAWhC,iBAAiB,CAACpI,IAAG;oBACtC,IAAMqK,YAAYD,sBAAAA,gCAAAA,SAAU,CAACrjC,IAAG;oBAChC,IAAM8mC,cAAcxD,sBAAAA,gCAAAA,SAAW,CAACuD,GAAG;oBACnC,IAAMna,eAAc2U,2BAAAA,kBAAkB0F,KAAK,cAAvB1F,+CAAAA,wBAAyB,CAACpI,IAAG;oBACjD,IAAMxM,OAAOqa,cAAc;wBACzB;4BAAEhpC,MAAM;4BAAW2N,OAAOq7B,YAAYzC,OAAO;4BAAErjC,OAAO;wBAAoB;wBAC1E;4BAAElD,MAAM;4BAAU2N,OAAOq7B,YAAYpC,MAAM;4BAAE1jC,OAAO;wBAAqB;wBACzE;4BAAElD,MAAM;4BAAQ2N,OAAOq7B,YAAYE,IAAI;4BAAEhmC,OAAO;wBAAqB;qBACtE,GAAG,EAAE;oBACN,OAAO,aAAa,GAAGw+B,MAAMhT,oBAAoB;wBAAE7vB,OAAO0kC,kBAAkB1kC,KAAK;wBAAE8vB,MAAAA;wBAAMoB,cAAcoL;wBAAInL,eAAe9tB;wBAAI4zB,cAAciT;wBAAIna,aAAAA;wBAAaC,cAAcyW;oBAAiC;gBAC9M;YACA,KAAK;gBAAe;wBAMDC,cACG/B;oBANpB,IAAI,CAACA,iBAAiB,OAAO;oBAC7B,IAAMrI,MAAKgI,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMjhC,MAAKihC,eAAe,CAAC,cAAc,IAAI;oBAC7C,IAAMgG,KAAKhG,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMoC,YAAW/B,4BAAAA,sCAAAA,eAAiB,CAACrI,IAAG;oBACtC,IAAMwN,WAAWpD,CAAAA,sBAAAA,iCAAAA,eAAAA,SAAU,CAACrjC,IAAG,cAAdqjC,mCAAAA,YAAgB,CAAC4D,GAAG,KAAI,EAAE;oBAC3C,IAAM1Q,eAAc+K,yBAAAA,gBAAgB4F,KAAK,cAArB5F,6CAAAA,sBAAuB,CAACrI,IAAG;oBAC/C,IAAM3C,UAAUmQ,SAASlyB,GAAG,CAAC,SAAC+O;+BAAU;4BAAExlB,MAAMwlB,KAAKxlB,IAAI;4BAAE2N,OAAO6X,KAAK7X,KAAK;4BAAE8Q,UAAU+G,KAAK/G,QAAQ,IAAI;wBAAyE;;oBAClL,OAAO,aAAa,GAAGijB,MAAMnJ,aAAa;wBAAE15B,OAAO2kC,gBAAgB3kC,KAAK;wBAAE25B,SAAAA;wBAASzI,cAAcoL;wBAAInL,eAAe9tB;wBAAI4zB,cAAcqT;wBAAI1Q,aAAAA;oBAAY;gBACxJ;YACA,KAAK;gBAAY;wBAOE4Q;oBANjB,IAAI,CAAC1F,cAAc,OAAO;oBAC1B,IAAM2F,KAAKnG,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMoG,KAAKpG,eAAe,CAAC,cAAc,IAAI;oBAC7C,IAAMqG,KAAKrG,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMsG,KAAKtG,eAAe,CAAC,oBAAoB,IAAI;oBACnD,IAAMkG,YAAY1F,YAAY,CAAC2F,GAAG,IAAI,CAAC;oBACvC,IAAMI,WAAWL,CAAAA,sBAAAA,iCAAAA,gBAAAA,SAAW,CAACE,GAAG,cAAfF,oCAAAA,aAAiB,CAACG,GAAG,KAAI,EAAE;oBAC5C,OAAO,aAAa,GAAG9H,MAAMhK,eAAe;wBAAE74B,OAAO8kC,aAAa9kC,KAAK;wBAAE84B,OAAO+R;wBAAU3Z,cAAcuZ;wBAAItZ,eAAeuZ;wBAAII,kBAAkBH;wBAAIzuB,aAAa0uB;oBAAG;gBACvK;YACA,KAAK;gBACH,IAAIb,gBAAgB,OAAO,aAAa,GAAGlH,MAAM9F,UAAU;oBAAEnb,MAAMmoB;gBAAe;gBAClF,OAAO;YACT,KAAK;gBAAa;oBAChB,IAAI/E,eAAe;4BAKbA,sBAAAA;wBAJJ,IAAM1I,MAAKgI,eAAe,CAAC,aAAa,IAAI;wBAC5C,IAAMjhC,MAAKihC,eAAe,CAAC,cAAc,IAAI;wBAC7C,IAAMgG,MAAKhG,eAAe,CAAC,aAAa,IAAI;wBAC5C,IAAIyG,oBAAoB/F,cAAcrY,MAAM,IAAI,EAAE;wBAClD,KAAIqY,oBAAAA,aAAa,CAAC1I,IAAG,cAAjB0I,yCAAAA,uBAAAA,iBAAmB,CAAC3hC,IAAG,cAAvB2hC,2CAAAA,oBAAyB,CAACsF,IAAG,EAAES,oBAAoB/F,aAAa,CAAC1I,IAAG,CAACj5B,IAAG,CAACinC,IAAG;wBAChF,OAAO,aAAa,GAAGzH,MAAMxT,gBAAgB;4BAAErvB,OAAO;4BAA+B2sB,QAAQoe;wBAAkB;oBACjH;oBACA,OAAO;gBACT;YACA,KAAK;gBAAY;wBAIAnG,kBACKA;oBAJpB,IAAI,CAACA,cAAc,OAAO;oBAC1B,IAAMtI,MAAKgI,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMjhC,MAAKihC,eAAe,CAAC,cAAc,IAAI;oBAC7C,IAAMhE,SAASsE,CAAAA,yBAAAA,oCAAAA,mBAAAA,YAAc,CAACtI,IAAG,cAAlBsI,uCAAAA,gBAAoB,CAACvhC,IAAG,KAAI,EAAE;oBAC7C,IAAMu2B,gBAAcgL,sBAAAA,aAAa2F,KAAK,cAAlB3F,0CAAAA,mBAAoB,CAACtI,IAAG;oBAC5C,OAAO,aAAa,GAAGuG,MAAMxC,eAAe;wBAAErgC,OAAO4kC,aAAa5kC,KAAK;wBAAEsgC,QAAAA;wBAAQC,SAASqE,aAAarE,OAAO;wBAAErP,cAAcoL;wBAAInL,eAAe9tB;wBAAIu2B,aAAAA;oBAAY;gBACnK;YACA,KAAK;gBAAY;wBAMEiL,wBAAAA,qBAAAA,kBACGA;oBANpB,IAAI,CAACA,cAAc,OAAO;oBAC1B,IAAMvI,MAAKgI,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMjhC,MAAKihC,eAAe,CAAC,cAAc,IAAI;oBAC7C,IAAM0G,KAAK1G,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMgG,MAAKhG,eAAe,CAAC,aAAa,IAAI;oBAC5C,IAAMwF,YAAWjF,CAAAA,yBAAAA,oCAAAA,mBAAAA,YAAc,CAACvI,IAAG,cAAlBuI,wCAAAA,sBAAAA,gBAAoB,CAACxhC,IAAG,cAAxBwhC,2CAAAA,yBAAAA,mBAA0B,CAACmG,GAAG,cAA9BnG,6CAAAA,sBAAgC,CAACyF,IAAG,KAAI,EAAE;oBAC3D,IAAM1Q,gBAAciL,sBAAAA,aAAa0F,KAAK,cAAlB1F,0CAAAA,mBAAoB,CAACvI,IAAG;oBAC5C,OAAO,aAAa,GAAGuG,MAAMf,eAAe;wBAAE9hC,OAAO6kC,aAAa7kC,KAAK;wBAAE4hB,MAAMkoB;wBAAUvJ,SAASsE,aAAatE,OAAO;wBAAErP,cAAcoL;wBAAInL,eAAe9tB;wBAAI4nC,cAAcD;wBAAI/T,cAAcqT;wBAAI1Q,aAAAA;wBAAasR,SAASrG;oBAAa;gBACtO;YACA;gBACE,OAAO;QACX;IACF;IACA,OAAO,aAAa,GAAG/B,OAAO,OAAO;QAAEtiC,WAAW;QAAyBP,UAAU;YACnF,aAAa,GAAG4iC,MAAM,OAAO;gBAAEriC,WAAW;gBAAgCP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oBAAEriC,WAAW;oBAAwBP,UAAUikC,WAAWtsB,GAAG,CAAC,SAACpR;wBAC9K,IAAM2kC,WAAWhhB,cAAc3jB;wBAC/B,OAAO,aAAa,GAAGq8B,MACrB,UACA;4BACEr8B,MAAM;4BACN/F,SAAS,SAATA;gCACEglC,aAAaj/B;gCACb8+B,8BAAAA,wCAAAA,kBAAoB9+B;4BACtB;4BACA,gBAAgB2kC;4BAChB3qC,WAAW,AAAC,sRAI8R,OAAhS2qC,WAAW,qJAAqJ,iIAAgI;4BAE1SlrC,UAAU4jC,SAASr9B;wBACrB,GACAA;oBAEJ;gBAAG;YAAG;YACN,aAAa,GAAGq8B,MAAM,OAAO;gBAAEriC,WAAW;gBAAqCP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;oBAAEtiC,WAAW;oBAAoDP,UAAU;wBAChM6lC,eAAeluB,GAAG,CAAC,SAAC+K,QAAQvF;4BAC1B,IAAMjD,UAAUwI,OAAOxI,OAAO,CAACvC,GAAG,CAAC,SAACoC;uCAAS;oCAAE9R,KAAK8R;oCAAKlL,OAAOkL;gCAAI;;4BACpE,OAAO,aAAa,GAAG6oB,MACrB,OACA;gCACEriC,WAAW;gCACXmC,OAAO;oCAAEyoC,QAAQ,KAAMtF,CAAAA,eAAe3uB,MAAM,GAAGiG,KAAI;gCAAG;gCACtDnd,UAAU,aAAa,GAAG4iC,MACxBxa,eACA;oCACElO,SAAAA;oCACArL,OAAOw1B,eAAe,CAAC3hB,OAAO/b,EAAE,CAAC;oCACjCoY,UAAU,SAAVA,SAAWqsB;+CAAQ9F,gBAAgB,wCAAKjB,kBAAiB,qBAAC3hB,OAAO/b,EAAE,EAAGiE,OAAOwgC;;oCAC7E3nC,SAAS;oCACTiF,OAAOga,OAAOha,KAAK;gCACrB;4BAEJ,GACAga,OAAO/b,EAAE;wBAEb;wBACA,aAAa,GAAGi8B,MACd,UACA;4BACEr8B,MAAM;4BACN/F,SAAS,SAATA;uCAAe0kC,2BAAAA,qCAAAA,eAAiBb;;4BAChC9jC,WAAW;4BACXP,UAAU;wBACZ;qBAEH;gBAAC;YAAG;YACL,aAAa,GAAG6iC,OAAO,OAAO;gBAAEtiC,WAAW;gBAA0CP,UAAU;oBAC7F+lC,eAAe,aAAa,GAAGlD,OAAO,OAAO;wBAAEtiC,WAAW;wBAAiEP,UAAU;4BACnI,aAAa,GAAG6iC,OAAO,OAAO;gCAAEtiC,WAAW;gCAA+IP,UAAU;oCAClM,aAAa,GAAG4iC,MAAM,OAAO;wCAAEriC,WAAW;wCAAsCP,UAAU,aAAa,GAAG4iC,MAAMmB,gBAAgB,CAAC;oCAAG;oCACpI,aAAa,GAAGnB,MAAM,OAAO;wCAAEriC,WAAW;wCAAwCP,UAAU4rB;oCAAc;oCAC1G,aAAa,GAAGgX,MAAM,OAAO;wCAAEriC,WAAW;wCAAqDP,UAAUulC,QAAQ5tB,GAAG,CAAC,SAAC+O,MAAMI;mDAAQ,aAAa,GAAG+b,OAAO,OAAO;gDAAEtiC,WAAW;gDAAqCP,UAAU;oDAC5N,aAAa,GAAG6iC,OAAO,OAAO;wDAAEtiC,WAAW;wDAAoCP,UAAU;4DACvF,aAAa,GAAG4iC,MAAM,QAAQ;gEAAEriC,WAAW;gEAAoDmC,OAAO;oEAAE8C,iBAAiB+9B,aAAa7c,KAAKtiB,KAAK;gEAAE;4DAAE;4DACpJ,aAAa,GAAGw+B,MAAM,QAAQ;gEAAEriC,WAAW;gEAAkGP,UAAU0mB,KAAKhe,KAAK;4DAAC;yDACnK;oDAAC;oDACF,aAAa,GAAGk6B,MAAM,QAAQ;wDAAEriC,WAAW;wDAAoDP,UAAU0mB,KAAK7X,KAAK;oDAAC;iDACrH;4CAAC,GAAGiY;;oCAAM;iCACZ;4BAAC;4BACF,aAAa,GAAG+b,OAAO,OAAO;gCAAEtiC,WAAW;gCAA8HP,UAAU;oCACjL,aAAa,GAAG4iC,MAAM,MAAM;wCAAEriC,WAAW;wCAA2EP,UAAU;oCAAU;oCACxI,aAAa,GAAG4iC,MAAM,OAAO;wCAAEriC,WAAW;wCAAgCP,UAAUulC,QAAQ5tB,GAAG,CAAC,SAAC+O,MAAMI;4CACrG,IAAMukB,eAAe3kB,KAAKvN,MAAM,GAAGsqB,gBAAgB/c,KAAKvN,MAAM,IAAI;4CAClE,OAAO,aAAa,GAAG0pB,OAAO,OAAO;gDAAEtiC,WAAW;gDAAmCP,UAAU;oDAC7F,aAAa,GAAG4iC,MAAM,QAAQ;wDAAEriC,WAAW;wDAA2DmC,OAAO;4DAAE8C,iBAAiB+9B,aAAa7c,KAAKtiB,KAAK;wDAAE;oDAAE;oDAC3J,aAAa,GAAGy+B,OAAO,OAAO;wDAAEtiC,WAAW;wDAAkBP,UAAU;4DACrE,aAAa,GAAG6iC,OAAO,OAAO;gEAAEtiC,WAAW;gEAA2BP,UAAU;oEAC9E,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAA4GP,UAAU0mB,KAAKhe,KAAK;oEAAC;oEAC3Kge,KAAKvN,MAAM,IAAIkyB,gBAAgB,aAAa,GAAGzI,MAAM,OAAO;wEAAEriC,WAAW;wEAAiEmC,OAAO;4EAAE8C,iBAAiB6lC,aAAa7lC,eAAe;wEAAC;wEAAGxF,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;4EAAEriC,WAAW;4EAAwEmC,OAAO;gFAAE0B,OAAOinC,aAAa1H,SAAS;4EAAC;4EAAG3jC,UAAU0mB,KAAKvN,MAAM;wEAAC;oEAAG;iEACrY;4DAAC;4DACF,aAAa,GAAGypB,MAAM,OAAO;gEAAEriC,WAAW;gEAAyEP,UAAU0mB,KAAKjF,WAAW;4DAAC;yDAC/I;oDAAC;oDACF,aAAa,GAAGmhB,MAAM,OAAO;wDAAEriC,WAAW;wDAA6DP,UAAU0mB,KAAK7X,KAAK;oDAAC;iDAC7H;4CAAC,GAAGiY;wCACP;oCAAG;iCACJ;4BAAC;4BACF,aAAa,GAAG+b,OAAO,OAAO;gCAAEtiC,WAAW;gCAA4DP,UAAU;oCAC/G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA8HP,UAAU;4CACjL,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA4DP,UAAU;4CAAe;4CAC/H,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA0EP,UAAUmlC,WAAWmG,WAAW,CAACz8B,KAAK;4CAAC;4CAC3J,aAAa,GAAG+zB,MAAM,OAAO;gDAAEriC,WAAW,AAAC,uCAA8I,OAAxG4kC,WAAWmG,WAAW,CAACtD,MAAM,CAACvjC,UAAU,CAAC,OAAO,6BAA6B;gDAA8BzE,UAAUmlC,WAAWmG,WAAW,CAACtD,MAAM;4CAAC;4CACpO,aAAa,GAAGpF,MAAM,OAAO;gDAAEriC,WAAW;gDAA0DP,UAAUmlC,WAAWmG,WAAW,CAAC7pB,WAAW;4CAAC;yCAClJ;oCAAC;oCACF,aAAa,GAAGohB,OAAO,OAAO;wCAAEtiC,WAAW;wCAA8HP,UAAU;4CACjL,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA4DP,UAAU;4CAAe;4CAC/H,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA0EP,UAAUmlC,WAAWoG,YAAY,CAAC18B,KAAK;4CAAC;4CAC5J,aAAa,GAAG+zB,MAAM,OAAO;gDAAEriC,WAAW;gDAA0DP,UAAUmlC,WAAWoG,YAAY,CAAC9pB,WAAW;4CAAC;yCACnJ;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACFyI,cAAc,YAAY,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACjL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC3G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAU;4CACtI,aAAa,GAAG4iC,MAAM,OAAO;gDAAE5iC,QAAQ,EAAEypC,8BAAAA,wCAAAA,kBAAmBzd,OAAO,CAACrU,GAAG,CAAC,SAACsuB,QAAQnf;oDAC/E,IAAM+F,aAAa7Z,KAAKC,KAAK,CAACgzB,OAAO/Z,QAAQ,GAAG+Z,OAAO/xB,MAAM,GAAG;oDAChE,IAAMs3B,aAAa,oBAACtqC;wDAClB,IAAM+nC,IAAI/nC,KAAKiB,WAAW;wDAC1B,IAAI8mC,EAAEzgC,QAAQ,CAAC,YAAY,OAAO;wDAClC,IAAIygC,EAAEzgC,QAAQ,CAAC,WAAW,OAAO;wDACjC,IAAIygC,EAAEzgC,QAAQ,CAAC,aAAa,OAAO;wDACnC,OAAO;oDACT;oDACA,OAAO,aAAa,GAAGq6B,OAAO,OAAO;wDAAEtiC,WAAW;wDAAyFP,UAAU;4DACnJ,aAAa,GAAG6iC,OAAO,OAAO;gEAAEtiC,WAAW;gEAAuBP,UAAU;oEAC1E,aAAa,GAAG4iC,MAAM,QAAQ;wEAAEriC,WAAW;wEAA+CP,UAAUimC,OAAO/kC,IAAI;oEAAC;oEAChH,aAAa,GAAG2hC,OAAO,QAAQ;wEAAEtiC,WAAW;wEAAsCP,UAAU;4EAC1FimC,OAAO/Z,QAAQ,CAACxL,cAAc;4EAC9B;4EACAulB,OAAO/xB,MAAM,CAACwM,cAAc;yEAC7B;oEAAC;iEACH;4DAAC;4DACF,aAAa,GAAGmiB,OAAO,OAAO;gEAAEtiC,WAAW;gEAAyCmC,OAAO;oEAAE8C,iBAAiBgmC,WAAWvF,OAAO/kC,IAAI;gEAAE;gEAAGlB,UAAU;oEACjJ6sB;oEACA;iEACD;4DAAC;yDACH;oDAAC,GAAG/F;gDACP;4CAAG;4CACH,aAAa,GAAG+b,OAAO,OAAO;gDAAEtiC,WAAW;gDAA0EP,UAAU;oDAC7H,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAsGP,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;4DAAEriC,WAAW;4DAAoCP,UAAU;wDAAI;oDAAG;oDAC1P,aAAa,GAAG6iC,OAAO,KAAK;wDAAEtiC,WAAW;wDAA0DP,UAAU;4DAC3G;4DACA,aAAa,GAAG4iC,MAAM,QAAQ;gEAAEriC,WAAW;gEAAyCP,UAAU;4DAAkD;yDACjJ;oDAAC;iDACH;4CAAC;yCACH;oCAAC;oCACF,aAAa,GAAG4iC,MACd6I,mBACA;wCACEH,aAAa;wCACbI,aAAatI,WAAWJ,qBAAqBD,eAAeC,mBAAmB;wCAC/E2I,UAAU;wCACVC,YAAY;wCACZC,iBAAiBzI,WAAWH,cAAcF,eAAeE,YAAY;wCACrE6I,gBAAgB;wCAChBC,gBAAgB;wCAChBC,WAAW;wCACXC,WAAW,AAAC,aAAa,GAAG,IAAI//B,OAAQK,kBAAkB,CAAC,SAAS;4CAAE5B,OAAO;4CAAQD,MAAM;wCAAU;oCACvG;iCAEH;4BAAC;yBACH;oBAAC;oBACFwf,cAAc,WAAWsa,aAAa,aAAa,GAAG3B,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BAC7L,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC1G;4CAGoBwkC,mBACfA,mBAAAA;wCAHJ,IAAMnI,KAAKgI,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;wCAC9C,IAAI2F,eAAexF,EAAAA,oBAAAA,UAAU9X,MAAM,cAAhB8X,wCAAAA,kBAAkBttB,MAAM,IAAG,IAAIstB,UAAU9X,MAAM,CAAC,EAAE,GAAG;wCACxE,IAAI8X,EAAAA,gBAAAA,SAAS,CAACnI,GAAG,cAAbmI,qCAAAA,oBAAAA,aAAe,CAAC0H,IAAI,cAApB1H,wCAAAA,kBAAsBttB,MAAM,IAAG,GAAG8yB,eAAexF,SAAS,CAACnI,GAAG,CAAC6P,IAAI,CAAC,EAAE;wCAC1E,IAAI,CAAClC,cAAc,OAAO;wCAC1B,IAAMpd,QAAQod;wCACd,IAAMmC,iBAAiBn5B,KAAKC,KAAK,CAAC2Z,MAAM/d,KAAK,GAAG;wCAChD,IAAMu9B,cAAc;wCACpB,IAAMC,gBAAgB;wCACtB,IAAMC,UAAUxrC,SAASu7B;wCACzB,IAAM/wB,aAAa;4CAAC;4CAAW;4CAAY;4CAAS;4CAAS;4CAAO;4CAAQ;4CAAQ;4CAAU;4CAAa;4CAAW;4CAAY;yCAAW;wCAC7I,IAAMW,aAAaX,WAAWu7B,OAAO,CAACqF;wCACtC,IAAMK,iBAAiB,IAAIrgC,KAAKogC,SAASrgC,aAAa,GAAG;wCACzD,IAAMugC,UAAUD,eAAepgC,OAAO;wCACtC,IAAMsgC,iBAAiBF,eAAelgC,MAAM;wCAC5C,IAAIqgC,aAAaD,mBAAmB,IAAID,UAAUC,iBAAiB,IAAID,UAAWC,CAAAA,iBAAiB,CAAA,IAAKD,UAAU;wCAClH,IAAMG,gBAAgB,IAAIzgC,KAAKogC,SAASrgC,YAAYygC,YAAYngC,kBAAkB,CAAC,SAAS;4CAAE5B,OAAO;4CAASG,KAAK;wCAAU;wCAC7H,OAAO,aAAa,GAAG+3B,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG6iC,OAAO,OAAO;oDAAEtiC,WAAW;oDAA0CP,UAAU;wDAC7F,aAAa,GAAG4iC,MAAM,MAAM;4DAAEriC,WAAW;4DAAiDP,UAAU;wDAAc;wDAClH,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC9E,aAAa,GAAG4iC,MAAM,QAAQ;oEAAEriC,WAAW;oEAAqDP,UAAU;gEAAW;gEACrH,aAAa,GAAG4iC,MAAM,UAAU;oEAAEriC,WAAW;oEAA+IP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;wEAAEv+B,OAAO;wEAAMD,QAAQ;wEAAM4oB,SAAS;wEAAaO,MAAM;wEAAgBxtB,UAAU;4EACrT,aAAa,GAAG4iC,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAKC,GAAG;4EAAI;4EAC3D,aAAa,GAAGmD,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAKC,GAAG;4EAAI;4EAC3D,aAAa,GAAGmD,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAMC,GAAG;4EAAI;yEAC7D;oEAAC;gEAAG;6DACN;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAGmD,MAAM,OAAO;oDAAEriC,WAAW;oDAA+BP,UAAU;wDAAC;4DAAC;4DAAiB,GAAc,OAAZosC,aAAY;yDAAQ;wDAAE;4DAAC;4DAAkB,GAAiB,OAAfD,gBAAe;yDAAQ;wDAAE;4DAAC;4DAAmB,GAAgB,OAAdE,eAAc;yDAAO;wDAAE;4DAAC;4DAAmBM;yDAAc;qDAAC,CAACh1B,GAAG,CAAC;iGAAEjP,mBAAOmG;+DAAW,aAAa,GAAGg0B,OAAO,OAAO;4DAAE7iC,UAAU;gEAC7T,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAA+CP,UAAU0I;gEAAM;gEACzG,aAAa,GAAGk6B,MAAM,OAAO;oEAAEriC,WAAW;oEAAiDP,UAAU6O;gEAAM;6DAC5G;wDAAC,GAAGnG;;gDAAQ;6CACd;wCAAC;oCACJ;oCACA,aAAa,GAAGk6B,MACd6I,mBACA;wCACEH,aAAa;wCACbI,aAAatI,WAAWJ,qBAAqBD,eAAeC,mBAAmB;wCAC/E2I,UAAU;wCACVC,YAAY;wCACZC,iBAAiBzI,WAAWH,cAAcF,eAAeE,YAAY;wCACrE6I,gBAAgB;wCAChBC,gBAAgB;wCAChBC,WAAW;wCACXC,WAAW,AAAC,aAAa,GAAG,IAAI//B,OAAQK,kBAAkB,CAAC,SAAS;4CAAE5B,OAAO;4CAAQD,MAAM;wCAAU;oCACvG;iCAEH;4BAAC;yBACH;oBAAC;oBACFwf,cAAc,eAAe6a,iBAAiB,aAAa,GAAGlC,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACrM,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC1G;4CAIwB+kC,uBACnBA,0BAAAA,uBAAAA;wCAJJ,IAAM1I,KAAKgI,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;wCAC9C,IAAMgG,KAAKhG,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAIuI,mBAAmB7H,EAAAA,wBAAAA,cAAcrY,MAAM,cAApBqY,4CAAAA,sBAAsB7tB,MAAM,IAAG,IAAI6tB,cAAcrY,MAAM,CAAC,EAAE,GAAG;wCACpF,IAAIqY,EAAAA,oBAAAA,aAAa,CAAC1I,GAAG,cAAjB0I,yCAAAA,wBAAAA,iBAAmB,CAACmH,IAAI,cAAxBnH,6CAAAA,2BAAAA,qBAA0B,CAACsF,GAAG,cAA9BtF,+CAAAA,yBAAgC7tB,MAAM,IAAG,GAAG01B,mBAAmB7H,aAAa,CAAC1I,GAAG,CAAC6P,IAAI,CAAC7B,GAAG,CAAC,EAAE;wCAChG,IAAI,CAACuC,kBAAkB,OAAO;wCAC9B,IAAMhgB,QAAQggB;wCACd,IAAMvd,WAAWzC,MAAM7G,GAAG,IAAI;wCAC9B,IAAMomB,iBAAiBn5B,KAAKC,KAAK,CAAC2Z,MAAMqC,KAAK,GAAG;wCAChD,IAAMmd,cAAcp5B,KAAKC,KAAK,CAAC2Z,MAAMqC,KAAK,GAAG;wCAC7C,OAAO,aAAa,GAAG4T,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG6iC,OAAO,OAAO;oDAAEtiC,WAAW;oDAA0CP,UAAU;wDAC7F,aAAa,GAAG4iC,MAAM,MAAM;4DAAEriC,WAAW;4DAAiDP,UAAU;wDAAc;wDAClH,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC9E,aAAa,GAAG4iC,MAAM,QAAQ;oEAAEriC,WAAW;oEAAqDP,UAAU;gEAAW;gEACrH,aAAa,GAAG4iC,MAAM,UAAU;oEAAEriC,WAAW;oEAA+IP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;wEAAEv+B,OAAO;wEAAMD,QAAQ;wEAAM4oB,SAAS;wEAAaO,MAAM;wEAAgBxtB,UAAU;4EACrT,aAAa,GAAG4iC,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAKC,GAAG;4EAAI;4EAC3D,aAAa,GAAGmD,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAKC,GAAG;4EAAI;4EAC3D,aAAa,GAAGmD,MAAM,UAAU;gFAAErD,IAAI;gFAAKC,IAAI;gFAAMC,GAAG;4EAAI;yEAC7D;oEAAC;gEAAG;6DACN;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAGmD,MAAM,OAAO;oDAAEriC,WAAW;oDAA0BP,UAAU;wDAAC;4DAAC;4DAAiB,GAAc,OAAZosC,aAAY;yDAAQ;wDAAE;4DAAC;4DAAkB,GAAiB,OAAfD,gBAAe;yDAAQ;wDAAE;4DAAC;4DAAkB;yDAAS;wDAAE;4DAAC;4DAAavhC,OAAOykB;yDAAU;qDAAC,CAAC1X,GAAG,CAAC;iGAAEjP,mBAAOmG;+DAAW,aAAa,GAAGg0B,OAAO,OAAO;4DAAE7iC,UAAU;gEACtS,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAA+CP,UAAU0I;gEAAM;gEACzG,aAAa,GAAGk6B,MAAM,OAAO;oEAAEriC,WAAW;oEAAiDP,UAAU6O;gEAAM;6DAC5G;wDAAC,GAAGnG;;gDAAQ;6CACd;wCAAC;oCACJ;oCACA,aAAa,GAAGm6B,OAAO,OAAO;wCAAEtiC,WAAW;wCAAgJP,UAAU;4CACnM,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAAkFP,UAAU;oDACrI,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAA8DP,UAAU;oDAAiB;oDACnI,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAA6EP,UAAU,AAAC,GAA+CqkC,OAA7CA,eAAe,CAAC,aAAa,IAAI,QAAO,OAAiD,OAA5CA,eAAe,CAAC,cAAc,IAAI;oDAAY;iDAChO;4CAAC;4CACF,aAAa,GAAGzB,MAAM,OAAO;gDAAEriC,WAAW;gDAA8FP,UAAU;4CAAa;4CAC/J,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA8FP,UAAU+kC,CAAAA,0BAAAA,qCAAAA,kBAAAA,aAAe,CAACV,eAAe,CAAC,aAAa,IAAI,OAAO,cAAxDU,uCAAAA,mBAAAA,eAA0D,CAACV,eAAe,CAAC,cAAc,IAAI,UAAU,cAAvGU,wCAAAA,oBAAAA,gBAAyG,CAACV,eAAe,CAAC,aAAa,IAAI,eAAe,cAA1JU,yCAAAA,qBAAAA,iBAA4J,CAAC,EAAE,cAA/JA,yCAAAA,mBAAiK9V,KAAK,KAAI;4CAAE;4CAC9T,aAAa,GAAG2T,MAAM,OAAO;gDAAEriC,WAAW;4CAA+E;4CACzH,aAAa,GAAGqiC,MAAM,OAAO;gDAAEriC,WAAW;gDAA2EP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oDAAE9a,KAAKsb,WAAWJ,qBAAqBD,eAAeC,mBAAmB;oDAAGta,KAAK;oDAAInoB,WAAW;gDAA6C;4CAAG;4CAC5S,aAAa,GAAGqiC,MAAM,OAAO;gDAAEriC,WAAW;gDAA8GP,UAAU;4CAAmB;4CACrL,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAAmGP,UAAU;4CAAM;4CAC7J,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA6GP,UAAU;4CAAU;4CAC3K,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA4EP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oDAAE9a,KAAKsb,WAAWH,cAAcF,eAAeE,YAAY;oDAAGva,KAAK;oDAAInoB,WAAW;gDAAuD;4CAAG;4CACzS,aAAa,GAAGqiC,MAAM,OAAO;gDAAEriC,WAAW;gDAA+GP,UAAU;4CAAiB;4CACpL,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAAoGP,UAAU;4CAAY;4CACpK,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAA8GP,UAAU;4CAAe;yCAClL;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACFkqB,cAAc,WAAW,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoHP,UAAU;4BAChM,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAgOP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwDP,UAAU4rB;gCAAc;4BAAG;4BACjZ,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAuDP,UAAU;oCAC1G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAAwKP,UAAU;4CAC3N,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAoHP,UAAU;4CAA8B;4CACrM,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAAqGP,UAAU;oDACxJ;oDACAylC;iDACD;4CAAC;4CACF,aAAa,GAAG7C,MAAM,OAAO;gDAAEriC,WAAW;gDAAgCP,QAAQ,EAAEkmC,6BAAAA,uCAAAA,iBAAkBxR,KAAK,CAAC/c,GAAG,CAAC,SAACwd;oDAC/G,IAAMC,YAAYtE,YAAY,CAACqE,KAAK/wB,KAAK,CAAC,IAAI0sB,aAAa1vB,IAAI;oDAC/D,OAAO,aAAa,GAAGyhC,OAAO,OAAO;wDAAEtiC,WAAW;wDAAuFP,UAAU;4DACjJ,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAsCmC,OAAO;oEAAEgC,YAAY0wB;gEAAU;4DAAE;4DACjH,aAAa,GAAGyN,OAAO,OAAO;gEAAEtiC,WAAW;gEAAkBP,UAAU;oEACrE,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAA8GP,UAAUm1B,KAAKj0B,IAAI;oEAAC;oEAC5K,aAAa,GAAG2hC,OAAO,OAAO;wEAAEtiC,WAAW;wEAAgDP,UAAU;4EACnGm1B,KAAKmR,QAAQ;4EACb;yEACD;oEAAC;iEACH;4DAAC;4DACF,aAAa,GAAG1D,MAAM,OAAO;gEAAEriC,WAAW;gEAAkEmC,OAAO;oEAAE8C,iBAAiBi+B,gBAAgBtO,KAAKhc,MAAM,EAAE3T,eAAe;oEAAEpB,OAAOq/B,gBAAgBtO,KAAKhc,MAAM,EAAEwqB,SAAS;gEAAC;gEAAG3jC,UAAUm1B,KAAKhc,MAAM;4DAAC;yDAC5P;oDAAC,GAAGgc,KAAKxuB,EAAE;gDACd;4CAAG;yCACJ;oCAAC;oCACF,aAAa,GAAGk8B,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAkB;4CAC9I,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAAgCP,UAAU;oDACnF,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAA0DP,UAAU;oDAAiB;oDAC/H,aAAa,GAAG6iC,OAAO,OAAO;wDAAEtiC,WAAW;wDAA0BP,UAAU;4DAC7E,aAAa,GAAG6iC,OAAO,OAAO;gEAAEtiC,WAAW;gEAAwCP,UAAU;oEAC3F,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAAiEP,UAAU;oEAAU;oEAC/H,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAA0DP,UAAUkmC,CAAAA,6BAAAA,uCAAAA,iBAAkBxR,KAAK,CAAChS,MAAM,CAAC,SAACV;mFAAMA,EAAE7I,MAAM,KAAK;2EAAWjC,MAAM,KAAI;oEAAE;iEACzL;4DAAC;4DACF,aAAa,GAAG2rB,OAAO,OAAO;gEAAEtiC,WAAW;gEAAwCP,UAAU;oEAC3F,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAAiEP,UAAU;oEAAc;oEACnI,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAA0DP,UAAUkmC,CAAAA,6BAAAA,uCAAAA,iBAAkBxR,KAAK,CAAChS,MAAM,CAAC,SAACV;mFAAMA,EAAE7I,MAAM,KAAK;2EAAejC,MAAM,KAAI;oEAAE;iEAC7L;4DAAC;yDACH;oDAAC;oDACF,aAAa,GAAG0rB,MAAM,OAAO;wDAAEriC,WAAW;wDAA+BP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAAwCP,UAAU;gEAC9K,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAiEP,UAAU;gEAAY;gEACjI,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAA0DP,UAAUkmC,CAAAA,6BAAAA,uCAAAA,iBAAkBxR,KAAK,CAAChS,MAAM,CAAC,SAACV;+EAAMA,EAAE7I,MAAM,KAAK;uEAAajC,MAAM,KAAI;gEAAE;6DAC3L;wDAAC;oDAAG;oDACL,aAAa,GAAG0rB,MAAM,OAAO;wDAAEriC,WAAW;wDAAqEP,UAAU,AAAC;gEACnHkmC;4DAAL,IAAI,EAACA,6BAAAA,wCAAAA,0BAAAA,iBAAkBxR,KAAK,cAAvBwR,8CAAAA,wBAAyBhvB,MAAM,GAAE,OAAO;4DAC7C,IAAM21B,WAAW3G,iBAAiBxR,KAAK,CAACwR,iBAAiBxR,KAAK,CAACxd,MAAM,GAAG,EAAE;4DAC1E,IAAqB21B,2CAAAA,SAAShZ,OAAO,CAACvlB,KAAK,CAAC,UAArCxD,MAAc+hC,4BAATliC,QAASkiC;4DACrB,IAAMvhC,aAAa;gEAAE,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;gEAAO,MAAM;4DAAM;4DAChL,OAAO,AAAC,eAAqBA,OAAPR,KAAI,KAAiCu5B,OAA9B/4B,UAAU,CAACX,MAAM,IAAI,OAAM,KAA2C,OAAxC05B,eAAe,CAAC,aAAa,IAAI;wDAC9F;oDAAK;iDACN;4CAAC;yCACH;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACFna,cAAc,qBAAqB,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoHP,UAAU;4BAC1M,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwDP,UAAU4rB;gCAAc;4BAAG;4BACzX,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAuDP,UAAU;oCAC1G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAkB;4CAC9I,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAAuBP,UAAU;oDAAC;wDAAC;wDAAuB;qDAAoB;oDAAE;wDAAC;wDAAuB;qDAA6B;oDAAE;wDAAC;wDAAsB;qDAAyB;oDAAE;wDAAC;wDAAqB;qDAA0B;iDAAC,CAAC2X,GAAG,CAAC;6FAAEvT,mBAAOsE;2DAAW,aAAa,GAAGm6B,OAAO,OAAO;wDAAEtiC,WAAW;wDAA2BP,UAAU;4DAC3X,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAoCmC,OAAO;oEAAE8C,iBAAiBpB;gEAAM;4DAAE;4DAChH,aAAa,GAAGw+B,MAAM,QAAQ;gEAAEriC,WAAW;gEAAoEP,UAAU0I;4DAAM;yDAChI;oDAAC,GAAGA;;4CAAQ;yCACd;oCAAC;oCACF,aAAa,GAAGm6B,OAAO,OAAO;wCAAEtiC,WAAW;wCAA8KP,UAAU;4CACjO,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAA4CP,UAAU;oDAC/F,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAkEP,UAAU;oDAAiB;oDACvI,aAAa,GAAG6iC,OAAO,OAAO;wDAAEtiC,WAAW;wDAAuFP,UAAU;4DAC1IqkC,eAAe,CAAC,aAAa,IAAI;4DACjC;4DACAsB;4DACA;4DACAtB,eAAe,CAAC,aAAa,IAAI;yDAClC;oDAAC;iDACH;4CAAC;4CACF,aAAa,GAAGxB,OAAO,OAAO;gDAAE7iC,UAAU;oDACxC,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAkEP,UAAU;oDAAe;oDACrI,aAAa,GAAG6iC,OAAO,OAAO;wDAAEtiC,WAAW;wDAAuEP,UAAU;4DAC1H;4DACAmlC,WAAWmG,WAAW,CAACz8B,KAAK;yDAC7B;oDAAC;iDACH;4CAAC;4CACF,aAAa,GAAG+zB,MAAM,OAAO;gDAAEriC,WAAW;4CAAwC;4CAClF,aAAa,GAAGsiC,OAAO,OAAO;gDAAEtiC,WAAW;gDAAiCP,UAAU;oDACpF,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAmGP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;4DAAE9a,KAAKsb,WAAWJ,qBAAqBD,eAAeC,mBAAmB;4DAAGta,KAAK;4DAAInoB,WAAW;wDAAiC;oDAAG;oDACxT,aAAa,GAAGsiC,OAAO,OAAO;wDAAEtiC,WAAW;wDAA8BP,UAAU;4DACjF,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAiGP,UAAU;4DAAW;4DAChK,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAmFP,UAAUupC,eAAetB,yBAAyBE,OAAO,CAAC19B,IAAI;4DAAE;4DAC7L,aAAa,GAAGm4B,MAAM,OAAO;gEAAEriC,WAAW;gEAAgGP,UAAUioC,yBAAyBE,OAAO,CAACt5B,KAAK,GAAG,AAAC,GAA0D,OAAxDo5B,yBAAyBE,OAAO,CAACt5B,KAAK,CAAC6R,cAAc,IAAG,aAAW;4DAAe;yDACnR;oDAAC;iDACH;4CAAC;4CACF,aAAa,GAAGmiB,OAAO,OAAO;gDAAEtiC,WAAW;gDAAiCP,UAAU;oDACpF,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAmGP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;4DAAE9a,KAAKsb,WAAWH,cAAcF,eAAeE,YAAY;4DAAGva,KAAK;4DAAInoB,WAAW;wDAAiC;oDAAG;oDAC1S,aAAa,GAAGsiC,OAAO,OAAO;wDAAEtiC,WAAW;wDAA8BP,UAAU;4DACjF,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAiGP,UAAU;4DAAkB;4DACvK,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAmFP,UAAUioC,yBAAyBI,aAAa,CAACD,OAAO,IAAI;4DAAY;4DACrM,aAAa,GAAGvF,OAAO,OAAO;gEAAEtiC,WAAW;gEAAgGP,UAAU;oEACnJ;oEACAioC,yBAAyBI,aAAa,CAACE,OAAO,IAAI;oEAClD;iEACD;4DAAC;yDACH;oDAAC;iDACH;4CAAC;yCACH;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACFre,cAAc,mBAAmB,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACxL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC3G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAe;4CAC3I,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAAgCP,UAAU;oDAAC;wDAAC;wDAAqB;qDAAU;oDAAE;wDAAC;wDAAsB;qDAAS;oDAAE;wDAAC;wDAAsB;qDAAO;iDAAC,CAAC2X,GAAG,CAAC;6FAAEvT,mBAAOsE;2DAAW,aAAa,GAAGm6B,OAAO,OAAO;wDAAEtiC,WAAW;wDAA2BP,UAAU;4DAC/R,aAAa,GAAG4iC,MAAM,OAAO;gEAAEriC,WAAW;gEAAqDmC,OAAO;oEAAE8C,iBAAiBpB;gEAAM;4DAAE;4DACjI,aAAa,GAAGw+B,MAAM,QAAQ;gEAAEriC,WAAW;gEAAkDP,UAAU0I;4DAAM;yDAC9G;oDAAC,GAAGA;;4CAAQ;yCACd;oCAAC;oCACF89B,oCAAoC,aAAa,GAAG5D,MAAMkK,kBAAkB;wCAAEC,WAAWvG;oCAAiC;iCAC3H;4BAAC;yBACH;oBAAC;oBACFtc,cAAc,iBAAiB,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACtL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC3G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAA0CP,UAAU;oDAC7F,aAAa,GAAG4iC,MAAM,MAAM;wDAAEriC,WAAW;wDAA4DP,UAAU;oDAAe;oDAC9H,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAmJP,UAAU;oDAAU;iDAClN;4CAAC;4CACD;oDAKkB0kC,yBAAAA,qBASIA,qCAAAA;gDAbrB,IAAI,CAACA,iBAAiB,OAAO;gDAC7B,IAAMrI,KAAKgI,eAAe,CAAC,aAAa,IAAI;gDAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;gDAC9C,IAAMgG,KAAKhG,eAAe,CAAC,aAAa,IAAI;gDAC5C,IAAMwF,WAAWnF,CAAAA,4BAAAA,uCAAAA,sBAAAA,eAAiB,CAACrI,GAAG,cAArBqI,2CAAAA,0BAAAA,mBAAuB,CAACwH,IAAI,cAA5BxH,8CAAAA,uBAA8B,CAAC2F,GAAG,KAAI,EAAE;gDACzD,IAAI,CAACR,SAAS3yB,MAAM,EAAE,OAAO;gDAC7B,IAAM6Y,eAAe8Z,SAASnN,MAAM,CAAC,SAAC3W,KAAKW;2DAASA,KAAK7X,KAAK,GAAGkX,IAAIlX,KAAK,GAAG6X,OAAOX;mDAAK8jB,QAAQ,CAAC,EAAE;gDACpG,IAAMmD,eAAenD,SAASnN,MAAM,CAAC,SAACuQ,KAAKvmB;2DAASumB,MAAMvmB,KAAK7X,KAAK;mDAAE;gDACtE,IAAMq+B,eAAeF,eAAe,IAAIh6B,KAAKC,KAAK,CAAC8c,aAAalhB,KAAK,GAAGm+B,eAAe,OAAO;gDAC9F,IAAM1hC,aAAa;oDAAC;oDAAW;oDAAY;oDAAS;oDAAS;oDAAO;oDAAQ;oDAAQ;oDAAU;oDAAa;oDAAW;oDAAY;iDAAW;gDAC7I,IAAM6hC,KAAK7hC,WAAWu7B,OAAO,CAACqF;gDAC9B,IAAMkB,YAAYD,KAAK,IAAI7hC,UAAU,CAAC6hC,KAAK,EAAE,GAAG;gDAChD,IAAME,WAAWF,KAAK,IAAI9Q,KAAKzxB,OAAOkN,OAAOukB,MAAM;gDACnD,IAAMiR,eAAe5I,CAAAA,4BAAAA,uCAAAA,4BAAAA,eAAiB,CAAC2I,SAAS,cAA3B3I,iDAAAA,sCAAAA,yBAA6B,CAAC0I,UAAU,cAAxC1I,0DAAAA,mCAA0C,CAAC2F,GAAG,KAAI,EAAE;gDACzE,IAAMkD,UAAUD,aAAa9yB,IAAI,CAAC,SAAC7D;2DAAMA,EAAEzV,IAAI,KAAK6uB,aAAa7uB,IAAI;;gDACrE,IAAMssC,SAASD,CAAAA,oBAAAA,8BAAAA,QAAS1+B,KAAK,IAAG,IAAImE,KAAKC,KAAK,CAAC,AAAC8c,CAAAA,aAAalhB,KAAK,GAAG0+B,QAAQ1+B,KAAI,AAAC,IAAI0+B,QAAQ1+B,KAAK,GAAG,OAAO;gDAC7G,IAAM4+B,OAAO,AAAC,qBAAG5D,UAAU6D,IAAI,CAAC,SAAC/gC,GAAGC;2DAAMA,EAAEiC,KAAK,GAAGlC,EAAEkC,KAAK;mDAAEwT,SAAS,CAAC,SAAC1L;2DAAMA,EAAEzV,IAAI,KAAK6uB,aAAa7uB,IAAI;qDAAI;gDAC9G,OAAO,aAAa,GAAG2hC,OAAOF,WAAW;oDAAE3iC,UAAU;wDACnD,aAAa,GAAG4iC,MAAM,OAAO;4DAAEriC,WAAW;4DAAmFP,UAAU+vB,aAAa7uB,IAAI;wDAAC;wDACzJ,aAAa,GAAG0hC,MAAM,OAAO;4DAAEriC,WAAW;4DAA0BP,UAAU;gEAAC;oEAAC;oEAAW+vB,aAAalhB,KAAK,IAAI,MAAM,AAAC,GAAwC,OAAtC,AAACkhB,CAAAA,aAAalhB,KAAK,GAAG,GAAE,EAAGmrB,OAAO,CAAC,IAAG,OAAKjK,aAAalhB,KAAK;oEAAE,KAAK;iEAAE;gEAAE;oEAAC;oEAAiB,GAAe,OAAbq+B,cAAa;oEAAI,KAAK;iEAAE;gEAAE;oEAAC;oEAAW,GAA2BM,OAAzBA,UAAU,IAAI,MAAM,IAAY,OAAPA,QAAO;oEAAIA,UAAU,IAAI,uBAAuB;iEAAoB;gEAAE;oEAAC;oEAAS,IAAQ,OAALC;oEAAQ,KAAK;iEAAE;6DAAC,CAAC91B,GAAG,CAAC;yGAAEjP,mBAAOmG,mBAAOzK;uEAAW,aAAa,GAAGy+B,OAAO,OAAO;oEAAE7iC,UAAU;wEAClc,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAAyCP,UAAU0I;wEAAM;wEACnG,aAAa,GAAGk6B,MAAM,OAAO;4EAAEriC,WAAW;4EAAyBmC,OAAO;gFAAE0B,OAAOA,SAAS;4EAAmB;4EAAGpE,UAAU4K,OAAOiE;wEAAO;qEAC3I;gEAAC,GAAGjE,OAAOlC;;wDAAS;qDACtB;gDAAC;4CACJ;yCACD;oCAAC;oCACF,aAAa,GAAGm6B,OAAO,OAAO;wCAAEtiC,WAAW;wCAA8KP,UAAU;4CACjO,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAA2CP,UAAU;oDAC9F,aAAa,GAAG4iC,MAAM,MAAM;wDAAEriC,WAAW;wDAA4DP,UAAU;oDAAiB;oDAChI,aAAa,GAAG6iC,OAAO,OAAO;wDAAEtiC,WAAW;wDAAgFP,UAAU;4DACnIqkC,eAAe,CAAC,cAAc,IAAI;4DAClC;4DACAA,eAAe,CAAC,aAAa,IAAI;yDAClC;oDAAC;iDACH;4CAAC;4CACF,aAAa,GAAGzB,MAAM,OAAO;gDAAEriC,WAAW;gDAAgFP,UAAU;4CAAe;4CAClJ;oDAKkB0kC,yBAAAA,qBAMIA,qCAAAA;gDAVrB,IAAI,CAACA,iBAAiB,OAAO;gDAC7B,IAAMrI,KAAKgI,eAAe,CAAC,aAAa,IAAI;gDAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;gDAC9C,IAAMgG,KAAKhG,eAAe,CAAC,aAAa,IAAI;gDAC5C,IAAMwF,WAAWnF,CAAAA,4BAAAA,uCAAAA,sBAAAA,eAAiB,CAACrI,GAAG,cAArBqI,2CAAAA,0BAAAA,mBAAuB,CAACwH,IAAI,cAA5BxH,8CAAAA,uBAA8B,CAAC2F,GAAG,KAAI,EAAE;gDACzD,IAAMsD,eAAe9D,SAASnN,MAAM,CAAC,SAACuQ,KAAKvmB;2DAASumB,MAAMvmB,KAAK7X,KAAK;mDAAE;gDACtE,IAAMvD,aAAa;oDAAC;oDAAW;oDAAY;oDAAS;oDAAS;oDAAO;oDAAQ;oDAAQ;oDAAU;oDAAa;oDAAW;oDAAY;iDAAW;gDAC7I,IAAM6hC,KAAK7hC,WAAWu7B,OAAO,CAACqF;gDAC9B,IAAMkB,YAAYD,KAAK,IAAI7hC,UAAU,CAAC6hC,KAAK,EAAE,GAAG;gDAChD,IAAME,WAAWF,KAAK,IAAI9Q,KAAKzxB,OAAOkN,OAAOukB,MAAM;gDACnD,IAAMiR,eAAe5I,CAAAA,4BAAAA,uCAAAA,4BAAAA,eAAiB,CAAC2I,SAAS,cAA3B3I,iDAAAA,sCAAAA,yBAA6B,CAAC0I,UAAU,cAAxC1I,0DAAAA,mCAA0C,CAAC2F,GAAG,KAAI,EAAE;gDACzE,IAAMuD,YAAYN,aAAa5Q,MAAM,CAAC,SAACuQ,KAAKvmB;2DAASumB,MAAMvmB,KAAK7X,KAAK;mDAAE;gDACvE,IAAMg/B,YAAYD,YAAY,IAAI56B,KAAKC,KAAK,CAAC,AAAC06B,CAAAA,eAAeC,SAAQ,IAAKA,YAAY,OAAO;gDAC7F,IAAMlG,aAAamG,aAAa;gDAChC,IAAMC,UAAUpG,aAAa,wBAAwB;gDACrD,IAAM/D,YAAY+D,aAAa,sBAAsB;gDACrD,OAAO,aAAa,GAAG7E,OAAO,OAAO;oDAAEtiC,WAAW;oDAA2BP,UAAU;wDACrF,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAAuFP,UAAU;gEAC1I;gEACA2tC,aAAajtB,cAAc,CAAC,SAAS;oEAAEqtB,uBAAuB;oEAAGC,uBAAuB;gEAAE;6DAC3F;wDAAC;wDACF,aAAa,GAAGnL,OAAO,OAAO;4DAAEtiC,WAAW;4DAAyEmC,OAAO;gEAAEgC,YAAYopC;4DAAQ;4DAAG9tC,UAAU;gEAC5J,aAAa,GAAG4iC,MAAM,OAAO;oEAAE9a,KAAK4f,aAAatE,WAAWF,cAAcH,eAAeG,YAAY,IAAIE,WAAWD,cAAcJ,eAAeI,YAAY;oEAAGza,KAAKgf,aAAa,aAAa;oEAAYnnC,WAAW;gEAA6B;gEACnP,aAAa,GAAGsiC,OAAO,QAAQ;oEAAEtiC,WAAW;oEAAmDmC,OAAO;wEAAE0B,OAAOu/B;oEAAU;oEAAG3jC,UAAU;wEACpIgT,KAAKsoB,GAAG,CAACuS;wEACT;qEACD;gEAAC;6DACH;wDAAC;qDACH;gDAAC;4CACJ;yCACD;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACF3jB,cAAc,cAAc,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACnL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC1G;wCACC,IAAI,CAAC2kC,cAAc,OAAO;wCAC1B,IAAMrE,UAAUqE,aAAarE,OAAO,IAAI,EAAE;wCAC1C,IAAM2N,iBAAiB;4CAAC;gDAAC;gDAAqB;6CAAU;4CAAE;gDAAC;gDAAsB;6CAAS;4CAAE;gDAAC;gDAAqB;6CAAO;4CAAE;gDAAC;gDAAsB;6CAAO;yCAAC;wCAC1J,OAAO,aAAa,GAAGpL,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG4iC,MAAM,MAAM;oDAAEriC,WAAW;oDAAyEP,UAAU;gDAAU;gDACtI,aAAa,GAAG4iC,MAAM,OAAO;oDAAEriC,WAAW;oDAA0CP,UAAUsgC,QAAQppB,MAAM,GAAG,IAAIopB,QAAQ3oB,GAAG,CAAC,SAAC+S,QAAQ/T;+DAAM,aAAa,GAAGksB,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC5N,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAsCmC,OAAO;wEAAE8C,iBAAiBklB,OAAOtmB,KAAK;oEAAC;gEAAE;gEACzH,aAAa,GAAGw+B,MAAM,QAAQ;oEAAEriC,WAAW;oEAAkDP,UAAU0qB,OAAOhiB,KAAK;gEAAC;6DACrH;wDAAC,GAAGgiB,OAAOziB,GAAG,IAAI0O;yDAAMs3B,eAAet2B,GAAG,CAAC;iGAAEvT,mBAAOsE;+DAAW,aAAa,GAAGm6B,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC9I,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAsCmC,OAAO;wEAAE8C,iBAAiBpB;oEAAM;gEAAE;gEAClH,aAAa,GAAGw+B,MAAM,QAAQ;oEAAEriC,WAAW;oEAAkDP,UAAU0I;gEAAM;6DAC9G;wDAAC,GAAGA;;gDAAQ;6CACd;wCAAC;oCACJ;oCACC;4CAIgBi8B,kBAeIA;wCAlBnB,IAAI,CAACA,cAAc,OAAO;wCAC1B,IAAMtI,KAAKgI,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;wCAC9C,IAAMhE,SAASsE,CAAAA,yBAAAA,oCAAAA,mBAAAA,YAAc,CAACtI,GAAG,cAAlBsI,uCAAAA,gBAAoB,CAACuH,IAAI,KAAI,EAAE;wCAC9C,IAAI,CAAC7L,OAAOnpB,MAAM,EAAE,OAAO;wCAC3B,IAAMopB,UAAUqE,aAAarE,OAAO,IAAI,EAAE;wCAC1C,IAAM4N,WAAW,kBAACjmC,KAAKq7B;gDAAahD;mDAAAA,EAAAA,gBAAAA,QAAQ9lB,IAAI,CAAC,SAAC0nB;uDAAMA,EAAEj6B,GAAG,KAAKA;4DAA9Bq4B,oCAAAA,cAAoCl8B,KAAK,KAAIk/B;;wCACjF,IAAM6K,eAAeD,SAAS,WAAW;wCACzC,IAAME,cAAcF,SAAS,UAAU;wCACvC,IAAMG,YAAYH,SAAS,QAAQ;wCACnC,IAAMvN,kBAAkB,yBAAC2N;mDAAMA,EAAEzN,YAAY,KAAK,KAAK,KAAKyN,EAAEzN,YAAY,KAAK,OAAOyN,EAAEzN,YAAY,GAAGyN,EAAEtO,OAAO,GAAGsO,EAAEnO,IAAI;;wCACzH,IAAMpQ,eAAesQ,OAAO3D,MAAM,CAAC,SAAC3W,KAAKW;mDAASA,KAAKsZ,OAAO,GAAGja,IAAIia,OAAO,GAAGtZ,OAAOX;2CAAKsa,MAAM,CAAC,EAAE;wCACpG,IAAMkO,QAAQ5N,gBAAgB5Q;wCAC9B,IAAMye,kBAAkBD,SAAS;wCACjC,IAAMjjC,aAAa;4CAAC;4CAAW;4CAAY;4CAAS;4CAAS;4CAAO;4CAAQ;4CAAQ;4CAAU;4CAAa;4CAAW;4CAAY;yCAAW;wCAC7I,IAAM6hC,KAAK7hC,WAAWu7B,OAAO,CAACqF;wCAC9B,IAAMkB,YAAYD,KAAK,IAAI7hC,UAAU,CAAC6hC,KAAK,EAAE,GAAG;wCAChD,IAAME,WAAWF,KAAK,IAAI9Q,KAAKzxB,OAAOkN,OAAOukB,MAAM;wCACnD,IAAMoS,aAAa9J,CAAAA,yBAAAA,oCAAAA,yBAAAA,YAAc,CAAC0I,SAAS,cAAxB1I,6CAAAA,sBAA0B,CAACyI,UAAU,KAAI,EAAE;wCAC9D,IAAMG,UAAUkB,WAAWj0B,IAAI,CAAC,SAAC7D;mDAAMA,EAAEzV,IAAI,KAAK6uB,aAAa7uB,IAAI;;wCACnE,IAAM2sC,YAAYN,WAAWA,QAAQvN,OAAO,GAAG,IAAIhtB,KAAKC,KAAK,CAAC,AAAC8c,CAAAA,aAAaiQ,OAAO,GAAGuN,QAAQvN,OAAM,AAAC,IAAIuN,QAAQvN,OAAO,GAAG,OAAO;wCAClI,IAAM0H,aAAamG,aAAa;wCAChC,IAAMa,eAAerO,OAAO3d,MAAM,CAAC,SAAC/L;mDAAMgqB,gBAAgBhqB,KAAK;;wCAC/D,IAAMoxB,aAAa2G,aAAax3B,MAAM,GAAG,IAAIw3B,aAAahS,MAAM,CAAC,SAAC3W,KAAKpP;mDAAMgqB,gBAAgBhqB,KAAKgqB,gBAAgB5a,OAAOpP,IAAIoP;2CAAK2oB,YAAY,CAAC,EAAE,IAAIrO,OAAO3D,MAAM,CAAC,SAACtW,KAAKzP;mDAAMA,EAAEqpB,OAAO,GAAG5Z,IAAI4Z,OAAO,GAAGrpB,IAAIyP;2CAAKia,MAAM,CAAC,EAAE;wCAC3N,IAAMsO,oBAAoBhO,gBAAgBoH,cAAc;wCACxD,OAAO,aAAa,GAAGlF,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG6iC,OAAO,OAAO;oDAAEtiC,WAAW;oDAA0CP,UAAU;wDAC7F,aAAa,GAAG4iC,MAAM,MAAM;4DAAEriC,WAAW;4DAA4DP,UAAU;wDAAgB;wDAC/H,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BmC,OAAO;gEAAE0B,OAAOsjC,aAAa,uBAAuB;4DAAoB;4DAAG1nC,UAAU;gEACzJ,aAAa,GAAG4iC,MAAM,OAAO;oEAAEt+B,OAAO;oEAAMD,QAAQ;oEAAM4oB,SAAS;oEAAaO,MAAM;oEAAQ9qB,OAAO;wEAAE6U,WAAWmwB,aAAa,iBAAiB;oEAAiB;oEAAG1nC,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;wEAAE11B,GAAG;wEAAoCsgB,MAAM;oEAAe;gEAAG;gEAC7Q,aAAa,GAAGqV,OAAO,QAAQ;oEAAEtiC,WAAW;oEAA6BP,UAAU;wEACjFgT,KAAKsoB,GAAG,CAACuS;wEACT;qEACD;gEAAC;6DACH;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAGhL,OAAO,OAAO;oDAAE7iC,UAAU;wDACxC,aAAa,GAAG4iC,MAAM,OAAO;4DAAEriC,WAAW;4DAA0CP,UAAU;wDAAW;wDACzG,aAAa,GAAG4iC,MAAM,OAAO;4DAAEriC,WAAW;4DAAsDP,UAAU+vB,aAAa7uB,IAAI;wDAAC;qDAC7H;gDAAC;gDACF,aAAa,GAAG2hC,OAAO,OAAO;oDAAEtiC,WAAW;oDAA+BP,UAAU;wDAClF,aAAa,GAAG6iC,OAAO,OAAO;4DAAE7iC,UAAU;gEACxC,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAyCP,UAAU;gEAAU;gEACvG,aAAa,GAAG6iC,OAAO,OAAO;oEAAEtiC,WAAW;oEAAyBmC,OAAO;wEAAE0B,OAAO+pC;oEAAa;oEAAGnuC,UAAU;wEAC5G+vB,aAAaiQ,OAAO;wEACpB;qEACD;gEAAC;6DACH;wDAAC;wDACF,aAAa,GAAG6C,OAAO,OAAO;4DAAE7iC,UAAU;gEACxC,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAyCP,UAAUwuC,kBAAkB,WAAW;gEAAO;gEACjI,aAAa,GAAG3L,OAAO,OAAO;oEAAEtiC,WAAW;oEAAyBmC,OAAO;wEAAE0B,OAAOoqC,kBAAkBJ,cAAcC;oEAAU;oEAAGruC,UAAU;wEACzIgT,KAAKsoB,GAAG,CAACiT;wEACT;qEACD;gEAAC;6DACH;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAG1L,OAAO,OAAO;oDAAEtiC,WAAW;oDAAsEP,UAAU;wDACzH,aAAa,GAAG4iC,MAAM,QAAQ;4DAAEriC,WAAW;4DAAyCP,UAAU;wDAAe;wDAC7G,aAAa,GAAG6iC,OAAO,QAAQ;4DAAEtiC,WAAW;4DAAkDP,UAAU;gEACtG+nC,WAAW7mC,IAAI;gEACf;gEACAytC,oBAAoB,WAAW;6DAChC;wDAAC;qDACH;gDAAC;6CACH;wCAAC;oCACJ;iCACD;4BAAC;yBACH;oBAAC;oBACFzkB,cAAc,cAAc,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACnL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC1G;wCACC,IAAI,CAAC4kC,cAAc,OAAO;wCAC1B,IAAMtE,UAAUsE,aAAatE,OAAO,IAAI,EAAE;wCAC1C,IAAM2N,iBAAiB;4CAAC;gDAAC;gDAAqB;6CAAqB;4CAAE;gDAAC;gDAAqB;6CAAqB;4CAAE;gDAAC;gDAAqB;6CAAmB;yCAAC;wCAC5J,OAAO,aAAa,GAAGpL,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG4iC,MAAM,MAAM;oDAAEriC,WAAW;oDAAyEP,UAAU;gDAAU;gDACtI,aAAa,GAAG4iC,MAAM,OAAO;oDAAEriC,WAAW;oDAAgCP,UAAUsgC,QAAQppB,MAAM,GAAG,IAAIopB,QAAQ3oB,GAAG,CAAC,SAACuqB,GAAGvrB;+DAAM,aAAa,GAAGksB,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC7M,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAsCmC,OAAO;wEAAE8C,iBAAiB08B,EAAE99B,KAAK;oEAAC;gEAAE;gEACpH,aAAa,GAAGw+B,MAAM,QAAQ;oEAAEriC,WAAW;oEAAkDP,UAAUkiC,EAAEx5B,KAAK;gEAAC;6DAChH;wDAAC,GAAGw5B,EAAEj6B,GAAG,IAAI0O;yDAAMs3B,eAAet2B,GAAG,CAAC;iGAAEvT,mBAAOsE;+DAAW,aAAa,GAAGm6B,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEACzI,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAsCmC,OAAO;wEAAE8C,iBAAiBpB;oEAAM;gEAAE;gEAClH,aAAa,GAAGw+B,MAAM,QAAQ;oEAAEriC,WAAW;oEAAkDP,UAAU0I;gEAAM;6DAC9G;wDAAC,GAAGA;;gDAAQ;6CACd;wCAAC;oCACJ;oCACC;4CAMkBk8B,yBAAAA,sBAAAA;wCALjB,IAAI,CAACA,cAAc,OAAO;wCAC1B,IAAMvI,KAAKgI,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAM6H,MAAM7H,eAAe,CAAC,cAAc,IAAI;wCAC9C,IAAM0G,KAAK1G,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAMgG,KAAKhG,eAAe,CAAC,aAAa,IAAI;wCAC5C,IAAMwF,WAAWjF,CAAAA,yBAAAA,oCAAAA,mBAAAA,YAAc,CAACvI,GAAG,cAAlBuI,wCAAAA,uBAAAA,gBAAoB,CAACsH,IAAI,cAAzBtH,4CAAAA,0BAAAA,oBAA2B,CAACmG,GAAG,cAA/BnG,8CAAAA,uBAAiC,CAACyF,GAAG,KAAI,EAAE;wCAC5D,IAAI,CAACR,SAAS3yB,MAAM,EAAE,OAAO;wCAC7B,IAAM6Y,eAAe8Z,SAASnN,MAAM,CAAC,SAAC3W,KAAKjb;4CACzC,IAAM8jC,KAAK7oB,IAAI2b,WAAW,GAAG3b,IAAI4b,WAAW,GAAG5b,IAAI6b,QAAQ;4CAC3D,IAAMiN,KAAK/jC,IAAI42B,WAAW,GAAG52B,IAAI62B,WAAW,GAAG72B,IAAI82B,QAAQ;4CAC3D,OAAOiN,KAAKD,KAAK9jC,MAAMib;wCACzB,GAAG8jB,QAAQ,CAAC,EAAE;wCACd,IAAMiF,WAAW/e,aAAa2R,WAAW,GAAG3R,aAAa4R,WAAW,GAAG5R,aAAa6R,QAAQ;wCAC5F,IAAMmG,aAAa8B,SAASnN,MAAM,CAAC,SAACtW,KAAKtb;4CACvC,IAAMikC,MAAM3oB,IAAIsb,WAAW,GAAGtb,IAAIub,WAAW,GAAGvb,IAAIwb,QAAQ;4CAC5D,IAAMoN,MAAMlkC,IAAI42B,WAAW,GAAG52B,IAAI62B,WAAW,GAAG72B,IAAI82B,QAAQ;4CAC5D,OAAOoN,MAAMD,MAAMjkC,MAAMsb;wCAC3B,GAAGyjB,QAAQ,CAAC,EAAE;wCACd,IAAMoF,UAAUnuC,SAASiqC,GAAGmE,OAAO,CAAC,SAAS;wCAC7C,IAAItR,mBAAmB,IAAI8J,aAAa;wCACxC,IAAMyH,WAAWF,UAAU,IAAI,AAAC,QAAmB,OAAZA,UAAU,KAAM;wCACvD,IAAIE,UAAU;gDACSvK,+BAAAA,uBAAAA;4CAArB,IAAM0I,eAAe1I,CAAAA,yBAAAA,oCAAAA,oBAAAA,YAAc,CAACvI,GAAG,cAAlBuI,yCAAAA,wBAAAA,iBAAoB,CAACsH,IAAI,cAAzBtH,6CAAAA,gCAAAA,qBAA2B,CAACuK,SAAS,cAArCvK,oDAAAA,6BAAuC,CAACyF,GAAG,KAAI,EAAE;4CACtE,IAAM+E,UAAU9B,aAAa9yB,IAAI,CAAC,SAACtN;uDAAMA,EAAEpC,GAAG,KAAKilB,aAAajlB,GAAG;;4CACnE,IAAIskC,SAAS;gDACX,IAAMC,KAAKD,QAAQ1N,WAAW,GAAG0N,QAAQzN,WAAW,GAAGyN,QAAQxN,QAAQ;gDACvE,IAAIyN,KAAK,GAAG;oDACV,IAAMC,KAAK,AAACR,CAAAA,WAAWO,EAAC,IAAKA,KAAK;oDAClCzR,mBAAmB5qB,KAAKsoB,GAAG,CAACtoB,KAAKC,KAAK,CAACq8B;oDACvC5H,aAAa4H,MAAM;gDACrB;4CACF;wCACF;wCACA,OAAO,aAAa,GAAGzM,OAAO,OAAO;4CAAEtiC,WAAW;4CAA0IP,UAAU;gDACpM,aAAa,GAAG6iC,OAAO,OAAO;oDAAEtiC,WAAW;oDAA0CP,UAAU;wDAC7F,aAAa,GAAG4iC,MAAM,MAAM;4DAAEriC,WAAW;4DAA4DP,UAAU;wDAAgB;wDAC/H,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BmC,OAAO;gEAAE0B,OAAOsjC,aAAa,uBAAuB;4DAAoB;4DAAG1nC,UAAU;gEACzJ,aAAa,GAAG4iC,MAAM,OAAO;oEAAEt+B,OAAO;oEAAMD,QAAQ;oEAAM4oB,SAAS;oEAAaO,MAAM;oEAAQ9qB,OAAO;wEAAE6U,WAAWmwB,aAAa,iBAAiB;oEAAiB;oEAAG1nC,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;wEAAE11B,GAAG;wEAAoCsgB,MAAM;oEAAe;gEAAG;gEAC7Q,aAAa,GAAGqV,OAAO,QAAQ;oEAAEtiC,WAAW;oEAA6BP,UAAU;wEACjF49B;wEACA;qEACD;gEAAC;6DACH;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAGiF,OAAO,OAAO;oDAAE7iC,UAAU;wDACxC,aAAa,GAAG4iC,MAAM,OAAO;4DAAEriC,WAAW;4DAA0CP,UAAU;wDAAM;wDACpG,aAAa,GAAG4iC,MAAM,OAAO;4DAAEriC,WAAW;4DAAsDP,UAAU+vB,aAAajlB,GAAG;wDAAC;qDAC5H;gDAAC;gDACF,aAAa,GAAG+3B,OAAO,OAAO;oDAAEtiC,WAAW;oDAA+BP,UAAU;wDAClF,aAAa,GAAG6iC,OAAO,OAAO;4DAAE7iC,UAAU;gEACxC,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAyCP,UAAU;gEAAc;gEAC3G,aAAa,GAAG6iC,OAAO,OAAO;oEAAEtiC,WAAW;oEAAkDP,UAAU;wEACrG;wEACA+vB,aAAa2R,WAAW;qEACzB;gEAAC;6DACH;wDAAC;wDACF,aAAa,GAAGmB,OAAO,OAAO;4DAAE7iC,UAAU;gEACxC,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAAyCP,UAAU;gEAAc;gEAC3G,aAAa,GAAG6iC,OAAO,OAAO;oEAAEtiC,WAAW;oEAAkDP,UAAU;wEACrG;wEACA+vB,aAAa4R,WAAW;qEACzB;gEAAC;6DACH;wDAAC;qDACH;gDAAC;gDACF,aAAa,GAAGkB,OAAO,OAAO;oDAAEtiC,WAAW;oDAAsEP,UAAU;wDACzH,aAAa,GAAG4iC,MAAM,QAAQ;4DAAEriC,WAAW;4DAAyCP,UAAU;wDAAe;wDAC7G,aAAa,GAAG4iC,MAAM,QAAQ;4DAAEriC,WAAW;4DAAkDP,UAAU+nC,WAAWj9B,GAAG;wDAAC;qDACvH;gDAAC;6CACH;wCAAC;oCACJ;iCACD;4BAAC;yBACH;oBAAC;oBACFof,cAAc,cAAc,aAAa,GAAG2Y,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BACnL,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC3G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU,AAAC;wDAC/G6lC,kBACLA;oDADP,IAAM0J,OAAM1J,mBAAAA,cAAc,CAACA,eAAe3uB,MAAM,GAAG,EAAE,cAAzC2uB,uCAAAA,iBAA2Cl/B,EAAE;oDACzD,OAAOk/B,EAAAA,uBAAAA,eAAerrB,IAAI,CAAC,SAACg1B;+DAAMA,EAAE7oC,EAAE,KAAK4oC;oEAApC1J,2CAAAA,qBAA0Cn9B,KAAK,KAAI;gDAC5D;4CAAK;4CACL,aAAa,GAAGk6B,MAAM,OAAO;gDAAEriC,WAAW;gDAAgCP,UAAU,AAAC;wDACvE6lC;oDAAZ,IAAM0J,OAAM1J,mBAAAA,cAAc,CAACA,eAAe3uB,MAAM,GAAG,EAAE,cAAzC2uB,uCAAAA,iBAA2Cl/B,EAAE;oDACzD,IAAM+b,SAASmjB,eAAerrB,IAAI,CAAC,SAACg1B;+DAAMA,EAAE7oC,EAAE,KAAK4oC;;oDACnD,IAAMpuC,SAAS;wDAAC;wDAAqB;wDAAsB;wDAAsB;wDAAqB;qDAAqB;oDAC3H,OAAO,AAACuhB,CAAAA,CAAAA,mBAAAA,6BAAAA,OAAQxI,OAAO,KAAI,EAAC,AAAC,EAAEvC,GAAG,CAAC,SAACoC,KAAK+M;+DAAQ,aAAa,GAAG+b,OAAO,OAAO;4DAAEtiC,WAAW;4DAA2BP,UAAU;gEAC/H,aAAa,GAAG4iC,MAAM,OAAO;oEAAEriC,WAAW;oEAA0CmC,OAAO;wEAAE8C,iBAAiBrE,MAAM,CAAC2lB,MAAM3lB,OAAO+V,MAAM,CAAC;oEAAC;gEAAE;gEAC5I,aAAa,GAAG0rB,MAAM,QAAQ;oEAAEriC,WAAW;oEAAkDP,UAAU+Z;gEAAI;6DAC5G;wDAAC,GAAGA;;gDACP;4CAAK;yCACN;oCAAC;oCACF,aAAa,GAAG8oB,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAA0CP,UAAU;oDAC7F,aAAa,GAAG4iC,MAAM,MAAM;wDAAEriC,WAAW;wDAA2EP,UAAU;oDAAkB;oDAChJ,aAAa,GAAG4iC,MAAM,UAAU;wDAAEriC,WAAW;wDAA+IP,UAAU,aAAa,GAAG6iC,OAAO,OAAO;4DAAEv+B,OAAO;4DAAMD,QAAQ;4DAAM4oB,SAAS;4DAAaO,MAAM;4DAAgBxtB,UAAU;gEACrT,aAAa,GAAG4iC,MAAM,UAAU;oEAAErD,IAAI;oEAAKC,IAAI;oEAAKC,GAAG;gEAAI;gEAC3D,aAAa,GAAGmD,MAAM,UAAU;oEAAErD,IAAI;oEAAKC,IAAI;oEAAKC,GAAG;gEAAI;gEAC3D,aAAa,GAAGmD,MAAM,UAAU;oEAAErD,IAAI;oEAAKC,IAAI;oEAAMC,GAAG;gEAAI;6DAC7D;wDAAC;oDAAG;iDACN;4CAAC;4CACD;oDACYoG,kBAA4BA,mBAA4BA,mBAC/BA,mBACCA,mBACGA,mBAExBY;gDALhB,IAAMgJ,MAAK5J,mBAAAA,cAAc,CAAC,EAAE,cAAjBA,uCAAAA,iBAAmBl/B,EAAE,EAAE+oC,MAAK7J,oBAAAA,cAAc,CAAC,EAAE,cAAjBA,wCAAAA,kBAAmBl/B,EAAE,EAAEgpC,MAAK9J,oBAAAA,cAAc,CAAC,EAAE,cAAjBA,wCAAAA,kBAAmBl/B,EAAE;gDACxF,IAAM+D,OAAO25B,eAAe,CAACoL,GAAG,MAAI5J,oBAAAA,cAAc,CAAC,EAAE,cAAjBA,wCAAAA,kBAAmB3rB,OAAO,CAAC,EAAE,KAAI;gDACrE,IAAMvP,QAAQ05B,eAAe,CAACqL,GAAG,MAAI7J,oBAAAA,cAAc,CAAC,EAAE,cAAjBA,wCAAAA,kBAAmB3rB,OAAO,CAAC,EAAE,KAAI;gDACtE,IAAM2tB,WAAWxD,eAAe,CAACsL,GAAG,MAAI9J,oBAAAA,cAAc,CAAC,EAAE,cAAjBA,wCAAAA,kBAAmB3rB,OAAO,CAAC,EAAE,KAAI;gDACzE,IAAMusB,WAAW5B,CAAAA,yBAAAA,mCAAAA,YAAc,CAACn6B,KAAK,KAAI,CAAC;gDAC1C,IAAMklC,UAAUnJ,CAAAA,qBAAAA,gCAAAA,kBAAAA,QAAU,CAAC97B,MAAM,cAAjB87B,sCAAAA,eAAmB,CAACoB,SAAS,KAAI,EAAE;gDACnD,IAAMgI,WAAWD,QAAQ14B,MAAM,GAAG04B,QAAQlT,MAAM,CAAC,SAAC3W,KAAKpP;2DAAMA,EAAE9H,KAAK,GAAGkX,IAAIlX,KAAK,GAAG8H,IAAIoP;mDAAK6pB,OAAO,CAAC,EAAE,IAAI;gDAC1G,IAAME,aAAaF,QAAQ14B,MAAM,GAAG04B,QAAQlT,MAAM,CAAC,SAACtW,KAAKzP;2DAAMA,EAAE9H,KAAK,GAAGuX,IAAIvX,KAAK,GAAG8H,IAAIyP;mDAAKwpB,OAAO,CAAC,EAAE,IAAI;gDAC5G,IAAMtG,MAAMsG,QAAQ14B,MAAM,GAAGlE,KAAKC,KAAK,CAAC28B,QAAQlT,MAAM,CAAC,SAACC,GAAGhmB;2DAAMgmB,IAAIhmB,EAAE9H,KAAK;mDAAE,KAAK+gC,QAAQ14B,MAAM,IAAI;gDACrG,IAAM64B,WAAWH,QAAQltB,MAAM,CAAC,SAAC/L;2DAAMA,EAAE9H,KAAK,GAAGy6B;mDAAKpyB,MAAM;gDAC5D,IAAM2mB,aAAakS,WAAWH,QAAQ14B,MAAM,GAAG64B;gDAC/C,OAAO,aAAa,GAAGlN,OAAO,OAAO;oDAAEtiC,WAAW;oDAAuBP,UAAU;wDACjF,aAAa,GAAG6iC,OAAO,OAAO;4DAAEtiC,WAAW;4DAA8BP,UAAU;gEACjF,aAAa,GAAG6iC,OAAO,OAAO;oEAAEtiC,WAAW;oEAAUP,UAAU;wEAC7D,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAAgFP,UAAU;wEAAe;wEACnJ,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAA2EP,UAAU6vC,CAAAA,qBAAAA,+BAAAA,SAAUnnC,KAAK,KAAI;wEAAM;qEACzJ;gEAAC;gEACF,aAAa,GAAGm6B,OAAO,OAAO;oEAAEtiC,WAAW;oEAAUP,UAAU;wEAC7D,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAAgFP,UAAU;wEAAiB;wEACrJ,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAA2EP,UAAU8vC,CAAAA,uBAAAA,iCAAAA,WAAYpnC,KAAK,KAAI;wEAAM;qEAC3J;gEAAC;6DACH;wDAAC;wDACF,aAAa,GAAGm6B,OAAO,OAAO;4DAAEtiC,WAAW;4DAA8BP,UAAU;gEACjF,aAAa,GAAG6iC,OAAO,OAAO;oEAAEtiC,WAAW;oEAAUP,UAAU;wEAC7D,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAAgFP,UAAU;wEAAU;wEAC9I,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAA2EP,UAAUspC;wEAAI;qEACpI;gEAAC;gEACF,aAAa,GAAGzG,OAAO,OAAO;oEAAEtiC,WAAW;oEAAUP,UAAU;wEAC7D,aAAa,GAAG4iC,MAAM,OAAO;4EAAEriC,WAAW;4EAAgFP,UAAU;wEAAQ;wEAC5I,aAAa,GAAG6iC,OAAO,OAAO;4EAAEtiC,WAAW;4EAA2BmC,OAAO;gFAAE0B,OAAOy5B,aAAa,uBAAuB;4EAAoB;4EAAG79B,UAAU;gFACzJ,aAAa,GAAG4iC,MAAM,OAAO;oFAAEt+B,OAAO;oFAAMD,QAAQ;oFAAM4oB,SAAS;oFAAaO,MAAM;oFAAQ9qB,OAAO;wFAAE6U,WAAWsmB,aAAa,iBAAiB;oFAAiB;oFAAG79B,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;wFAAE11B,GAAG;wFAAoCsgB,MAAM;oFAAe;gFAAG;gFAC7Q,aAAa,GAAGoV,MAAM,QAAQ;oFAAEriC,WAAW;oFAAmDP,UAAU69B,aAAa,aAAa;gFAAW;6EAC9I;wEAAC;qEACH;gEAAC;6DACH;wDAAC;wDACF,aAAa,GAAGgF,OAAO,OAAO;4DAAEtiC,WAAW;4DAA6DP,UAAU;gEAChH,aAAa,GAAG4iC,MAAM,QAAQ;oEAAEriC,WAAW;oEAA0CP,UAAU;gEAAe;gEAC9G,aAAa,GAAG4iC,MAAM,QAAQ;oEAAEriC,WAAW;oEAA0CP,UAAU8vC,CAAAA,uBAAAA,iCAAAA,WAAYpnC,KAAK,KAAI;gEAAM;6DAC3H;wDAAC;qDACH;gDAAC;4CACJ;yCACD;oCAAC;iCACH;4BAAC;yBACH;oBAAC;oBACFwhB,cAAc,SAAS4f,kBAAkB,aAAa,GAAGlH,MAAM,OAAO;wBAAEriC,WAAW;wBAAUP,UAAU4rB;oBAAc;oBACpH1B,CAAAA,cAAc,UAAUA,cAAc,UAAUA,cAAc,KAAI,KAAM,CAAC6b,eAAe,aAAa,GAAGlD,OAAO,OAAO;wBAAEtiC,WAAW;wBAAoGP,UAAU;4BAChP,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAwMP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oCAAEriC,WAAW;oCAAwBP,UAAU4rB;gCAAc;4BAAG;4BACzV,aAAa,GAAGiX,OAAO,OAAO;gCAAEtiC,WAAW;gCAAwDP,UAAU;oCAC3G,aAAa,GAAG6iC,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAU;4CACtI,aAAa,GAAG4iC,MAAM,OAAO;gDAAEriC,WAAW;gDAAgCP,UAAUulC,QAAQ5tB,GAAG,CAAC,SAAC+O,MAAMI;oDACrG,IAAIgnB,UAAU;oDACd,IAAIpnB,KAAKhe,KAAK,KAAK,WAAWolC,UAAU;yDACnC,IAAIpnB,KAAKhe,KAAK,KAAK,UAAUolC,UAAU;yDACvC,IAAIpnB,KAAKhe,KAAK,KAAK,iBAAiBolC,UAAU;oDACnD,OAAO,aAAa,GAAGjL,OAAO,OAAO;wDAAEtiC,WAAW;wDAA0BP,UAAU;4DACpF,aAAa,GAAG6iC,OAAO,OAAO;gEAAEtiC,WAAW;gEAAkBP,UAAU;oEACrE,aAAa,GAAG4iC,MAAM,OAAO;wEAAEriC,WAAW;wEAAgHP,UAAU0mB,KAAKhe,KAAK;oEAAC;oEAC/K,aAAa,GAAGk6B,MAAM,OAAO;wEAAEriC,WAAW;wEAA4EP,UAAU0mB,KAAKjF,WAAW;oEAAC;iEAClJ;4DAAC;4DACF,aAAa,GAAGmhB,MAAM,OAAO;gEAAEriC,WAAW;gEAA0KmC,OAAO;oEAAE8C,iBAAiBsoC;gEAAQ;gEAAG9tC,UAAU0mB,KAAK7X,KAAK;4DAAC;yDAC/Q;oDAAC,GAAGiY;gDACP;4CAAG;yCACJ;oCAAC;oCACF,aAAa,GAAG+b,OAAO,OAAO;wCAAEtiC,WAAW;wCAA0IP,UAAU;4CAC7L,aAAa,GAAG4iC,MAAM,MAAM;gDAAEriC,WAAW;gDAAyEP,UAAU;4CAAc;4CAC1I,aAAa,GAAG6iC,OAAO,OAAO;gDAAEtiC,WAAW;gDAAQP,UAAU;oDAC3D,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAA4DP,UAAU;oDAAe;oDAC/H,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAkDP,UAAUmlC,WAAWmG,WAAW,CAACz8B,KAAK;oDAAC;oDACnI,aAAa,GAAG+zB,MAAM,OAAO;wDAAEriC,WAAW;wDAA0DP,UAAUmlC,WAAWmG,WAAW,CAAC7pB,WAAW;oDAAC;iDAClJ;4CAAC;4CACF,aAAa,GAAGohB,OAAO,OAAO;gDAAE7iC,UAAU;oDACxC,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAA4DP,UAAU;oDAAe;oDAC/H,aAAa,GAAG4iC,MAAM,OAAO;wDAAEriC,WAAW;wDAAkDP,UAAUmlC,WAAWoG,YAAY,CAAC18B,KAAK;oDAAC;oDACpI,aAAa,GAAG+zB,MAAM,OAAO;wDAAEriC,WAAW;wDAA0DP,UAAUmlC,WAAWoG,YAAY,CAAC9pB,WAAW;oDAAC;iDACnJ;4CAAC;yCACH;oCAAC;iCACH;4BAAC;yBACH;oBAAC;iBACH;YAAC;SACH;IAAC;AACJ;AACAuiB,2BAA2BvjC,WAAW,GAAG;AACzC,IAAIgrC,oBAAoB;QACtBH,oBAAAA,aACAI,oBAAAA,aACAC,iBAAAA,UACAC,mBAAAA,YACAC,wBAAAA,iBACAC,uBAAAA,gBACAC,uBAAAA,gBACAC,kBAAAA,WACAC,kBAAAA;WACI,aAAa,GAAGpJ,OAAO,OAAO;QAAEtiC,WAAW;QAAgJP,UAAU;YACzM,aAAa,GAAG6iC,OAAO,OAAO;gBAAEtiC,WAAW;gBAAkFP,UAAU;oBACrI,aAAa,GAAG4iC,MAAM,OAAO;wBAAEriC,WAAW;wBAA8DP,UAAU;oBAAiB;oBACnI,aAAa,GAAG4iC,MAAM,OAAO;wBAAEriC,WAAW;wBAA6EP,UAAUisC;oBAAU;iBAC5I;YAAC;YACF,aAAa,GAAGrJ,MAAM,OAAO;gBAAEriC,WAAW;gBAA8FP,UAAU;YAAe;YACjK,aAAa,GAAG4iC,MAAM,OAAO;gBAAEriC,WAAW;gBAA8FP,UAAUsrC;YAAY;YAC9J,aAAa,GAAG1I,MAAM,OAAO;gBAAEriC,WAAW;YAA+E;YACzH,aAAa,GAAGqiC,MAAM,OAAO;gBAAEriC,WAAW;gBAA2EP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oBAAE9a,KAAK4jB;oBAAahjB,KAAK;oBAAInoB,WAAW;gBAA6C;YAAG;YACpP,aAAa,GAAGqiC,MAAM,OAAO;gBAAEriC,WAAW;gBAA8GP,UAAU;YAAW;YAC7K,aAAa,GAAG4iC,MAAM,OAAO;gBAAEriC,WAAW;gBAAmGP,UAAU2rC;YAAS;YAChK,aAAa,GAAG/I,MAAM,OAAO;gBAAEriC,WAAW;gBAA6GP,UAAU4rC;YAAW;YAC5K,aAAa,GAAGhJ,MAAM,OAAO;gBAAEriC,WAAW;gBAA4EP,UAAU,aAAa,GAAG4iC,MAAM,OAAO;oBAAE9a,KAAK+jB;oBAAiBnjB,KAAK;oBAAInoB,WAAW;gBAAuD;YAAG;YACnQ,aAAa,GAAGqiC,MAAM,OAAO;gBAAEriC,WAAW;gBAA+GP,UAAU8rC;YAAe;YAClL,aAAa,GAAGlJ,MAAM,OAAO;gBAAEriC,WAAW;gBAAoGP,UAAU+rC;YAAe;YACvK,aAAa,GAAGnJ,MAAM,OAAO;gBAAEriC,WAAW;gBAA8GP,UAAUgsC;YAAU;SAC7K;IAAC;;AACF,IAAIc,mBAAmB;QAAGC,kBAAAA;WAAgB,aAAa,GAAGlK,OAAO,OAAO;QAAEtiC,WAAW;QAA0IP,UAAU;YACvO,aAAa,GAAG6iC,OAAO,OAAO;gBAAEtiC,WAAW;gBAA0CP,UAAU;oBAC7F,aAAa,GAAG4iC,MAAM,MAAM;wBAAEriC,WAAW;wBAA4DP,UAAU;oBAAgB;oBAC/H,aAAa,GAAG6iC,OAAO,OAAO;wBAAEtiC,WAAW;wBAA2BmC,OAAO;4BAAE0B,OAAO2oC,UAAUrF,UAAU,GAAG,uBAAuB;wBAAoB;wBAAG1nC,UAAU;4BACnK,aAAa,GAAG4iC,MAAM,OAAO;gCAAEt+B,OAAO;gCAAMD,QAAQ;gCAAM4oB,SAAS;gCAAaO,MAAM;gCAAQ9qB,OAAO;oCAAE6U,WAAWw1B,UAAUrF,UAAU,GAAG,iBAAiB;gCAAiB;gCAAG1nC,UAAU,aAAa,GAAG4iC,MAAM,QAAQ;oCAAE11B,GAAG;oCAAoCsgB,MAAM;gCAAe;4BAAG;4BACvR,aAAa,GAAGoV,MAAM,QAAQ;gCAAEriC,WAAW;gCAA6BP,UAAU+sC,UAAU/E,MAAM;4BAAC;yBACpG;oBAAC;iBACH;YAAC;YACF,aAAa,GAAGnF,OAAO,OAAO;gBAAE7iC,UAAU;oBACxC,aAAa,GAAG4iC,MAAM,OAAO;wBAAEriC,WAAW;wBAA0CP,UAAU;oBAAW;oBACzG,aAAa,GAAG4iC,MAAM,OAAO;wBAAEriC,WAAW;wBAAsDP,UAAU+sC,UAAU7rC,IAAI;oBAAC;iBAC1H;YAAC;YACF,aAAa,GAAG2hC,OAAO,OAAO;gBAAEtiC,WAAW;gBAA+BP,UAAU;oBAClF,aAAa,GAAG6iC,OAAO,OAAO;wBAAE7iC,UAAU;4BACxC,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAyCP,UAAU;4BAAU;4BACvG,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAkDP,UAAU+sC,UAAU/M,OAAO;4BAAC;yBACzH;oBAAC;oBACF,aAAa,GAAG6C,OAAO,OAAO;wBAAE7iC,UAAU;4BACxC,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAyCP,UAAU;4BAAS;4BACtG,aAAa,GAAG4iC,MAAM,OAAO;gCAAEriC,WAAW;gCAAmDP,UAAU+sC,UAAU9M,MAAM;4BAAC;yBACzH;oBAAC;iBACH;YAAC;YACF,aAAa,GAAG4C,OAAO,OAAO;gBAAEtiC,WAAW;gBAAsEP,UAAU;oBACzH,aAAa,GAAG4iC,MAAM,QAAQ;wBAAEriC,WAAW;wBAAyCP,UAAU;oBAAe;oBAC7G,aAAa,GAAG4iC,MAAM,QAAQ;wBAAEriC,WAAW;wBAAkDP,UAAU+sC,UAAUhF,UAAU;oBAAC;iBAC7H;YAAC;SACH;IAAC;;AAEF,6BAA6B;AAC7B,OAAOiI,WAAWvwC,YAAYwwC,UAAU,QAAQ,QAAQ;AACxD,SAASnpC,YAAYopC,UAAU,EAAEtwC,OAAOuwC,KAAK,EAAEtwC,QAAQuwC,MAAM,QAAQ,oBAAoB;AACzF,IAAIC,WAAW;QACbzQ,aAAAA,8BACAx4B,UAAAA,wCAAW,yBACXpH,iBAAAA,iCACAyD,SAAAA,sCAAU,qDACVlD,WAAAA,0CAAY,uBACZojC,kBAAAA,WACAn+B,wBAAAA,iBACA8qC,cAAAA,OACAnsC,eAAAA,QACAosC,kBAAAA;IAEA,IAA8BN,+BAAAA,WAAW,YAAlC9Y,UAAuB8Y,gBAAdO,aAAcP;IAC9B,IAA8BA,gCAAAA,WAAW,YAAlCQ,UAAuBR,iBAAdS,aAAcT;IAC9B,IAA0CA,gCAAAA,WAAW,YAA9CU,gBAAmCV,iBAApBW,mBAAoBX;IAC1C,IAA8CA,gCAAAA,WAAW;QAAEp8B,KAAK;QAAGgH,MAAM;IAAE,QAApEg2B,kBAAuCZ,iBAAtBa,qBAAsBb;IAC9C,IAAgDA,gCAAAA,WAAW7oC,eAApD2pC,mBAAyCd,iBAAvBe,sBAAuBf;IAChD,IAAM91B,aAAa61B,QAAQvmC,MAAM,CAAC;IAClC,IAAMwnC,aAAajB,QAAQvmC,MAAM,CAAC;IAClC,IAAMynC,aAAa,CAAC,CAAEtR,CAAAA,QAAQ0Q,KAAI;IAClC,IAAMl9B,oBAAoB;QACxB,IAAI,CAAC+G,WAAWhH,OAAO,IAAI,CAAC89B,WAAW99B,OAAO,EAAE;QAChD,IAAMwH,OAAOR,WAAWhH,OAAO,CAACG,qBAAqB;QACrD,IAAM69B,cAAcF,WAAW99B,OAAO,CAACG,qBAAqB;QAC5D,IAAMsH,UAAUnM,OAAOmM,OAAO;QAC9B,IAAME,UAAUrM,OAAOqM,OAAO;QAC9B,IAAMs2B,gBAAgB3iC,OAAOC,UAAU;QACvC,IAAM2iC,iBAAiB5iC,OAAOiF,WAAW;QACzC,IAAIG,MAAM;QACV,IAAIgH,OAAO;QACX,IAAIy2B,gBAAgBlqC;QACpB,IAAMkmB,SAAS;QACf,IAAMhV,UAAU;QAChB,OAAQlR;YACN,KAAK;gBACHyM,MAAM8G,KAAK9G,GAAG,GAAG+G,UAAUu2B,YAAY9sC,MAAM,GAAGipB;gBAChDzS,OAAOF,KAAKE,IAAI,GAAGC,UAAUH,KAAKrW,KAAK,GAAG,IAAI6sC,YAAY7sC,KAAK,GAAG;gBAClE,IAAIqW,KAAK9G,GAAG,GAAGs9B,YAAY9sC,MAAM,GAAGipB,SAAShV,SAAS;oBACpDg5B,gBAAgB;oBAChBz9B,MAAM8G,KAAKhH,MAAM,GAAGiH,UAAU0S;gBAChC;gBACA;YACF,KAAK;gBACHzZ,MAAM8G,KAAK9G,GAAG,GAAG+G,UAAUD,KAAKtW,MAAM,GAAG,IAAI8sC,YAAY9sC,MAAM,GAAG;gBAClEwW,OAAOF,KAAK42B,KAAK,GAAGz2B,UAAUwS;gBAC9B,IAAI3S,KAAK42B,KAAK,GAAGJ,YAAY7sC,KAAK,GAAGgpB,SAAShV,UAAU84B,eAAe;oBACrEE,gBAAgB;oBAChBz2B,OAAOF,KAAKE,IAAI,GAAGC,UAAUq2B,YAAY7sC,KAAK,GAAGgpB;gBACnD;gBACA;YACF,KAAK;gBACHzZ,MAAM8G,KAAKhH,MAAM,GAAGiH,UAAU0S;gBAC9BzS,OAAOF,KAAKE,IAAI,GAAGC,UAAUH,KAAKrW,KAAK,GAAG,IAAI6sC,YAAY7sC,KAAK,GAAG;gBAClE,IAAIqW,KAAKhH,MAAM,GAAGw9B,YAAY9sC,MAAM,GAAGipB,SAAShV,UAAU+4B,gBAAgB;oBACxEC,gBAAgB;oBAChBz9B,MAAM8G,KAAK9G,GAAG,GAAG+G,UAAUu2B,YAAY9sC,MAAM,GAAGipB;gBAClD;gBACA;YACF,KAAK;gBACHzZ,MAAM8G,KAAK9G,GAAG,GAAG+G,UAAUD,KAAKtW,MAAM,GAAG,IAAI8sC,YAAY9sC,MAAM,GAAG;gBAClEwW,OAAOF,KAAKE,IAAI,GAAGC,UAAUq2B,YAAY7sC,KAAK,GAAGgpB;gBACjD,IAAI3S,KAAKE,IAAI,GAAGs2B,YAAY7sC,KAAK,GAAGgpB,SAAShV,SAAS;oBACpDg5B,gBAAgB;oBAChBz2B,OAAOF,KAAK42B,KAAK,GAAGz2B,UAAUwS;gBAChC;gBACA;QACJ;QACA,IAAIzS,OAAOvC,SAASuC,OAAOvC;aACtB,IAAIuC,OAAOs2B,YAAY7sC,KAAK,GAAG8sC,gBAAgB94B,SAClDuC,OAAOu2B,gBAAgBD,YAAY7sC,KAAK,GAAGgU;QAC7C,IAAIzE,MAAM+G,UAAUtC,SAASzE,MAAM+G,UAAUtC;aACxC,IAAIzE,MAAMs9B,YAAY9sC,MAAM,GAAGuW,UAAUy2B,iBAAiB/4B,SAC7DzE,MAAM+G,UAAUy2B,iBAAiBF,YAAY9sC,MAAM,GAAGiU;QACxDw4B,mBAAmB;YAAEj9B,KAAAA;YAAKgH,MAAAA;QAAK;QAC/Bm2B,oBAAoBM;QACpBZ,WAAW;IACb;IACA,IAAMc,cAAc;QAClB,IAAI,CAACN,YAAY;QACjBR,WAAW;QACXF,WAAW;QACXiB,sBAAsB;mBAAMr+B;;QAC5B,IAAIm9B,WAAW;YACb,IAAMmB,QAAQnB,UAAUoB,YAAY,IAAI;YACxCC,WAAW;uBAAMhB,iBAAiB;eAAOc;QAC3C;IACF;IACA,IAAMG,cAAc;QAClBrB,WAAW;QACXE,WAAW;QACXE,iBAAiB;QACjBI,oBAAoB5pC;IACtB;IACA4oC,QAAQjoC,SAAS,CAAC;QAChB,IAAIovB,SAAS;YACX,IAAM2a,eAAe;gBACnBL,sBAAsBr+B;YACxB;YACA3E,OAAOtG,gBAAgB,CAAC,UAAU2pC,cAAc;gBAAEC,SAAS;YAAK;YAChEtjC,OAAOtG,gBAAgB,CAAC,UAAU2pC;YAClC,OAAO;gBACLrjC,OAAOrG,mBAAmB,CAAC,UAAU0pC;gBACrCrjC,OAAOrG,mBAAmB,CAAC,UAAU0pC;YACvC;QACF;IACF,GAAG;QAAC3a;KAAQ;IACZ,IAAM6a,uBAAuB;QAC3B,IAAI1B,OAAO;YACT,OAAO,aAAa,GAAGH,MACrB,OACA;gBACEroB,KAAKwoB,MAAMxoB,GAAG;gBACdY,KAAK4nB,MAAM5nB,GAAG,IAAI;gBAClBpkB,OAAOgsC,MAAMhsC,KAAK,IAAI;gBACtBD,QAAQisC,MAAMjsC,MAAM,IAAI;gBACxB4tC,SAAS;gBACT1xC,WAAW;YACb;QAEJ;QACA,OAAOq/B;IACT;IACA,IAAMsS,kBAAkB;QACtB,IAAI,CAAC3B,aAAa,CAACI,eAAe,OAAO;QACzC,IAAMwB,qBAAqB5B,UAAU6B,SAAS;QAC9C,OAAO,aAAa,GAAGjC,MACrBgC,oBACA;YACEjH,UAAUyF;WACPJ,UAAUhuC,KAAK;IAGxB;IACA,IAAI,CAAC2uC,YAAY,OAAO,aAAa,GAAGf,MAAMD,YAAY;QAAElwC,UAAAA;IAAS;IACrE,IAAMqyC,eAAe5uC,YAAY,YAAY,wEAAwE;IACrH,OAAO,aAAa,GAAG2sC,OACrB,OACA;QACE,eAAejsC;QACf3B,KAAK2X;QACL5Z,WAAW,AAAC,yBAAkC,OAAVA;QACpC63B,cAAcoZ;QACdlZ,cAAcuZ;QACdS,SAASd;QACTe,QAAQV;QACR7xC,UAAU;YACRA;YACAkyC;YACA,aAAa,GAAG9B,OACd,OACA;gBACE5tC,KAAKyuC;gBACL1oC,MAAM;gBACN7F,OAAO;oBACLmR,KAAKg9B,gBAAgBh9B,GAAG;oBACxBgH,MAAMg2B,gBAAgBh2B,IAAI;oBAC1BzW,OAAOu/B;oBACPj/B,YAAYc;gBACd;gBACAjF,WAAW,AAAC,uNAatB42B,OADAkb,cAAa,MAEb/B,OADAnZ,WAAWsZ,UAAU,kCAAkC,oDAAmD,MAC9E,OAA5BH,QAAQ,QAAQ,aAAY;gBAElBtwC,UAAU;oBACRgyC;oBACAvuC,YAAY,aAAa,CAAC6sC,SAAS,aAAa,GAAGH,MACjD,OACA;wBACE5vC,WAAW;wBACXmC,OAAO,mBACFquC,qBAAqB,SAAS;4BAC/Bp9B,QAAQ,CAAC;4BACTkH,MAAM;4BACNtD,WAAW;4BACX0T,aAAa;4BACbD,aAAa;wBACf,GACG+lB,qBAAqB,YAAY;4BAClCl9B,KAAK,CAAC;4BACNgH,MAAM;4BACNtD,WAAW;4BACX0T,aAAa;4BACbD,aAAa;wBACf,GACG+lB,qBAAqB,UAAU;4BAChCQ,OAAO,CAAC;4BACR19B,KAAK;4BACL0D,WAAW;4BACX0T,aAAa;4BACbD,aAAa;wBACf,GACG+lB,qBAAqB,WAAW;4BACjCl2B,MAAM,CAAC;4BACPhH,KAAK;4BACL0D,WAAW;4BACX0T,aAAa;4BACbD,aAAa;wBACf;oBAEJ;iBAEH;YACH;SAEH;IACH;AAEJ;AACAqlB,SAAS5vC,WAAW,GAAG;AAEvB,kCAAkC;AAClC,OAAO+xC,WAAWzqC,aAAa0qC,UAAU,QAAQ,QAAQ;AACzD,OAAOC,cAAc,YAAY;AACjC,SAAS9yC,OAAO+yC,KAAK,EAAE9yC,QAAQ+yC,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,YAAY,mBAAC5lC;IACf,IAAI,OAAOA,MAAM,UAAU,OAAOA;IAClC,IAAM4a,OAAO5a;IACb,IAAI,QAAO4a,iBAAAA,2BAAAA,KAAMC,GAAG,MAAK,UAAU,OAAOD,KAAKC,GAAG;IAClD,IAAM5a,IAAI2a,iBAAAA,2BAAAA,KAAMjlB,OAAO;IACvB,IAAI,OAAOsK,MAAM,UAAU,OAAOA;IAClC,IAAI,QAAOA,cAAAA,wBAAAA,EAAG4a,GAAG,MAAK,UAAU,OAAO5a,EAAE4a,GAAG;IAC5C,OAAO;AACT;AACA,IAAIgrB,gBAAgB;AACpB,IAAIC,aAAa;AACjB,IAAIC,mBAAmB;AACvB,IAAIC,YAAY;AAChB,IAAIC,iBAAiB;AACrB,IAAIC,cAAc;AAClB,IAAIC,gBAAgB;AACpB,IAAIC,oBAAoB;AACxB,IAAIC,gBAAgB;AACpB,IAAI;IACFR,gBAAgB9zC;IAChB+zC,aAAa9zC;IACb+zC,mBAAmB9zC;IACnB+zC,YAAY9zC;IACZ+zC,iBAAiB9zC;IACjB+zC,cAAc9zC;IACd+zC,gBAAgB9zC;IAChB+zC,oBAAoB9zC;IACpB+zC,gBAAgB9zC;AAClB,EAAE,OAAOgH,GAAG,CACZ;AACA,IAAI+sC,kBAAkB;IACpBT,eAAe;IACfC,YAAY;IACZC,kBAAkB;IAClBC,WAAW;IACXC,gBAAgB;IAChBC,aAAa;IACbC,eAAe;IACfC,mBAAmB;IACnBC,eAAe;AACjB;AACA,IAAIE,cAAc,qBAACnQ,UAAUC;IAC3B,IAAMxb,MAAM+qB,UAAUxP;IACtB,OAAOvb,OAAOwb;AAChB;AACA,IAAImQ,mBAAmB,0BAACltC;IACtB,OAAQA;QACN,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;QACL;YACE,OAAO;IACX;AACF;AACA,IAAImtC,gBAAgB,uBAACntC;IACnB,OAAQA;QACN,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;YACH,OAAO;QACT,KAAK;QACL;YACE,OAAO;IACX;AACF;AACA,IAAIotC,UAAU,iBAACptC,MAAM7B;IACnB,IAAMhC,QAAQ;QAAE4B,OAAO;QAAQD,QAAQ;QAAQuvC,WAAW;IAAU;IACpE,IAAIlvC,eAAe,eAAe;QAChC,OAAQ6B;YACN,KAAK;gBACH,OAAO,aAAa,GAAGosC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYN,gBAAgBK,gBAAgBL,cAAc;oBAAGxqB,KAAK;oBAAWhmB,OAAAA;gBAAM;YAChI,KAAK;gBACH,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYL,aAAaI,gBAAgBJ,WAAW;oBAAGzqB,KAAK;oBAAShmB,OAAAA;gBAAM;YACxH,KAAK;gBACH,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYJ,eAAeG,gBAAgBH,aAAa;oBAAG1qB,KAAK;oBAAWhmB,OAAAA;gBAAM;YAC9H,KAAK;YACL;gBACE,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYH,mBAAmBE,gBAAgBF,iBAAiB;oBAAG3qB,KAAK;oBAAgBhmB,OAAAA;gBAAM;QAC7I;IACF,OAAO;QACL,OAAQ6D;YACN,KAAK;gBACH,OAAO,aAAa,GAAGosC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYV,eAAeS,gBAAgBT,aAAa;oBAAGpqB,KAAK;oBAAWhmB,OAAAA;gBAAM;YAC9H,KAAK;gBACH,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYT,YAAYQ,gBAAgBR,UAAU;oBAAGrqB,KAAK;oBAAShmB,OAAAA;gBAAM;YACtH,KAAK;gBACH,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYT,YAAYQ,gBAAgBR,UAAU;oBAAGrqB,KAAK;oBAAWhmB,OAAAA;gBAAM;YACxH,KAAK;YACL;gBACE,OAAO,aAAa,GAAGiwC,MAAM,OAAO;oBAAE7qB,KAAK0rB,YAAYR,kBAAkBO,gBAAgBP,gBAAgB;oBAAGtqB,KAAK;oBAAgBhmB,OAAAA;gBAAM;QAC3I;IACF;AACF;AACA,IAAImxC,eAAerB,QAAQnwC,UAAU,CACnC;;;;4FACEkE,MAAAA,8BAAO,4BACPxG,AAAO+zC,oBAAP/zC,OACAg0C,gBAAAA,SACAxsC,gBAAAA,gCACAyW,WAAAA,wCAAY,6CACZg2B,UAAAA,sCAAW,6CACXtvC,YAAAA,0CAAa,2BACbuvC,eAAAA,QACAC,eAAAA,QACA3zC,kBAAAA,WACA4D,eAAAA,QACGgwC;;;;;;;;;;;;6CACF3xC;IACD,IAAM4xC,eAAeN,wBAAAA,yBAAAA,cAAevtC,KAAKs9B,MAAM,CAAC,GAAGC,WAAW,KAAKv9B,KAAK2yB,KAAK,CAAC;IAC9E,IAAMmb,aAAaH,UAAUA,OAAOh9B,MAAM,GAAG;IAC7Cu7B,WAAW;QACT,IAAI,CAAClrC,SAAS;QACd,IAAIysC,YAAY,GAAG;QACnB,IAAMM,QAAQ1C,WAAWrqC,SAASysC;QAClC,OAAO;mBAAMO,aAAaD;;IAC5B,GAAG;QAACN;QAAUzsC;KAAQ;IACtB,IAAMitC,eAAeP,CAAAA,mBAAAA,6BAAAA,OAAQO,YAAY,KAAK9vC,CAAAA,eAAe,gBAAgB8uC,YAAYF,eAAeC,gBAAgBD,aAAa,IAAIE,YAAYP,WAAWM,gBAAgBN,SAAS,CAAA;IACzL,IAAMwB,cAAcR,CAAAA,mBAAAA,6BAAAA,OAAQS,OAAO,IAAG,aAAa,GAAG/B,MACpD,OACA;QACE7qB,KAAKmsB,OAAOS,OAAO;QACnBhsB,KAAKniB;QACL7D,OAAO;YACL4B,OAAO2vC,OAAOU,SAAS,IAAI;YAC3BtwC,QAAQ4vC,OAAOW,UAAU,IAAI;YAC7BhB,WAAW;QACb;IACF,KACED,QAAQptC,MAAM7B;IAClB,IAAM6Z,UAAU,aAAa,GAAGq0B,OAC9B,OACA;QACEpwC,KAAAA;QACA,eAAe2B;QACf5D,WAAW,AAAC,sGAEfmE,OADD2vC,aAAa,sBAAsB,mCAAkC,UAErE9zC,OADCmE,eAAe,gBAAgB,yBAAyB,cAAa,QACtD,OAAhBnE,aAAa;QACTgI,MAAM;QACN,aAAa;OACV4rC;QACHn0C,UAAU;YACR,aAAa,GAAG2yC,MACd,OACA;gBACEpyC,WAAW;gBACXmC,OAAO;oBAAEgC,YAAY+uC,iBAAiBltC;gBAAM;YAC9C;YAEF,aAAa,GAAGqsC,OAAO,OAAO;gBAAEryC,WAAW;gBAAyCP,UAAU;oBAC5F,aAAa,GAAG2yC,MAAM,OAAO;wBAAEpyC,WAAW;wBAAoFP,UAAUy0C;oBAAY;oBACpJ,aAAa,GAAG7B,OAAO,OAAO;wBAAEryC,WAAW;wBAAwBP,UAAU;4BAC3E,aAAa,GAAG2yC,MACd,OACA;gCACEpyC,WAAW;gCACXmC,OAAO;oCACL8b,YAAYy1B,CAAAA,mBAAAA,6BAAAA,OAAQY,eAAe,KAAI;oCACvCzwC,OAAO6vC,CAAAA,mBAAAA,6BAAAA,OAAQnpB,UAAU,KAAKpmB,CAAAA,eAAe,gBAAgBgvC,cAAcntC,QAAQ,OAAM;gCAC3F;gCACAvG,UAAUo0C;4BACZ;4BAEFL,WAAW,aAAa,GAAGpB,MACzB,OACA;gCACEpyC,WAAW;gCACXmC,OAAO;oCACL8b,YAAYy1B,CAAAA,mBAAAA,6BAAAA,OAAQa,iBAAiB,KAAI;oCACzC1wC,OAAO6vC,CAAAA,mBAAAA,6BAAAA,OAAQc,YAAY,KAAKrwC,CAAAA,eAAe,gBAAgB,SAAS,OAAM;gCAChF;gCACA1E,UAAU+zC;4BACZ;yBAEH;oBAAC;oBACF/1B,aAAazW,WAAW,aAAa,GAAGorC,MACtC,UACA;wBACEnyC,SAAS+G;wBACT,cAAc;wBACdhH,WAAW;wBACXP,UAAU,aAAa,GAAG2yC,MACxB,OACA;4BACE7qB,KAAK0sB;4BACL9rB,KAAK;4BACLhmB,OAAO;gCACL4B,OAAO2vC,CAAAA,mBAAAA,6BAAAA,OAAQe,cAAc,KAAI;gCACjC3wC,QAAQ4vC,CAAAA,mBAAAA,6BAAAA,OAAQgB,eAAe,KAAI;gCACnCrB,WAAW;4BACb;wBACF;oBAEJ;iBAEH;YAAC;YACFS,cAAc,aAAa,GAAG1B,MAAM,OAAO;gBAAEpyC,WAAW;gBAAiDP,QAAQ,EAAEk0C,mBAAAA,6BAAAA,OAAQv8B,GAAG,CAAC,SAACu9B,KAAK/3B;2BAAU,aAAa,GAAGw1B,MAC7J,UACA;wBACEnyC,SAAS00C,IAAI10C,OAAO;wBACpBD,WAAW;wBACXmC,OAAO;4BACLgC,YAAYwwC,IAAI1vC,eAAe,IAAK0vC,CAAAA,IAAIzxC,OAAO,KAAK,cAAc,gBAAgB,uBAAsB;4BACxGW,OAAO8wC,IAAIvR,SAAS,IAAKuR,CAAAA,IAAIzxC,OAAO,KAAK,cAAc,UAAU,OAAM;4BACvEiU,QAAQw9B,IAAIlqB,WAAW,GAAG,AAAC,aAA4B,OAAhBkqB,IAAIlqB,WAAW,IAAK;wBAC7D;wBACAhrB,UAAUk1C,IAAIxsC,KAAK;oBACrB,GACAyU;;YACC;SACJ;;IAGL,OAAOu1B,SAAS7oC,YAAY,CAAC0U,SAASrW,SAASG,IAAI;AACrD;AAEFwrC,aAAapzC,WAAW,GAAG;AAE3B,uCAAuC;AACvC,SAAShB,YAAY01C,UAAU,EAAEptC,aAAaqtC,WAAW,EAAE3rC,UAAU4rC,OAAO,EAAEjuB,WAAWkuB,QAAQ,QAAQ,QAAQ;AACjH,SAAS11C,OAAO21C,KAAK,QAAQ,oBAAoB;AACjD,IAAIC,oBAAoB;QACtBrxC,eAAAA,QACA+mC,iBAAAA,uCACAuK,eAAAA,kDAAgB,oDAChBzB,UAAAA,wCAAW,6CACX7yC,QAAAA,oCAAS;QACP;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD,uCACDu0C,OAAAA,kCAAQ,gDACRC,cAAAA,gDAAe,oDACfC,aAAAA,8CAAc;IAEd,IAAkCT,+BAAAA,WAAW,EAAE,OAAxCU,YAA2BV,gBAAhBW,eAAgBX;IAClC,IAAMY,oBAAoBV,QAAQ,KAAK;IACvC,IAAMW,WAAWX,QAAQ,KAAK;IAC9B,IAAMY,eAAeX,SAAS;eAAMn0C;OAAQ;QAACyf,KAAKC,SAAS,CAAC1f;KAAQ;IACpEi0C,YAAY;QACV,IAAIlK,UAAU;YACZ,IAAMgL,eAAel/B,MAAMC,IAAI,CAAC;gBAAEC,QAAQu+B;YAAc,GAAG,SAACt+B,GAAGR;gBAC7D,IAAMmW,QAAQ9Z,KAAKurB,MAAM,KAAKvrB,KAAK2b,EAAE,GAAG;gBACxC,IAAMwnB,QAAQ,AAACnjC,CAAAA,KAAKurB,MAAM,KAAK,IAAI,CAAA,IAAKmX;gBACxC,IAAMU,WAAWpjC,KAAKurB,MAAM,KAAK;gBACjC,IAAM8X,SAASD,WAAW,IAAI;gBAC9B,OAAO;oBACLzvC,IAAIgQ;oBACJvS,OAAO6xC,YAAY,CAACjjC,KAAK6oB,KAAK,CAAC7oB,KAAKurB,MAAM,KAAK0X,aAAa/+B,MAAM,EAAE;oBACpExT,MAAMsP,KAAKurB,MAAM,KAAKoX,eAAeA,eAAe;oBACpDW,OAAO;wBAAC;wBAAU;wBAAa;qBAAO,CAACtjC,KAAK6oB,KAAK,CAAC7oB,KAAKurB,MAAM,KAAK,GAAG;oBACrEgY,UAAUvjC,KAAKurB,MAAM,KAAK;oBAC1BiY,eAAe,AAACxjC,CAAAA,KAAKurB,MAAM,KAAK,GAAE,IAAK;oBACvCnT,GAAGirB;oBACHrpC,GAAG;oBACHypC,IAAIzjC,KAAK6b,GAAG,CAAC/B,SAASqpB,QAASC,CAAAA,WAAW,IAAI,CAAC,CAAA;oBAC/CM,IAAI,CAAC1jC,KAAK8b,GAAG,CAAChC,SAASqpB,QAAQ;oBAC/BQ,SAAS,MAAM3jC,KAAKurB,MAAM,KAAK;oBAC/BlmB,SAAS;oBACTu+B,MAAM;oBACNlF,OAAO1+B,KAAKurB,MAAM,KAAK;gBACzB;YACF;YACAuX,aAAaI;YACb,IAAIxhC;YACJ,IAAMmiC,UAAU,kBAACnZ;gBACf,IAAI,CAAChpB,WAAWA,YAAYgpB;gBAC5B,IAAMoZ,UAAUpZ,YAAYhpB;gBAC5BohC,aACE,SAACiB;2BAAkBA,cAAcp/B,GAAG,CAAC,SAACq/B;wBACpC,IAAIF,UAAUE,SAAStF,KAAK,EAAE,OAAOsF;wBACrC,IAAMJ,OAAO5jC,KAAK+S,GAAG,CAAC,GAAG,IAAI,AAAC+wB,CAAAA,UAAUE,SAAStF,KAAI,AAAC,IAAIsC;wBAC1D,IAAI4C,QAAQ,GAAG,OAAOI;wBACtB,OAAO,wCACFA;4BACH5rB,GAAG4rB,SAAS5rB,CAAC,GAAG4rB,SAASP,EAAE,GAAG;4BAC9BzpC,GAAGgqC,SAAShqC,CAAC,GAAGgqC,SAASN,EAAE,GAAG;4BAC9BA,IAAIM,SAASN,EAAE,GAAGM,SAASL,OAAO;4BAClCJ,UAAUS,SAAST,QAAQ,GAAGS,SAASR,aAAa;4BACpDn+B,SAASu+B;4BACTA,MAAAA;;oBAEJ,GAAGl0B,MAAM,CAAC,SAAChc;+BAAMA,EAAEkwC,IAAI,GAAG;;;gBAE5B,IAAIE,UAAU9C,UAAU;oBACtB+B,kBAAkB5iC,OAAO,GAAGs+B,sBAAsBoF;gBACpD;YACF;YACAd,kBAAkB5iC,OAAO,GAAGs+B,sBAAsBoF;YAClDb,SAAS7iC,OAAO,GAAGy+B,WAAW;gBAC5B,IAAImE,kBAAkB5iC,OAAO,EAAE8jC,qBAAqBlB,kBAAkB5iC,OAAO;gBAC7E2iC,aAAa,EAAE;YACjB,GAAG9B,WAAW;YACd,OAAO;gBACL,IAAI+B,kBAAkB5iC,OAAO,EAAE8jC,qBAAqBlB,kBAAkB5iC,OAAO;gBAC7E,IAAI6iC,SAAS7iC,OAAO,EAAEohC,aAAayB,SAAS7iC,OAAO;YACrD;QACF,OAAO;YACL2iC,aAAa,EAAE;QACjB;IACF,GAAG;QAAC5K;QAAUuK;QAAezB;QAAUiC;QAAcP;QAAOC;KAAa;IACzE,IAAI,CAACzK,YAAY2K,UAAU3+B,MAAM,KAAK,GAAG,OAAO;IAChD,OACE,kDAAkD;IAClD,aAAa,GAAGq+B,MACd,OACA;QACE,eAAepxC;QACf5D,WAAW;QACXmC,OAAO;YAAE2B,QAAQ,AAAC,GAAc,OAAZuxC,aAAY;QAAI;QACpC51C,UAAU61C,UAAUl+B,GAAG,CAAC,SAACq/B;YACvB,IAAME,eAAeF,SAASV,KAAK,KAAK,SAAS,AAAC,6BAA2EU,OAA/CA,SAAS5yC,KAAK,EAAC,kCAAgF4yC,OAAhDA,SAAS5yC,KAAK,EAAC,mCAAgD,OAAf4yC,SAAS5yC,KAAK,EAAC,gBAAc,KAAK;YAC/M,OAAO,aAAa,GAAGmxC,MACrB,OACA;gBACEh1C,WAAW;oBACT;oBACA;oBACA,gCAAgC;oBAChCy2C,SAASV,KAAK,KAAK,WAAW,iBAAiB;oBAC/CU,SAASV,KAAK,KAAK,cAAc,kBAAkB;iBAEpD,CAAC71B,IAAI,CAAC;gBACP/d,OAAO;oBACL,oFAAoF;oBACpFmY,MAAM,AAAC,GAAa,OAAXm8B,SAAS5rB,CAAC,EAAC;oBACpBzX,QAAQ,AAAC,GAAa,OAAXqjC,SAAShqC,CAAC,EAAC;oBACtB1I,OAAO,AAAC,GAAgB,OAAd0yC,SAAStzC,IAAI,EAAC;oBACxBW,QAAQ,AAAC,GAAgB,OAAd2yC,SAAStzC,IAAI,EAAC;oBACzB2U,SAAS2+B,SAAS3+B,OAAO;oBACzBd,WAAW,AAAC,UAA2B,OAAlBy/B,SAAST,QAAQ,EAAC;oBACvC/wC,iBAAiBwxC,SAASV,KAAK,KAAK,SAAS,gBAAgBU,SAAS5yC,KAAK;mBACxE4yC,SAASV,KAAK,KAAK,UAAU;oBAC9B5xC,YAAYwyC;oBACZC,UAAU;gBACZ;YAEJ,GACAH,SAASrwC,EAAE;QAEf;IACF;AAGN;AACA6uC,kBAAkB/0C,WAAW,GAAG;AAEhC,uCAAuC;AACvC,SAAShB,YAAY23C,UAAU,EAAErvC,aAAasvC,WAAW,EAAE5tC,UAAU6tC,OAAO,EAAElwB,WAAWmwB,QAAQ,QAAQ,QAAQ;AACjH,SAAS33C,OAAO43C,KAAK,QAAQ,oBAAoB;AACjD,IAAIC,oBAAoB;QACtBtzC,eAAAA,QACA+mC,iBAAAA,uCACAuK,eAAAA,kDAAgB,oDAChBzB,UAAAA,wCAAW,6CACX7yC,QAAAA,oCAAS;QACP;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD,uCACDu0C,OAAAA,kCAAQ,gDACRC,cAAAA,gDAAe,oDACfC,aAAAA,8CAAc;IAEd,IAAkCwB,+BAAAA,WAAW,EAAE,OAAxCvB,YAA2BuB,gBAAhBtB,eAAgBsB;IAClC,IAAMrB,oBAAoBuB,QAAQ,KAAK;IACvC,IAAMtB,WAAWsB,QAAQ,KAAK;IAC9B,IAAMrB,eAAesB,SAAS;eAAMp2C;OAAQ;QAACyf,KAAKC,SAAS,CAAC1f;KAAQ;IACpEk2C,YAAY;QACV,IAAInM,UAAU;YACZ,IAAMgL,eAAel/B,MAAMC,IAAI,CAAC;gBAAEC,QAAQu+B;YAAc,GAAG,SAACt+B,GAAGR;gBAC7D,IAAMmW,QAAQ9Z,KAAKurB,MAAM,KAAKvrB,KAAK2b,EAAE,GAAG;gBACxC,IAAMwnB,QAAQ,AAACnjC,CAAAA,KAAKurB,MAAM,KAAK,IAAI,CAAA,IAAKmX;gBACxC,IAAMU,WAAWpjC,KAAKurB,MAAM,KAAK;gBACjC,IAAM8X,SAASD,WAAW,IAAI;gBAC9B,OAAO;oBACLzvC,IAAIgQ;oBACJvS,OAAO6xC,YAAY,CAACjjC,KAAK6oB,KAAK,CAAC7oB,KAAKurB,MAAM,KAAK0X,aAAa/+B,MAAM,EAAE;oBACpExT,MAAMsP,KAAKurB,MAAM,KAAKoX,eAAeA,eAAe;oBACpDW,OAAO;wBAAC;wBAAU;wBAAa;qBAAO,CAACtjC,KAAK6oB,KAAK,CAAC7oB,KAAKurB,MAAM,KAAK,GAAG;oBACrEgY,UAAUvjC,KAAKurB,MAAM,KAAK;oBAC1BiY,eAAe,AAACxjC,CAAAA,KAAKurB,MAAM,KAAK,GAAE,IAAK;oBACvCnT,GAAGirB;oBACHrpC,GAAG;oBACHypC,IAAIzjC,KAAK6b,GAAG,CAAC/B,SAASqpB,QAASC,CAAAA,WAAW,IAAI,CAAC,CAAA;oBAC/CM,IAAI,CAAC1jC,KAAK8b,GAAG,CAAChC,SAASqpB,QAAQ;oBAC/BQ,SAAS,MAAM3jC,KAAKurB,MAAM,KAAK;oBAC/BlmB,SAAS;oBACTu+B,MAAM;oBACNlF,OAAO1+B,KAAKurB,MAAM,KAAK;gBACzB;YACF;YACAuX,aAAaI;YACb,IAAIxhC;YACJ,IAAMmiC,UAAU,kBAACnZ;gBACf,IAAI,CAAChpB,WAAWA,YAAYgpB;gBAC5B,IAAMoZ,UAAUpZ,YAAYhpB;gBAC5BohC,aACE,SAACiB;2BAAkBA,cAAcp/B,GAAG,CAAC,SAACq/B;wBACpC,IAAIF,UAAUE,SAAStF,KAAK,EAAE,OAAOsF;wBACrC,IAAMJ,OAAO5jC,KAAK+S,GAAG,CAAC,GAAG,IAAI,AAAC+wB,CAAAA,UAAUE,SAAStF,KAAI,AAAC,IAAIsC;wBAC1D,IAAI4C,QAAQ,GAAG,OAAOI;wBACtB,OAAO,wCACFA;4BACH5rB,GAAG4rB,SAAS5rB,CAAC,GAAG4rB,SAASP,EAAE,GAAG;4BAC9BzpC,GAAGgqC,SAAShqC,CAAC,GAAGgqC,SAASN,EAAE,GAAG;4BAC9BA,IAAIM,SAASN,EAAE,GAAGM,SAASL,OAAO;4BAClCJ,UAAUS,SAAST,QAAQ,GAAGS,SAASR,aAAa;4BACpDn+B,SAASu+B;4BACTA,MAAAA;;oBAEJ,GAAGl0B,MAAM,CAAC,SAAChc;+BAAMA,EAAEkwC,IAAI,GAAG;;;gBAE5B,IAAIE,UAAU9C,UAAU;oBACtB+B,kBAAkB5iC,OAAO,GAAGs+B,sBAAsBoF;gBACpD;YACF;YACAd,kBAAkB5iC,OAAO,GAAGs+B,sBAAsBoF;YAClDb,SAAS7iC,OAAO,GAAGy+B,WAAW;gBAC5B,IAAImE,kBAAkB5iC,OAAO,EAAE8jC,qBAAqBlB,kBAAkB5iC,OAAO;gBAC7E2iC,aAAa,EAAE;YACjB,GAAG9B,WAAW;YACd,OAAO;gBACL,IAAI+B,kBAAkB5iC,OAAO,EAAE8jC,qBAAqBlB,kBAAkB5iC,OAAO;gBAC7E,IAAI6iC,SAAS7iC,OAAO,EAAEohC,aAAayB,SAAS7iC,OAAO;YACrD;QACF,OAAO;YACL2iC,aAAa,EAAE;QACjB;IACF,GAAG;QAAC5K;QAAUuK;QAAezB;QAAUiC;QAAcP;QAAOC;KAAa;IACzE,IAAI,CAACzK,YAAY2K,UAAU3+B,MAAM,KAAK,GAAG,OAAO;IAChD,OACE,kDAAkD;IAClD,aAAa,GAAGsgC,MACd,OACA;QACE,eAAerzC;QACf5D,WAAW;QACXmC,OAAO;YAAE2B,QAAQ,AAAC,GAAc,OAAZuxC,aAAY;QAAI;QACpC51C,UAAU61C,UAAUl+B,GAAG,CAAC,SAACq/B;YACvB,IAAME,eAAeF,SAASV,KAAK,KAAK,SAAS,AAAC,6BAA2EU,OAA/CA,SAAS5yC,KAAK,EAAC,kCAAgF4yC,OAAhDA,SAAS5yC,KAAK,EAAC,mCAAgD,OAAf4yC,SAAS5yC,KAAK,EAAC,gBAAc,KAAK;YAC/M,OAAO,aAAa,GAAGozC,MACrB,OACA;gBACEj3C,WAAW;oBACT;oBACA;oBACA,gCAAgC;oBAChCy2C,SAASV,KAAK,KAAK,WAAW,iBAAiB;oBAC/CU,SAASV,KAAK,KAAK,cAAc,kBAAkB;iBAEpD,CAAC71B,IAAI,CAAC;gBACP/d,OAAO;oBACL,oFAAoF;oBACpFmY,MAAM,AAAC,GAAa,OAAXm8B,SAAS5rB,CAAC,EAAC;oBACpBzX,QAAQ,AAAC,GAAa,OAAXqjC,SAAShqC,CAAC,EAAC;oBACtB1I,OAAO,AAAC,GAAgB,OAAd0yC,SAAStzC,IAAI,EAAC;oBACxBW,QAAQ,AAAC,GAAgB,OAAd2yC,SAAStzC,IAAI,EAAC;oBACzB2U,SAAS2+B,SAAS3+B,OAAO;oBACzBd,WAAW,AAAC,UAA2B,OAAlBy/B,SAAST,QAAQ,EAAC;oBACvC/wC,iBAAiBwxC,SAASV,KAAK,KAAK,SAAS,gBAAgBU,SAAS5yC,KAAK;mBACxE4yC,SAASV,KAAK,KAAK,UAAU;oBAC9B5xC,YAAYwyC;oBACZC,UAAU;gBACZ;YAEJ,GACAH,SAASrwC,EAAE;QAEf;IACF;AAGN;AACA8wC,kBAAkBh3C,WAAW,GAAG;AAEhC,6BAA6B;AAC7B,SAASb,OAAO83C,KAAK,EAAE73C,QAAQ83C,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,SAAS;QAAG53C,iBAAAA;WAAe,aAAa,GAAG03C,MAAM,QAAQ;QAAEn3C,WAAW;QAAyGP,UAAAA;IAAS;;AAC5L,IAAI63C,UAAU;4BACZn0C,MAAAA,gCAAO,6CACPunB,aAAAA,8CAAc,oDACdtmB,cAAAA,gDAAe,sDACfmzC,cAAAA,gDAAe,gEACftyC,iBAAAA,sDAAkB,qEAClB2wC,OAAAA,kCAAQ,kBACRhyC,eAAAA;IAEA,OAAO,aAAa,GAAGuzC,MACrB,OACA;QACE,eAAevzC;QACfoE,MAAM;QACN,aAAa;QACb7F,OAAO;YACL4B,OAAOZ;YACPW,QAAQX;YACRunB,aAAAA;YACAtmB,cAAAA;YACAqmB,aAAaxlB;YACbuyC,gBAAgBD;YAChBvH,WAAW,AAAC,QAAa,OAAN4F,OAAM;QAC3B;QACA51C,WAAW;QACXP,UAAU,aAAa,GAAG03C,MAAME,QAAQ;YAAE53C,UAAU;QAAa;IACnE;AAEJ;AACA,IAAIg4C,kBAAkB;4BACpBt0C,MAAAA,gCAAO,uCACPU,OAAAA,kCAAQ,yDACR+xC,OAAAA,kCAAQ,6CACR8B,WAAAA,0CAAY,sBACZ9zC,eAAAA;IAEA,IAAM+zC,QAAQlhC,MAAMC,IAAI,CAAC;QAAEC,QAAQlE,KAAK+S,GAAG,CAAC,GAAGkyB;IAAW;IAC1D,OAAO,aAAa,GAAGN,OACrB,OACA;QACE,eAAexzC;QACfoE,MAAM;QACN,aAAa;QACbhI,WAAW;QACXmC,OAAO;YAAE4B,OAAOZ;YAAMW,QAAQX;QAAK;QACnC1D,UAAU;YACRk4C,MAAMvgC,GAAG,CAAC,SAACR,GAAGR;gBACZ,IAAMwhC,WAAWz0C,OAAOiT,IAAKjT,CAAAA,OAAQu0C,CAAAA,YAAY,CAAA,CAAC;gBAClD,IAAM3qB,SAAS,AAAC5pB,CAAAA,OAAOy0C,QAAO,IAAK;gBACnC,IAAM9/B,UAAU,IAAI1B,IAAI;gBACxB,OAAO,aAAa,GAAG+gC,MACrB,QACA;oBACEh1C,OAAO;wBACL4B,OAAO6zC;wBACP9zC,QAAQ8zC;wBACRtkC,KAAKyZ;wBACLzS,MAAMyS;wBACNjV,SAAAA;wBACA4S,aAAajY,KAAK+S,GAAG,CAAC,GAAGoyB,WAAW;wBACpCJ,gBAAgB3zC;wBAChBmsC,WAAW,AAAC,gBAA+B,OAAhB4F,QAAQx/B,IAAI,KAAI;oBAC7C;oBACApW,WAAW;gBACb,GACAoW;YAEJ;YACA,aAAa,GAAG+gC,MAAME,QAAQ;gBAAE53C,UAAU;YAAa;SACxD;IACH;AAEJ;AACA,IAAIo4C,oBAAoB;4BACtB9kB,MAAAA,gCAAO,+CACP+kB,aAAAA,8CAAc,2DACdC,oBAAAA,4DAAqB,6DACrBC,gBAAAA,oDAAiB,yEACjBC,cAAAA,gDAAe,qEACfC,UAAAA,wCAAW,iEACX/vC,OAAAA,kCAAQ,6BACRvE,eAAAA;IAEA,IAAI,CAACmvB,MAAM,OAAO;IAClB,OAAO,aAAa,GAAGokB,MACrB,OACA;QACE,eAAevzC;QACfoE,MAAM;QACN,aAAa;QACb7F,OAAO;YAAE8C,iBAAiBizC;QAAS;QACnCl4C,WAAW;QACXP,UAAU,aAAa,GAAG23C,OAAO,OAAO;YAAEp3C,WAAW;YAAoCP,UAAU;gBACjG,aAAa,GAAG03C,MACdG,SACA;oBACEn0C,MAAM20C;oBACNptB,aAAaqtB;oBACb3zC,cAAc;oBACdmzC,cAAcS;oBACd/yC,iBAAiBgzC;gBACnB;gBAEF,aAAa,GAAGd,MAAM,QAAQ;oBAAEn3C,WAAW;oBAAqCP,UAAU0I;gBAAM;aACjG;QAAC;IACJ;AAEJ;AACA,IAAIgwC,cAAc;4BAChBh1C,MAAAA,gCAAO,sCACPU,OAAAA,kCAAQ,sDACR3B,KAAAA,8BAAM,qCACN0zC,OAAAA,kCAAQ,yCACR7N,OAAAA,kCAAQ,kBACRnkC,eAAAA;IAEA,IAAMw0C,OAAO3hC,MAAMC,IAAI,CAAC;QAAEC,QAAQlE,KAAK+S,GAAG,CAAC,GAAGuiB;IAAO;IACrD,OAAO,aAAa,GAAGqP,OACrB,OACA;QACE,eAAexzC;QACfoE,MAAM;QACN,cAAc;QACdhI,WAAW;QACXP,UAAU;YACR24C,KAAKhhC,GAAG,CAAC,SAACR,GAAGR;uBAAM,aAAa,GAAG+gC,MACjC,QACA;oBACE,eAAe;oBACfh1C,OAAO;wBACL4B,OAAOZ;wBACPW,QAAQX;wBACR8B,iBAAiBpB;wBACjBm0B,aAAa5hB,MAAMgiC,KAAKzhC,MAAM,GAAG,IAAI,IAAIzU;wBACzC8tC,WAAW,AAAC,cAAmC55B,OAAtBw/B,OAAM,kBAA0C,OAA1Bx/B,IAAKw/B,CAAAA,QAAQwC,KAAKzhC,MAAK,AAAC,GAAE;oBAC3E;oBACA3W,WAAW;gBACb,GACAoW;;YAEF,aAAa,GAAG+gC,MAAME,QAAQ;gBAAE53C,UAAU;YAAgB;SAC3D;IACH;AAEJ;AACA,IAAI44C,oBAAoB;4BACtBl1C,MAAAA,gCAAO,sCACPU,OAAAA,kCAAQ,sDACR3B,KAAAA,8BAAM,qCACN0zC,OAAAA,kCAAQ,yCACR7N,OAAAA,kCAAQ,kBACRnkC,eAAAA;IAEA,IAAMw0C,OAAO3hC,MAAMC,IAAI,CAAC;QAAEC,QAAQlE,KAAK+S,GAAG,CAAC,GAAGuiB;IAAO;IACrD,IAAMoJ,QAAQyE,QAAQ7N;IACtB,OAAO,aAAa,GAAGqP,OACrB,OACA;QACE,eAAexzC;QACfoE,MAAM;QACN,cAAc;QACdhI,WAAW;QACXP,UAAU;YACR24C,KAAKhhC,GAAG,CAAC,SAACR,GAAGR;uBAAM,aAAa,GAAG+gC,MACjC,QACA;oBACE,eAAe;oBACfh1C,OAAO;wBACL4B,OAAOZ;wBACPW,QAAQX;wBACR8B,iBAAiBpB;wBACjBm0B,aAAa5hB,MAAMgiC,KAAKzhC,MAAM,GAAG,IAAI,IAAIzU;wBACzC8tC,WAAW,AAAC,cAAmC55B,OAAtBw/B,OAAM,kBAA0B,OAAVx/B,IAAI+6B,OAAM;oBAC3D;oBACAnxC,WAAW;gBACb,GACAoW;;YAEF,aAAa,GAAG+gC,MAAME,QAAQ;gBAAE53C,UAAU;YAAgB;SAC3D;IACH;AAEJ;AACA,IAAI64C,kBAAkB;+BACpB5G,SAAAA,sCAAU,+CACV6G,UAAAA,wCAAW,yIACX/4C,OAAAA,kCAAQ,2DACRwe,SAAAA,sCAAU,2FACVpa,eAAAA;IAEA,OAAO,aAAa,GAAGwzC,OACrB,OACA;QACE,eAAexzC;QACf5D,WAAW;QACXP,UAAU;YACR,aAAa,GAAG03C,MAAM,OAAO;gBAAEn3C,WAAW;gBAAoDP,UAAU,CAACiyC,UAAU,aAAa,GAAGyF,MAAM,OAAO;oBAAE5vB,KAAKgxB;oBAAUpwB,KAAK3oB;oBAAOQ,WAAW;gBAA6B,KAAK,aAAa,GAAGm3C,MAAM,OAAO;oBAAEn3C,WAAW;gBAAwB;YAAG;YAC/R,aAAa,GAAGo3C,OAAO,OAAO;gBAAEp3C,WAAW;gBAAOP,UAAU;oBAC1D,CAACiyC,UAAU,aAAa,GAAGyF,MAAM,MAAM;wBAAEn3C,WAAW;wBAA4CP,UAAUD;oBAAM,KAAK,aAAa,GAAG23C,MAAM,OAAO;wBAAEn3C,WAAW;oBAAmC;oBAClM,CAAC0xC,UAAU,aAAa,GAAGyF,MAAM,KAAK;wBAAEn3C,WAAW;wBAAyCP,UAAUue;oBAAQ,KAAK,aAAa,GAAGo5B,OAAO,OAAO;wBAAEp3C,WAAW;wBAAuBP,UAAU;4BAC7L,aAAa,GAAG03C,MAAM,OAAO;gCAAEn3C,WAAW;4BAA6B;4BACvE,aAAa,GAAGm3C,MAAM,OAAO;gCAAEn3C,WAAW;4BAA8B;4BACxE,aAAa,GAAGm3C,MAAM,OAAO;gCAAEn3C,WAAW;4BAA8B;yBACzE;oBAAC;iBACH;YAAC;SACH;IACH;AAEJ;AAEA,oCAAoC;AACpC,SAASwH,aAAagxC,WAAW,EAAEtvC,UAAUuvC,OAAO,EAAEv5C,YAAYw5C,UAAU,QAAQ,QAAQ;AAC5F,SAASv5C,eAAew5C,YAAY,EAAEryC,KAAKsyC,EAAE,EAAEC,OAAO,QAAQ,eAAe;AAC7E,SAAStyC,YAAYuyC,UAAU,EAAEz5C,OAAO05C,KAAK,EAAEz5C,QAAQ05C,MAAM,QAAQ,oBAAoB;AACzF,SAASC,mBAAmB,KAO3B;QANC9wC,QAD0B,MAC1BA,OACAwR,UAF0B,MAE1BA,SACArL,QAH0B,MAG1BA,OACAxF,WAJ0B,MAI1BA,+BAJ0B,MAK1BqG,aAAAA,8CAAc,oCACdvL,SAN0B,MAM1BA;QA2BY;IAzBZ,IAAwB80C,+BAAAA,WAAW,YAA5B54C,OAAiB44C,gBAAX34C,UAAW24C;IACxB,IAA4BA,gCAAAA,WAAW,SAAhCQ,SAAqBR,iBAAbS,YAAaT;IAC5B,IAAMz2C,MAAMw2C,QAAQ;IACpBD,YAAY;QACV,IAAM93B,IAAI,WAACza;mBAAMhE,IAAI2Q,OAAO,IAAI,CAAC3Q,IAAI2Q,OAAO,CAACc,QAAQ,CAACzN,EAAE0N,MAAM,KAAK5T,QAAQ;;QAC3E4H,SAASC,gBAAgB,CAAC,aAAa8Y;QACvC,OAAO;mBAAM/Y,SAASE,mBAAmB,CAAC,aAAa6Y;;IACzD,GAAG,EAAE;IACL,IAAMuc,WAAW,CAACtjB,oBAAAA,qBAAAA,UAAW,EAAE,EAAEwI,MAAM,CACrC,SAACjI;eAAMA,EAAE/R,KAAK,CAACvG,WAAW,GAAGqG,QAAQ,CAACixC,OAAOt3C,WAAW;;IAE1D,OAAO,aAAa,GAAGo3C,OACrB,OACA;QACE/2C,KAAAA;QACA,eAAe2B;QACf5D,WAAW;QACXP,UAAU;YACR0I,SAAS,aAAa,GAAG4wC,MAAM,SAAS;gBAAE/4C,WAAW;gBAAuDP,UAAU0I;YAAM;YAC5H,aAAa,GAAG6wC,OACd,UACA;gBACE/4C,SAAS,SAATA;2BAAeF,QAAQ,SAACma;+BAAM,CAACA;;;gBAC/Bla,WAAW;gBACXP,UAAU;oBACR,EAAA,QAAA,CAACka,oBAAAA,qBAAAA,UAAW,EAAE,EAAEM,IAAI,CAAC,SAACC;+BAAMA,EAAE5L,KAAK,KAAKA;oCAAxC,4BAAA,MAAgDnG,KAAK,KAAIgH;oBACzD,aAAa,GAAG4pC,MAAMJ,cAAc;wBAAEx1C,MAAM;oBAAG;iBAChD;YACH;YAEFrD,QAAQ,aAAa,GAAGk5C,OACtB,OACA;gBACEh5C,WAAW;gBACXP,UAAU;oBACR,aAAa,GAAGu5C,OAAO,OAAO;wBAAEh5C,WAAW;wBAA0CP,UAAU;4BAC7F,aAAa,GAAGs5C,MACd,SACA;gCACE5pC,aAAa;gCACbb,OAAO4qC;gCACPpwC,UAAU,SAAVA,SAAW7C;2CAAMkzC,UAAUlzC,EAAE0N,MAAM,CAACrF,KAAK;;gCACzCtO,WAAW;4BACb;4BAEFk5C,UAAU,aAAa,GAAGH,MACxB,UACA;gCACE94C,SAAS,SAATA;2CAAek5C,UAAU;;gCACzBn5C,WAAW;gCACXP,UAAU;4BACZ;yBAEH;oBAAC;oBACF,aAAa,GAAGu5C,OAAO,OAAO;wBAAEh5C,WAAW;wBAAiCP,UAAU;4BACpFw9B,SAAS7lB,GAAG,CAAC,SAAC8C;uCAAM,aAAa,GAAG6+B,MAClC,OACA;oCACE94C,SAAS,SAATA;wCACE6I,SAASoR,EAAE5L,KAAK;wCAChBvO,QAAQ;wCACRo5C,UAAU;oCACZ;oCACAn5C,WAAW;oCACXP,UAAUya,EAAE/R,KAAK;gCACnB,GACA+R,EAAE5L,KAAK;;4BAET2uB,SAAStmB,MAAM,KAAK,KAAK,aAAa,GAAGoiC,MAAM,OAAO;gCAAE/4C,WAAW;gCAAsBP,UAAU;4BAAa;yBACjH;oBAAC;iBACH;YACH;SAEH;IACH;AAEJ;AAEA,iCAAiC;AACjC,SAAS+H,aAAa4xC,WAAW,EAAElwC,UAAUmwC,OAAO,EAAEn6C,YAAYo6C,UAAU,QAAQ,QAAQ;AAC5F,SAASj6C,OAAOk6C,KAAK,EAAEj6C,QAAQk6C,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,cAAc;QAAGlyB,YAAAA;WAAU,aAAa,GAAGgyB,MAC7C,OACA;QACEp3C,OAAO;YACL4B,OAAO;YACPD,QAAQ;YACR41C,iBAAiB,AAAC,OAAU,OAAJnyB,KAAI;YAC5BoyB,kBAAkB;YAClBC,oBAAoB;YACpBC,gBAAgB;QAClB;IACF;;AAEF,IAAIC,eAAe;IACjBC,MAAM;IACNC,OAAO;IACPC,MAAM;IACNC,QAAQ;IACRC,aAAa;IACbC,cAAc;IACdC,YAAY;IACZC,aAAa;AACf;AACA,IAAIC,cAAc;6BAAGC,OAAAA,kCAAQV;IAC3B,IAAMW,mBAAmB;IACzB,IAAwBnB,+BAAAA,WAAW,SAA5Bja,OAAiBia,gBAAXoB,UAAWpB;IACxB,IAAwBA,gCAAAA,WAAW,iBAA5BhzB,OAAiBgzB,iBAAXqB,UAAWrB;IACxB,IAA8BA,gCAAAA,WAAW,YAAlCsB,UAAuBtB,iBAAduB,aAAcvB;IAC9B,IAAsCA,gCAAAA,WAAW,QAA1CvjC,cAA+BujC,iBAAlBwB,iBAAkBxB;IACtC,IAAgCA,gCAAAA,WAAW,QAApC7F,WAAyB6F,iBAAfyB,cAAezB;IAChC,IAA4BA,gCAAAA,WAAW,QAAhC0B,SAAqB1B,iBAAb2B,YAAa3B;IAC5B,IAA0BA,gCAAAA,WAAW,QAA9B1D,QAAmB0D,iBAAZ4B,WAAY5B;IAC1B,IAAwBA,gCAAAA,WAAW,YAA5B6B,OAAiB7B,iBAAX8B,UAAW9B;IACxB,IAAM+B,eAAehC,QAAQ;IAC7B,IAAM5D,WAAW4D,QAAQ;IACzB,IAAMiC,eAAejC,QAAQ;IAC7B,IAAMkC,cAAclC,QAAQ;IAC5B,IAAMmC,qBAAqBnC,QAAQ;IACnC,IAA8BC,gCAAAA,WAAW,SAAlCj1B,UAAuBi1B,iBAAdmC,aAAcnC;IAC9B,IAAgCA,gCAAAA,WAAW,QAApCoC,WAAyBpC,iBAAfqC,cAAerC;IAChC,IAAMsC,eAAevC,QAAQ;IAC7B,IAAMwC,cAAcxC,QAAQ;IAC5B,IAAMyC,kBAAkBzC,QAAQ;IAChC,IAAM0C,eAAe1C,QAAQ;IAC7B,IAAM2C,YAAY3C,QAAQ2B;IAC1B,IAAMiB,WAAW5C,QAAQzD;IACzB,IAAMsG,iBAAiB,wBAACC;QACtB,IAAI,CAACA,MAAMhhC,IAAI,IAAI,OAAO;QAC1B,IAAMihC,QAAQD,MAAMv6C,WAAW;QAC/B,IAAMy6C,aAAa;YACjBC,YAAY;gBACVC,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAm4B,UAAU;gBACRD,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAo4B,WAAW;gBACTF,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAq4B,OAAO;gBACLH,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAs4B,OAAO;gBACLJ,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAu4B,WAAW;gBACTL,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAw4B,QAAQ;gBACNN,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;YACAy4B,QAAQ;gBACNP,UAAU;oBACR;oBACA;oBACA;oBACA;oBACA;oBACA;oBACA;iBACD;gBACDl4B,SAAS;YACX;QACF;QACA,IAAM04B,YAAY,EAAE;QACpB,IAAK,IAAMr1C,OAAO20C,WAAY;YAC5B,IAAIA,UAAU,CAAC30C,IAAI,CAAC60C,QAAQ,CAACv8B,IAAI,CAAC,SAACg9B;uBAAMZ,MAAMn0C,QAAQ,CAAC+0C;gBAAK;gBAC3DD,UAAU7mC,IAAI,CAACmmC,UAAU,CAAC30C,IAAI,CAAC2c,OAAO;YACxC;QACF;QACA,OAAO04B,UAAUpmC,MAAM,GAAGomC,UAAUpkB,KAAK,CAAC,GAAG,GAAGzY,IAAI,CAAC,OAAO;IAC9D;IACA,IAAM+8B,kBAAkB,yBAACC;QACvB,IAAMC,KAAK5B,YAAY3oC,OAAO;QAC9B,IAAI,CAACuqC,IAAI;QACT,IAAM7uC,QAAQ6uC,GAAG7uC,KAAK;QACtB,IAAI/B,QAAQ2wC;QACZ,MAAO3wC,QAAQ,KAAK,KAAK6wC,IAAI,CAAC9uC,KAAK,CAAC/B,QAAQ,EAAE,EAAG;YAC/CA;QACF;QACA,IAAIiE,MAAM0sC;QACV,MAAO1sC,MAAMlC,MAAMqI,MAAM,IAAI,KAAKymC,IAAI,CAAC9uC,KAAK,CAACkC,IAAI,EAAG;YAClDA;QACF;QACA2sC,GAAGE,KAAK;QACRF,GAAGG,iBAAiB,CAAC/wC,OAAOiE;IAC9B;IACA,IAAM+sC,cAAc,qBAACC;QACnB,IAAM9wC,IAAI+F,KAAK6oB,KAAK,CAACkiB,MAAM;QAC3B,IAAMphB,IAAI3pB,KAAK6oB,KAAK,CAACkiB,MAAM;QAC3B,OAAO,AAAC,GAAOphB,OAAL1vB,GAAE,KAAiC,OAA9B0vB,EAAEhc,QAAQ,GAAG9V,QAAQ,CAAC,GAAG;IAC1C;IACA,IAAMmzC,gBAAgB;eAAMpe;;IAC5B,IAAMqe,gBAAgB,wBAACxyC;QACrB,IAAMyyC,SAASte;QACf,IAAI,CAACse,OAAOxiC,IAAI,IAAI;QACpB,IAAMyiC,QAAQD,OAAO5vC,KAAK,CAAC;QAC3B,IAAM8vC,iBAAiBprC,KAAK6oB,KAAK,CAACpwB,OAAOuvC;QACzC,IAAMqD,aAAaF,MAAMjlB,KAAK,CAAC,GAAGklB,gBAAgB39B,IAAI,CAAC,KAAKvJ,MAAM,GAAIknC,CAAAA,iBAAiB,IAAI,IAAI,CAAA;QAC/F3vC,OAAO6vC,eAAe,CAACC,MAAM;QAC7BC;QACA,IAAMC,IAAI,IAAIC,yBAAyBR,OAAOhlB,KAAK,CAACmlB;QACpDI,EAAEE,IAAI,GAAGnC,SAASrpC,OAAO;QACzBsrC,EAAElD,MAAM,GAAGgB,UAAUppC,OAAO;QAC5BsrC,EAAEG,UAAU,GAAG,SAACp4C;YACd,IAAIA,EAAEtF,IAAI,KAAK,UAAU66C,mBAAmB5oC,OAAO,EAAE;gBACnDqqC,gBAAgBa,aAAa73C,EAAEq4C,SAAS;YAC1C;QACF;QACAJ,EAAEK,KAAK,GAAG;YACRN;YACAzC,mBAAmB5oC,OAAO,GAAG;YAC7B,IAAI8oC,aAAa,KAAKE,aAAahpC,OAAO,KAAK,GAAG;gBAChDgpC,aAAahpC,OAAO,GAAG;gBACvBkoC,eAAe;gBACf4C,cAAc;gBACd;YACF;YACA,IAAIhC,aAAa,GAAG;gBAClBZ,eAAe;gBACf4C,cAAc;gBACd;YACF;YACA9B,aAAahpC,OAAO,GAAG;YACvBioC,WAAW;YACXC,eAAerH;QACjB;QACA4H,aAAazoC,OAAO,GAAGsrC;QACvBhwC,OAAO6vC,eAAe,CAACS,KAAK,CAACN;QAC7BrD,WAAW;QACX4D,WAAWvzC;IACb;IACA,IAAMuzC,aAAa,oBAACC;QAClBT;QACA,IAAM1xC,QAAQZ,KAAK8I,GAAG,KAAKiqC,WAAW;QACtCjJ,SAAS7iC,OAAO,GAAG+rC,YAAY;YAC7B,IAAMpI,UAAU,AAAC5qC,CAAAA,KAAK8I,GAAG,KAAKlI,KAAI,IAAK;YACvCuuC,eAAeroC,KAAKoT,GAAG,CAAC0wB,SAAS9C;QACnC,GAAG;IACL;IACA,IAAMmL,aAAa;QACjB,IAAI,CAACvD,aAAazoC,OAAO,EAAE;YACzBgpC,aAAahpC,OAAO,GAAG;YACvB8qC,cAAc3nC;YACd;QACF;QACA,IAAI6kC,SAAS;YACX1sC,OAAO6vC,eAAe,CAAC/D,KAAK;YAC5BiE;YACApD,WAAW;QACb,OAAO;YACL3sC,OAAO6vC,eAAe,CAACc,MAAM;YAC7BJ,WAAW1oC;YACX8kC,WAAW;QACb;IACF;IACA,IAAMoD,YAAY;QAChB,IAAIxI,SAAS7iC,OAAO,EAAE;YACpBksC,cAAcrJ,SAAS7iC,OAAO;YAC9B6iC,SAAS7iC,OAAO,GAAG;QACrB;IACF;IACA,IAAMmsC,kBAAkB;QACtB,IAAIz4B,SAAS,QAAQ;YACnB,IAAM04B,WAAWr3C,SAASG,IAAI,CAACm3C,SAAS,CAACtQ,OAAO,CAAC,QAAQ,KAAKxzB,IAAI;YAClE,OAAO6jC,WAAW,wFAAwF;QAC5G;QACA,OAAO9C,eAAe7c;IACxB;IACA,IAAM6f,iBAAiB;QACrB,OAAOv3C,SAASG,IAAI,CAACm3C,SAAS,CAACtQ,OAAO,CAAC,QAAQ,KAAKxzB,IAAI;IAC1D;IACA,IAAMgkC,gBAAgB;QACpBC,MAAM;IACR;IACA,IAAMC,OAAO,cAAC7B;QACZ,IAAMv7B,OAAOxP,KAAK+S,GAAG,CAAC,GAAG/S,KAAKoT,GAAG,CAAC9P,cAAcynC,KAAK/J;QACrD+H,mBAAmB5oC,OAAO,GAAG;QAC7B1E,OAAO6vC,eAAe,CAACC,MAAM;QAC7BC;QACAnD,eAAe74B;QACfy7B,cAAcz7B;QACdw8B,WAAWx8B;IACb;IACA,IAAMg4B,OAAO;YAMXsB;QALArtC,OAAO6vC,eAAe,CAACC,MAAM;QAC7BC;QACArC,aAAahpC,OAAO,GAAG;QACvBioC,WAAW;QACXC,eAAe;SACfS,uBAAAA,YAAY3oC,OAAO,cAAnB2oC,2CAAAA,qBAAqB+B,iBAAiB,CAAC,GAAG;IAC5C;IACAlE,YAAY;QACV4C,UAAUppC,OAAO,GAAGooC;IACtB,GAAG;QAACA;KAAO;IACX5B,YAAY;QACV6C,SAASrpC,OAAO,GAAGgjC;IACrB,GAAG;QAACA;KAAM;IACVwD,YAAY;QACV,IAAI,CAACwB,SAAS;QACd1sC,OAAO6vC,eAAe,CAACC,MAAM;QAC7BC;QACAP,cAAc3nC;IAChB,GAAG;QAACilC;KAAO;IACX5B,YAAY;QACV,IAAI,CAAC/Z,KAAKlkB,IAAI,IAAI;YAChB4/B,YAAY;YACZD,eAAe;YACf;QACF;QACA,IAAM8C,QAAQve,KAAKlkB,IAAI,GAAGpN,KAAK,CAAC,OAAO4I,MAAM;QAC7C,IAAM2oC,eAAe1B,QAAQnD;QAC7BqB,gBAAgBlpC,OAAO,GAAG0sC;QAC1BvE,YAAYuE,eAAe1J;QAC3BkF,eAAe;IACjB,GAAG;QAACzb;KAAK;IACT+Z,YAAY;QACV,IAAI,CAAC0C,gBAAgBlpC,OAAO,EAAE;QAC9B,IAAMmzB,WAAW0N,aAAa,IAAI,IAAI19B,cAAc09B;QACpD,IAAM8L,cAAczD,gBAAgBlpC,OAAO,GAAGgjC;QAC9C,IAAM4J,iBAAiBzZ,WAAWwZ;QAClCxE,YAAYwE;QACZzE,eAAe0E;QACf,IAAI5E,SAAS;YACX1sC,OAAO6vC,eAAe,CAACC,MAAM;YAC7BC;YACAP,cAAc8B;QAChB;IACF,GAAG;QAAC5J;KAAM;IACVwD,YAAY;QACV,IAAI,CAACyC,YAAYjpC,OAAO,EAAE;QAC1B,IAAI,CAACysB,KAAKlkB,IAAI,IAAI;QAClB0gC,YAAYjpC,OAAO,GAAG;QACtB8qC,cAAc;IAChB,GAAG;QAACre;KAAK;IACT,OAAO,aAAa,GAAGma,OACrB,OACA;QACE,eAAe;QACfx5C,WAAW;QACXP,UAAU;YACR,aAAa,GAAG+5C,OACd,OACA;gBACE,eAAe;gBACfx5C,WAAW;gBACXP,UAAU;oBACR,aAAa,GAAG85C,MAAM,OAAO;wBAAEv5C,WAAW;wBAA4EP,UAAU;oBAAiB;oBACjJ,aAAa,GAAG85C,MAAM,OAAO;wBAAEv5C,WAAW;wBAA+BP,UAAU,aAAa,GAAG85C,MACjG,YACA;4BACEt3C,KAAKs5C;4BACLpsC,aAAa;4BACbb,OAAO+wB;4BACPv2B,UAAU,SAAVA,SAAW7C;uCAAMy0C,QAAQz0C,EAAE0N,MAAM,CAACrF,KAAK;;4BACvCtO,WAAW;wBACb;oBACA;oBACF,aAAa,GAAGw5C,OAAO,OAAO;wBAAEx5C,WAAW;wBAAwGP,UAAU;4BAC3J,aAAa,GAAG+5C,OAAO,OAAO;gCAAEx5C,WAAW;gCAA4FP,UAAU;oCAC/I,aAAa,GAAG85C,MAAM,UAAU;wCAAEv5C,WAAW;wCAA6E,eAAe;wCAAmBC,SAAS,SAATA;mDAAeo/C,KAAK,CAAC;;wCAAK5/C,UAAU,aAAa,GAAG85C,MAAME,aAAa;4CAAElyB,KAAKizB,MAAMF,WAAW;wCAAC;oCAAG;oCAC/P,aAAa,GAAGf,MAAM,UAAU;wCAAEv5C,WAAW;wCAA6E,eAAe;wCAAqBC,SAAS,SAATA;mDAAeo/C,KAAK,CAAC;;wCAAI5/C,UAAU,aAAa,GAAG85C,MAAME,aAAa;4CAAElyB,KAAKizB,MAAMJ,YAAY;wCAAC;oCAAG;oCACjQ,aAAa,GAAGb,MAAM,UAAU;wCAAEv5C,WAAW;wCAA4E,eAAe;wCAAkBC,SAAS2+C;wCAAYn/C,UAAU,aAAa,GAAG85C,MAAME,aAAa;4CAAElyB,KAAKqzB,UAAUJ,MAAMR,KAAK,GAAGQ,MAAMT,IAAI;wCAAC;oCAAG;oCACzQ,aAAa,GAAGR,MAAM,UAAU;wCAAEv5C,WAAW;wCAA4E,eAAe;wCAAuBC,SAAS,SAATA;mDAAeo/C,KAAK;;wCAAK5/C,UAAU,aAAa,GAAG85C,MAAME,aAAa;4CAAElyB,KAAKizB,MAAMH,UAAU;wCAAC;oCAAG;oCAChQ,aAAa,GAAGd,MAAM,UAAU;wCAAEv5C,WAAW;wCAA4E,eAAe;wCAAsBC,SAAS,SAATA;mDAAeo/C,KAAK;;wCAAI5/C,UAAU,aAAa,GAAG85C,MAC9M,OACA;4CACEp3C,OAAO;gDACL4B,OAAO;gDACPD,QAAQ;gDACR41C,iBAAiB,AAAC,OAAyB,OAAnBc,MAAMJ,YAAY,EAAC;gDAC3CT,kBAAkB;gDAClBC,oBAAoB;gDACpBC,gBAAgB;gDAChB7iC,WAAW;4CACb;wCACF;oCACA;oCACF,aAAa,GAAGuiC,MAAM,UAAU;wCAAEv5C,WAAW;wCAA4E,eAAe;wCAAcC,SAASg6C;wCAAMx6C,UAAU,aAAa,GAAG85C,MAAME,aAAa;4CAAElyB,KAAKizB,MAAMP,IAAI;wCAAC;oCAAG;oCACvO,aAAa,GAAGV,MACd,UACA;wCACEv5C,WAAW;wCACX,eAAe;wCACfC,SAAS,SAATA;4CACE07C,YAAY,SAAC3iC;uDAASA,SAAS,IAAI,IAAIA,OAAO;;wCAChD;wCACAxZ,OAAOk8C,aAAa,IAAI,aAAaA,aAAa,IAAI,cAAc;wCACpEj8C,UAAU,aAAa,GAAG+5C,OAAO,OAAO;4CAAEr3C,OAAO;gDAAE0E,UAAU;4CAAW;4CAAGpH,UAAU;gDACnF,aAAa,GAAG85C,MAAME,aAAa;oDAAElyB,KAAKizB,MAAMN,MAAM;gDAAC;gDACvDwB,aAAa,KAAK,aAAa,GAAGnC,MAChC,QACA;oDACEp3C,OAAO;wDACL0E,UAAU;wDACVmqC,OAAO,CAAC;wDACR59B,QAAQ,CAAC;wDACTrP,OAAO;wDACPD,QAAQ;wDACRM,cAAc;wDACdD,YAAY;oDACd;gDACF;gDAEFu3C,aAAa,KAAK,aAAa,GAAGnC,MAChC,QACA;oDACEp3C,OAAO;wDACL0E,UAAU;wDACVmqC,OAAO,CAAC;wDACR59B,QAAQ,CAAC;wDACT+C,UAAU;wDACViW,YAAY;wDACZvoB,OAAO;oDACT;oDACApE,UAAU;gDACZ;6CAEH;wCAAC;oCACJ;iCAEH;4BAAC;4BACF,aAAa,GAAG+5C,OAAO,OAAO;gCAAEx5C,WAAW;gCAAyCP,UAAU;oCAC5F,aAAa,GAAG85C,MACd,SACA;wCACEv5C,WAAW;wCACX,eAAe;wCACfgG,MAAM;wCACN6f,KAAK;wCACLL,KAAKiuB;wCACLgM,MAAM;wCACNnxC,OAAOyH;wCACP5T,OAAO;4CACL,cAAc,AAAC,GAA+B,OAA7B4T,cAAc09B,WAAW,KAAI;wCAChD;wCACA3qC,UAAU,SAAVA,SAAW7C;4CACT,IAAMwb,IAAIlK,OAAOtR,EAAE0N,MAAM,CAACrF,KAAK;4CAC/BwsC,eAAer5B;4CACfvT,OAAO6vC,eAAe,CAACC,MAAM;4CAC7BC;4CACAP,cAAcj8B;wCAChB;oCACF;oCAEF,aAAa,GAAG+3B,OACd,QACA;wCACEr3C,OAAO;4CACLgU,UAAU;4CACVtS,OAAO;4CACPI,UAAU;4CACV28B,WAAW;wCACb;wCACAnhC,UAAU;4CACR89C,YAAYxnC;4CACZ;4CACAwnC,YAAY9J;yCACb;oCACH;iCAEH;4BAAC;4BACF,aAAa,GAAG8F,MACd,UACA;gCACEv5C,WAAW;gCACX,eAAe;gCACfC,SAAS,SAATA;oCACE,IAAM++C,WAAWE;oCACjBtD,aAAahpC,OAAO,GAAG;oCACvB8nC,QAAQsE;oCACRrE,QAAQ;oCACRG,eAAe;oCACf4C,cAAc;gCAChB;gCACAj+C,UAAU;4BACZ;4BAEF,aAAa,GAAG85C,MACd,UACA;gCACEv5C,WAAW;gCACX,eAAe;gCACfC,SAAS,SAATA;oCACE27C,aAAahpC,OAAO,GAAG;oCACvB+nC,QAAQ;oCACRG,eAAe;oCACfW,WAAWS,eAAe7c;oCAC1Bqe,cAAc;gCAChB;gCACAj+C,UAAU;4BACZ;yBAEH;oBAAC;iBACH;YACH;YAEF,aAAa,GAAG85C,MAAM,OAAO;gBAAEv5C,WAAW;gBAA4BP,UAAU,aAAa,GAAG+5C,OAAO,OAAO;oBAAEx5C,WAAW;oBAA0EP,UAAU;wBAC7M,aAAa,GAAG+5C,OAAO,OAAO;4BAAEx5C,WAAW;4BAAwFP,UAAU;gCAC3I,aAAa,GAAG85C,MAAM,QAAQ;oCAAE95C,UAAU;gCAAS;gCACnD,aAAa,GAAG+5C,OAAO,QAAQ;oCAAE/5C,UAAU;wCACzCgT,KAAKC,KAAK,CAACsoC,SAAS;wCACpB;qCACD;gCAAC;6BACH;wBAAC;wBACF,aAAa,GAAGzB,MACd,SACA;4BACE,eAAe;4BACfvzC,MAAM;4BACN6f,KAAK;4BACLL,KAAK;4BACLi6B,MAAM;4BACNnxC,OAAO0sC;4BACP74C,OAAO;gCAAE,WAAW,AAAC,GAAe,OAAb64C,SAAS,KAAI;4BAAG;4BACvClyC,UAAU,SAAVA,SAAW7C;uCAAMg1C,UAAU1jC,OAAOtR,EAAE0N,MAAM,CAACrF,KAAK;;wBAClD;qBAEH;gBAAC;YAAG;YACL,aAAa,GAAGkrC,OAAO,OAAO;gBAAEx5C,WAAW;gBAAgEP,UAAU;oBACnH,aAAa,GAAG+5C,OAAO,OAAO;wBAAEx5C,WAAW;wBAA2EP,UAAU;4BAC9H,aAAa,GAAG85C,MAAM,QAAQ;gCAAE95C,UAAU;4BAAiB;4BAC3D,aAAa,GAAG+5C,OAAO,QAAQ;gCAAE/5C,UAAU;oCACzCm2C,MAAMnc,OAAO,CAAC;oCACd;iCACD;4BAAC;yBACH;oBAAC;oBACF,aAAa,GAAG8f,MAAM,OAAO;wBAAEv5C,WAAW;wBAAwCP,UAAU,aAAa,GAAG85C,MAC1G,SACA;4BACEv5C,WAAW;4BACX,eAAe;4BACfgG,MAAM;4BACN6f,KAAK;4BACLL,KAAK;4BACLi6B,MAAM;4BACNnxC,OAAOsnC;4BACPzzC,OAAO;gCACL,WAAW,AAAC,GAA4B,OAA1B,AAACyzC,CAAAA,QAAQ,GAAE,IAAK,MAAM,KAAI;4BAC1C;4BACA9sC,UAAU,SAAVA,SAAW7C;uCAAMi1C,SAAS3jC,OAAOtR,EAAE0N,MAAM,CAACrF,KAAK;;wBACjD;oBACA;oBACF,aAAa,GAAGkrC,OACd,OACA;wBACEr3C,OAAO;4BACLgU,UAAU;4BACVtS,OAAO;4BACPyT,WAAW;4BACX8S,SAAS;4BACTkK,gBAAgB;wBAClB;wBACA70B,UAAU;4BACR,aAAa,GAAG85C,MAAM,QAAQ;gCAAE95C,UAAU;4BAAS;4BACnD,aAAa,GAAG85C,MAAM,QAAQ;gCAAE95C,UAAU;4BAAS;yBACpD;oBACH;iBAEH;YAAC;YACF,aAAa,GAAG+5C,OAAO,OAAO;gBAAEx5C,WAAW;gBAAgEP,UAAU;oBACnH,aAAa,GAAG85C,MAAM,OAAO;wBAAEv5C,WAAW;oBAA0E;oBACpH,aAAa,GAAGu5C,MAAM,QAAQ;wBAAE,eAAe;wBAAiB95C,UAAU;oBAAgB;iBAC3F;YAAC;YACF,aAAa,GAAG85C,MAAM,KAAK;gBAAEp3C,OAAO;oBAAEgU,UAAU;oBAAItS,OAAO;oBAAWkwB,YAAY;gBAAI;gBAAGt0B,UAAU6mB,SAAS,aAAa41B,eAAe7c,QAAQ0f;YAAkB;SACnK;IACH;AAEJ;AAEA,mCAAmC;AACnC,SAASv3C,aAAak4C,WAAW,EAAEx2C,UAAUy2C,QAAQ,EAAEzgD,YAAY0gD,UAAU,QAAQ,QAAQ;AAC7F,SAASt2C,gBAAgBu2C,aAAa,QAAQ,YAAY;AAC1D,SAASv5C,KAAKw5C,EAAE,QAAQ,eAAe;AACvC,SAASzgD,OAAO0gD,KAAK,EAAEzgD,QAAQ0gD,MAAM,QAAQ,oBAAoB;AACjE,IAAIC,4BAA4B;QAC9Bl5C,eAAAA,QACAC,gBAAAA,SACAxH,cAAAA,OACA0hB,oBAAAA,aACA6uB,cAAAA,OACAmQ,kBAAAA,WACAC,iBAAAA,UACAC,gBAAAA,SACAC,eAAAA,QACAz8C,eAAAA;IAEA,IAAM3B,MAAM09C,SAAS;IACrB,IAA4BC,+BAAAA,WAAW,eAAhChnC,SAAqBgnC,gBAAbU,YAAaV;IAC5B,IAAgCA,gCAAAA,WAAW,WAApCW,WAAyBX,iBAAfY,cAAeZ;IAChCF,YAAY;QACV,IAAI,CAACe,UAAUC,WAAW,EAAE;QAC5BD,UAAUC,WAAW,CAACC,KAAK,CAAC;YAAEhgD,MAAM;QAAc,GAAGigD,IAAI,CAAC,SAACC;YACzDP,UAAUO,IAAIC,KAAK;YACnBD,IAAIE,QAAQ,GAAG;uBAAMT,UAAUO,IAAIC,KAAK;;QAC1C;IACF,GAAG,EAAE;IACLpB,YAAY;QACV,IAAI9mC,WAAW,aAAa2nC,UAAU;YACpCH,oBAAAA,8BAAAA,QAAUG,SAASS,MAAM;YACzBh6C;QACF;IACF,GAAG;QAAC4R;QAAQ2nC;KAAS;IACrB,IAAMU,kBAAkB;QACtBR,UAAUS,WAAW,CAACC,kBAAkB,CACtC,SAACrnC;YACC0mC,YAAY1mC;YACZwmC,UAAU;QACZ,GACA;mBAAMA,UAAU;WAChB;YAAEc,oBAAoB;QAAK;IAE/B;IACA1B,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAM2Z,IAAI,WAACza;gBAAOhE;mBAAD,GAACA,eAAAA,IAAI2Q,OAAO,cAAX3Q,mCAAAA,aAAayR,QAAQ,CAACzN,EAAE0N,MAAM,MAAK3M;;QACrDW,SAASC,gBAAgB,CAAC,aAAa8Y;QACvC,OAAO;mBAAM/Y,SAASE,mBAAmB,CAAC,aAAa6Y;;IACzD,GAAG;QAAC3Z;KAAO;IACX,IAAI,CAACA,QAAQ,OAAO;IACpB,OAAO84C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAAwFP,UAAU,aAAa,GAAGugD,OAC1J,OACA;YACE/9C,KAAAA;YACA,eAAe2B;YACf5D,WAAW;YACXP,UAAU;gBACR,aAAa,GAAGsgD,MACd,UACA;oBACE9/C,SAAS+G;oBACThH,WAAW;oBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;wBAAE38C,MAAM;oBAAG;gBACjD;gBAEF4sC,SAAS,aAAa,GAAGgQ,MAAM,OAAO;oBAAE//C,WAAW;oBAA4BP,UAAU,aAAa,GAAGsgD,MACvG,OACA;wBACEx4B,KAAKwoB;wBACL/vC,WAAW;wBACXmoB,KAAK;oBACP;gBACA;gBACF,aAAa,GAAG43B,MAAM,MAAM;oBAAE//C,WAAW;oBAA6DP,UAAUD;gBAAM;gBACtH,aAAa,GAAGugD,MAAM,KAAK;oBAAE//C,WAAW;oBAAmEP,UAAUyhB;gBAAY;gBACjI,aAAa,GAAG6+B,MACd,UACA;oBACE9/C,SAASghD;oBACTjhD,WAAW;oBACXP,UAAUmZ,WAAW,YAAY,qBAAqBsnC;gBACxD;gBAEFC,YAAY,aAAa,GAAGJ,MAC1B,UACA;oBACE9/C,SAAS,SAATA;wBACEqgD,UAAU;wBACVD,mBAAAA,6BAAAA;wBACAr5C;oBACF;oBACAhH,WAAW;oBACXP,UAAU0gD;gBACZ;aAEH;QACH;IACA,IACFx4C,SAASG,IAAI;AAEjB;AACA,IAAIu5C,0BAA0B;QAC5Bt6C,eAAAA,QACAC,gBAAAA,SACAxH,cAAAA,OACA0hB,oBAAAA,aACA6uB,cAAAA,OACAmQ,kBAAAA,WACAC,iBAAAA,UACAC,gBAAAA,SACAC,eAAAA,QACAz8C,eAAAA;IAEA,IAAM09C,UAAU3B,SAAS;IACzB,IAA4BC,+BAAAA,WAAW,eAAhChnC,SAAqBgnC,gBAAbU,YAAaV;IAC5B,IAAM2B,gBAAgB;;gBAEZC,QAMCC;;;;;;;;;;wBANQ;;4BAAMhB,UAAUiB,YAAY,CAACC,YAAY,CAAC;gCACvDC,OAAO;4BACT;;;wBAFMJ,SAAS;wBAGflB,UAAU;wBACVF,oBAAAA,8BAAAA,QAAUoB;wBACVx6C;;;;;;wBACOy6C;wBACPI,QAAQC,KAAK,CAAC,iBAAiBL;wBAC/BnB,UAAU;wBACVD,mBAAAA,6BAAAA;;;;;;;;;;;QAEJ;;IACAX,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAMyT,UAAU,iBAACvU;gBACVq7C;YAAL,IAAI,GAACA,mBAAAA,QAAQ1uC,OAAO,cAAf0uC,uCAAAA,iBAAiB5tC,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACxC3M;YACF;QACF;QACAW,SAASC,gBAAgB,CAAC,SAAS4S;QACnC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,SAAS2S;;IACrD,GAAG;QAACzT;QAAQC;KAAQ;IACpB,IAAI,CAACD,QAAQ,OAAO;IACpB,OAAO84C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAA2FP,UAAU,aAAa,GAAGugD,OAC7J,OACA;YACE/9C,KAAKq/C;YACL,eAAe19C;YACf3D,SAAS,SAATA,QAAUgG;uBAAMA,EAAEC,eAAe;;YACjClG,WAAW;YACXP,UAAU;gBACR,aAAa,GAAGsgD,MACd,UACA;oBACE9/C,SAAS+G;oBACThH,WAAW;oBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;wBAAE38C,MAAM;oBAAG;gBACjD;gBAEF4sC,SAAS,aAAa,GAAGgQ,MAAM,OAAO;oBAAE//C,WAAW;oBAA4BP,UAAU,aAAa,GAAGsgD,MACvG,OACA;wBACEx4B,KAAKwoB;wBACL5nB,KAAK;wBACLnoB,WAAW;oBACb;gBACA;gBACF,aAAa,GAAG+/C,MAAM,MAAM;oBAAE//C,WAAW;oBAA6DP,UAAUD;gBAAM;gBACtH,aAAa,GAAGugD,MAAM,KAAK;oBAAE//C,WAAW;oBAAmEP,UAAUyhB;gBAAY;gBACjI,aAAa,GAAG6+B,MACd,UACA;oBACE9/C,SAASshD;oBACTvhD,WAAW;oBACXP,UAAUmZ,WAAW,YAAY,mBAAmBsnC;gBACtD;gBAEFC,YAAY,aAAa,GAAGJ,MAC1B,UACA;oBACE9/C,SAAS,SAATA;wBACEqgD,UAAU;wBACVD,mBAAAA,6BAAAA;wBACAr5C;oBACF;oBACAhH,WAAW;oBACXP,UAAU0gD;gBACZ;aAEH;QACH;IACA,IACFx4C,SAASG,IAAI;AAEjB;AACA,IAAIi6C,8BAA8B;QAChCh7C,eAAAA,QACAC,gBAAAA,SACAxH,cAAAA,OACA0hB,oBAAAA,aACA6uB,cAAAA,OACAmQ,kBAAAA,WACAC,iBAAAA,UACAC,gBAAAA,SACAC,eAAAA,QACAz8C,eAAAA;IAEA,IAAM09C,UAAU3B,SAAS;IACzB,IAA4BC,+BAAAA,WAAW,eAAhChnC,SAAqBgnC,gBAAbU,YAAaV;IAC5B,IAAMoC,aAAa;;gBAETR,QAMCC;;;;;;;;;;wBANQ;;4BAAMhB,UAAUiB,YAAY,CAACC,YAAY,CAAC;gCACvDM,OAAO;4BACT;;;wBAFMT,SAAS;wBAGflB,UAAU;wBACVF,oBAAAA,8BAAAA,QAAUoB;wBACVx6C;;;;;;wBACOy6C;wBACPI,QAAQC,KAAK,CAAC,qBAAqBL;wBACnCnB,UAAU;wBACVD,mBAAAA,6BAAAA;;;;;;;;;;;QAEJ;;IACAX,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAMyT,UAAU,iBAACvU;gBACVq7C;YAAL,IAAI,GAACA,mBAAAA,QAAQ1uC,OAAO,cAAf0uC,uCAAAA,iBAAiB5tC,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACxC3M;YACF;QACF;QACAW,SAASC,gBAAgB,CAAC,SAAS4S;QACnC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,SAAS2S;;IACrD,GAAG;QAACzT;QAAQC;KAAQ;IACpB,IAAI,CAACD,QAAQ,OAAO;IACpB,OAAO84C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAA2FP,UAAU,aAAa,GAAGugD,OAC7J,OACA;YACE/9C,KAAKq/C;YACL,eAAe19C;YACf3D,SAAS,SAATA,QAAUgG;uBAAMA,EAAEC,eAAe;;YACjClG,WAAW;YACXP,UAAU;gBACR,aAAa,GAAGsgD,MACd,UACA;oBACE9/C,SAAS+G;oBACThH,WAAW;oBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;wBAAE38C,MAAM;oBAAG;gBACjD;gBAEF4sC,SAAS,aAAa,GAAGgQ,MAAM,OAAO;oBAAE//C,WAAW;oBAA4BP,UAAU,aAAa,GAAGsgD,MACvG,OACA;wBACEx4B,KAAKwoB;wBACL5nB,KAAK;wBACLnoB,WAAW;oBACb;gBACA;gBACF,aAAa,GAAG+/C,MAAM,MAAM;oBAAE//C,WAAW;oBAA6DP,UAAUD;gBAAM;gBACtH,aAAa,GAAGugD,MAAM,KAAK;oBAAE//C,WAAW;oBAAmEP,UAAUyhB;gBAAY;gBACjI,aAAa,GAAG6+B,MACd,UACA;oBACE9/C,SAAS+hD;oBACThiD,WAAW;oBACXP,UAAUmZ,WAAW,YAAY,uBAAuBsnC;gBAC1D;gBAEFC,YAAY,aAAa,GAAGJ,MAC1B,UACA;oBACE9/C,SAAS,SAATA;wBACEqgD,UAAU;wBACVD,mBAAAA,6BAAAA;wBACAr5C;oBACF;oBACAhH,WAAW;oBACXP,UAAU0gD;gBACZ;aAEH;QACH;IACA,IACFx4C,SAASG,IAAI;AAEjB;AACA,IAAIo6C,sBAAsB;QACxBC,oBAAAA,aACA3iD,cAAAA,OACAoE,eAAAA,QACAsd,oBAAAA,aACAkhC,gBAAAA,SACAC,mBAAAA,qCACAC,WAAAA,0CAAY,0BACZC,yBAAAA,kBACAC,sBAAAA,eACAx7C,gBAAAA;IAEA,OAAO,aAAa,GAAGg5C,OACrB,OACA;QACE,eAAep8C;QACf5D,WAAW;QACXP,UAAU;YACR,aAAa,GAAGugD,OAAO,OAAO;gBAAEhgD,WAAW;gBAA4FP,UAAU;oBAC/I,aAAa,GAAGsgD,MAAM,MAAM;wBAAE//C,WAAW;wBAAsCP,UAAU0iD;oBAAY;oBACrGn7C,WAAW,aAAa,GAAG+4C,MACzB,UACA;wBACE9/C,SAAS+G;wBACThH,WAAW;wBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;4BAAE38C,MAAM;4BAAIU,OAAO;wBAAQ;oBACjE;iBAEH;YAAC;YACF,aAAa,GAAGm8C,OAAO,OAAO;gBAAEhgD,WAAW;gBAAaP,UAAU;oBAChE,aAAa,GAAGsgD,MAAM,MAAM;wBAAE//C,WAAW;wBAAiDP,UAAUD;oBAAM;oBAC1G,aAAa,GAAGugD,MAAM,KAAK;wBAAE//C,WAAW;wBAAmCP,UAAUyhB;oBAAY;oBACjGohC,aAAa,aAAa,GAAGvC,MAC3B,SACA;wBACE/5C,MAAM;wBACNmJ,aAAaozC;wBACbz5C,UAAU,SAAVA,SAAW7C;mCAAMu8C,0BAAAA,oCAAAA,cAAgBv8C,EAAE0N,MAAM,CAACrF,KAAK;;wBAC/CtO,WAAW;oBACb;oBAEF,aAAa,GAAG+/C,MACd,UACA;wBACE9/C,SAASoiD;wBACTriD,WAAW;wBACXP,UAAU2iD;oBACZ;iBAEH;YAAC;SACH;IACH;AAEJ;AACA,IAAIK,uBAAuB;QACzB17C,YAAAA,QACAC,aAAAA,SACA07C,aAAAA,SACAC,kBAAAA,cACAN,gBAAAA,YACAz+C,YAAAA,QACGg/C;;;;;;;;IAEH,IAAM3gD,MAAM09C,SAAS;IACrB,IAA0BC,+BAAAA,WAAW,SAA9BiD,QAAmBjD,gBAAZkD,WAAYlD;IAC1BF,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAMyT,UAAU,iBAACvU;gBACVhE;YAAL,IAAI,GAACA,eAAAA,IAAI2Q,OAAO,cAAX3Q,mCAAAA,aAAayR,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACpC3M;YACF;QACF;QACAW,SAASC,gBAAgB,CAAC,SAAS4S;QACnC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,SAAS2S;;IACrD,GAAG;QAACzT;QAAQC;KAAQ;IACpB,IAAI,CAACD,QAAQ,OAAO;IACpB,IAAMg8C,YAAY;QAChBV,uBAAAA,iCAAAA,WAAaQ;QACb,IAAIH,SAAS;YACXC,eAAez0C,OAAOpO,IAAI,CAAC4iD,SAAS,YAAYx0C,OAAOqyC,QAAQ,CAACyC,IAAI,GAAGN;QACzE;QACA17C;IACF;IACA,OAAO64C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAA2FP,UAAU,aAAa,GAAGsgD,MAC7J,OACA;YACE99C,KAAAA;YACA,eAAe2B;YACf3D,SAAS,SAATA,QAAUgG;uBAAMA,EAAEC,eAAe;;YACjCzG,UAAU,aAAa,GAAGsgD,MACxBmC,qBACA,wCACKU;gBACH57C,SAAAA;gBACAw7C,eAAeM;gBACfT,YAAYU;;QAGlB;IACA,IACFp7C,SAASG,IAAI;AAEjB;AACA,IAAIm7C,8BAA8B;QAChCl8C,eAAAA,QACAnD,eAAAA,QACAoD,gBAAAA,SACAm7C,oBAAAA,aACA3iD,cAAAA,OACA0hB,oBAAAA,aACAkhC,gBAAAA,SACAC,mBAAAA,YACAK,gBAAAA,qCACAC,cAAAA,gDAAe,2DACfO,gBAAAA,oDAAiB,+BACjBC,sBAAAA;IAEA,IAAMlhD,MAAM09C,SAAS;IACrBD,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAMyT,UAAU,iBAACvU;gBACVhE;YAAL,IAAI,GAACA,eAAAA,IAAI2Q,OAAO,cAAX3Q,mCAAAA,aAAayR,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACpC3M;YACF;QACF;QACAW,SAASC,gBAAgB,CAAC,SAAS4S;QACnC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,SAAS2S;;IACrD,GAAG;QAACzT;QAAQC;KAAQ;IACpB,IAAI,CAACD,QAAQ,OAAO;IACpB,IAAMg8C,YAAY;QAChBV,uBAAAA,iCAAAA;QACA,IAAIK,SAAS;YACXC,eAAez0C,OAAOpO,IAAI,CAAC4iD,SAAS,YAAYx0C,OAAOqyC,QAAQ,CAACyC,IAAI,GAAGN;QACzE;QACA17C;IACF;IACA,OAAO64C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAA+FP,UAAU,aAAa,GAAGugD,OACjK,OACA;YACE,eAAep8C;YACf3B,KAAAA;YACAhC,SAAS,SAATA,QAAUgG;uBAAMA,EAAEC,eAAe;;YACjClG,WAAW;YACXP,UAAU;gBACR,aAAa,GAAGugD,OAAO,OAAO;oBAAEhgD,WAAW;oBAA+CP,UAAU;wBAClG,aAAa,GAAGsgD,MAAM,MAAM;4BAAE//C,WAAW;4BAA2BP,UAAU0iD;wBAAY;wBAC1F,aAAa,GAAGpC,MACd,UACA;4BACE9/C,SAAS+G;4BACThH,WAAW;4BACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;gCAAE38C,MAAM;gCAAIU,OAAO;4BAAQ;wBACjE;qBAEH;gBAAC;gBACF,aAAa,GAAGm8C,OAAO,OAAO;oBAAEhgD,WAAW;oBAAcP,UAAU;wBACjE,aAAa,GAAGsgD,MAAM,MAAM;4BAAE//C,WAAW;4BAAkCP,UAAUD;wBAAM;wBAC3F,aAAa,GAAGugD,MAAM,KAAK;4BAAE//C,WAAW;4BAA4CP,UAAUyhB;wBAAY;wBAC1G,aAAa,GAAG6+B,MACd,UACA;4BACE9/C,SAAS8iD;4BACT/iD,WAAW;4BACXP,UAAU2iD;wBACZ;qBAEH;gBAAC;gBACFc,kBAAkBC,iBAAiB,aAAa,GAAGpD,MACjD,OACA;oBACEx4B,KAAK47B;oBACLh7B,KAAK;oBACLnoB,WAAW;gBACb;aAEH;QACH;IACA,IACF2H,SAASG,IAAI;AAEjB;AACA,IAAIs7C,8BAA8B;QAChCr8C,eAAAA,QACAnD,eAAAA,QACAoD,gBAAAA,SACAxH,cAAAA,OACA0hB,oBAAAA,aACAkhC,gBAAAA,SACAC,mBAAAA,yCACAgB,eAAAA,kDAAgB,gCAChBC,yBAAAA,kBACAC,iBAAAA,UACAb,gBAAAA,qCACAC,cAAAA,gDAAe;IAEf,IAAM1gD,MAAM09C,SAAS;IACrBD,YAAY;QACV,IAAI,CAAC34C,QAAQ;QACb,IAAMyT,UAAU,iBAACvU;gBACVhE;YAAL,IAAI,GAACA,eAAAA,IAAI2Q,OAAO,cAAX3Q,mCAAAA,aAAayR,QAAQ,CAACzN,EAAE0N,MAAM,IAAG;gBACpC3M;YACF;QACF;QACAW,SAASC,gBAAgB,CAAC,SAAS4S;QACnC,OAAO;mBAAM7S,SAASE,mBAAmB,CAAC,SAAS2S;;IACrD,GAAG;QAACzT;QAAQC;KAAQ;IACpB,IAAI,CAACD,QAAQ,OAAO;IACpB,IAAMg8C,YAAY;QAChBV,uBAAAA,iCAAAA;QACA,IAAIK,SAAS;YACXC,eAAez0C,OAAOpO,IAAI,CAAC4iD,SAAS,YAAYx0C,OAAOqyC,QAAQ,CAACyC,IAAI,GAAGN;QACzE;QACA17C;IACF;IACA,OAAO64C,cACL,aAAa,GAAGE,MAAM,OAAO;QAAE//C,WAAW;QAA+FP,UAAU,aAAa,GAAGugD,OACjK,OACA;YACE,eAAep8C;YACf3B,KAAAA;YACAhC,SAAS,SAATA,QAAUgG;uBAAMA,EAAEC,eAAe;;YACjClG,WAAW;YACXP,UAAU;gBACR,aAAa,GAAGsgD,MACd,UACA;oBACE9/C,SAAS+G;oBACThH,WAAW;oBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;wBAAE38C,MAAM;oBAAG;gBACjD;gBAEFogD,YAAY,aAAa,GAAGxD,MAAM,OAAO;oBAAE//C,WAAW;oBAA4BP,UAAU,aAAa,GAAGsgD,MAC1G,OACA;wBACEx4B,KAAKg8B;wBACLp7B,KAAK;wBACLnoB,WAAW;oBACb;gBACA;gBACF,aAAa,GAAG+/C,MAAM,MAAM;oBAAE//C,WAAW;oBAAiDP,UAAUD;gBAAM;gBAC1G,aAAa,GAAGugD,MAAM,KAAK;oBAAE//C,WAAW;oBAAmCP,UAAUyhB;gBAAY;gBACjG,aAAa,GAAG6+B,MACd,UACA;oBACE9/C,SAAS8iD;oBACT/iD,WAAW;oBACXP,UAAU2iD;gBACZ;gBAEFiB,iBAAiB,aAAa,GAAGtD,MAC/B,UACA;oBACE9/C,SAAS,SAATA;wBACEqjD,6BAAAA,uCAAAA;wBACAt8C;oBACF;oBACAhH,WAAW;oBACXP,UAAU4jD;gBACZ;aAEH;QACH;IACA,IACF17C,SAASG,IAAI;AAEjB;AACA,IAAI07C,eAAe;IACjBC,MAAM;IACNC,SAAS;IACTC,QAAQ;IACRC,SAAS;IACTh9B,KAAK;AACP;AACA,IAAIi9B,yBAAyB;QAC3BrkD,cAAAA,OACAoE,eAAAA,QACAsd,oBAAAA,aACAhW,aAAAA,MACAipC,gBAAAA,SACA2P,kBAAAA,WACAC,qBAAAA,cACAC,kBAAAA,WACAC,0BAAAA,mBACAC,wBAAAA,iBACAC,4BAAAA,qBACAC,0BAAAA,mBACAp9C,gBAAAA;IAEA,OAAO,aAAa,GAAGg5C,OACrB,OACA;QACE,eAAep8C;QACf5D,WAAW;QACXP,UAAU;YACR,aAAa,GAAGugD,OAAO,OAAO;gBAAEhgD,WAAW;gBAAoEP,UAAU;oBACvH00C,UAAU,aAAa,GAAG4L,MAAM,OAAO;wBAAE//C,WAAW;wBAA+GP,UAAU,aAAa,GAAGsgD,MAC3L,OACA;4BACEx4B,KAAK4sB;4BACLhsB,KAAK;4BACLnoB,WAAW;wBACb;oBACA,KAAK8jD,aAAa,aAAa,GAAG/D,MAClC,OACA;wBACEx4B,KAAKu8B;wBACL37B,KAAK;wBACLnoB,WAAW;oBACb;oBAEF+jD,gBAAgBC,aAAa,aAAa,GAAGjE,MAC3C,OACA;wBACE//C,WAAW;wBACXmC,OAAO;4BAAEgC,YAAYq/C,YAAY,CAACQ,UAAU;wBAAC;wBAC7CvkD,UAAU,aAAa,GAAGsgD,MACxB,OACA;4BACEx4B,KAAKw8B;4BACL57B,KAAK;4BACLnoB,WAAW;wBACb;oBAEJ;iBAEH;YAAC;YACF,aAAa,GAAGggD,OAAO,OAAO;gBAAEhgD,WAAW;gBAAUP,UAAU;oBAC7D,aAAa,GAAGugD,OAAO,OAAO;wBAAEhgD,WAAW;wBAAgCP,UAAU;4BACnF,aAAa,GAAGsgD,MAAM,KAAK;gCAAE//C,WAAW;gCAA2DP,UAAUD;4BAAM;4BACnH0L,QAAQ,aAAa,GAAG60C,MAAM,QAAQ;gCAAE//C,WAAW;gCAA+DP,UAAUyL;4BAAK;yBAClI;oBAAC;oBACFgW,eAAe,aAAa,GAAG6+B,MAAM,KAAK;wBAAE//C,WAAW;wBAAkDP,UAAUyhB;oBAAY;oBAC9H+iC,CAAAA,qBAAqBE,mBAAkB,KAAM,aAAa,GAAGnE,OAAO,OAAO;wBAAEhgD,WAAW;wBAAmCP,UAAU;4BACpIwkD,qBAAqB,aAAa,GAAGlE,MACnC,UACA;gCACE9/C,SAASikD;gCACTlkD,WAAW;gCACXP,UAAUwkD;4BACZ;4BAEFE,uBAAuB,aAAa,GAAGpE,MACrC,UACA;gCACE9/C,SAASmkD;gCACTpkD,WAAW;gCACXP,UAAU0kD;4BACZ;yBAEH;oBAAC;iBACH;YAAC;YACFn9C,WAAW,aAAa,GAAG+4C,MACzB,UACA;gBACE9/C,SAAS+G;gBACThH,WAAW;gBACXP,UAAU,aAAa,GAAGsgD,MAAMD,IAAI;oBAAE38C,MAAM;gBAAG;YACjD;SAEH;IACH;AAEJ;AACA,SACE5D,SAAS,EACTs4C,iBAAiB,EACjBS,eAAe,EACfb,eAAe,EACft/B,wBAAwB,EACxBC,sBAAsB,EACtBC,MAAM,EACN8/B,WAAW,EACXE,iBAAiB,EACjB3+B,cAAc,EACdrV,UAAUggD,YAAY,EACtBj2C,YAAYk2C,cAAc,EAC1BjD,uBAAuB,EACvBz8C,QAAQ2/C,UAAU,EAClB9gB,0BAA0B,EAC1BwR,qBAAqBuP,uBAAuB,EAC5CjmC,YAAYkmC,cAAc,EAC1Bn8C,iBAAiBo8C,mBAAmB,EACpC/7C,SAASg8C,WAAW,EACpB1E,yBAAyB,EACzB8B,2BAA2B,EAC3Bj7C,SAAS89C,WAAW,EACpBf,sBAAsB,EACtBpB,wBAAwBoC,uBAAuB,EAC/C5B,+BAA+B6B,uBAAuB,EACtD1B,+BAA+B2B,uBAAuB,EACtD7N,qBAAqB8N,uBAAuB,EAC5CtqC,YAAY,EACZu+B,sBAAsBgM,wBAAwB,EAC9CxqC,YAAY,EACZW,mBAAmB8pC,qBAAqB,EACxC9hC,SAAS+hC,WAAW,EACpBxkC,gBAAgBykC,kBAAkB,EAClC7K,eAAe8K,iBAAiB,EAChC/R,gBAAgBgS,kBAAkB,EAClCxV,YAAYyV,aAAa,EACzBjO,OAAO,GACP","sourcesContent":["var __getOwnPropNames = Object.getOwnPropertyNames;\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\n\n// src/assets/icons/down_4.png\nvar require_down_4 = __commonJS({\n \"src/assets/icons/down_4.png\"(exports, module) {\n module.exports = \"./down_4-X52SETBJ.png\";\n }\n});\n\n// src/assets/icons/performance-peak-icon.png\nvar require_performance_peak_icon = __commonJS({\n \"src/assets/icons/performance-peak-icon.png\"(exports, module) {\n module.exports = \"./performance-peak-icon-QXFZTZUB.png\";\n }\n});\n\n// src/assets/icons/calendar-3.png\nvar require_calendar_3 = __commonJS({\n \"src/assets/icons/calendar-3.png\"(exports, module) {\n module.exports = \"./calendar-3-SFJ52KIR.png\";\n }\n});\n\n// src/assets/icons/increase.png\nvar require_increase = __commonJS({\n \"src/assets/icons/increase.png\"(exports, module) {\n module.exports = \"./increase-QM2727GU.png\";\n }\n});\n\n// src/assets/icons/decrease.png\nvar require_decrease = __commonJS({\n \"src/assets/icons/decrease.png\"(exports, module) {\n module.exports = \"./decrease-SMWSBU7A.png\";\n }\n});\n\n// src/assets/icons/check-mark_1.png\nvar require_check_mark_1 = __commonJS({\n \"src/assets/icons/check-mark_1.png\"(exports, module) {\n module.exports = \"./check-mark_1-6GNY6HFY.png\";\n }\n});\n\n// src/assets/icons/danger_1.png\nvar require_danger_1 = __commonJS({\n \"src/assets/icons/danger_1.png\"(exports, module) {\n module.exports = \"./danger_1-LUIFNS2J.png\";\n }\n});\n\n// src/assets/icons/notification_1.png\nvar require_notification_1 = __commonJS({\n \"src/assets/icons/notification_1.png\"(exports, module) {\n module.exports = \"./notification_1-K2I7DVDH.png\";\n }\n});\n\n// src/assets/icons/close.png\nvar require_close = __commonJS({\n \"src/assets/icons/close.png\"(exports, module) {\n module.exports = \"./close-EEDOIEDC.png\";\n }\n});\n\n// src/assets/icons/check-mark_2.png\nvar require_check_mark_2 = __commonJS({\n \"src/assets/icons/check-mark_2.png\"(exports, module) {\n module.exports = \"./check-mark_2-YWM2KQA2.png\";\n }\n});\n\n// src/assets/icons/danger_2.png\nvar require_danger_2 = __commonJS({\n \"src/assets/icons/danger_2.png\"(exports, module) {\n module.exports = \"./danger_2-YTNTGWQA.png\";\n }\n});\n\n// src/assets/icons/danger_1_1.png\nvar require_danger_1_1 = __commonJS({\n \"src/assets/icons/danger_1_1.png\"(exports, module) {\n module.exports = \"./danger_1_1-PHLDGYEA.png\";\n }\n});\n\n// src/assets/icons/notification_2.png\nvar require_notification_2 = __commonJS({\n \"src/assets/icons/notification_2.png\"(exports, module) {\n module.exports = \"./notification_2-KFI6MN7T.png\";\n }\n});\n\n// src/assets/icons/close_copy_1.png\nvar require_close_copy_1 = __commonJS({\n \"src/assets/icons/close_copy_1.png\"(exports, module) {\n module.exports = \"./close_copy_1-PFFNUORV.png\";\n }\n});\n\n// src/components/accordion.tsx\nimport { useState } from \"react\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nfunction Accordion({\n title,\n children,\n defaultOpen = false,\n accordionTestId,\n headerTestId,\n contentTestId\n}) {\n const [open, setOpen] = useState(defaultOpen);\n return /* @__PURE__ */ jsxs(\n \"div\",\n {\n \"data-testid\": accordionTestId,\n className: \"\\r\\n w-full\\r\\n max-w-full\\r\\n border border-slate-200\\r\\n overflow-hidden\\r\\n bg-white\\r\\n rounded-xl\\r\\n sm:max-w-[684px]\\r\\n \",\n children: [\n /* @__PURE__ */ jsxs(\n \"button\",\n {\n \"data-testid\": headerTestId,\n onClick: () => setOpen(!open),\n className: `\n w-full\n flex items-center justify-between\n font-medium\n border-none\n cursor-pointer\n min-h-[52px]\n px-4\n transition\n hover:opacity-95\n focus:outline-none\n sm:min-h-[60px]\n sm:px-6\n ${open ? \"text-white bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\" : \"text-slate-800 bg-white\"}\n `,\n children: [\n /* @__PURE__ */ jsx(\"span\", { children: title }),\n /* @__PURE__ */ jsx(\"span\", { className: \"inline-flex items-center justify-center\", children: open ? /* @__PURE__ */ jsx(ChevronUp, { className: \"w-5 h-5\" }) : /* @__PURE__ */ jsx(ChevronDown, { className: \"w-5 h-5\" }) })\n ]\n }\n ),\n open && /* @__PURE__ */ jsx(\n \"div\",\n {\n \"data-testid\": contentTestId,\n className: \"\\r\\n w-full\\r\\n overflow-hidden\\r\\n px-6 py-4\\r\\n text-slate-600\\r\\n border-t border-slate-200\\r\\n \",\n children: /* @__PURE__ */ jsx(\"div\", { className: \"w-full box-border\", children })\n }\n )\n ]\n }\n );\n}\nAccordion.displayName = \"Accordion\";\n\n// src/components/Button.tsx\nimport React2 from \"react\";\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar parseHeightWidth = (className) => {\n if (!className) return \"36px\";\n const match = className.match(/[hw]-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"36px\";\n};\nvar parseGap = (gapClass) => {\n if (!gapClass) return \"8px\";\n const match = gapClass.match(/gap-(\\d+)/);\n if (match) {\n return `${parseInt(match[1]) * 4}px`;\n }\n return \"8px\";\n};\nvar getColorByName = (name) => {\n const colors = {\n blue: \"#3b82f6\",\n green: \"#10b981\",\n red: \"#ef4444\",\n orange: \"#f59e0b\",\n purple: \"#8b5cf6\",\n yellow: \"#f59e0b\",\n pink: \"#ec4899\",\n teal: \"#14b8a6\",\n indigo: \"#6366f1\",\n primary: \"linear-gradient(to right, rgba(23, 97, 163, 1), rgba(77, 175, 131, 1))\",\n secondary: \"#6b7280\",\n success: \"#10b981\",\n danger: \"#ef4444\",\n warning: \"#f59e0b\",\n info: \"#3b82f6\"\n };\n return colors[name?.toLowerCase()] || colors.primary;\n};\nvar IconButtonGroup = React2.forwardRef(\n ({ className, direction = \"row\", gapClass, children, ...props }, ref) => {\n const gap = parseGap(gapClass);\n return /* @__PURE__ */ jsx2(\n \"div\",\n {\n ref,\n style: { gap },\n className: `inline-flex ${direction === \"col\" ? \"flex-col items-start\" : \"flex-row items-center\"} ${className || \"\"}`,\n ...props,\n children\n }\n );\n }\n);\nIconButtonGroup.displayName = \"IconButtonGroup\";\nvar variantClasses = {\n // ✅ Fixed: was from-[31761A3] — missing #\n default: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white rounded-md hover:opacity-90 active:opacity-95\",\n destructive: \"bg-[#ef4444] text-white rounded-md hover:bg-[#dc2626] active:bg-[#b91c1c]\",\n outline: \"border border-[#e5e7eb] bg-white text-[#374151] rounded-md hover:bg-[#f9fafb] hover:border-[#d1d5db] active:bg-[#f3f4f6]\",\n // ✅ Fixed: was bg-gray-200 text-gray-700 — now matches CSS-in-JS blue\n secondary: \"bg-[#3b82f6] text-white rounded-md hover:bg-[#2563eb] active:bg-[#1d4ed8]\",\n ghost: \"bg-transparent text-[#374151] rounded-md hover:bg-[#f3f4f6] active:bg-[#e5e7eb]\",\n link: \"bg-transparent text-[#2563eb] underline underline-offset-4 p-0 h-auto hover:no-underline hover:text-[#1d4ed8]\",\n danger: \"bg-transparent text-[#ef4444] rounded-md hover:bg-[#ef44441a] active:bg-[#ef444433]\",\n dotted: \"relative [background:linear-gradient(to_right,#1e73be,#28a97d)] text-white rounded-lg border-2 border-dashed border-white/50 hover:opacity-90\",\n pill: \"[background:linear-gradient(to_right,#1761A3,#4DAF83)] text-white rounded-full hover:opacity-90 active:opacity-95\"\n};\nvar sizeClasses = {\n sm: \"h-[36px] px-3 text-[13px]\",\n md: \"h-[40px] px-4 text-[14px]\",\n lg: \"h-[44px] px-6 text-[15px]\",\n icon: \"h-[40px] w-[40px]\",\n default: \"h-[40px] px-4\"\n};\nvar ButtonBase = React2.forwardRef(\n ({\n className,\n variant = \"default\",\n size = \"default\",\n name,\n iconButton = false,\n iconButtonHeightClass,\n iconButtonWidthClass,\n iconButtonBgClass,\n iconButtonRadiusClass,\n iconButtonBgPaddingClass,\n iconButtonHoverBgClass,\n iconButtonHoverIntensity,\n children,\n testId,\n style,\n ...props\n }, ref) => {\n const color = getColorByName(name);\n if (iconButton) {\n const height = parseHeightWidth(iconButtonHeightClass);\n const width = parseHeightWidth(iconButtonWidthClass);\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n style: {\n height,\n width,\n minHeight: height,\n minWidth: width,\n color: color.startsWith(\"linear\") ? \"white\" : color,\n ...style\n },\n className: `\n inline-flex items-center justify-center\n transition-all duration-200\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-white\n ${iconButtonRadiusClass || \"rounded-md\"}\n ${iconButtonBgPaddingClass || \"p-[2px]\"}\n ${iconButtonBgClass || \"bg-white/10\"}\n hover:opacity-85 active:opacity-70\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n return /* @__PURE__ */ jsx2(\n \"button\",\n {\n ref,\n \"data-testid\": testId,\n style: name ? {\n background: color,\n color: \"white\",\n borderRadius: variant === \"pill\" ? \"9999px\" : \"6px\",\n ...style\n } : style,\n className: `\n inline-flex items-center justify-center\n whitespace-nowrap\n font-medium\n text-[14px]\n transition-all duration-200\n cursor-pointer\n focus-visible:outline focus-visible:outline-2 focus-visible:outline-blue-400\n disabled:pointer-events-none disabled:opacity-50\n ${!name ? variantClasses[variant] : \"\"}\n ${sizeClasses[size]}\n ${className || \"\"}\n `,\n ...props,\n children\n }\n );\n }\n);\nButtonBase.displayName = \"Button\";\nvar Button = ButtonBase;\nButton.IconButtonGroup = IconButtonGroup;\n\n// src/components/card.tsx\nimport React3, { useState as useState2 } from \"react\";\nimport { ChevronDown as ChevronDown2, ChevronUp as ChevronUp2 } from \"lucide-react\";\nimport { jsx as jsx3, jsxs as jsxs2 } from \"react/jsx-runtime\";\nvar Card = React3.forwardRef(\n ({\n title,\n cardContent,\n cardBackContent,\n collapsible = false,\n flippable = false,\n backgroundColor,\n borderRadius,\n variant = \"default\",\n size = \"default\",\n className = \"\",\n children,\n defaultOpen = true,\n onFlip,\n style,\n testId,\n ...props\n }, ref) => {\n const [open, setOpen] = useState2(defaultOpen);\n const [isFlipped, setIsFlipped] = useState2(false);\n const contentId = React3.useId();\n const handleFlip = () => {\n if (!flippable) return;\n const newState = !isFlipped;\n setIsFlipped(newState);\n onFlip?.(newState);\n };\n const mainContent = cardContent || children;\n const variantStyles = {\n default: \"bg-white text-slate-800 border border-slate-200 hover:shadow-xl\",\n elevated: \"bg-white border border-transparent shadow-md\",\n outlined: \"bg-slate-50 border border-slate-200\",\n subtle: \"bg-slate-50 border border-transparent\",\n figma: \"border border-[#1761A3] shadow-[0_4px_4px_rgba(0,0,0,0.25)]\"\n };\n const sizeStyles = {\n sm: \"p-4\",\n default: \"p-6\",\n lg: \"p-8\",\n figma: \"w-full max-w-full p-5 box-border\"\n };\n return /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: flippable ? \"perspective-[1000px]\" : \"\",\n onClick: flippable ? handleFlip : void 0,\n children: /* @__PURE__ */ jsxs2(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: `\n rounded-[14px]\n transition-all duration-300 ease-in-out\n shadow-[0_4px_4px_rgba(0,0,0,0.25)]\n ${variantStyles[variant]}\n ${sizeStyles[size]}\n ${flippable ? \"relative cursor-pointer transform-style-preserve-3d transition-transform duration-700 ease-in-out\" : \"\"}\n ${isFlipped ? \"rotate-y-180\" : \"\"}\n ${className}\n `,\n style: {\n backgroundColor: variant !== \"figma\" && backgroundColor ? backgroundColor : variant === \"figma\" ? backgroundColor || \"rgba(77,175,131,0.10)\" : void 0,\n borderRadius: borderRadius || \"14px\",\n ...style\n },\n ...props,\n children: [\n /* @__PURE__ */ jsxs2(\"div\", { className: flippable ? \"backface-hidden\" : \"\", children: [\n title && /* @__PURE__ */ jsxs2(\n \"div\",\n {\n className: `flex items-center justify-between ${open && mainContent ? \"mb-4\" : \"\"}`,\n children: [\n /* @__PURE__ */ jsx3(\"h4\", { className: \"text-xl font-semibold text-slate-800 leading-7\", children: title }),\n collapsible && /* @__PURE__ */ jsx3(\n \"button\",\n {\n type: \"button\",\n onClick: (e) => {\n if (flippable) e.stopPropagation();\n setOpen((p) => !p);\n },\n \"aria-label\": open ? \"Hide content\" : \"Show content\",\n \"aria-expanded\": open,\n \"aria-controls\": contentId,\n className: \"\\r\\n z-10 flex items-center justify-center\\r\\n w-8 h-8 rounded-full\\r\\n bg-[#1761A3]\\r\\n hover:opacity-80\\r\\n focus:outline-none\\r\\n focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-[#1761A3]\\r\\n \",\n children: open ? /* @__PURE__ */ jsx3(ChevronUp2, { className: \"w-5 h-5 text-white\" }) : /* @__PURE__ */ jsx3(ChevronDown2, { className: \"w-5 h-5 text-white\" })\n }\n )\n ]\n }\n ),\n mainContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n id: contentId,\n className: `\n grid overflow-hidden\n transition-[grid-template-rows,opacity]duration-500 ease-in-out\n ${open ? \"grid-rows-[1fr] opacity-100\" : \"grid-rows-[0fr] opacity-0\"}\n `,\n children: /* @__PURE__ */ jsx3(\"div\", { className: \"overflow-hidden\", children: mainContent })\n }\n )\n ] }),\n flippable && cardBackContent && /* @__PURE__ */ jsx3(\n \"div\",\n {\n className: \"\\r\\n absolute inset-0\\r\\n w-full h-full\\r\\n p-6\\r\\n rotate-y-180\\r\\n backface-hidden\\r\\n \",\n children: cardBackContent\n }\n )\n ]\n }\n )\n }\n );\n }\n);\nCard.displayName = \"Card\";\n\n// src/components/Modal.tsx\nimport * as React4 from \"react\";\nimport { X } from \"lucide-react\";\nimport { Fragment, jsx as jsx4, jsxs as jsxs3 } from \"react/jsx-runtime\";\nvar MODAL_WIDTH_MAP = {\n sm: \"360px\",\n default: \"562px\",\n md: \"720px\",\n lg: \"760px\",\n xl: \"800px\"\n};\nvar getPositionClass = (position) => {\n switch (position) {\n case \"top-left\":\n return \"items-start justify-start\";\n case \"top-right\":\n return \"items-start justify-end\";\n case \"top-center\":\n return \"items-start justify-center\";\n case \"bottom-left\":\n return \"items-end justify-start\";\n case \"bottom-right\":\n return \"items-end justify-end\";\n case \"bottom-center\":\n return \"items-end justify-center\";\n case \"center-left\":\n return \"items-center justify-start\";\n case \"center-right\":\n return \"items-center justify-end\";\n default:\n return \"items-center justify-center\";\n }\n};\nfunction Modal({\n testId,\n isOpen,\n onClose,\n title,\n subtitle,\n children,\n className = \"\",\n width: customWidth,\n height,\n margin,\n primaryAction,\n secondaryAction,\n headerIcon,\n showDivider = true,\n position = \"center\",\n size = \"default\"\n}) {\n const width = customWidth ?? MODAL_WIDTH_MAP[size];\n React4.useEffect(() => {\n if (!isOpen) return;\n const onKey = (e) => e.key === \"Escape\" && onClose();\n document.addEventListener(\"keydown\", onKey);\n return () => document.removeEventListener(\"keydown\", onKey);\n }, [isOpen, onClose]);\n React4.useEffect(() => {\n document.body.style.overflow = isOpen ? \"hidden\" : \"unset\";\n return () => {\n document.body.style.overflow = \"unset\";\n };\n }, [isOpen]);\n if (!isOpen) return null;\n return /* @__PURE__ */ jsxs3(Fragment, { children: [\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-overlay` : void 0,\n onClick: onClose,\n className: \"fixed inset-0 bg-black/40 z-[9998] animate-[fadeIn_.2s_ease-out]\"\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n className: `fixed inset-0 z-[9999] pointer-events-none flex p-4 ${getPositionClass(\n position\n )}`,\n children: /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"dialog\",\n \"aria-modal\": \"true\",\n onClick: (e) => e.stopPropagation(),\n style: {\n width: typeof width === \"number\" ? `${width}px` : width,\n height: height ?? (position.includes(\"left\") || position.includes(\"right\") ? \"90vh\" : \"auto\"),\n margin: typeof margin === \"number\" ? `${margin}px` : margin\n },\n className: `pointer-events-auto relative bg-white border border-gray-200 rounded-lg shadow-[0px_4px_24px_rgba(0,0,0,0.15)] flex flex-col animate-[scaleIn_.2s_ease-out] ${!position.includes(\"left\") && !position.includes(\"right\") ? \"max-h-[90vh]\" : \"\"} ${className}`,\n children: [\n /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-header` : void 0,\n className: \"px-6 py-4 flex items-center justify-between border-b border-gray-200\",\n children: [\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex items-center gap-3 flex-1\", children: [\n headerIcon && /* @__PURE__ */ jsx4(\"div\", { children: headerIcon }),\n /* @__PURE__ */ jsxs3(\"div\", { className: \"flex-1\", children: [\n title && /* @__PURE__ */ jsx4(\n \"h3\",\n {\n \"data-testid\": testId ? `${testId}-title` : void 0,\n className: \"text-[#333] font-semibold text-[16px]\",\n children: title\n }\n ),\n subtitle && /* @__PURE__ */ jsx4(\n \"p\",\n {\n \"data-testid\": testId ? `${testId}-subtitle` : void 0,\n className: \"text-sm text-gray-500 mt-1\",\n children: subtitle\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-close-btn` : void 0,\n onClick: onClose,\n \"aria-label\": \"Close dialog\",\n className: \" p-1 text-gray-400 hover:text-gray-600 flex items-center justify-center transition-colors\",\n children: /* @__PURE__ */ jsx4(X, { size: 20, strokeWidth: 2 })\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx4(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-body` : void 0,\n className: \"flex-grow overflow-y-auto custom-scrollbar\",\n children\n }\n ),\n (primaryAction || secondaryAction) && /* @__PURE__ */ jsxs3(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-footer` : void 0,\n className: \"px-6 py-4 flex justify-center gap-3 border-t border-gray-200\",\n children: [\n secondaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-secondary-btn` : void 0,\n onClick: secondaryAction.onClick,\n className: \"min-w-[140px] h-[36px] px-4 rounded-md border border-[#1761A3] text-[#1761A3] bg-white text-sm font-medium hover:bg-gray-50 focus:ring-2 focus:ring-[#1761A3]/20\",\n children: secondaryAction.label ?? \"Cancel\"\n }\n ),\n primaryAction && /* @__PURE__ */ jsx4(\n \"button\",\n {\n \"data-testid\": testId ? `${testId}-primary-btn` : void 0,\n onClick: primaryAction.onClick,\n disabled: primaryAction.disabled,\n className: `min-w-[140px] h-[36px] px-4 rounded-md text-white text-sm font-medium ${primaryAction.disabled ? \"bg-blue-300 cursor-not-allowed\" : \"bg-[#1761A3] hover:bg-[#134a7a]\"} focus:ring-2 focus:ring-[#1761A3]/30`,\n children: primaryAction.label ?? \"Save\"\n }\n )\n ]\n }\n )\n ]\n }\n )\n }\n )\n ] });\n}\nModal.displayName = \"Modal\";\n\n// src/components/FormContainer.tsx\nimport { jsx as jsx5 } from \"react/jsx-runtime\";\nvar FormContainer = ({\n children,\n onSubmit,\n style,\n testId,\n className = \"\"\n}) => {\n return /* @__PURE__ */ jsx5(\n \"form\",\n {\n \"data-testid\": testId,\n onSubmit,\n style,\n className: `\n form-container\n flex flex-col gap-4\n w-full max-w-[560px] min-w-0\n mx-auto\n p-4 max-[480px]:p-3\n bg-white\n shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)]\n rounded-lg\n box-border\n ${className}\n `,\n children\n }\n );\n};\nFormContainer.displayName = \"FormContainer\";\n\n// src/components/Input.tsx\nimport React5 from \"react\";\nimport { jsx as jsx6, jsxs as jsxs4 } from \"react/jsx-runtime\";\nvar Input = React5.forwardRef(\n ({\n hasError = false,\n errorMessage = \"\",\n className = \"\",\n onChange,\n children,\n testId,\n ...props\n }, ref) => {\n const handleChange = (e) => {\n if (props.disabled) return;\n onChange?.(e);\n };\n return /* @__PURE__ */ jsxs4(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex flex-col w-full mb-4\",\n children: [\n /* @__PURE__ */ jsx6(\n \"input\",\n {\n ref,\n onChange: handleChange,\n \"data-testid\": testId ? `${testId}-input` : void 0,\n className: `\n w-full max-w-full min-w-0\n h-[44px]\n px-3\n text-base\n rounded-md\n border\n outline-none\n box-border\n transition-all duration-200\n\n ${hasError ? \"border-red-500 focus:border-red-600 focus:ring-2 focus:ring-red-100\" : \"border-[#D9D9D9] focus:border-blue-500 focus:ring-2 focus:ring-blue-100 hover:border-gray-400 focus:border-blue-500\"}\n\n disabled:bg-gray-100\n disabled:text-gray-400\n disabled:border-gray-200\n disabled:cursor-not-allowed\n\n file:py-2 file:px-3 file:cursor-pointer\n\n placeholder:text-gray-400\n\n ${className}\n `,\n ...props\n }\n ),\n hasError && errorMessage && /* @__PURE__ */ jsx6(\n \"span\",\n {\n \"data-testid\": testId ? `${testId}-error` : void 0,\n className: \"text-red-500 text-sm mt-1 min-h-[1.25rem] block\",\n children: errorMessage\n }\n )\n ]\n }\n );\n }\n);\nInput.displayName = \"Input\";\n\n// src/components/Filter.tsx\nimport { useState as useState4, useEffect as useEffect3, useRef as useRef2 } from \"react\";\nimport { X as X2, ChevronDown as ChevronDown3 } from \"lucide-react\";\nimport { createPortal } from \"react-dom\";\n\n// src/components/Calendar.tsx\nimport { useState as useState3, useEffect as useEffect2, useRef } from \"react\";\nimport { HiOutlineClock, HiChevronDown, HiChevronLeft, HiChevronRight } from \"react-icons/hi\";\nimport { HiCalendarDays } from \"react-icons/hi2\";\nimport { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs5 } from \"react/jsx-runtime\";\nvar convertToDateString = (date) => {\n if (!date) return \"\";\n const year = date.year;\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n return `${year}-${month}-${day}`;\n};\nvar isSameDate = (date1, date2) => {\n if (!date1 || !date2) return false;\n return date1.year === date2.year && date1.month === date2.month && date1.day === date2.day;\n};\nvar formatDate = (date) => {\n if (!date) return \"\";\n const month = String(date.month + 1).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n return `${month}-${day}-${year}`;\n};\nvar formatDateWithFormat = (date, format) => {\n if (!date) return \"\";\n const monthNum = date.month + 1;\n const month = String(monthNum).padStart(2, \"0\");\n const day = String(date.day).padStart(2, \"0\");\n const year = String(date.year);\n const monthNames = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\n const monthAbbr = monthNames[date.month];\n if (format === \"none\") {\n return `${month}-${day}-${year}`;\n }\n switch (format) {\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"DD/MM/YYYY\":\n return `${day}/${month}/${year}`;\n case \"YYYY/MM/DD\":\n return `${year}/${month}/${day}`;\n case \"MMM/DD/YYYY\":\n return `${monthAbbr}/${day}/${year}`;\n case \"DD/MMM/YYYY\":\n return `${day}/${monthAbbr}/${year}`;\n case \"YYYY/MMM/DD\":\n return `${year}/${monthAbbr}/${day}`;\n case \"MMM DD, YYYY\":\n return `${monthAbbr} ${day}, ${year}`;\n case \"DD MMM YYYY\":\n return `${day} ${monthAbbr} ${year}`;\n case \"YYYY MMM DD\":\n return `${year} ${monthAbbr} ${day}`;\n case \"MM-DD-YYYY\":\n return `${month}-${day}-${year}`;\n case \"DD-MM-YYYY\":\n return `${day}-${month}-${year}`;\n case \"YYYY-MM-DD\":\n return `${year}-${month}-${day}`;\n case \"MMM-DD-YYYY\":\n return `${monthAbbr}-${day}-${year}`;\n case \"DD-MMM-YYYY\":\n return `${day}-${monthAbbr}-${year}`;\n case \"YYYY-MMM-DD\":\n return `${year}-${monthAbbr}-${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n case \"MM.DD.YYYY\":\n return `${month}.${day}.${year}`;\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n default:\n return `${month}-${day}-${year}`;\n }\n};\nvar formatTime = (time, format = \"12h\") => {\n if (!time) return \"\";\n if (format === \"24h\") {\n let hour24 = time.hour;\n if (time.period === \"PM\" && time.hour !== 12) {\n hour24 = time.hour + 12;\n } else if (time.period === \"AM\" && time.hour === 12) {\n hour24 = 0;\n }\n const hour2 = String(hour24).padStart(2, \"0\");\n const minute2 = String(time.minute).padStart(2, \"0\");\n return `${hour2}:${minute2}`;\n }\n const hour = String(time.hour).padStart(2, \"0\");\n const minute = String(time.minute).padStart(2, \"0\");\n return `${hour}:${minute} ${time.period}`;\n};\nvar getDaysInMonth = (year, monthIndex) => {\n return new Date(year, monthIndex + 1, 0).getDate();\n};\nvar getFirstDayOfMonth = (year, monthIndex) => {\n return new Date(year, monthIndex, 1).getDay();\n};\nvar getMonthName = (monthIndex) => {\n return new Date(2024, monthIndex, 1).toLocaleDateString(\"en-US\", {\n month: \"long\"\n });\n};\nvar DATE_FORMAT_OPTIONS = [\n \"none\",\n \"MM/DD/YYYY\",\n \"DD/MM/YYYY\",\n \"YYYY/MM/DD\",\n \"MMM/DD/YYYY\",\n \"DD/MMM/YYYY\",\n \"YYYY/MMM/DD\",\n \"MMM DD, YYYY\",\n \"DD MMM YYYY\",\n \"YYYY MMM DD\",\n \"MM-DD-YYYY\",\n \"DD-MM-YYYY\",\n \"YYYY-MM-DD\",\n \"MMM-DD-YYYY\",\n \"DD-MMM-YYYY\",\n \"YYYY-MMM-DD\",\n \"DD.MM.YYYY\",\n \"MM.DD.YYYY\",\n \"YYYY.MM.DD\"\n];\nvar TIME_ZONE_OPTIONS = [\n \"none\",\n \"UTC\",\n \"GMT\",\n \"EST\",\n \"EDT\",\n \"CST\",\n \"CDT\",\n \"MST\",\n \"MDT\",\n \"PST\",\n \"PDT\",\n \"IST\",\n \"JST\",\n \"KST\",\n \"AEST\",\n \"AEDT\",\n \"NZST\",\n \"NZDT\",\n \"CET\",\n \"CEST\",\n \"BST\",\n \"AST\",\n \"HST\",\n \"AKST\",\n \"AKDT\",\n \"SST\",\n \"NST\",\n \"WET\",\n \"WEST\",\n \"EET\",\n \"EEST\",\n \"MSK\",\n \"HKT\",\n \"SGT\",\n \"PKT\",\n \"BDT\",\n \"AWST\",\n \"ACST\",\n \"ACDT\",\n \"NFT\"\n];\nvar compareInternalDates = (a, b) => {\n if (a.year !== b.year) return a.year - b.year;\n if (a.monthIndex !== b.monthIndex) return a.monthIndex - b.monthIndex;\n return a.day - b.day;\n};\nvar addDaysInternal = (start, daysToAdd) => {\n let y = start.year;\n let m = start.monthIndex;\n let d = start.day + daysToAdd;\n while (true) {\n const dim = getDaysInMonth(y, m);\n if (d <= dim) break;\n d -= dim;\n m += 1;\n if (m > 11) {\n m = 0;\n y += 1;\n }\n }\n return { year: y, monthIndex: m, day: d };\n};\nvar isBlockedDateHelper = (date, config) => {\n if (!config || config.days <= 0) return false;\n const startInternal = {\n year: config.startDate.year,\n monthIndex: config.startDate.month,\n day: config.startDate.day\n };\n const endInternal = addDaysInternal(startInternal, config.days - 1);\n const currentInternal = {\n year: date.year,\n monthIndex: date.month,\n day: date.day\n };\n const afterOrOnStart = compareInternalDates(currentInternal, startInternal) >= 0;\n const beforeOrOnEnd = compareInternalDates(currentInternal, endInternal) <= 0;\n return afterOrOnStart && beforeOrOnEnd;\n};\nvar getLocalTimeZone = () => {\n const timeZoneString = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const date = /* @__PURE__ */ new Date();\n const shortTimeZone = date.toLocaleTimeString(\"en-us\", { timeZoneName: \"short\" }).split(\" \")[2];\n return shortTimeZone || timeZoneString;\n};\nvar SIZE_SCALES = {\n \"small\": 0.65,\n \"medium\": 0.8,\n \"large\": 0.9,\n \"extra-large\": 1\n};\nvar getDeviceScale = () => {\n if (typeof window === \"undefined\") return 1;\n const width = window.innerWidth;\n if (width < 640) return 0.7;\n if (width < 1024) return 0.85;\n return 1;\n};\nvar Calendar = ({\n calendartestId,\n value,\n onChange,\n enableRangeSelection = false,\n rangeValue,\n onRangeChange,\n enableTimeSelection = false,\n timeValue,\n onTimeChange,\n showTimeFormatToggle = false,\n timeFormat = \"12h\",\n onTimeFormatChange,\n autoHide = false,\n showTodayButton = false,\n showClearButton = false,\n placeholder = \"Select date\",\n className,\n disabled = false,\n onShow,\n onHide,\n icon,\n showIcon = true,\n size = \"extra-large\",\n enableYearDropdown = false,\n showDateFormatSelector = false,\n dateFormat = \"none\",\n onDateFormatChange,\n showTimeZoneSelector = false,\n timeZoneFormat = \"none\",\n onTimeZoneFormatChange,\n blockDateConfig,\n previewTextStyles = {},\n globalTypography = {}\n}) => {\n const today = /* @__PURE__ */ new Date();\n const [currentYear, setCurrentYear] = useState3(\n value?.year || today.getFullYear()\n );\n const [currentMonth, setCurrentMonth] = useState3(\n value?.month ?? today.getMonth()\n );\n const [internalRangeValue, setInternalRangeValue] = useState3({ start: null, end: null });\n const [isOpen, setIsOpen] = useState3(false);\n const [activeField, setActiveField] = useState3(\"start\");\n const [showTimeSelector, setShowTimeSelector] = useState3(false);\n const [selectedHour, setSelectedHour] = useState3(timeValue?.hour || 12);\n const [selectedMinute, setSelectedMinute] = useState3(timeValue?.minute || 0);\n const [selectedPeriod, setSelectedPeriod] = useState3(timeValue?.period || \"AM\");\n const [internalTimeFormat, setInternalTimeFormat] = useState3(timeFormat);\n const [showYearDropdown, setShowYearDropdown] = useState3(false);\n const [internalDateFormat, setInternalDateFormat] = useState3(dateFormat);\n const [internalTimeZoneFormat, setInternalTimeZoneFormat] = useState3(timeZoneFormat);\n const [deviceScale, setDeviceScale] = useState3(1);\n const [positionAbove, setPositionAbove] = useState3(false);\n const containerRef = useRef(null);\n const calendarRef = useRef(null);\n const sizeScale = SIZE_SCALES[size];\n const scale = sizeScale * deviceScale;\n const finalRangeValue = rangeValue ?? internalRangeValue;\n const scaled = (value2) => Math.round(value2 * scale);\n useEffect2(() => {\n const handleResize = () => {\n setDeviceScale(getDeviceScale());\n };\n handleResize();\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n useEffect2(() => {\n if (!isOpen || !containerRef.current || !calendarRef.current) return;\n const calculatePosition = () => {\n const containerRect = containerRef.current?.getBoundingClientRect();\n const calendarHeight = calendarRef.current?.offsetHeight || 580 * scale;\n if (!containerRect) return;\n const spaceBelow = window.innerHeight - containerRect.bottom;\n const spaceAbove = containerRect.top;\n const bufferSpace = 20;\n if (spaceBelow < calendarHeight + bufferSpace && spaceAbove > calendarHeight + bufferSpace) {\n setPositionAbove(true);\n } else {\n setPositionAbove(false);\n }\n };\n calculatePosition();\n window.addEventListener(\"resize\", calculatePosition);\n window.addEventListener(\"scroll\", calculatePosition, true);\n return () => {\n window.removeEventListener(\"resize\", calculatePosition);\n window.removeEventListener(\"scroll\", calculatePosition, true);\n };\n }, [isOpen, scale]);\n useEffect2(() => {\n if (value) {\n setCurrentYear(value.year);\n setCurrentMonth(value.month);\n }\n }, [value]);\n useEffect2(() => {\n if (timeValue) {\n setSelectedHour(timeValue.hour);\n setSelectedMinute(timeValue.minute);\n setSelectedPeriod(timeValue.period);\n }\n }, [timeValue]);\n useEffect2(() => {\n setInternalTimeFormat(timeFormat);\n }, [timeFormat]);\n useEffect2(() => {\n setInternalDateFormat(dateFormat);\n }, [dateFormat]);\n useEffect2(() => {\n setInternalTimeZoneFormat(timeZoneFormat);\n }, [timeZoneFormat]);\n useEffect2(() => {\n const handleClickOutside = (event) => {\n if (containerRef.current && !containerRef.current.contains(event.target)) {\n if (isOpen) {\n setIsOpen(false);\n setShowTimeSelector(false);\n setShowYearDropdown(false);\n onHide?.();\n }\n }\n };\n if (isOpen) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpen, onHide]);\n const daysInMonth = getDaysInMonth(currentYear, currentMonth);\n const firstDay = getFirstDayOfMonth(currentYear, currentMonth);\n const monthName = getMonthName(currentMonth);\n const previousMonth = () => {\n if (currentMonth === 0) {\n setCurrentMonth(11);\n setCurrentYear(currentYear - 1);\n } else {\n setCurrentMonth(currentMonth - 1);\n }\n };\n const nextMonth = () => {\n if (currentMonth === 11) {\n setCurrentMonth(0);\n setCurrentYear(currentYear + 1);\n } else {\n setCurrentMonth(currentMonth + 1);\n }\n };\n const selectDate = (day) => {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n if (enableRangeSelection) {\n if (activeField === \"start\") {\n const newRange = { start: date, end: finalRangeValue?.end || null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n } else {\n const start = finalRangeValue?.start;\n if (start) {\n const startTime = new Date(start.year, start.month, start.day).getTime();\n const endTime = new Date(date.year, date.month, date.day).getTime();\n let newRange;\n if (endTime < startTime) {\n newRange = { start: date, end: start };\n } else {\n newRange = { start, end: date };\n }\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n } else {\n const newRange = { start: date, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"end\");\n }\n }\n } else {\n const dateString = convertToDateString(date);\n onChange?.(date, dateString);\n }\n if (showTimeSelector) {\n setShowTimeSelector(false);\n }\n if (autoHide && (!enableRangeSelection || enableRangeSelection && activeField === \"end\" && finalRangeValue?.start)) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const selectToday = () => {\n const todayDate = {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n };\n setCurrentYear(todayDate.year);\n setCurrentMonth(todayDate.month);\n const dateString = convertToDateString(todayDate);\n onChange?.(todayDate, dateString);\n if (enableTimeSelection && showTimeSelector) {\n const now = /* @__PURE__ */ new Date();\n const currentHour = now.getHours();\n const currentMinute = now.getMinutes();\n let hour12;\n let period;\n if (currentHour === 0) {\n hour12 = 12;\n period = \"AM\";\n } else if (currentHour === 12) {\n hour12 = 12;\n period = \"PM\";\n } else if (currentHour > 12) {\n hour12 = currentHour - 12;\n period = \"PM\";\n } else {\n hour12 = currentHour;\n period = \"AM\";\n }\n setSelectedHour(hour12);\n setSelectedMinute(currentMinute);\n setSelectedPeriod(period);\n onTimeChange?.({\n hour: hour12,\n minute: currentMinute,\n period\n });\n if (showTimeZoneSelector) {\n const localTZ = getLocalTimeZone();\n setInternalTimeZoneFormat(localTZ);\n onTimeZoneFormatChange?.(localTZ);\n }\n }\n if (autoHide) {\n setIsOpen(false);\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const clearDate = () => {\n if (enableRangeSelection) {\n const newRange = { start: null, end: null };\n if (!rangeValue) setInternalRangeValue(newRange);\n onRangeChange?.(newRange);\n setActiveField(\"start\");\n } else {\n onChange?.(null, \"\");\n }\n if (enableTimeSelection) {\n onTimeChange?.({ hour: 12, minute: 0, period: \"AM\" });\n setSelectedHour(12);\n setSelectedMinute(0);\n setSelectedPeriod(\"AM\");\n }\n };\n const toggleCalendar = () => {\n if (disabled) return;\n const newState = !isOpen;\n setIsOpen(newState);\n if (newState) {\n setShowTimeSelector(false);\n onShow?.();\n } else {\n setShowTimeSelector(false);\n onHide?.();\n }\n };\n const handleStartFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"start\");\n setShowTimeSelector(false);\n };\n const handleEndFieldClick = () => {\n if (!isOpen) {\n setIsOpen(true);\n onShow?.();\n }\n setActiveField(\"end\");\n setShowTimeSelector(false);\n };\n const handleChooseTimeClick = () => {\n setShowTimeSelector(!showTimeSelector);\n };\n const handleChooseDateClick = () => {\n setShowTimeSelector(false);\n };\n const handleTimeFormatToggle = () => {\n const newFormat = internalTimeFormat === \"12h\" ? \"24h\" : \"12h\";\n setInternalTimeFormat(newFormat);\n onTimeFormatChange?.(newFormat);\n };\n const handleTimeConfirm = () => {\n onTimeChange?.({\n hour: selectedHour,\n minute: selectedMinute,\n period: selectedPeriod\n });\n setShowTimeSelector(false);\n };\n const handleDateConfirm = () => {\n setIsOpen(false);\n onHide?.();\n };\n const handleMonthYearClick = () => {\n if (enableYearDropdown) {\n setShowYearDropdown(!showYearDropdown);\n }\n };\n const handleYearSelect = (year) => {\n setCurrentYear(year);\n setShowYearDropdown(false);\n };\n const renderDays = () => {\n const days = [];\n for (let i = 0; i < firstDay; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-start-${i}`\n )\n );\n }\n for (let day = 1; day <= daysInMonth; day++) {\n const date = {\n year: currentYear,\n month: currentMonth,\n day\n };\n const isSelected = enableRangeSelection ? isSameDate(finalRangeValue?.start, date) || isSameDate(finalRangeValue?.end, date) : isSameDate(value, date);\n const isInRange = enableRangeSelection && finalRangeValue?.start && finalRangeValue?.end ? (() => {\n const currentTime = new Date(date.year, date.month, date.day).getTime();\n const startTime = new Date(\n finalRangeValue.start.year,\n finalRangeValue.start.month,\n finalRangeValue.start.day\n ).getTime();\n const endTime = new Date(\n finalRangeValue.end.year,\n finalRangeValue.end.month,\n finalRangeValue.end.day\n ).getTime();\n return currentTime > startTime && currentTime < endTime;\n })() : false;\n const isToday = isSameDate(\n {\n year: today.getFullYear(),\n month: today.getMonth(),\n day: today.getDate()\n },\n date\n );\n const isBlocked = isBlockedDateHelper(date, blockDateConfig);\n days.push(\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n if (!isBlocked) selectDate(day);\n },\n disabled: isBlocked,\n className: `\n flex items-center justify-center rounded\n font-semibold transition-all\n ${isSelected ? \"text-white shadow\" : \"\"}\n ${!isSelected && isToday ? \"border-2 border-[#1761A3] text-[#1761A3]\" : \"\"}\n ${!isSelected && !isToday && !isInRange ? \"bg-[rgba(0,123,255,0.05)] text-gray-700\" : \"\"}\n ${isInRange && !isSelected ? \"bg-[rgba(23,97,163,0.15)] text-gray-700\" : \"\"}\n ${!isBlocked && !isSelected ? \"hover:bg-[rgba(23,97,163,0.1)]\" : \"\"}\n ${isBlocked ? \"opacity-40 cursor-not-allowed text-gray-400\" : \"cursor-pointer\"}\n `,\n style: {\n width: scale * 32,\n height: scale * 30,\n fontSize: scale * 14,\n background: isSelected ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : void 0\n },\n children: day\n },\n `current-${day}`\n )\n );\n }\n const totalCells = firstDay + daysInMonth;\n const remainingCells = totalCells % 7 === 0 ? 0 : 7 - totalCells % 7;\n for (let i = 0; i < remainingCells; i++) {\n days.push(\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n style: { width: `${scaled(44)}px`, height: `${scaled(44)}px` }\n },\n `empty-end-${i}`\n )\n );\n }\n return days;\n };\n const renderTimeSelector = () => {\n const hours12 = Array.from({ length: 12 }, (_, i) => i + 1);\n const hours24 = Array.from({ length: 24 }, (_, i) => i);\n const minutes = Array.from({ length: 60 }, (_, i) => i);\n return /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col h-full\", children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 overflow-y-auto\", children: [\n (showTimeFormatToggle || showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\"div\", { style: { marginBottom: scaled(12) }, children: [\n showTimeFormatToggle && /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scaled(12) }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black\",\n style: { fontSize: scale * 12 },\n children: \"Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-center\",\n style: { gap: scale * 8 },\n children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"12h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"12h\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n type: \"button\",\n onClick: handleTimeFormatToggle,\n role: \"switch\",\n \"aria-checked\": internalTimeFormat === \"24h\",\n className: \"relative inline-flex items-center rounded-lg transition-all\",\n style: {\n width: scale * 38,\n height: scale * 17,\n background: internalTimeFormat === \"24h\" ? \"#1761A3\" : \"#cbd5e1\"\n },\n children: /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"bg-white rounded-full shadow\",\n style: {\n width: scale * 13,\n height: scale * 13,\n transform: internalTimeFormat === \"24h\" ? `translateX(${scale * 23}px)` : `translateX(${scale * 2}px)`\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: `font-semibold ${internalTimeFormat === \"24h\" ? \"text-[#111827]\" : \"text-[#6b7280]\"}`,\n style: { fontSize: scale * 12 },\n children: \"24h\"\n }\n )\n ]\n }\n )\n ] }) }),\n (showDateFormatSelector || showTimeZoneSelector) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex items-start\",\n style: { gap: scale * 15 },\n children: [\n showDateFormatSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-center\",\n style: { fontSize: scale * 12 },\n children: \"Date Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalDateFormat,\n onChange: (e) => {\n setInternalDateFormat(e.target.value);\n onDateFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 36,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\",\n background: \"#F0F8FF\"\n },\n children: DATE_FORMAT_OPTIONS.map((format) => /* @__PURE__ */ jsx7(\"option\", { children: format }, format))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] }),\n showTimeZoneSelector && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col flex-1\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"font-semibold text-black text-right\",\n style: { fontSize: scale * 12 },\n children: \"Time Format\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"relative\",\n style: { height: scale * 40 },\n children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: internalTimeZoneFormat,\n onChange: (e) => {\n setInternalTimeZoneFormat(e.target.value);\n onTimeZoneFormatChange?.(e.target.value);\n },\n className: \"appearance-none border rounded-md font-semibold text-[#111827] cursor-pointer\",\n style: {\n height: \"100%\",\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32,\n border: \"1px solid rgba(77,175,131,0.25)\"\n },\n children: TIME_ZONE_OPTIONS.map((zone) => /* @__PURE__ */ jsx7(\"option\", { children: zone }, zone))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ]\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 16 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block text-[#374151] font-semibold\",\n style: {\n marginBottom: scale * 12,\n fontSize: scale * 12\n },\n children: \"Time Select\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedHour,\n onChange: (e) => setSelectedHour(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: (internalTimeFormat === \"24h\" ? hours24 : hours12).map((hour) => /* @__PURE__ */ jsx7(\"option\", { value: hour, children: String(hour).padStart(2, \"0\") }, hour))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsx7(\n \"select\",\n {\n value: selectedMinute,\n onChange: (e) => setSelectedMinute(Number(e.target.value)),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: minutes.map((minute) => /* @__PURE__ */ jsx7(\"option\", { value: minute, children: String(minute).padStart(2, \"0\") }, minute))\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] }),\n internalTimeFormat === \"12h\" && /* @__PURE__ */ jsxs5(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs5(\n \"select\",\n {\n value: selectedPeriod,\n onChange: (e) => setSelectedPeriod(e.target.value),\n className: \"appearance-none border rounded-md font-semibold cursor-pointer\",\n style: {\n height: scale * 40,\n width: \"100%\",\n fontSize: scale * 12,\n paddingLeft: scale * 16,\n paddingRight: scale * 32\n },\n children: [\n /* @__PURE__ */ jsx7(\"option\", { value: \"AM\", children: \"AM\" }),\n /* @__PURE__ */ jsx7(\"option\", { value: \"PM\", children: \"PM\" })\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n HiChevronDown,\n {\n className: \"absolute right-2 top-1/2 -translate-y-1/2 text-[#6b7280]\",\n style: { fontSize: scale * 18 }\n }\n )\n ] })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs5(\"div\", { style: { marginTop: scale * 12 }, children: [\n /* @__PURE__ */ jsx7(\n \"label\",\n {\n className: \"block font-semibold text-[#374151]\",\n style: {\n marginBottom: scale * 8,\n fontSize: scale * 12\n },\n children: \"Preview\"\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"p\",\n {\n className: \"text-[#1761A3] font-semibold\",\n style: { fontSize: scale * 12 },\n children: [\n formatDateWithFormat(value ?? null, internalDateFormat),\n \" \",\n formatTime(\n { hour: selectedHour, minute: selectedMinute, period: selectedPeriod },\n internalTimeFormat\n ),\n internalTimeZoneFormat !== \"none\" ? ` ${internalTimeZoneFormat}` : \"\"\n ]\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"border-t border-[#e5e7eb]\",\n style: { paddingTop: scale * 15 },\n children: [\n (showTodayButton || showClearButton) && /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 8\n },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(23,97,163,0.15)\",\n color: \"#1761A3\",\n gap: scale * 8,\n flex: !showClearButton ? \"none\" : 1\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Current Time\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"rounded-md font-semibold\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"rgba(239,68,68,0.15)\",\n color: \"#EF4444\",\n flex: !showTodayButton ? \"none\" : 1\n },\n children: \"Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleTimeConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n fontSize: scale * 12,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Time\"\n }\n )\n ]\n }\n )\n ] });\n };\n const defaultIcon = /* @__PURE__ */ jsx7(HiCalendarDays, { style: {\n width: `${scaled(14)}px`,\n height: `${scaled(14)}px`\n } });\n return /* @__PURE__ */ jsxs5(\n \"div\",\n {\n ref: containerRef,\n className: `relative ${className ?? \"\"}`,\n \"data-testid\": calendartestId,\n children: [\n /* @__PURE__ */ jsxs5(\"div\", { className: \"relative\", children: [\n showIcon && /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"pointer-events-none absolute inset-y-0 left-0 flex items-center\",\n style: { paddingLeft: scaled(12) },\n children: icon || defaultIcon\n }\n ),\n /* @__PURE__ */ jsx7(\n \"input\",\n {\n type: \"text\",\n readOnly: true,\n disabled,\n placeholder,\n onClick: toggleCalendar,\n value: enableRangeSelection && finalRangeValue ? finalRangeValue.start && finalRangeValue.end ? `${formatDate(finalRangeValue.start)} - ${formatDate(finalRangeValue.end)}` : finalRangeValue.start ? `${formatDate(finalRangeValue.start)} - ...` : \"\" : enableTimeSelection && value && timeValue ? `${formatDate(value)} ${formatTime(timeValue, internalTimeFormat)}` : formatDate(value ?? null),\n className: \"block w-full rounded-full border border-gray-300 bg-gray-50 font-semibold text-gray-900 shadow-sm transition-all focus:outline-none focus:border-blue-500\",\n style: {\n paddingTop: scale * 10,\n paddingBottom: scale * 10,\n paddingLeft: showIcon ? scale * 40 : scale * 12,\n paddingRight: scale * 12,\n fontSize: scale * 12,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n opacity: disabled ? 0.5 : 1\n }\n }\n )\n ] }),\n isOpen && /* @__PURE__ */ jsx7(\n \"div\",\n {\n ref: calendarRef,\n className: \"absolute left-0 z-[9999] overflow-hidden bg-white\",\n style: {\n width: scale * 406,\n borderRadius: scale * 22,\n border: \"1px solid #1761A3\",\n marginTop: positionAbove ? void 0 : scale * 8,\n marginBottom: positionAbove ? scale * 8 : void 0\n },\n children: /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex flex-col\",\n style: {\n padding: scale * 24,\n background: \"linear-gradient(to bottom, rgba(23,97,163,0.08), rgba(77,175,131,0.08))\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"font-bold text-gray-900\",\n style: {\n fontSize: scale * 20,\n marginBottom: scale * 20\n },\n children: enableRangeSelection ? \"Select Date Range\" : \"Select Date & Time\"\n }\n ),\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"flex\",\n style: {\n gap: scale * 12,\n marginBottom: scale * 24\n },\n children: enableRangeSelection ? /* @__PURE__ */ jsxs5(Fragment2, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleStartFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"start\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"start\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ jsx7(\n \"span\",\n {\n className: \"text-gray-500\",\n style: { fontSize: scale * 12 },\n children: \"From Date\"\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.start ? formatDate(finalRangeValue.start) : \"Select date\" })\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleEndFieldClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: activeField === \"end\" ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: activeField === \"end\" ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsxs5(\"div\", { className: \"flex flex-col items-start\", children: [\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 12 }, children: \"To Date\" }),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: finalRangeValue?.end ? formatDate(finalRangeValue.end) : \"Select date\" })\n ] })\n ]\n }\n )\n ] }) : /* @__PURE__ */ jsxs5(Fragment2, { children: [\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseDateClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: !showTimeSelector && enableTimeSelection ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: !showTimeSelector && enableTimeSelection ? \"white\" : \"#111827\"\n },\n children: [\n defaultIcon,\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: formatDate(value ?? null) || \"Choose Date\" })\n ]\n }\n ),\n enableTimeSelection && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n type: \"button\",\n onClick: handleChooseTimeClick,\n className: \"flex items-center rounded-md shadow-sm\",\n style: {\n height: scale * 40,\n padding: `0 ${scale * 16}px`,\n background: showTimeSelector ? \"linear-gradient(to bottom,#1761A3,#4DAF83)\" : \"white\",\n color: showTimeSelector ? \"white\" : \"#111827\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiOutlineClock,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n /* @__PURE__ */ jsx7(\"span\", { style: { fontSize: scale * 14 }, children: timeValue ? formatTime(\n timeValue,\n internalTimeFormat\n ) : \"Choose Time\" })\n ]\n }\n )\n ] })\n }\n ),\n /* @__PURE__ */ jsx7(\"div\", { style: { marginBottom: scale * 22 }, children: /* @__PURE__ */ jsxs5(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Previous month\",\n onClick: previousMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(\n HiChevronLeft,\n {\n style: {\n width: scaled(10),\n height: scaled(10)\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: handleMonthYearClick,\n className: \"font-bold text-[#1761A3]\",\n style: { fontSize: scale * 18 },\n children: [\n monthName,\n \" \",\n currentYear\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n \"aria-label\": \"Next month\",\n onClick: nextMonth,\n className: \"flex items-center justify-center rounded-md bg-[#1761A3] text-white\",\n style: {\n width: scale * 32,\n height: scale * 30\n },\n children: /* @__PURE__ */ jsx7(\n HiChevronRight,\n {\n style: {\n width: scaled(10),\n height: scaled(10)\n }\n }\n )\n }\n )\n ] }) }),\n /* @__PURE__ */ jsx7(\n \"div\",\n {\n className: \"grid grid-cols-7\",\n style: { gap: scale * 8 },\n children: renderDays()\n }\n ),\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"border-t border-gray-200\",\n style: { padding: scale * 8 },\n children: [\n /* @__PURE__ */ jsxs5(\n \"div\",\n {\n className: \"flex\",\n style: { gap: scale * 12 },\n children: [\n showTodayButton && /* @__PURE__ */ jsxs5(\n \"button\",\n {\n onClick: selectToday,\n className: \"flex items-center justify-center rounded-md font-semibold\",\n style: {\n height: scale * 38,\n background: \"rgba(23,97,163,0.15)\",\n color: \"#1761A3\"\n },\n children: [\n /* @__PURE__ */ jsx7(\n HiCalendarDays,\n {\n style: {\n width: scaled(14),\n height: scaled(14)\n }\n }\n ),\n \"Today\"\n ]\n }\n ),\n showClearButton && /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: clearDate,\n className: \"rounded-md font-semibold\",\n style: {\n height: scale * 38,\n background: \"rgba(239,68,68,0.15)\",\n color: \"#EF4444\"\n },\n children: \"Clear\"\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsx7(\n \"button\",\n {\n onClick: handleDateConfirm,\n className: \"w-full rounded-md font-semibold text-white\",\n style: {\n height: scale * 38,\n background: \"linear-gradient(to right,#1761A3,#4DAF83)\"\n },\n children: \"Confirm Date\"\n }\n )\n ]\n }\n )\n ]\n }\n )\n }\n )\n ]\n }\n );\n};\nCalendar.displayName = \"Calendar\";\n\n// src/components/Filter.tsx\nimport { Fragment as Fragment3, jsx as jsx8, jsxs as jsxs6 } from \"react/jsx-runtime\";\nvar DEFAULT_ACTIVITY_OPTIONS = [\n { label: \"Select Activity\", value: \"\" },\n { label: \"Activity List\", value: \"Activity List\" },\n { label: \"Login\", value: \"Login\" },\n { label: \"Update\", value: \"Update\" },\n { label: \"Delete\", value: \"Delete\" }\n];\nvar DEFAULT_STATUS_OPTIONS = [\n { label: \"Select Status\", value: \"\" },\n { label: \"Pending\", value: \"Pending\" },\n { label: \"Approved\", value: \"Approved\" },\n { label: \"Rejected\", value: \"Rejected\" }\n];\nvar Filter = ({\n onApply,\n onReset,\n activityOptions = DEFAULT_ACTIVITY_OPTIONS,\n statusOptions = DEFAULT_STATUS_OPTIONS,\n searchPlaceholder = \"Search...\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const [values, setValues] = useState4({\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n });\n const handleChange = (name, value) => {\n setValues((prev) => ({ ...prev, [name]: value }));\n };\n const resetField = (name) => {\n if (name === \"date\") {\n setValues((prev) => ({\n ...prev,\n date: { start: null, end: null }\n }));\n } else {\n setValues((prev) => ({ ...prev, [name]: \"\" }));\n }\n };\n const resetAll = () => {\n const newValues = {\n date: { start: null, end: null },\n activity: \"\",\n status: \"\",\n keyword: \"\"\n };\n setValues(newValues);\n if (onReset) onReset();\n else if (onApply) onApply(newValues);\n };\n const applyFilters = () => {\n if (onApply) onApply(values);\n setOpen(false);\n };\n return /* @__PURE__ */ jsxs6(\"div\", { className: \"relative\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-button` : void 0,\n onClick: () => setOpen((p) => !p),\n className: \"\\r\\n flex items-center gap-2\\r\\n px-5 py-3\\r\\n rounded-lg\\r\\n border border-[rgba(23,97,163,0.35)]\\r\\n bg-gradient-to-r from-[#f2fbf8] to-[#eef6fb]\\r\\n text-slate-900 font-semibold\\r\\n shadow-sm\\r\\n hover:from-[#e8f5f0] hover:to-[#e0f0f6]\\r\\n focus:outline-none focus:ring-2 focus:ring-[#1761a3]\\r\\n \",\n children: \"Filter\"\n }\n ),\n open && /* @__PURE__ */ jsx8(\n \"div\",\n {\n className: \"absolute right-0 mt-3 z-50\",\n \"data-testid\": testId ? `${testId}-model` : void 0,\n children: /* @__PURE__ */ jsxs6(\"div\", { className: \"w-[360px] bg-white border border-slate-200 rounded-lg shadow\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-3 border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsx8(\"h3\", { className: \"text-base font-semibold\", children: \"Add Filter\" }),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-close` : void 0,\n onClick: () => setOpen(false),\n className: \"w-8 h-8 rounded-full flex items-center justify-center bg-slate-100 hover:bg-slate-200\",\n children: /* @__PURE__ */ jsx8(X2, { className: \"w-4 h-4 text-slate-600\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx8(Section, { title: \"Date Range\", onReset: () => resetField(\"date\"), children: /* @__PURE__ */ jsx8(\n Calendar,\n {\n enableRangeSelection: true,\n rangeValue: values.date,\n onRangeChange: (range) => handleChange(\"date\", range),\n size: \"small\"\n }\n ) }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.activity,\n onChange: (e) => handleChange(\"activity\", e.target.value),\n children: activityOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsxs6(SelectWrapper, { children: [\n /* @__PURE__ */ jsx8(\n \"select\",\n {\n className: \"w-full appearance-none px-4 py-3 pr-10 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.status,\n onChange: (e) => handleChange(\"status\", e.target.value),\n children: statusOptions.map((opt) => /* @__PURE__ */ jsx8(\"option\", { value: opt.value, children: opt.label }, opt.value))\n }\n ),\n /* @__PURE__ */ jsx8(SelectIcon, {})\n ] }),\n /* @__PURE__ */ jsx8(\n \"input\",\n {\n className: \"w-full px-4 py-3 border border-slate-300 rounded-md text-sm focus:outline-none focus:ring-2 focus:ring-[#1761a3]\",\n value: values.keyword,\n placeholder: searchPlaceholder,\n onChange: (e) => handleChange(\"keyword\", e.target.value)\n }\n ),\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between items-center px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb]\", children: [\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-resetall` : void 0,\n onClick: resetAll,\n className: \"border border-[#1761a3] bg-[#f0f8ff] px-4 py-2 rounded-md hover:bg-[#e6f3ff]\",\n children: \"Reset all\"\n }\n ),\n /* @__PURE__ */ jsx8(\n \"button\",\n {\n type: \"button\",\n \"data-testid\": testId ? `${testId}-apply` : void 0,\n onClick: applyFilters,\n className: \"px-4 py-2 rounded-md text-white bg-gradient-to-r from-[#1761a3] to-[#4daf83] hover:opacity-90\",\n children: \"Apply Now\"\n }\n )\n ] })\n ] })\n }\n )\n ] });\n};\nvar Section = ({\n title,\n onReset,\n children\n}) => /* @__PURE__ */ jsxs6(\"div\", { className: \"px-5 py-4 bg-gradient-to-r from-[#f3fbf8] to-[#eef6fb] border-b border-[rgba(23,97,163,0.35)]\", children: [\n /* @__PURE__ */ jsxs6(\"div\", { className: \"flex justify-between mb-3\", children: [\n /* @__PURE__ */ jsx8(\"h6\", { className: \"font-semibold text-sm\", children: title }),\n /* @__PURE__ */ jsx8(\"button\", { type: \"button\", onClick: onReset, className: \"text-[#1761a3] text-sm font-semibold hover:opacity-80\", children: \"Reset\" })\n ] }),\n children\n] });\nvar SelectWrapper = ({ children }) => /* @__PURE__ */ jsx8(\"div\", { className: \"relative w-full mb-3\", children });\nvar SelectIcon = () => /* @__PURE__ */ jsx8(\"span\", { className: \"absolute right-3 top-1/2 -translate-y-1/2 text-slate-500 pointer-events-none\", children: /* @__PURE__ */ jsx8(ChevronDown3, { className: \"w-4 h-4\" }) });\nvar MahatiActivity = ({\n value,\n onChange,\n options = DEFAULT_ACTIVITY_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Activity\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) {\n return;\n }\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment3, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-option-${String(opt.value)}` : void 0,\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiStatus = ({\n value,\n onChange,\n options = DEFAULT_STATUS_OPTIONS,\n size = \"medium\",\n testId\n}) => {\n const [open, setOpen] = useState4(false);\n const triggerRef = useRef2(null);\n const dropdownRef = useRef2(null);\n const [pos, setPos] = useState4(null);\n const selectedLabel = options.find((o) => o.value == value)?.label || \"Select Status\";\n const updatePosition = () => {\n if (!triggerRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n setPos({\n top: rect.bottom + window.scrollY + 6,\n left: rect.left + window.scrollX,\n width: rect.width\n });\n };\n useEffect3(() => {\n if (!open) return;\n updatePosition();\n window.addEventListener(\"scroll\", updatePosition, true);\n window.addEventListener(\"resize\", updatePosition);\n return () => {\n window.removeEventListener(\"scroll\", updatePosition, true);\n window.removeEventListener(\"resize\", updatePosition);\n };\n }, [open]);\n useEffect3(() => {\n const handler = (e) => {\n if (triggerRef.current?.contains(e.target) || dropdownRef.current?.contains(e.target)) return;\n setOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n return /* @__PURE__ */ jsxs6(Fragment3, { children: [\n /* @__PURE__ */ jsxs6(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-trigger` : void 0,\n ref: triggerRef,\n onClick: () => setOpen((p) => !p),\n className: `\n w-full\n flex items-center justify-between\n bg-white\n border\n rounded-md\n cursor-pointer\n transition\n ${open ? \"border-[#1761a3] ring-2 ring-[#1761a333]\" : \"border-slate-300\"}\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `,\n children: [\n /* @__PURE__ */ jsx8(\"span\", { className: \"text-sm truncate\", children: selectedLabel }),\n /* @__PURE__ */ jsx8(\n ChevronDown3,\n {\n className: `w-4 h-4 text-slate-500 transition ${open ? \"rotate-180\" : \"\"}`\n }\n )\n ]\n }\n ),\n open && pos && createPortal(\n /* @__PURE__ */ jsx8(\n \"div\",\n {\n \"data-testid\": testId ? `${testId}-dropdown` : void 0,\n ref: dropdownRef,\n style: {\n top: pos.top,\n left: pos.left,\n width: pos.width,\n position: \"absolute\"\n },\n className: \"\\r\\n z-[9999]\\r\\n bg-white\\r\\n border border-slate-300\\r\\n rounded-md\\r\\n shadow-xl\\r\\n max-h-[240px]\\r\\n overflow-y-auto\\r\\n \",\n children: options.map((opt) => /* @__PURE__ */ jsx8(\n \"div\",\n {\n onClick: () => {\n onChange(opt.value);\n setOpen(false);\n },\n className: \"\\r\\n px-4 py-2\\r\\n text-sm\\r\\n cursor-pointer\\r\\n hover:bg-[#1761a3]\\r\\n hover:text-white\\r\\n \",\n children: opt.label\n },\n String(opt.value)\n ))\n }\n ),\n document.body\n )\n ] });\n};\nvar MahatiSearch = ({\n value,\n onChange,\n placeholder = \"Search...\",\n size = \"medium\",\n testId\n}) => /* @__PURE__ */ jsx8(\n \"input\",\n {\n \"data-testid\": testId,\n type: \"text\",\n value,\n placeholder,\n onChange: (e) => onChange(e.target.value),\n className: `\n w-full\n border border-slate-300\n rounded-md\n bg-white\n text-sm\n focus:outline-none\n focus:ring-2\n focus:ring-[#1761a3]\n ${size === \"small\" ? \"px-3 py-2\" : \"px-4 py-3\"}\n `\n }\n);\nFilter.displayName = \"Filter\";\nMahatiActivity.displayName = \"MahatiActivity\";\nMahatiStatus.displayName = \"MahatiStatus\";\nMahatiSearch.displayName = \"MahatiSearch\";\n\n// src/components/TabbedInterface.tsx\nimport { useEffect as useEffect4, useState as useState5 } from \"react\";\nimport { Fragment as Fragment4, jsx as jsx9, jsxs as jsxs7 } from \"react/jsx-runtime\";\nvar getFontFamily = (font) => {\n if (!font) return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\")\n return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\")\n return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nvar TabbedInterface = ({\n tabs,\n variant = \"underline\",\n defaultActiveTab = 0,\n onTabChange,\n draggableTabs = false,\n onReorderTabs,\n orientation = \"horizontal\",\n verticalPosition = \"left\",\n showTabCloseIconInHeader = false,\n tabCloseIconPosition = \"right\",\n tabCloseIconContent,\n onCloseTab,\n tabHeaderFont,\n tabContentFont,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) => {\n const [activeIndex, setActiveIndex] = useState5(defaultActiveTab);\n const [draggingIndex, setDraggingIndex] = useState5(null);\n const effectiveCloseIconContent = tabCloseIconContent ?? \"\\xD7\";\n const tabHeaderFontFamily = getFontFamily(tabHeaderFont);\n const tabContentFontFamily = getFontFamily(tabContentFont);\n useEffect4(() => {\n if (defaultActiveTab !== activeIndex) {\n setActiveIndex(defaultActiveTab);\n }\n }, [defaultActiveTab]);\n useEffect4(() => {\n if (!tabs.length) {\n setActiveIndex(0);\n return;\n }\n setActiveIndex(\n (prev) => prev < 0 ? 0 : prev >= tabs.length ? tabs.length - 1 : prev\n );\n }, [tabs.length]);\n const handleTabClick = (index) => {\n setActiveIndex(index);\n onTabChange?.(index);\n };\n const handleDragStart = (index) => {\n if (!draggableTabs) return;\n setDraggingIndex(index);\n };\n const handleDragOver = (event) => {\n if (!draggableTabs) return;\n event.preventDefault();\n };\n const handleDrop = (index) => {\n if (!draggableTabs) return;\n if (draggingIndex === null) {\n setDraggingIndex(null);\n return;\n }\n const fromIndex = draggingIndex;\n const toIndex = index;\n if (fromIndex === toIndex) {\n setDraggingIndex(null);\n return;\n }\n setActiveIndex((prevActive) => {\n let active = prevActive;\n if (active === fromIndex) return toIndex;\n if (fromIndex < toIndex) {\n if (active > fromIndex && active <= toIndex) return active - 1;\n } else if (fromIndex > toIndex) {\n if (active >= toIndex && active < fromIndex) return active + 1;\n }\n return active;\n });\n onReorderTabs?.(fromIndex, toIndex);\n setDraggingIndex(null);\n };\n const handleDragEnd = () => {\n if (!draggableTabs) return;\n setDraggingIndex(null);\n };\n const headerButtons = /* @__PURE__ */ jsx9(Fragment4, { children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n const isDragging = draggableTabs && draggingIndex === index;\n const showClose = showTabCloseIconInHeader && !!onCloseTab;\n const closeIcon2 = showClose ? /* @__PURE__ */ jsx9(\n \"span\",\n {\n role: \"button\",\n \"aria-label\": \"Close tab\",\n onClick: (e) => {\n e.stopPropagation();\n onCloseTab?.(index);\n },\n className: \"inline-flex h-6 w-6 items-center justify-center rounded-full text-lg font-bold hover:bg-[#e2e8f0] hover:text-[#334155]\",\n children: effectiveCloseIconContent\n }\n ) : null;\n return /* @__PURE__ */ jsxs7(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleTabClick(index),\n draggable: draggableTabs,\n onDragStart: () => handleDragStart(index),\n onDragOver: handleDragOver,\n onDrop: () => handleDrop(index),\n onDragEnd: handleDragEnd,\n className: `relative flex items-center px-4 py-2 text-sm font-semibold transition-all duration-300 select-none\n ${orientation === \"vertical\" ? \"text-left w-full\" : \"text-center\"}\n ${isDragging ? \"ring-2 ring-[#1761A3]\" : \"\"}\n ${variant === \"pill\" ? active ? \"rounded-full bg-[#1761A3] text-white shadow\" : \"rounded-full text-[#1761A3] hover:bg-[#1761A3]/10\" : variant === \"outline\" ? active ? \"rounded-md border-2 border-[#1761A3] bg-[#F3F8FF] text-[#1761A3]\" : \"rounded-md border-2 border-transparent text-slate-700 hover:border-slate-300\" : variant === \"filled\" ? active ? \"rounded-md bg-[#1761A3] text-white\" : \"rounded-md bg-[#EAF3FD] text-[#1761A3]\" : variant === \"gradient\" ? active ? \"rounded-md bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white\" : \"rounded-md bg-[#F0F4F8] text-[#1761A3]\" : variant === \"shadow\" ? active ? \"rounded-md bg-white text-[#1761A3] shadow-lg\" : \"rounded-md bg-[#F8FAFD]\" : variant === \"glass\" ? active ? \"rounded-md bg-[#1761A3]/40 text-white border border-white/30 backdrop-blur-[24px]\" : \"rounded-md bg-white/20 border border-white/30\" : variant === \"dark\" ? active ? \"text-blue-300 border-b-4 border-blue-400\" : \"text-slate-300 hover:text-blue-400\" : active ? \"text-[#1761A3]\" : \"text-slate-700 hover:text-[#1761A3]\"}`,\n children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs7(\"div\", { className: \"flex min-w-0 items-center gap-2\", children: [\n tabCloseIconPosition === \"left\" && closeIcon2,\n tab.icon && /* @__PURE__ */ jsx9(\"span\", { children: tab.icon }),\n /* @__PURE__ */ jsx9(\"span\", { className: \"truncate\", children: tab.label })\n ] }),\n tabCloseIconPosition === \"right\" && closeIcon2\n ] }),\n variant === \"underline\" && /* @__PURE__ */ jsx9(\n \"span\",\n {\n className: `absolute ${orientation === \"vertical\" ? \"left-0 top-0 h-full w-[3px]\" : \"bottom-[-2px] left-0 h-[3px] w-full\"}\n bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\n transition-transform duration-300\n ${active ? \"scale-x-100\" : \"scale-x-0\"}\n `\n }\n )\n ]\n },\n index\n );\n }) });\n const content = /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: \"relative min-h-[180px]\",\n style: { fontFamily: tabContentFontFamily },\n children: tabs.map((tab, index) => {\n const active = index === activeIndex;\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n className: `transition-opacity duration-300 ${active ? \"relative opacity-100\" : \"absolute inset-0 opacity-0 pointer-events-none\"}`,\n children: tab.content\n },\n index\n );\n })\n }\n );\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsxs7(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"mb-5 flex justify-around max-[600px]:flex-col max-[600px]:items-center\", children: headerButtons }),\n content\n ]\n }\n );\n }\n return /* @__PURE__ */ jsx9(\n \"div\",\n {\n \"data-testid\": testId,\n className: `w-full mx-auto rounded-xl border p-8 box-border transition-all duration-300 overflow-hidden\n ${variant === \"dark\" ? \"bg-[#45484f] border-slate-700 text-slate-100 shadow-lg\" : variant === \"glass\" ? \"bg-white/10 border-white/30 backdrop-blur-xl text-slate-900 shadow-lg\" : \"bg-white border-[#b8d1f3] text-slate-900 shadow-sm\"}`,\n children: verticalPosition === \"left\" ? /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[minmax(180px,220px)_1fr]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-r md:pr-4\", children: headerButtons }),\n /* @__PURE__ */ jsx9(\"div\", { children: content })\n ] }) : /* @__PURE__ */ jsxs7(\"div\", { className: \"grid gap-6 md:grid-cols-[1fr_minmax(180px,220px)]\", children: [\n /* @__PURE__ */ jsx9(\"div\", { children: content }),\n /* @__PURE__ */ jsx9(\"div\", { className: \"flex flex-col gap-2 border-b pb-3 md:border-b-0 md:border-l md:pl-4\", children: headerButtons })\n ] })\n }\n );\n};\nTabbedInterface.displayName = \"TabbedInterface\";\n\n// src/components/Dropdown.tsx\nimport { useState as useState6, useRef as useRef3, useEffect as useEffect5 } from \"react\";\nimport { jsx as jsx10, jsxs as jsxs8 } from \"react/jsx-runtime\";\nvar Dropdown = ({\n options,\n value,\n onSelect,\n variant = \"basic\",\n className = \"\",\n placeholder = \"Select an option\",\n disabled = false,\n testId\n}) => {\n const [open, setOpen] = useState6(false);\n const [internalSelected, setInternalSelected] = useState6(null);\n const dropdownRef = useRef3(null);\n const selectedOption = value !== void 0 ? options.find((opt) => opt.value === value) : internalSelected;\n useEffect5(() => {\n function handleClickOutside(event) {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setOpen(false);\n }\n }\n if (open) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [open]);\n const handleSelect = (option) => {\n if (disabled) return;\n if (value === void 0) setInternalSelected(option);\n onSelect(option.value);\n setOpen(false);\n };\n const handleButtonClick = () => {\n if (!disabled) {\n setOpen(!open);\n }\n };\n return /* @__PURE__ */ jsxs8(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative w-full max-w-[14rem] min-w-0 box-border ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n /* @__PURE__ */ jsx10(\n \"button\",\n {\n onClick: handleButtonClick,\n disabled,\n type: \"button\",\n className: `\n w-full text-left px-4 py-2 rounded-[0.375rem] text-[1rem] leading-[1.5]\n transition-all duration-200 ease-in-out border-none\n ${disabled ? \"bg-[#e5e7eb] text-[#9ca3af] cursor-not-allowed opacity-50\" : \"\"}\n\n ${!disabled && {\n basic: \"bg-[#2563eb] text-white hover:bg-[#1d4ed8]\",\n outline: \"border border-[#2563eb] bg-transparent text-[#2563eb] hover:bg-[#eff6ff]\",\n pill: \"bg-[#2563eb] text-white rounded-full hover:bg-[#1d4ed8]\",\n dark: \"bg-[#1f2937] text-white hover:bg-[#374151]\",\n underline: \"border-none border-b-2 border-[#3b82f6] rounded-none bg-transparent text-[#1d4ed8] hover:bg-[#eff6ff]\",\n shadow: \"bg-white text-[#374151] border border-[#e5e7eb] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1),0_2px_4px_-1px_rgba(0,0,0,0.06)] hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\",\n glass: \"bg-[rgba(255,255,255,0.2)] [backdrop-filter:blur(12px)][-webkit-backdrop-filter:blur(12px)] text-white border border-[rgba(255,255,255,0.4)] hover:bg-[rgba(255,255,255,0.3)]\",\n gradient: \"bg-gradient-to-r from-[#3b82f6] to-[#a855f7] text-white hover:opacity-90\"\n }[variant]}\n `,\n children: selectedOption?.key || placeholder\n }\n ),\n open && !disabled && /* @__PURE__ */ jsx10(\n \"div\",\n {\n className: `\n absolute mt-2 w-full rounded-[0.375rem] border border-[#e5e7eb]\n shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]\n max-h-[16rem] overflow-y-auto scrollbar-thin scrollbar-thumb-slate-300 scrollbar-track-100 z-20\n ${variant === \"glass\" ? \"bg-[rgba(255,255,255,0.9)] backdrop-blur-[12px] border-[rgba(255,255,255,0.6)]\" : \"bg-white\"}\n `,\n children: options.map((opt, index) => /* @__PURE__ */ jsx10(\n \"div\",\n {\n onClick: () => handleSelect(opt),\n className: `\n px-4 py-2 cursor-pointer text-[#374151]\n transition-colors duration-150\n ${variant === \"glass\" ? \"hover:bg-[rgba(59,130,246,0.1)]\" : \"hover:bg-[#f3f4f6]\"}\n ${index === 0 ? \"rounded-t-[0.375rem]\" : \"\"}\n ${index === options.length - 1 ? \"rounded-b-[0.375rem]\" : \"\"}\n `,\n children: opt.key\n },\n opt.value\n ))\n }\n )\n ]\n }\n );\n};\nDropdown.displayName = \"Dropdown\";\n\n// src/components/TableWithTab.tsx\nimport React10, { useEffect as useEffect6, useState as useState7 } from \"react\";\nimport { XMarkIcon } from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment5, jsx as jsx11, jsxs as jsxs9 } from \"react/jsx-runtime\";\nvar getFontFamily2 = (font) => {\n if (!font)\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n const lower = font.toLowerCase().trim();\n if (lower === \"sans\" || lower === \"sans-serif\")\n return \"'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\";\n if (lower === \"serif\") return \"Georgia, 'Times New Roman', serif\";\n if (lower === \"mono\" || lower === \"monospace\")\n return \"'Courier New', Courier, monospace\";\n if (lower === \"poppins\") return \"'Poppins', sans-serif\";\n return `'${font}', sans-serif`;\n};\nfunction renderCellValue(value) {\n if (React10.isValidElement(value)) return value;\n if (value === null || value === void 0) {\n return /* @__PURE__ */ jsx11(\"span\", { className: \"text-slate-300\", children: \"-\" });\n }\n if (Array.isArray(value)) {\n if (value.some((v) => React10.isValidElement(v))) return /* @__PURE__ */ jsx11(Fragment5, { children: value });\n return value.join(\", \");\n }\n if (value instanceof Date) return value.toLocaleString();\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (typeof value === \"number\") return value.toString();\n if (typeof value === \"object\") return JSON.stringify(value);\n return String(value);\n}\nfunction DefaultTabContent({\n headers,\n row\n}) {\n return /* @__PURE__ */ jsx11(\"div\", { className: \"flex flex-col gap-2\", children: headers.map((h) => /* @__PURE__ */ jsxs9(\n \"div\",\n {\n className: \"flex flex-col sm:flex-row sm:items-center gap-1 rounded-lg bg-white p-3 text-sm shadow-sm\",\n children: [\n /* @__PURE__ */ jsx11(\"span\", { className: \"w-full sm:w-48 text-xs font-semibold uppercase tracking-wide text-slate-500\", children: h.label }),\n /* @__PURE__ */ jsx11(\"span\", { className: \"flex-1 break-words text-slate-800\", children: renderCellValue(row[h.key]) })\n ]\n },\n h.key\n )) });\n}\nfunction TableWithTab({\n tableProps,\n tabProps,\n rearrange = false,\n getRowId,\n renderTabContent,\n onRowOpenInTab,\n title,\n description,\n tabLabelKey,\n sectionTitleFont,\n sectionDescriptionFont,\n testId\n}) {\n const { headers, data } = tableProps;\n const [tabs, setTabs] = useState7([]);\n const labelColumnKey = tabLabelKey ?? headers[0]?.key;\n const sectionTitleFontFamily = getFontFamily2(sectionTitleFont);\n const sectionDescriptionFontFamily = getFontFamily2(sectionDescriptionFont);\n useEffect6(() => {\n if (!tabs.length) return;\n setTabs(\n (prev) => prev.map((t) => {\n const row = t.row;\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : t.id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${t.rowIndex + 1}`;\n return { ...t, label };\n })\n );\n }, [tabLabelKey, headers]);\n const handleRowClick = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n setTabs((prev) => {\n const existsIndex = prev.findIndex((t) => t.id === id);\n if (existsIndex !== -1) {\n const next2 = [...prev];\n next2.splice(existsIndex, 1);\n return next2;\n }\n const rawLabel = labelColumnKey && row[labelColumnKey] !== void 0 ? row[labelColumnKey] : id;\n const label = typeof rawLabel === \"string\" || typeof rawLabel === \"number\" ? String(rawLabel) : `Row ${index + 1}`;\n const next = [...prev, { id, label, row, rowIndex: index }];\n onRowOpenInTab?.(row);\n return next;\n });\n };\n const handleCloseTab = (id) => {\n setTabs((prev) => prev.filter((t) => t.id !== id));\n };\n const isRowSelected = (row, index) => {\n const id = getRowId ? getRowId(row, index) : index;\n return tabs.some((t) => t.id === id);\n };\n const handleReorderTabs = (fromIndex, toIndex) => {\n setTabs((prev) => {\n const next = [...prev];\n const [moved] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, moved);\n return next;\n });\n };\n const tabbedInterfaceTabs = tabs.map((t) => ({\n label: t.label,\n content: /* @__PURE__ */ jsxs9(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsx11(\"div\", { className: \"flex justify-end\", children: /* @__PURE__ */ jsxs9(\n \"button\",\n {\n type: \"button\",\n onClick: () => handleCloseTab(t.id),\n className: \"inline-flex items-center gap-1 rounded-full bg-[#f1f5f9] px-3 py-1 text-xs font-medium text-[#334155] transition-colors hover:bg-[#e2e8f0]\",\n children: [\n /* @__PURE__ */ jsx11(XMarkIcon, { className: \"h-3 w-3\" }),\n /* @__PURE__ */ jsx11(\"span\", { children: \"Close tab\" })\n ]\n }\n ) }),\n renderTabContent ? renderTabContent(t.row) : /* @__PURE__ */ jsx11(DefaultTabContent, { headers, row: t.row })\n ] })\n }));\n const effectiveShowHeaderClose = tabProps?.showTabCloseIconInHeader ?? true;\n return /* @__PURE__ */ jsxs9(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full rounded-xl border border-slate-200 bg-white p-6 shadow-sm\",\n children: [\n (title || description) && /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-4\", children: [\n title && /* @__PURE__ */ jsx11(\n \"h2\",\n {\n className: \"text-xl font-semibold text-slate-900\",\n style: { fontFamily: sectionTitleFontFamily },\n children: title\n }\n ),\n description && /* @__PURE__ */ jsx11(\n \"p\",\n {\n className: \"mt-1 text-sm text-slate-500\",\n style: { fontFamily: sectionDescriptionFontFamily },\n children: description\n }\n )\n ] }),\n /* @__PURE__ */ jsx11(\"div\", { className: \"overflow-x-auto w-full rounded-xl border border-slate-200\", children: /* @__PURE__ */ jsx11(\"div\", { className: \"min-w-[900px]\", children: /* @__PURE__ */ jsxs9(\"table\", { className: \"min-w-full border-collapse text-sm\", children: [\n /* @__PURE__ */ jsx11(\"thead\", { className: \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83]\", children: /* @__PURE__ */ jsx11(\"tr\", { children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"th\",\n {\n className: \"px-3 py-2 text-left text-xs font-semibold uppercase tracking-wide text-white\",\n children: header.label\n },\n header.key\n )) }) }),\n /* @__PURE__ */ jsxs9(\"tbody\", { className: \"bg-white\", children: [\n data.length === 0 && /* @__PURE__ */ jsx11(\"tr\", { children: /* @__PURE__ */ jsx11(\n \"td\",\n {\n colSpan: headers.length,\n className: \"px-4 py-6 text-center text-sm text-slate-500\",\n children: \"No records to display.\"\n }\n ) }),\n data.map((row, index) => {\n const selected = isRowSelected(row, index);\n const rowId = getRowId ? getRowId(row, index) : index;\n return /* @__PURE__ */ jsx11(\n \"tr\",\n {\n onClick: () => handleRowClick(row, index),\n className: `cursor-pointer border-b border-slate-100 transition hover:bg-slate-50 ${selected ? \"bg-blue-100/70\" : \"\"}`,\n children: headers.map((header) => /* @__PURE__ */ jsx11(\n \"td\",\n {\n className: \"px-3 py-2 text-slate-800\",\n children: renderCellValue(\n row[header.key]\n )\n },\n header.key\n ))\n },\n String(rowId)\n );\n })\n ] })\n ] }) }) }),\n tabs.length > 0 && /* @__PURE__ */ jsxs9(\"div\", { className: \"mt-6\", children: [\n /* @__PURE__ */ jsxs9(\"div\", { className: \"mb-3 flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs9(\"h3\", { className: \"text-sm font-semibold uppercase tracking-wide text-slate-500\", children: [\n \"Open Rows (\",\n tabs.length,\n \")\"\n ] }),\n rearrange && /* @__PURE__ */ jsx11(\"p\", { className: \"text-xs text-slate-500\", children: \"Drag the tab headers to change their order.\" })\n ] }),\n /* @__PURE__ */ jsx11(\n TabbedInterface,\n {\n ...tabProps,\n tabs: tabbedInterfaceTabs,\n draggableTabs: rearrange,\n onReorderTabs: rearrange ? handleReorderTabs : void 0,\n showTabCloseIconInHeader: effectiveShowHeaderClose,\n onCloseTab: (index) => {\n const target = tabs[index];\n if (!target) return;\n handleCloseTab(target.id);\n }\n }\n )\n ] })\n ]\n }\n );\n}\nTableWithTab.displayName = \"TableWithTab\";\n\n// src/components/Table.tsx\nimport React11, { useState as useState8 } from \"react\";\nimport {\n ArrowDownOnSquareIcon,\n XMarkIcon as XMarkIcon2\n} from \"@heroicons/react/24/outline\";\nimport { Fragment as Fragment6, jsx as jsx12, jsxs as jsxs10 } from \"react/jsx-runtime\";\nvar Table = ({\n headers,\n data,\n page,\n setPage,\n limit,\n setLimit,\n totalCount,\n highlightRowColor,\n actions,\n paginationRequired,\n paginationPosition = \"bottom-center\",\n onDownloadPDF,\n onDownloadExcel,\n searchable = false,\n searchTerm = \"\",\n onResetSearch,\n onSearch,\n searchModeOptions = [\"includes\", \"startsWith\"],\n summary,\n summaryKey = \"summary\",\n summaryTitleField = \"name\",\n summaryColumn = false,\n summaryColumnKey,\n summaryColumnMaxLength = 120,\n textWrapColumns,\n textWrapMaxLength = 120,\n textWrapColumnMaxLengths,\n tableTestId\n}) => {\n const [searchMode, setSearchMode] = useState8(\n searchModeOptions[0]\n );\n const [expandedRowIndex, setExpandedRowIndex] = useState8(null);\n const [expandedRowIndexes, setExpandedRowIndexes] = useState8(\n /* @__PURE__ */ new Set()\n );\n const isPaginated = paginationRequired;\n const handleChange = (e) => {\n onSearch?.(e.target.value, searchMode);\n };\n const totalPages = isPaginated ? Math.max(1, Math.ceil((totalCount || 0) / (limit || 1))) : 0;\n const currentPage = isPaginated ? typeof page === \"number\" && page > 0 ? page : 1 : 1;\n const goToPage = (p) => {\n if (!isPaginated) return;\n const clamped = Math.max(1, Math.min(totalPages, p));\n setPage?.(clamped);\n };\n const renderPageNumbers = () => {\n if (!isPaginated || totalPages <= 1) return null;\n const pages = [];\n const siblings = 1;\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(1),\n disabled: currentPage === 1,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === 1 ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: \"1\"\n },\n 1\n )\n );\n const start = Math.max(2, currentPage - siblings);\n const end = Math.min(totalPages - 1, currentPage + siblings);\n if (start > 2) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"s\"));\n for (let i = start; i <= end; i++) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(i),\n disabled: currentPage === i,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === i ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: i\n },\n i\n )\n );\n }\n if (end < totalPages - 1) pages.push(/* @__PURE__ */ jsx12(\"span\", { children: \"...\" }, \"e\"));\n if (totalPages > 1) {\n pages.push(\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(totalPages),\n disabled: currentPage === totalPages,\n className: `px-3 py-1 rounded text-sm font-medium text-white ${currentPage === totalPages ? \"bg-gray-300 cursor-not-allowed\" : \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\"}`,\n children: totalPages\n },\n totalPages\n )\n );\n }\n return pages;\n };\n const summaryColKeyToUse = summaryColumnKey || summaryKey;\n const renderCell = (value, key) => {\n if (value == null) return \"-\";\n if (React11.isValidElement(value)) return value;\n if (typeof value === \"boolean\") return value ? \"Yes\" : \"No\";\n if (value instanceof Date) return value.toLocaleString();\n if (Array.isArray(value)) {\n if (value.some((item) => React11.isValidElement(item))) return /* @__PURE__ */ jsx12(Fragment6, { children: value });\n return value.join(\", \");\n }\n if (typeof value === \"object\") return JSON.stringify(value);\n if (typeof value === \"string\") {\n if (textWrapColumns?.includes(key)) {\n const max = textWrapColumnMaxLengths?.[key] ?? textWrapMaxLength ?? 120;\n const truncated = value.length <= max ? value : value.substring(0, max) + \"...\";\n return /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"text-sm text-slate-600 line-clamp-2\",\n title: value,\n children: truncated\n }\n );\n }\n }\n return String(value);\n };\n return /* @__PURE__ */ jsxs10(Fragment6, { children: [\n (searchable || onDownloadExcel || onDownloadPDF) && /* @__PURE__ */ jsxs10(\"div\", { className: \"mb-3 flex flex-wrap justify-between gap-3\", children: [\n searchable && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsxs10(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsx12(\n \"input\",\n {\n value: searchTerm,\n onChange: handleChange,\n placeholder: \"Search...\",\n className: \"w-56 rounded-lg px-3 py-2 pr-8 text-sm text-[#1761A3] shadow focus:ring-2 focus:ring-emerald-500\"\n }\n ),\n searchTerm && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: onResetSearch,\n className: \"absolute right-2 top-2\",\n children: /* @__PURE__ */ jsx12(XMarkIcon2, { className: \"h-4 w-4\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsx12(\n \"select\",\n {\n value: searchMode,\n onChange: (e) => setSearchMode(e.target.value),\n className: \"rounded-lg px-2 py-2 text-sm shadow\",\n children: searchModeOptions.map((mode) => /* @__PURE__ */ jsx12(\"option\", { value: mode, children: mode === \"startsWith\" ? \"Starts With\" : \"Includes\" }, mode))\n }\n )\n ] }),\n (onDownloadPDF || onDownloadExcel) && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex gap-2\", children: [\n onDownloadPDF && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadPDF(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: /* @__PURE__ */ jsx12(ArrowDownOnSquareIcon, { className: \"h-5 w-5\" })\n }\n ),\n onDownloadExcel && /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => onDownloadExcel(data, headers),\n className: \"px-3 py-2 text-white rounded bg-gradient-to-r from-[#1e73be] to-[#28a97d]\",\n children: \"Excel\"\n }\n )\n ] })\n ] }),\n /* @__PURE__ */ jsx12(\n \"div\",\n {\n className: \"overflow-x-auto rounded-xl border border-[#1761A3] bg-white\",\n \"data-testid\": tableTestId,\n children: /* @__PURE__ */ jsxs10(\"table\", { className: \"w-full min-w-[900px] table-fixed\", children: [\n /* @__PURE__ */ jsx12(\"thead\", { className: \"bg-gradient-to-r from-[#1e73be] to-[#28a97d]\", children: /* @__PURE__ */ jsxs10(\"tr\", { children: [\n headers.map((header, idx) => /* @__PURE__ */ jsx12(\n \"th\",\n {\n className: \" h-[50px] px-3 py-2 text-left text-sm font-bold text-white\",\n children: header.label\n },\n idx\n )),\n actions && /* @__PURE__ */ jsx12(\"th\", { className: \"px-3 py-2 text-white font-bold\", children: \"Actions\" })\n ] }) }),\n /* @__PURE__ */ jsx12(\"tbody\", { children: data.length > 0 ? data.map((row, rowIndex) => {\n const isExpanded = summary === \"single\" ? expandedRowIndex === rowIndex : expandedRowIndexes.has(rowIndex);\n const toggleRow = () => {\n if (!summary) return;\n if (summary === \"single\") {\n setExpandedRowIndex((prev) => prev === rowIndex ? null : rowIndex);\n } else {\n setExpandedRowIndexes((prev) => {\n const next = new Set(prev);\n next.has(rowIndex) ? next.delete(rowIndex) : next.add(rowIndex);\n return next;\n });\n }\n };\n return /* @__PURE__ */ jsxs10(React11.Fragment, { children: [\n /* @__PURE__ */ jsxs10(\n \"tr\",\n {\n onClick: toggleRow,\n className: \" h-[57px] border-b even:bg-slate-50 hover:bg-slate-100\",\n style: highlightRowColor ? { backgroundColor: highlightRowColor } : void 0,\n children: [\n headers.map((header, i) => /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-sm whitespace-nowrap overflow-hidden text-ellipsis max-w-[1px] break-words\", children: renderCell(row[header.key], header.key) }, i)),\n actions && /* @__PURE__ */ jsx12(\"td\", { className: \"px-3 py-2 text-center\", children: actions(row) })\n ]\n }\n ),\n summary && isExpanded && /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"px-4 py-4 bg-gradient-to-r from-[rgba(239,246,255,0.5)] to-[rgba(219,234,254,0.5)]\",\n children: row[summaryKey]\n }\n ) })\n ] }, rowIndex);\n }) : /* @__PURE__ */ jsx12(\"tr\", { children: /* @__PURE__ */ jsx12(\n \"td\",\n {\n colSpan: headers.length + (actions ? 1 : 0),\n className: \"text-center py-6 text-slate-500\",\n children: \"No records found\"\n }\n ) }) })\n ] })\n }\n ),\n paginationRequired && totalPages > 1 && /* @__PURE__ */ jsxs10(\"div\", { className: \"flex justify-center mt-3 gap-2 items-center\", children: [\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage - 1),\n disabled: currentPage === 1,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Previous\"\n }\n ),\n renderPageNumbers(),\n /* @__PURE__ */ jsx12(\n \"button\",\n {\n onClick: () => goToPage(currentPage + 1),\n disabled: currentPage === totalPages,\n className: \"px-3 py-1 rounded text-white text-sm bg-gradient-to-r from-[#1e73be] to-[#28a97d] disabled:bg-gray-300\",\n children: \"Next\"\n }\n )\n ] })\n ] });\n};\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { useMemo as useMemo3, useState as useState12 } from \"react\";\n\n// src/components/ChartDropdown.tsx\nimport { useEffect as useEffect7, useMemo, useRef as useRef4, useState as useState9 } from \"react\";\nimport { jsx as jsx13, jsxs as jsxs11 } from \"react/jsx-runtime\";\nvar assetSrc = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon = require_down_4();\nvar getTriggerClasses = (variant) => {\n const base = \"cursor-pointer outline-none transition-all duration-200\";\n switch (variant) {\n case \"mahatiFilter\":\n return `${base} w-[130px] h-[30px] rounded-[4px] border border-[rgba(210,210,210,1)] bg-gradient-to-r from-[rgba(23,97,163,0.07)] to-[rgba(77,175,131,0.07)] px-2 text-xs text-[rgba(17,24,39,1)] flex items-center justify-between gap-2 hover:opacity-95 focus:shadow-[0_0_0_2px_rgba(23,97,163,0.25)]`;\n case \"basic\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"outline\":\n return `${base} border border-[rgba(37,99,235,1)] text-[rgba(37,99,235,1)] bg-transparent rounded-md px-4 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"pill\":\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-full px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n case \"dark\":\n return `${base} bg-[rgba(31,41,55,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(55,65,81,1)]`;\n case \"underline\":\n return `${base} border-b-2 border-[rgba(59,130,246,1)] bg-transparent text-[rgba(29,78,216,1)] rounded-none px-2 py-2 hover:bg-[rgba(239,246,255,1)]`;\n case \"shadow\":\n return `${base} bg-white text-[rgba(55,65,81,1)] shadow-[0_4px_6px_-1px_rgba(0,0,0,0.1)] border border-[rgba(229,231,235,1)] rounded-md px-4 py-2 hover:shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)]`;\n case \"glass\":\n return `${base} bg-[rgba(255,255,255,0.2)] backdrop-blur-md text-white border border-[rgba(255,255,255,0.4)] rounded-md px-4 py-2 hover:bg-[rgba(255,255,255,0.3)]`;\n case \"gradient\":\n return `${base} bg-gradient-to-r from-[rgba(59,130,246,1)] to-[rgba(168,85,247,1)] text-white border-none rounded-md px-4 py-2 hover:opacity-90`;\n default:\n return `${base} bg-[rgba(37,99,235,1)] text-white rounded-md px-4 py-2 hover:bg-[rgba(29,78,216,1)]`;\n }\n};\nvar getMenuClasses = (variant) => {\n const base = \"absolute mt-1 z-20 bg-white rounded-md shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1)] overflow-hidden\";\n if (variant === \"mahatiFilter\") {\n return `${base} w-[130px] rounded-[4px] border border-[rgba(210,210,210,1)] shadow-[0_10px_15px_-3px_rgba(0,0,0,0.1),0_4px_6px_-2px_rgba(0,0,0,0.05)]`;\n }\n return `${base} min-w-[160px] border border-[rgba(229,231,235,1)]`;\n};\nvar getOptionClasses = (variant, isSelected) => {\n const base = \"w-full text-left cursor-pointer outline-none border-none transition-colors duration-200\";\n if (variant === \"mahatiFilter\") {\n return `${base} h-[30px] px-2 flex items-center text-xs text-[rgba(31,41,55,1)] rounded-none ${isSelected ? \"bg-[rgba(243,244,246,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(243,244,246,1)]`;\n }\n return `${base} px-3 py-2 text-sm text-[rgba(31,41,55,1)] ${isSelected ? \"bg-[rgba(239,246,255,1)]\" : \"bg-white\"} hover:bg-[rgba(243,244,246,1)] focus:bg-[rgba(239,246,255,1)]`;\n};\nvar ChartDropdown = ({\n options,\n value,\n onSelect,\n label,\n variant = \"basic\",\n className,\n testId\n}) => {\n const [isOpen, setIsOpen] = useState9(false);\n const [internalValue, setInternalValue] = useState9(value);\n const dropdownRef = useRef4(null);\n useEffect7(() => {\n if (value !== void 0) setInternalValue(value);\n }, [value]);\n const displayValue = value !== void 0 ? value : internalValue;\n const selectedOption = useMemo(\n () => options.find((opt) => opt.value === displayValue),\n [options, displayValue]\n );\n useEffect7(() => {\n const handleClickOutside = (event) => {\n if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\n }, []);\n const handleSelect = (optionValue) => {\n onSelect(optionValue);\n if (value === void 0) {\n setInternalValue(optionValue);\n }\n setIsOpen(false);\n };\n return /* @__PURE__ */ jsxs11(\n \"div\",\n {\n ref: dropdownRef,\n className: `relative inline-block ${className || \"\"}`,\n \"data-testid\": testId,\n children: [\n label && /* @__PURE__ */ jsx13(\"label\", { className: \"block mb-1 text-xs font-medium text-[rgba(55,65,81,1)]\", children: label }),\n /* @__PURE__ */ jsxs11(\n \"button\",\n {\n type: \"button\",\n className: getTriggerClasses(variant),\n onClick: () => setIsOpen(!isOpen),\n onKeyDown: (e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n setIsOpen(!isOpen);\n }\n },\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": isOpen,\n children: [\n /* @__PURE__ */ jsx13(\"span\", { className: \"overflow-hidden text-ellipsis whitespace-nowrap\", children: selectedOption?.key || \"Select...\" }),\n /* @__PURE__ */ jsx13(\n \"img\",\n {\n src: assetSrc(arrowDownIcon),\n alt: \"\",\n className: \"w-3 h-3 flex-shrink-0\"\n }\n )\n ]\n }\n ),\n isOpen && /* @__PURE__ */ jsx13(\"div\", { className: getMenuClasses(variant), role: \"listbox\", children: options.map((option) => /* @__PURE__ */ jsx13(\n \"button\",\n {\n type: \"button\",\n className: getOptionClasses(variant, option.value === displayValue),\n onClick: () => handleSelect(option.value),\n role: \"option\",\n \"aria-selected\": option.value === displayValue,\n children: option.key\n },\n option.key\n )) })\n ]\n }\n );\n};\nChartDropdown.displayName = \"ChartDropdown\";\n\n// src/components/PieLineBarChart.tsx\nimport React13 from \"react\";\nimport {\n Chart as ChartJS,\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n} from \"chart.js\";\nimport { Doughnut, Line, Bar } from \"react-chartjs-2\";\nimport { jsx as jsx14 } from \"react/jsx-runtime\";\nChartJS.register(\n ArcElement,\n Tooltip,\n Legend,\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n BarElement,\n Filler\n);\nvar makeAreaDataStraight = (data) => {\n const datasets = Array.isArray(data.datasets) ? data.datasets : [];\n return {\n ...data,\n datasets: datasets.map((ds) => ({\n ...ds,\n tension: 0,\n cubicInterpolationMode: \"default\"\n }))\n };\n};\nvar PieLineBarChart = ({\n chartType,\n data,\n options\n}) => {\n const defaultOptions = React13.useMemo(() => {\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n if (isLineFamily) {\n return {\n responsive: true,\n maintainAspectRatio: false,\n elements: { line: { tension: 0 } },\n plugins: {\n legend: { display: false },\n tooltip: {\n mode: \"index\",\n intersect: false,\n backgroundColor: \"rgba(255,255,255,0.95)\",\n titleColor: \"rgba(31,41,55,1)\",\n bodyColor: \"rgba(107,114,128,1)\",\n borderColor: \"rgba(229,231,235,1)\",\n borderWidth: 1,\n padding: 12,\n displayColors: true\n }\n },\n scales: {\n x: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } }\n },\n y: {\n grid: { display: true, color: \"rgba(229,231,235,1)\", drawBorder: false },\n ticks: { color: \"rgba(107,114,128,1)\", font: { size: 11 } },\n min: 40,\n max: 90\n }\n },\n interaction: { mode: \"nearest\", axis: \"x\", intersect: false }\n };\n }\n return {\n responsive: true,\n maintainAspectRatio: false,\n cutout: chartType === \"pie\" || chartType === \"doughnut\" ? \"50%\" : void 0,\n plugins: { legend: { display: false } }\n };\n }, [chartType]);\n const chartOptions = options || defaultOptions;\n const renderChart = () => {\n switch (chartType) {\n case \"line\":\n case \"area\":\n return /* @__PURE__ */ jsx14(Line, { data, options: chartOptions }, chartType);\n case \"bar\":\n return /* @__PURE__ */ jsx14(Bar, { data, options: chartOptions }, chartType);\n case \"pie\":\n case \"doughnut\":\n return /* @__PURE__ */ jsx14(Doughnut, { data, options: chartOptions }, chartType);\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsx14(\"div\", { className: \"w-full h-full relative flex items-center justify-center\", children: renderChart() });\n};\nPieLineBarChart.displayName = \"PieLineBarChart\";\n\n// src/components/BulletChart.tsx\nimport { jsx as jsx15, jsxs as jsxs12 } from \"react/jsx-runtime\";\nvar BulletChart = ({ title, bullets, testId }) => {\n return /* @__PURE__ */ jsxs12(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"mt-4 flex flex-col gap-[35px] sm:gap-[45px]\", children: bullets.map((b) => {\n const percentageAchieved = Math.round(b.achieved / b.target * 100);\n const achievedWidth = Math.min(b.achieved / b.target * 100, 100);\n const markerPosition = Math.min(b.marker / b.target * 100, 100);\n return /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"flex flex-col gap-[9px]\",\n \"data-testid\": testId ? `${testId}-item-${b.name}` : void 0,\n children: [\n /* @__PURE__ */ jsx15(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-xs font-semibold leading-normal sm:text-sm\", children: b.name }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"flex flex-col gap-3 sm:flex-row sm:items-center sm:gap-4\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full sm:w-[500px]\", children: [\n /* @__PURE__ */ jsxs12(\"div\", { className: \"absolute top-[-29px] right-0 text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal whitespace-nowrap sm:text-sm\", children: [\n \"$\",\n b.achieved.toLocaleString(),\n \"/$\",\n b.target.toLocaleString()\n ] }),\n /* @__PURE__ */ jsxs12(\"div\", { className: \"relative w-full h-5 rounded-[20px] bg-[rgba(183,232,214,0.9)] overflow-hidden\", children: [\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"h-5 rounded-l-[20px] rounded-r-none bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\",\n style: { width: `${achievedWidth}%` },\n \"data-testid\": testId ? `${testId}-bar-${b.name}` : void 0\n }\n ),\n /* @__PURE__ */ jsx15(\n \"div\",\n {\n className: \"absolute top-0 h-5 w-1 rounded-sm bg-[rgba(15,74,122,1)]\",\n style: { left: `${markerPosition}%`, transform: \"translateX(-50%)\" },\n \"data-testid\": testId ? `${testId}-marker-${b.name}` : void 0\n }\n )\n ] }),\n /* @__PURE__ */ jsx15(\"div\", { className: \"absolute top-[29px] left-0 w-full\", children: /* @__PURE__ */ jsxs12(\"div\", { className: \"flex justify-between items-start\", children: [\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", children: \"0\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"2k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"4k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"6k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-4px\" }, children: \"8k\" }),\n /* @__PURE__ */ jsx15(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium leading-normal sm:text-xs\", style: { marginLeft: \"-8px\" }, children: \"10k\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs12(\n \"div\",\n {\n className: \"text-[rgba(115,115,115,1)] font-[Poppins,sans-serif] text-[9px] font-semibold leading-normal whitespace-nowrap sm:ml-[27px] sm:text-[10px]\",\n \"data-testid\": testId ? `${testId}-percentage-${b.name}` : void 0,\n children: [\n percentageAchieved,\n \"% of target achieved\"\n ]\n }\n )\n ] })\n ]\n },\n b.name\n );\n }) })\n ] });\n};\nBulletChart.displayName = \"BulletChart\";\n\n// src/components/GaugeChart.tsx\nimport { jsx as jsx16, jsxs as jsxs13 } from \"react/jsx-runtime\";\nvar GaugeChart = ({ title, gauges, testId }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: {\n color: \"rgba(23,97,163,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"18px\",\n fontWeight: 600\n },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const percentage = Math.min(gauge.value / gauge.max * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const remaining = gauge.max - gauge.value;\n const dailyAvg = Math.round(gauge.value / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"relative w-full flex-shrink-0 lg:w-[340px]\",\n style: { height: \"220px\" },\n children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\"linearGradient\", { id: `gaugeGradient${index}`, x1: \"0%\", y1: \"0%\", x2: \"100%\", y2: \"0%\", children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\" })\n ] }) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: \"rgba(230,230,230,1)\",\n strokeWidth: \"16\",\n strokeLinecap: \"round\"\n }\n ),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M 40 170 A 130 130 0 0 1 300 170\",\n fill: \"none\",\n stroke: `url(#gaugeGradient${index})`,\n strokeWidth: \"16\",\n strokeLinecap: \"round\",\n style: { transition: \"all 0.7s ease-in-out\" },\n strokeDasharray: `${percentage / 100 * 408.4} 408.4`\n }\n ),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"14px\",\n fontWeight: 500,\n fill: \"rgba(94,94,94,1)\"\n },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `centerGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(23,97,163,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(77,175,131,1)\", stopOpacity: \"0.1\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#centerGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\n \"g\",\n {\n style: {\n transition: \"all 0.7s ease-in-out\",\n transform: `rotate(${angle}deg)`,\n transformOrigin: \"0 0\"\n },\n children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" })\n }\n ) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: {\n color: \"rgba(100,100,100,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400\n },\n children: [\n \"You've completed \",\n Math.round(percentage),\n \"% of the total target\"\n ]\n }\n )\n ]\n }\n ),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Target\", value: gauge.max.toLocaleString() },\n { label: \"Achieved\", value: gauge.value.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Remaining\", value: remaining.toLocaleString() },\n { label: \"Daily Avg Needed\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nGaugeChart.displayName = \"GaugeChart\";\nvar DEFAULT_RISK_BANDS = [\n { label: \"Critical Risk\", color: \"#DC2626\", rangeStart: 0, rangeEnd: 20 },\n { label: \"High Risk\", color: \"#F97316\", rangeStart: 20, rangeEnd: 40 },\n { label: \"Stable\", color: \"#FBBF24\", rangeStart: 40, rangeEnd: 60 },\n { label: \"Strong\", color: \"#4ADE80\", rangeStart: 60, rangeEnd: 80 },\n { label: \"Top Performer\", color: \"#059669\", rangeStart: 80, rangeEnd: 100 }\n];\nvar createRiskArcPath = (centerX, centerY, radius, startAngle, endAngle) => {\n const startRad = (startAngle - 180) * Math.PI / 180;\n const endRad = (endAngle - 180) * Math.PI / 180;\n const x1 = centerX + radius * Math.cos(startRad);\n const y1 = centerY + radius * Math.sin(startRad);\n const x2 = centerX + radius * Math.cos(endRad);\n const y2 = centerY + radius * Math.sin(endRad);\n const largeArcFlag = endAngle - startAngle > 180 ? 1 : 0;\n return `M ${x1} ${y1} A ${radius} ${radius} 0 ${largeArcFlag} 1 ${x2} ${y2}`;\n};\nvar getRiskLevel = (score, bands) => {\n for (const band of bands) {\n if (score >= band.rangeStart && score <= band.rangeEnd) return band.label;\n }\n return bands[0].label;\n};\nvar RiskGaugeChart = ({ title, gauges }) => {\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"18px\", fontWeight: 600 },\n children: title\n }\n ),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-col gap-10\", children: gauges.map((gauge, index) => {\n const bands = gauge.bands || DEFAULT_RISK_BANDS;\n const maxScore = gauge.max || 100;\n const percentage = Math.min(gauge.score / maxScore * 100, 100);\n const angle = percentage / 100 * 180 - 90;\n const currentLevel = getRiskLevel(percentage, bands);\n const remaining = maxScore - gauge.score;\n const dailyAvg = Math.round(gauge.score / 30);\n return /* @__PURE__ */ jsxs13(\"div\", { className: \"w-full\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col gap-6 lg:flex-row lg:gap-8\", children: [\n /* @__PURE__ */ jsxs13(\"div\", { className: \"relative w-full flex-shrink-0 lg:w-[340px]\", style: { height: \"220px\" }, children: [\n /* @__PURE__ */ jsxs13(\"svg\", { className: \"w-full h-full\", viewBox: \"0 0 340 220\", children: [\n bands.map((band, bandIndex) => {\n const startAngle = band.rangeStart / 100 * 180;\n const endAngle = band.rangeEnd / 100 * 180;\n const arcPath = createRiskArcPath(170, 170, 130, startAngle, endAngle);\n return /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: arcPath,\n fill: \"none\",\n stroke: band.color,\n strokeWidth: \"16\",\n strokeLinecap: \"butt\",\n style: { transition: \"all 0.7s ease-in-out\" }\n },\n bandIndex\n );\n }),\n [\n { x: 36, y: 198, t: \"0\" },\n { x: 42, y: 75, t: \"25\" },\n { x: 162, y: 25, t: \"50\" },\n { x: 282, y: 75, t: \"75\" },\n { x: 290, y: 198, t: \"100\" }\n ].map(({ x, y, t }) => /* @__PURE__ */ jsx16(\n \"text\",\n {\n x,\n y,\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 500, fill: \"rgba(94,94,94,1)\" },\n children: t\n },\n t\n )),\n /* @__PURE__ */ jsxs13(\"g\", { transform: \"translate(90, 100)\", children: [\n /* @__PURE__ */ jsx16(\"defs\", { children: /* @__PURE__ */ jsxs13(\n \"linearGradient\",\n {\n id: `riskCenterGradient${index}`,\n x1: \"80\",\n y1: \"0\",\n x2: \"80\",\n y2: \"160\",\n gradientUnits: \"userSpaceOnUse\",\n children: [\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"0%\", stopColor: \"rgba(148,163,184,1)\", stopOpacity: \"0.1\" }),\n /* @__PURE__ */ jsx16(\"stop\", { offset: \"100%\", stopColor: \"rgba(71,85,105,1)\", stopOpacity: \"0.05\" })\n ]\n }\n ) }),\n /* @__PURE__ */ jsx16(\n \"path\",\n {\n d: \"M160 80C160 58.7827 151.571 38.4344 136.569 23.4315C121.566 8.42855 101.217 1.60186e-06 80 0C58.7827 -1.60186e-06 38.4344 8.42854 23.4315 23.4315C8.42855 38.4344 3.20373e-06 58.7827 0 80L80 80H160Z\",\n fill: `url(#riskCenterGradient${index})`\n }\n )\n ] }),\n /* @__PURE__ */ jsx16(\n \"text\",\n {\n x: \"170\",\n y: \"125\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 400, fill: \"rgba(120,120,120,1)\" },\n children: \"score\"\n }\n ),\n /* @__PURE__ */ jsxs13(\n \"text\",\n {\n x: \"175\",\n y: \"165\",\n textAnchor: \"middle\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"42px\", fontWeight: 700, fill: \"rgba(0,0,0,1)\" },\n children: [\n Math.round(percentage),\n \"%\"\n ]\n }\n ),\n /* @__PURE__ */ jsx16(\"g\", { transform: \"translate(170, 170)\", children: /* @__PURE__ */ jsx16(\"g\", { style: { transition: \"all 0.7s ease-in-out\", transform: `rotate(${angle}deg)`, transformOrigin: \"0 0\" }, children: /* @__PURE__ */ jsx16(\"path\", { d: \"M 0 -115 L -3.4 -80 L 3.4 -80 Z\", fill: \"rgba(76,76,76,1)\" }) }) })\n ] }),\n /* @__PURE__ */ jsxs13(\n \"div\",\n {\n className: \"absolute bottom-0 left-0 right-0 text-center\",\n style: { color: \"rgba(100,100,100,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"11px\", fontWeight: 400 },\n children: [\n \"Current Status: \",\n currentLevel\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs13(\"div\", { className: \"flex-1 flex flex-col justify-start\", children: [\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36 mb-[98px]\", children: [\n { label: \"Maximum\", value: maxScore.toLocaleString() },\n { label: \"Current Score\", value: gauge.score.toLocaleString() }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex gap-36\", children: [\n { label: \"Gap to Max\", value: remaining.toLocaleString() },\n { label: \"Daily Average\", value: `${dailyAvg.toLocaleString()} / day` }\n ].map(({ label, value }) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex flex-col\", children: [\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(109,109,109,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, marginBottom: \"6px\" }, children: label }),\n /* @__PURE__ */ jsx16(\"span\", { style: { color: \"rgba(0,0,0,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"16px\", fontWeight: 600 }, children: value })\n ] }, label)) })\n ] })\n ] }),\n /* @__PURE__ */ jsx16(\"div\", { className: \"flex flex-wrap gap-[30px] mt-[30px] justify-center\", children: bands.map((band, bandIdx) => /* @__PURE__ */ jsxs13(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx16(\n \"div\",\n {\n className: \"w-5 h-3 rounded-sm\",\n style: { backgroundColor: band.color }\n }\n ),\n /* @__PURE__ */ jsx16(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n color: \"rgba(75,85,99,1)\",\n fontWeight: 500\n },\n children: band.label\n }\n )\n ] }, bandIdx)) }),\n index < gauges.length - 1 && /* @__PURE__ */ jsx16(\"div\", { className: \"mt-10 h-px\", style: { background: \"rgba(220,220,220,1)\" } })\n ] }, index);\n }) })\n ] });\n};\nRiskGaugeChart.displayName = \"RiskGaugeChart\";\n\n// src/components/HorizontalBarChart.tsx\nimport { jsx as jsx17, jsxs as jsxs14 } from \"react/jsx-runtime\";\nvar HorizontalBarChart = ({\n title,\n bars,\n xAxisConfig,\n topPerformer,\n testId\n}) => {\n const safeBars = bars || [];\n return /* @__PURE__ */ jsxs14(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex items-center justify-end mb-[2px]\", children: /* @__PURE__ */ jsx17(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded transition-colors hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer\",\n \"data-testid\": testId ? `${testId}-menu-button` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx17(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) })\n }\n ) }),\n /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"mb-6\",\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n \"data-testid\": testId ? `${testId}-title` : void 0,\n children: title\n }\n ),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex items-start gap-4\", children: [\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col justify-start pt-1\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-label-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"12px\",\n fontWeight: 400,\n whiteSpace: \"nowrap\"\n },\n className: \"sm:text-sm\",\n children: bar.name\n }\n )\n },\n bar.name\n )) }),\n /* @__PURE__ */ jsxs14(\"div\", { className: \"flex-1 relative\", children: [\n /* @__PURE__ */ jsxs14(\"div\", { className: \"absolute inset-0 pointer-events-none\", style: { height: \"180px\" }, children: [\n xAxisConfig && xAxisConfig.labels.map((label, idx) => {\n const totalLabels = xAxisConfig.labels.length;\n const position = idx / (totalLabels - 1) * 100;\n const approxCharWidth = 7;\n const centerOffset = String(label).length * approxCharWidth / 2;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 w-px z-[1]\",\n style: {\n left: `calc(${position}% - ${centerOffset}px)`,\n height: \"165px\",\n backgroundColor: \"rgba(229,231,235,1)\"\n }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 top-0 w-[2px] z-[2]\", style: { height: \"165px\", backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"absolute left-0 right-0 h-[2px] z-[2]\", style: { bottom: \"15px\", backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex flex-col pt-1 relative z-10\", style: { minHeight: \"180px\" }, children: safeBars.map((bar, index) => {\n const maxVal = xAxisConfig?.max || 250;\n const barLengthPercentage = bar.value / maxVal * 100;\n return /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"flex items-center\",\n style: { height: \"45px\", marginBottom: index < safeBars.length - 1 ? \"10px\" : 0 },\n \"data-testid\": testId ? `${testId}-row-${index}` : void 0,\n children: /* @__PURE__ */ jsx17(\"div\", { className: \"relative h-[30px] w-full\", children: /* @__PURE__ */ jsx17(\n \"div\",\n {\n className: \"absolute top-0 left-0 h-[30px] rounded\",\n style: { width: `${barLengthPercentage}%`, background: bar.color },\n \"data-testid\": testId ? `${testId}-bar-${index}` : void 0\n }\n ) })\n },\n bar.name\n );\n }) }),\n /* @__PURE__ */ jsx17(\"div\", { className: \"flex justify-between items-start w-full relative z-10\", style: { marginTop: \"-8px\" }, children: xAxisConfig && xAxisConfig.labels.map((label, idx) => /* @__PURE__ */ jsx17(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) })\n ] })\n ] })\n ] });\n};\nHorizontalBarChart.displayName = \"HorizontalBarChart\";\n\n// src/components/GanttChart.tsx\nimport React14 from \"react\";\nimport { jsx as jsx18, jsxs as jsxs15 } from \"react/jsx-runtime\";\nvar assetSrc2 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar arrowDownIcon2 = require_down_4();\nvar GANTT_COLORS = {\n green: \"rgba(44, 160, 44, 1)\",\n blue: \"rgba(37, 99, 235, 1)\",\n orange: \"rgba(255, 127, 14, 1)\",\n red: \"rgba(239, 68, 68, 1)\",\n purple: \"rgba(147, 51, 234, 1)\",\n teal: \"rgba(20, 184, 166, 1)\",\n pink: \"rgba(236, 72, 153, 1)\",\n yellow: \"rgba(234, 179, 8, 1)\",\n indigo: \"rgba(99, 102, 241, 1)\",\n emerald: \"rgba(16, 185, 129, 1)\"\n};\nvar GanttChart = ({\n data,\n selectedYear,\n selectedMonth,\n selectedProject,\n onProjectChange,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React14.useState(false);\n const projects = [\"Project 1\", \"Project 2\"];\n const projectData = data;\n const getMonthNames = (monthRange) => {\n const monthMap = {\n Jan: \"January\",\n Feb: \"February\",\n Mar: \"March\",\n Apr: \"April\",\n May: \"May\",\n Jun: \"June\",\n Jul: \"July\",\n Aug: \"August\",\n Sep: \"September\",\n Oct: \"October\",\n Nov: \"November\",\n Dec: \"December\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthMap[month1], monthMap[month2]];\n };\n const getMonthNumber = (monthRange) => {\n const monthNumberMap = {\n Jan: \"01\",\n Feb: \"02\",\n Mar: \"03\",\n Apr: \"04\",\n May: \"05\",\n Jun: \"06\",\n Jul: \"07\",\n Aug: \"08\",\n Sep: \"09\",\n Oct: \"10\",\n Nov: \"11\",\n Dec: \"12\"\n };\n const [month1, month2] = monthRange.split(\" - \").map((m) => m.trim());\n return [monthNumberMap[month1], monthNumberMap[month2]];\n };\n const getTodayPosition = () => {\n const today = /* @__PURE__ */ new Date();\n const currentYear = today.getFullYear();\n const currentMonth = today.getMonth() + 1;\n const currentDay = today.getDate();\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1 = monthToNumber[month1];\n const selectedMonth2 = monthToNumber[month2];\n const selectedYearNum = parseInt(selectedYear);\n if (currentYear !== selectedYearNum) return null;\n let monthIndex = -1;\n if (currentMonth === selectedMonth1) monthIndex = 0;\n else if (currentMonth === selectedMonth2) monthIndex = 1;\n else return null;\n const daysInMonth = 31;\n const dayPercent = (currentDay - 1) / daysInMonth;\n const positionInMonth = dayPercent * 320;\n const mobileLeft = monthIndex === 0 ? 120 + positionInMonth : 450 + positionInMonth;\n const desktopLeft = monthIndex === 0 ? 137 + positionInMonth : 467 + positionInMonth;\n return {\n show: true,\n mobileLeft: Math.round(mobileLeft * 100) / 100,\n desktopLeft: Math.round(desktopLeft * 100) / 100\n };\n };\n const todayPosition = getTodayPosition();\n const months = getMonthNames(selectedMonth);\n const displayMonths = months.map((m) => `${m} ${selectedYear}`);\n const [month1Num, month2Num] = getMonthNumber(selectedMonth);\n const getTaskPosition = (startDate, endDate) => {\n const [startDay, startMonth] = startDate.split(\"/\").map(Number);\n const [endDay, endMonth] = endDate.split(\"/\").map(Number);\n const [month1, month2] = selectedMonth.split(\" - \").map((m) => m.trim());\n const monthToNumber = {\n Jan: 1,\n Feb: 2,\n Mar: 3,\n Apr: 4,\n May: 5,\n Jun: 6,\n Jul: 7,\n Aug: 8,\n Sep: 9,\n Oct: 10,\n Nov: 11,\n Dec: 12\n };\n const selectedMonth1Num = monthToNumber[month1];\n const selectedMonth2Num = monthToNumber[month2];\n const daysInMonth = 31;\n let monthIndex = -1;\n let startPercent = 0;\n let width = 0;\n let isInSecondMonth = false;\n if (startMonth === selectedMonth1Num && endMonth === selectedMonth1Num) {\n monthIndex = 0;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth2Num && endMonth === selectedMonth2Num) {\n monthIndex = 1;\n isInSecondMonth = true;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = endDay / daysInMonth * 100 - startPercent;\n } else if (startMonth === selectedMonth1Num && endMonth === selectedMonth2Num) {\n monthIndex = 2;\n startPercent = (startDay - 1) / daysInMonth * 100;\n width = 100 + endDay / daysInMonth * 100 - startPercent;\n }\n return { startPercent, width, monthIndex, isInSecondMonth };\n };\n const lineHeight = React14.useMemo(() => {\n const baseHeight = 30;\n const taskHeight = 32;\n const taskSpacing = 24;\n return baseHeight + projectData.tasks.length * (taskHeight + taskSpacing);\n }, [projectData.tasks.length]);\n const DateRangeBoxes = ({ monthNum }) => /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-2\", children: [\n `01/${monthNum} - 10/${monthNum}`,\n `11/${monthNum} - 20/${monthNum}`,\n `21/${monthNum} - 25/${monthNum}`,\n `26/${monthNum} - 31/${monthNum}`\n ].map((range) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"w-[74px] h-6 rounded\",\n style: { background: \"rgba(225, 237, 241, 1)\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\" },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 600\n },\n children: range\n }\n )\n },\n range\n )) });\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center justify-between mb-4 sm:mb-6\", children: [\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs15(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-2 py-1 rounded cursor-pointer border-none transition-colors hover:bg-[rgba(249,250,251,1)]\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: selectedProject\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n style: {\n width: \"12px\",\n height: \"12px\",\n background: `url(${assetSrc2(arrowDownIcon2)}) transparent 50% / cover no-repeat`,\n aspectRatio: \"1/1\",\n transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\",\n transition: \"transform 0.2s\"\n }\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-full left-0 mt-1 bg-white border rounded-lg z-50 min-w-[150px]\",\n style: {\n border: \"1px solid rgba(229,231,235,1)\",\n boxShadow: \"0 10px 15px -3px rgba(0,0,0,0.1)\"\n },\n children: projects.map((project, idx) => /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: `w-full text-left px-4 py-2 bg-white border-none cursor-pointer transition-colors hover:bg-[rgba(249,250,251,1)] ${idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\"} ${idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"}`,\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"rgba(51,51,51,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"16px\",\n fontWeight: 600\n },\n children: project\n }\n )\n },\n project\n ))\n }\n )\n ] }),\n /* @__PURE__ */ jsx18(\n \"button\",\n {\n className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsx18(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\",\n style: { background: \"rgba(107,114,128,1)\" }\n },\n i\n )) })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-8 mb-4\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute left-0 w-[120px] sm:w-[137px] h-8\" }),\n [\n { left: \"120px\", smLeft: \"137px\", label: displayMonths[0] },\n { left: \"450px\", smLeft: \"467px\", label: displayMonths[1] }\n ].map(({ left, smLeft, label }) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute top-0 w-[320px] h-8 rounded flex items-center justify-center\",\n style: {\n left,\n background: \"linear-gradient(90deg, rgba(23,97,163,1) 0%, rgba(77,175,131,1) 100%)\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600,\n color: \"white\"\n },\n children: label\n }\n )\n },\n label\n ))\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative h-6 mb-6\", children: [\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"120px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month1Num }) }),\n /* @__PURE__ */ jsx18(\"div\", { className: \"absolute\", style: { left: \"450px\" }, children: /* @__PURE__ */ jsx18(DateRangeBoxes, { monthNum: month2Num }) })\n ] }),\n /* @__PURE__ */ jsxs15(\"div\", { className: \"relative\", children: [\n [0, 1, 2, 3, 4, 5, 6, 7, 8].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + section * 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m1-${section}`\n )),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${120 + 8 * 40 + 20}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n }\n ),\n [1, 2, 3, 4, 5, 6, 7, 8, 9].map((section) => /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-px\",\n style: {\n backgroundColor: \"rgba(234,234,234,1)\",\n left: `${450 + section * 40 - 40}px`,\n top: \"-30px\",\n height: `${lineHeight}px`\n }\n },\n `m2-${section}`\n )),\n todayPosition?.show && /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-[2px] z-0\",\n style: {\n background: \"rgba(32,148,243,1)\",\n left: `${todayPosition.mobileLeft}px`,\n top: \"-24px\",\n height: `${lineHeight - 30}px`\n },\n children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute w-10 h-[18px] flex items-center justify-center rounded-r\",\n style: {\n background: \"rgba(32,148,243,1)\",\n top: \"10px\",\n left: \"0px\"\n },\n children: /* @__PURE__ */ jsx18(\n \"span\",\n {\n style: {\n color: \"white\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"8px\",\n fontWeight: 500\n },\n children: \"Today\"\n }\n )\n }\n )\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"flex flex-col gap-4 sm:gap-6 mt-6 sm:mt-8\", children: projectData.tasks.map((task) => {\n const { startPercent, width, monthIndex, isInSecondMonth } = getTaskPosition(\n task.startDate,\n task.endDate\n );\n if (monthIndex === -1) return null;\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs15(\"div\", { className: \"flex items-center\", children: [\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"flex-shrink-0 pr-2 sm:pr-4 overflow-hidden text-ellipsis whitespace-nowrap\",\n style: {\n width: \"120px\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\"div\", { className: \"relative flex-1 h-7 sm:h-8\", children: /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"absolute h-full\",\n style: {\n left: isInSecondMonth ? \"330px\" : \"0\",\n width: \"320px\"\n },\n children: /* @__PURE__ */ jsxs15(\n \"div\",\n {\n className: \"absolute h-full rounded-full flex items-center justify-between px-2 sm:px-3\",\n \"data-testid\": `gantt-task-${task.id}`,\n style: {\n left: `${startPercent}%`,\n width: `${width}%`,\n backgroundColor: taskColor\n },\n children: [\n /* @__PURE__ */ jsx18(\n \"span\",\n {\n className: \"text-white overflow-hidden text-ellipsis whitespace-nowrap ml-5\",\n style: {\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 600\n },\n children: task.name\n }\n ),\n /* @__PURE__ */ jsx18(\n \"div\",\n {\n className: \"rounded-full py-[2px] px-2 sm:px-3 sm:py-1 whitespace-nowrap\",\n style: {\n fontSize: \"8px\",\n fontFamily: \"Poppins, sans-serif\",\n fontWeight: 600,\n backgroundColor: \"rgba(255,255,255,1)\",\n color: taskColor\n },\n children: task.status\n }\n )\n ]\n }\n )\n }\n ) })\n ] }, task.id);\n }) })\n ] })\n ] });\n};\nGanttChart.displayName = \"GanttChart\";\n\n// src/components/CalendarHeatmapChart.tsx\nimport React15 from \"react\";\nimport { jsx as jsx19, jsxs as jsxs16 } from \"react/jsx-runtime\";\nvar LEGEND_COLORS = [\n \"rgba(224, 242, 254, 1)\",\n \"rgba(154, 219, 255, 1)\",\n \"rgba(102, 194, 241, 1)\",\n \"rgba(43, 160, 209, 1)\",\n \"rgba(23, 97, 163, 1)\"\n];\nfunction getActivityColor(value) {\n if (value === 0) return \"rgba(224, 242, 254, 1)\";\n if (value < 1e3) return \"rgba(154, 219, 255, 1)\";\n if (value < 3e3) return \"rgba(102, 194, 241, 1)\";\n if (value < 5e3) return \"rgba(43, 160, 209, 1)\";\n return \"rgba(23, 97, 163, 1)\";\n}\nfunction getYearWeeks(year, calendarheatmapData, project, type) {\n const weeks = [];\n const startDate = new Date(year, 0, 1);\n const firstDayOfWeek = startDate.getDay();\n const daysToMonday = firstDayOfWeek === 0 ? -6 : 1 - firstDayOfWeek;\n const firstMonday = new Date(year, 0, 1 + daysToMonday);\n const currentDate = new Date(firstMonday);\n let lastMonth = -1;\n let weekIndex = 0;\n const maxWeeks = 54;\n const MONTH_NAMES_FULL = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n ];\n const MONTH_NAMES_SHORT = [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\"\n ];\n while (weekIndex < maxWeeks) {\n const weekDays = [];\n let hasCurrentYearDate = false;\n for (let dayIndex = 0; dayIndex < 7; dayIndex++) {\n const date = new Date(currentDate);\n if (date.getFullYear() === year) hasCurrentYearDate = true;\n let value = 0;\n if (date.getFullYear() === year) {\n const dateStr = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, \"0\")}-${String(date.getDate()).padStart(2, \"0\")}`;\n const monthName = MONTH_NAMES_FULL[date.getMonth()];\n if (calendarheatmapData?.[project]?.[String(year)]?.[type]?.[monthName]) {\n const dayData = calendarheatmapData[project][String(year)][type][monthName].data.find(\n (d) => d.date === dateStr\n );\n if (dayData) value = dayData.value;\n }\n }\n weekDays.push({ date, value });\n currentDate.setDate(currentDate.getDate() + 1);\n }\n if (hasCurrentYearDate) {\n const thursday = weekDays[3].date;\n const weekMonth = thursday.getMonth();\n let monthLabel;\n if (weekMonth !== lastMonth && thursday.getFullYear() === year) {\n monthLabel = MONTH_NAMES_SHORT[weekMonth];\n lastMonth = weekMonth;\n }\n weeks.push({ days: weekDays, monthLabel });\n }\n if (currentDate.getFullYear() > year && currentDate.getMonth() > 0) break;\n weekIndex++;\n }\n return weeks;\n}\nvar CalendarHeatmapChart = ({\n data,\n selectedProject,\n selectedYear,\n selectedType,\n onProjectChange,\n calendarheatmapData,\n testId\n}) => {\n const [isProjectDropdownOpen, setIsProjectDropdownOpen] = React15.useState(false);\n const [hoveredCell, setHoveredCell] = React15.useState(null);\n const [tooltipData, setTooltipData] = React15.useState({\n visible: false,\n month: \"\",\n day: 0,\n value: 0,\n position: { x: 0, y: 0 },\n cellColor: \"rgba(77, 175, 131, 1)\"\n });\n const projects = [\"Project 1\", \"Project 2\"];\n const year = parseInt(selectedYear);\n const yearWeeks = getYearWeeks(year, calendarheatmapData || {}, selectedProject, selectedType);\n const dayRows = [[], [], [], [], [], [], []];\n yearWeeks.forEach((week, weekIdx) => {\n week.days.forEach((day, dayIdx) => {\n dayRows[dayIdx].push({ ...day, weekIdx });\n });\n });\n return /* @__PURE__ */ jsxs16(\"div\", { className: \"w-full h-full flex flex-col\", \"data-testid\": testId, children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex items-center gap-3\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"relative\", children: [\n /* @__PURE__ */ jsxs16(\n \"button\",\n {\n className: \"flex items-center gap-2 bg-transparent px-3 py-1.5 rounded hover:bg-gray-50 transition-colors border-none cursor-pointer\",\n onClick: () => setIsProjectDropdownOpen(!isProjectDropdownOpen),\n children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: selectedProject }),\n /* @__PURE__ */ jsx19(\n \"svg\",\n {\n width: \"12\",\n height: \"12\",\n viewBox: \"0 0 12 12\",\n fill: \"none\",\n className: \"transition-transform duration-200\",\n style: { transform: isProjectDropdownOpen ? \"rotate(180deg)\" : \"rotate(0deg)\" },\n children: /* @__PURE__ */ jsx19(\n \"path\",\n {\n d: \"M2.5 4.5L6 8L9.5 4.5\",\n stroke: \"currentColor\",\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }\n )\n }\n )\n ]\n }\n ),\n isProjectDropdownOpen && /* @__PURE__ */ jsx19(\"div\", { className: \"absolute top-full left-0 mt-1 bg-white border border-gray-200 rounded-lg shadow-lg z-50 min-w-[150px]\", children: projects.map((project, idx) => /* @__PURE__ */ jsx19(\n \"button\",\n {\n className: [\n \"w-full text-left px-4 py-2 bg-white border-none hover:bg-gray-50 transition-colors cursor-pointer\",\n idx === 0 ? \"rounded-tl-lg rounded-tr-lg\" : \"\",\n idx === projects.length - 1 ? \"rounded-bl-lg rounded-br-lg\" : \"\"\n ].join(\" \"),\n onClick: () => {\n onProjectChange(project);\n setIsProjectDropdownOpen(false);\n },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(51,51,51,1)] font-[Poppins,sans-serif] text-sm sm:text-base font-semibold\", children: project })\n },\n project\n )) })\n ] }) }),\n /* @__PURE__ */ jsx19(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-[rgba(224,242,229,1)] border-none cursor-pointer hover:bg-gray-100 transition-colors\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" }),\n /* @__PURE__ */ jsx19(\"span\", { className: \"w-1 h-1 bg-gray-500 rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center justify-end gap-2 mb-6 pr-2\", children: [\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"Less\" }),\n LEGEND_COLORS.map((color) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px]\",\n style: { backgroundColor: color }\n },\n color\n )),\n /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[10px] font-medium mx-1\", children: \"More\" })\n ] }),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex-1 flex\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex flex-col justify-start pr-2 pt-5 shrink-0\", children: [\"M\", \"T\", \"W\", \"T\", \"F\", \"S\", \"S\"].map((day, idx) => /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-3.5 flex items-center justify-end text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[9px] font-medium mb-0.5\",\n children: day\n },\n idx\n )) }),\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex-1\", children: /* @__PURE__ */ jsxs16(\"div\", { className: \"min-w-max\", children: [\n /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-1 h-[18px]\", children: yearWeeks.map((week, idx) => /* @__PURE__ */ jsx19(\"div\", { className: \"w-3.5 text-center\", children: week.monthLabel && /* @__PURE__ */ jsx19(\"span\", { className: \"text-[rgba(100,100,100,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: week.monthLabel }) }, idx)) }),\n dayRows.map((row, rowIdx) => /* @__PURE__ */ jsx19(\"div\", { className: \"flex gap-0.5 mb-0.5\", children: row.map((cell, colIdx) => {\n const { date, value } = cell;\n const color = getActivityColor(value);\n const isCurrentYear = date.getFullYear() === year;\n const cellKey = `${rowIdx}-${colIdx}`;\n const isHovered = hoveredCell === cellKey;\n return /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"w-3.5 h-3.5 rounded-[2px] relative transition-all duration-100\",\n style: {\n backgroundColor: isCurrentYear ? color : \"rgba(240,240,240,1)\",\n opacity: isCurrentYear ? 1 : 0.3,\n cursor: isCurrentYear ? \"pointer\" : \"default\",\n transform: isHovered && isCurrentYear ? \"scale(1.05)\" : \"scale(1)\"\n },\n onMouseEnter: (e) => {\n if (isCurrentYear) {\n setHoveredCell(cellKey);\n const rect = e.currentTarget.getBoundingClientRect();\n const monthName = date.toLocaleDateString(\"en-US\", { month: \"long\" });\n setTooltipData({\n visible: true,\n month: `${monthName} ${date.getFullYear()}`,\n day: date.getDate(),\n value,\n cellColor: color,\n position: { x: rect.left + rect.width / 2, y: rect.top }\n });\n }\n },\n onMouseLeave: () => {\n setHoveredCell(null);\n setTooltipData((prev) => ({ ...prev, visible: false }));\n },\n children: isCurrentYear && value > 0 && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"absolute inset-0 flex items-center justify-center pointer-events-none transition-opacity duration-200\",\n style: { opacity: isHovered ? 1 : 0 },\n children: /* @__PURE__ */ jsx19(\"span\", { className: \"text-[6px] font-bold text-white [text-shadow:0_1px_1px_rgba(0,0,0,0.8)]\", children: date.getDate() })\n }\n )\n },\n colIdx\n );\n }) }, rowIdx))\n ] }) })\n ] }),\n tooltipData.visible && /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999]\",\n style: {\n left: tooltipData.position.x,\n top: tooltipData.position.y,\n transform: \"translate(-50%, -120%)\"\n },\n children: /* @__PURE__ */ jsxs16(\n \"div\",\n {\n className: \"flex flex-col min-w-[127px] max-w-[200px] w-max rounded-md bg-white\",\n style: {\n border: \"1px solid rgba(77, 175, 131, 0.72)\",\n boxShadow: \"0 4px 14px 0 rgba(77, 175, 131, 0.3)\",\n padding: \"8px 48px 11px 10px\"\n },\n children: [\n /* @__PURE__ */ jsxs16(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold leading-normal mb-1.5 whitespace-nowrap\", children: [\n tooltipData.month.split(\" \")[0],\n \" \",\n tooltipData.day\n ] }),\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"h-px bg-[rgba(234,234,234,1)] mb-1.5\",\n style: { marginLeft: \"-2px\", marginRight: \"-40px\", width: \"calc(100% + 42px)\" }\n }\n ),\n /* @__PURE__ */ jsxs16(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx19(\n \"div\",\n {\n className: \"shrink-0 w-3 h-3 rounded-[2px]\",\n style: { backgroundColor: tooltipData.cellColor }\n }\n ),\n /* @__PURE__ */ jsxs16(\"span\", { className: \"text-[rgba(129,129,129,1)] font-[Poppins,sans-serif] text-[11px] font-medium leading-normal whitespace-nowrap\", children: [\n \"Total \",\n tooltipData.value.toLocaleString(),\n \" activity\"\n ] })\n ] })\n ]\n }\n )\n }\n )\n ] });\n};\nCalendarHeatmapChart.displayName = \"CalendarHeatmapChart\";\n\n// src/components/LollipopChart.tsx\nimport { Fragment as Fragment7, jsx as jsx20, jsxs as jsxs17 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS = [\n \"rgba(37,99,235,1)\",\n \"rgba(16,185,129,1)\",\n \"rgba(245,158,11,1)\",\n \"rgba(239,68,68,1)\",\n \"rgba(147,51,234,1)\",\n \"rgba(236,72,153,1)\"\n];\nvar LollipopChart = ({\n title,\n items,\n orientation = \"horizontal\"\n}) => {\n if (!items || items.length === 0) {\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex items-center justify-center\", style: { color: \"rgba(107,114,128,1)\", fontSize: \"14px\" }, children: \"No data available\" })\n ] });\n }\n const maxValue = Math.max(...items.map((item) => item.value), 1);\n const gridPositions = [0, 25, 50, 75, 100];\n const axisLabels = gridPositions.map((pos) => Math.round(pos / 100 * maxValue));\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx20(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx20(MenuButtonDots, {})\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 flex flex-col gap-4 py-4 min-h-[300px] relative overflow-visible\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"w-full overflow-x-visible lg:overflow-x-auto\", children: orientation === \"horizontal\" ? /* @__PURE__ */ jsxs17(Fragment7, { children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col gap-4 relative pl-[140px] w-full min-w-[800px] lg:min-w-0\", children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[140px] right-0 top-0 bottom-0 pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute top-0 bottom-0 w-px\", style: { left: `${pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-[140px] right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex items-center gap-4 relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute text-right pr-4\", style: { width: \"120px\", left: \"-140px\" }, children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500, overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\", display: \"block\" }, className: \"sm:text-sm\", children: item.label }) }),\n /* @__PURE__ */ jsxs17(\"div\", { className: \"flex-1 relative h-10 flex items-center\", children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"relative rounded-[2px] transition-all\",\n style: { width: `${percentage}%`, height: \"4px\", background: color },\n children: /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute right-[-10px] top-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n transform: \"translateY(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n )\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"ml-4 min-w-[50px] text-sm sm:text-base font-semibold\",\n style: { color: \"rgba(17,24,39,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: item.value\n }\n )\n ] })\n ] }, `${item.label}-${index}`);\n })\n ] }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-between mt-2 pl-[140px]\", style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" }, children: axisLabels.map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx)) })\n ] }) : (\n /* Vertical Chart */\n /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"flex flex-col h-full w-full relative pb-[60px] pl-[50px] min-w-[800px] lg:min-w-0\",\n style: { minHeight: \"350px\" },\n children: [\n /* @__PURE__ */ jsxs17(\"div\", { className: \"absolute left-[50px] right-0 top-0 bottom-[60px] pointer-events-none\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 bottom-0 h-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-px\", style: { background: \"rgba(209,213,219,1)\" } }),\n gridPositions.slice(1).map((pos, idx) => /* @__PURE__ */ jsx20(\"div\", { className: \"absolute left-0 right-0 h-px\", style: { top: `${100 - pos}%`, background: \"rgba(229,231,235,0.8)\" } }, idx))\n ] }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-0 top-0 bottom-0 flex flex-col justify-between text-right pr-[5px] w-[45px]\",\n style: { fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", color: \"rgba(107,114,128,1)\" },\n children: [...axisLabels].reverse().map((label, idx) => /* @__PURE__ */ jsx20(\"span\", { children: label }, idx))\n }\n ),\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex justify-around items-end w-full flex-1 gap-4 px-4 relative\", children: items.map((item, index) => {\n const percentage = item.value / maxValue * 100;\n const color = item.color || DEFAULT_COLORS[index % DEFAULT_COLORS.length];\n return /* @__PURE__ */ jsxs17(\"div\", { className: \"flex flex-col items-center gap-2 flex-1 min-w-[60px] max-w-[100px] h-full relative\", children: [\n /* @__PURE__ */ jsx20(\"div\", { className: \"flex-1 relative w-10 flex flex-col justify-end items-center h-full\", children: /* @__PURE__ */ jsxs17(\n \"div\",\n {\n className: \"relative w-1 rounded-[2px] transition-all\",\n style: {\n height: `${percentage}%`,\n background: color,\n minHeight: percentage > 0 ? \"8px\" : \"0px\"\n },\n children: [\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute left-1/2 w-5 h-5 rounded-full border-[3px] border-white transition-all hover:scale-110\",\n style: {\n top: \"-10px\",\n transform: \"translateX(-50%)\",\n background: color,\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }\n }\n ),\n /* @__PURE__ */ jsx20(\n \"span\",\n {\n className: \"absolute left-1/2 whitespace-nowrap text-sm sm:text-base font-semibold text-center\",\n style: {\n top: \"-30px\",\n transform: \"translateX(-50%)\",\n color: \"rgba(17,24,39,1)\",\n fontFamily: \"Poppins, sans-serif\"\n },\n children: item.value\n }\n )\n ]\n }\n ) }),\n /* @__PURE__ */ jsx20(\n \"div\",\n {\n className: \"absolute text-center\",\n style: { bottom: \"-50px\", left: \"50%\", transform: \"translateX(-50%)\", maxWidth: \"100px\" },\n children: /* @__PURE__ */ jsx20(\"span\", { style: { color: \"rgba(55,65,81,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"12px\", fontWeight: 500 }, className: \"sm:text-sm\", children: item.label })\n }\n )\n ] }, `${item.label}-${index}`);\n }) })\n ]\n }\n )\n ) }) })\n ] });\n};\nvar MenuButtonDots = () => /* @__PURE__ */ jsx20(\"button\", { className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx20(\"div\", { className: \"flex gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx20(\"span\", { className: \"w-1 h-1 rounded-full\", style: { background: \"rgba(107,114,128,1)\" } }, i)) }) });\nLollipopChart.displayName = \"LollipopChart\";\n\n// src/components/ColumnChart.tsx\nimport { jsx as jsx21, jsxs as jsxs18 } from \"react/jsx-runtime\";\nvar defaultGradient = \"linear-gradient(180deg, rgba(77, 175, 131, 1) 0%, rgba(23, 97, 163, 1) 100%)\";\nvar ColumnChart = ({\n title,\n columns,\n yAxisConfig\n}) => {\n const safeColumns = columns || [];\n const maxValue = yAxisConfig?.max || 8e3;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 2e3, 4e3, 6e3, 8e3];\n const formatValue = (value) => {\n if (value >= 1e3) return `${(value / 1e3).toFixed(1)}k`;\n return value.toString();\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n const percentage = (value - minValue) / (maxValue - minValue) * 100;\n return Math.max(0, Math.min(100, percentage));\n };\n return /* @__PURE__ */ jsxs18(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-sm font-semibold leading-normal sm:text-base\", children: title }),\n /* @__PURE__ */ jsx21(\"button\", { className: \"w-6 h-6 flex items-center justify-center rounded hover:bg-[rgba(243,244,246,1)] bg-transparent border-none cursor-pointer transition-colors sm:w-8 sm:h-8\", children: /* @__PURE__ */ jsxs18(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx21(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] }) })\n ] }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-col flex-1 relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex flex-row w-full flex-1 relative\", children: [\n /* @__PURE__ */ jsx21(\"div\", { className: \"flex flex-col justify-between items-end pr-2 w-10 h-[250px] flex-shrink-0\", children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx21(\n \"span\",\n {\n className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-normal sm:text-xs\",\n children: label >= 1e3 ? `${label / 1e3}k` : label\n },\n `y-${idx}`\n )) }),\n /* @__PURE__ */ jsxs18(\"div\", { className: \"flex-1 relative flex flex-col h-[250px]\", children: [\n /* @__PURE__ */ jsxs18(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n \"data-testid\": `column-${idx}`,\n className: \"absolute left-0 right-0 h-px bg-[rgba(229,231,235,1)] z-[1]\",\n style: { top: `${position}%` }\n },\n `grid-${idx}`\n );\n }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-0.5 bg-[rgba(125,125,125,1)] z-[2]\" }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-0.5 bg-[rgba(125,125,125,1)] z-[2]\" })\n ] }),\n /* @__PURE__ */ jsx21(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10 gap-0\", children: safeColumns.map((column, index) => {\n const columnHeightPercentage = calculateHeight(column.value);\n const gradient = column.gradient || column.color || defaultGradient;\n return /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-1\",\n children: /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"w-full max-w-[60px] rounded-t-[4px] rounded-b-none relative transition-all duration-300 min-h-[2px] hover:opacity-85 hover:-translate-y-0.5\",\n style: {\n height: `${columnHeightPercentage}%`,\n background: gradient\n },\n children: /* @__PURE__ */ jsx21(\"div\", { className: \"absolute top-[-24px] left-1/2 -translate-x-1/2 text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-medium whitespace-nowrap sm:text-xs sm:top-[-26px]\", children: formatValue(column.value) })\n }\n )\n },\n `${column.name}-${index}`\n );\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex justify-start px-[10px] mt-3\",\n style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" },\n children: safeColumns.map((column, index) => /* @__PURE__ */ jsx21(\n \"div\",\n {\n className: \"flex-1 flex justify-center items-start max-w-[100px] px-1 min-w-0\",\n children: /* @__PURE__ */ jsx21(\"span\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[11px] font-normal text-center break-words hyphens-auto leading-[1.3] max-w-full whitespace-normal sm:text-xs\", children: column.name })\n },\n `label-${index}`\n ))\n }\n )\n ] })\n ] });\n};\nColumnChart.displayName = \"ColumnChart\";\n\n// src/components/KPIChart.tsx\nimport React16, { useMemo as useMemo2, useState as useState10, useRef as useRef5, useEffect as useEffect8 } from \"react\";\nimport { Fragment as Fragment8, jsx as jsx22, jsxs as jsxs19 } from \"react/jsx-runtime\";\nvar createLinearPath = (points) => {\n if (points.length === 0) return \"\";\n if (points.length === 1) return `M ${points[0].x},${points[0].y}`;\n let path = `M ${points[0].x},${points[0].y}`;\n for (let i = 1; i < points.length; i++) path += ` L ${points[i].x},${points[i].y}`;\n return path;\n};\nvar createAreaPath = (points, height) => {\n if (points.length === 0) return \"\";\n const linePath = createLinearPath(points);\n const lastPoint = points[points.length - 1];\n const firstPoint = points[0];\n return `${linePath} L ${lastPoint.x},${height} L ${firstPoint.x},${height} Z`;\n};\nvar calculatePercentageChange = (data) => {\n if (!data || data.length < 2) return 0;\n const firstValue = data[0];\n const lastValue = data[data.length - 1];\n if (firstValue === 0) return lastValue > 0 ? 100 : lastValue < 0 ? -100 : 0;\n return Math.round((lastValue - firstValue) / Math.abs(firstValue) * 1e3) / 10;\n};\nvar getTimeLabel = (period, dataLength, timestamps) => {\n switch (period) {\n case \"1D\":\n return \"Last 1 Day\";\n case \"1W\":\n return \"Last 1 Week\";\n case \"1M\":\n return \"Last 1 Month\";\n case \"6M\":\n return \"Last 6 Months\";\n case \"1Y\":\n return \"Last 1 Year\";\n case \"MAX\":\n if (timestamps && timestamps.length >= 2) {\n const startDate = new Date(timestamps[0]);\n const endDate = new Date(timestamps[timestamps.length - 1]);\n const monthsDiff = (endDate.getFullYear() - startDate.getFullYear()) * 12 + (endDate.getMonth() - startDate.getMonth());\n if (monthsDiff === 0) {\n const daysDiff = Math.ceil((endDate.getTime() - startDate.getTime()) / 864e5);\n return `Last ${daysDiff} Day${daysDiff > 1 ? \"s\" : \"\"}`;\n } else if (monthsDiff < 12) {\n return `Last ${monthsDiff} Month${monthsDiff > 1 ? \"s\" : \"\"}`;\n } else {\n const years = Math.floor(monthsDiff / 12);\n const months = monthsDiff % 12;\n return months === 0 ? `Last ${years} Year${years > 1 ? \"s\" : \"\"}` : `Last ${years}y ${months}m`;\n }\n }\n return `All Data (${dataLength} points)`;\n default:\n return \"All Data\";\n }\n};\nvar getDateRange = (period, filteredTimestamps, allTimestamps) => {\n if (period === \"MAX\" && allTimestamps && allTimestamps.length >= 2) {\n return formatDateRange(new Date(allTimestamps[0]), new Date(allTimestamps[allTimestamps.length - 1]));\n }\n if (filteredTimestamps && filteredTimestamps.length >= 2) {\n return formatDateRange(new Date(filteredTimestamps[0]), new Date(filteredTimestamps[filteredTimestamps.length - 1]));\n } else if (filteredTimestamps && filteredTimestamps.length === 1) {\n return formatSingleDate(new Date(filteredTimestamps[0]));\n }\n return \"No Date Range\";\n};\nvar formatDateRange = (startDate, endDate) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n const sameYear = startDate.getFullYear() === endDate.getFullYear();\n const sm = monthNames[startDate.getMonth()];\n const sd = String(startDate.getDate()).padStart(2, \"0\");\n const sy = startDate.getFullYear();\n const em = monthNames[endDate.getMonth()];\n const ed = String(endDate.getDate()).padStart(2, \"0\");\n const ey = endDate.getFullYear();\n return sameYear ? `${sm} ${sd} - ${em} ${ed}` : `${sm} ${sd} ${sy} - ${em} ${ed} ${ey}`;\n};\nvar formatSingleDate = (date) => {\n const monthNames = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\n return `${monthNames[date.getMonth()]} ${String(date.getDate()).padStart(2, \"0\")}, ${date.getFullYear()}`;\n};\nvar calculateSum = (data) => data?.reduce((s, v) => s + v, 0) ?? 0;\nvar formatCurrencyValue = (value) => {\n if (value === 0) return \"$0\";\n const abs = Math.abs(value);\n const prefix = value < 0 ? \"-\" : \"\";\n if (abs >= 1e9) return `${prefix}$${(abs / 1e9).toFixed(1)}B`;\n if (abs >= 1e6) return `${prefix}$${(abs / 1e6).toFixed(1)}M`;\n if (abs >= 1e3) return `${prefix}$${(abs / 1e3).toFixed(1)}K`;\n return `${prefix}$${abs.toFixed(0)}`;\n};\nvar KPIChart = ({ data }) => {\n const [hoveredIndex, setHoveredIndex] = React16.useState(null);\n const [tooltipPos, setTooltipPos] = React16.useState({ x: 0, y: 0 });\n const [selectedPeriod, setSelectedPeriod] = React16.useState(\n data.timePeriods && data.timePeriods.length > 0 ? data.timePeriods[data.timePeriods.length - 1] : \"MAX\"\n );\n const containerRef = React16.useRef(null);\n const { filteredData, filteredTimestamps } = useMemo2(() => {\n if (!data.timePeriods || !data.timestamps || selectedPeriod === \"MAX\") {\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const now = /* @__PURE__ */ new Date();\n let cutoffDate = /* @__PURE__ */ new Date();\n switch (selectedPeriod) {\n case \"1D\":\n cutoffDate.setDate(now.getDate() - 1);\n break;\n case \"1W\":\n cutoffDate.setDate(now.getDate() - 7);\n break;\n case \"1M\":\n cutoffDate.setMonth(now.getMonth() - 1);\n break;\n case \"6M\":\n cutoffDate.setMonth(now.getMonth() - 6);\n break;\n case \"1Y\":\n cutoffDate.setFullYear(now.getFullYear() - 1);\n break;\n default:\n return { filteredData: data.data, filteredTimestamps: data.timestamps || [] };\n }\n const filtered = [];\n const filteredTS = [];\n data.timestamps.forEach((timestamp, index) => {\n const dataDate = new Date(timestamp);\n if (dataDate >= cutoffDate && dataDate <= now && index < data.data.length) {\n filtered.push(data.data[index]);\n filteredTS.push(timestamp);\n }\n });\n return {\n filteredData: filtered.length > 0 ? filtered : data.data,\n filteredTimestamps: filteredTS.length > 0 ? filteredTS : data.timestamps || []\n };\n }, [data.data, data.timestamps, data.timePeriods, selectedPeriod]);\n const percentageChange = useMemo2(() => calculatePercentageChange(filteredData), [filteredData]);\n const isPositive = percentageChange >= 0;\n const dynamicTimeLabel = useMemo2(() => getTimeLabel(selectedPeriod, filteredData.length, data.timestamps), [selectedPeriod, filteredData.length, data.timestamps]);\n const dynamicDateRange = useMemo2(() => getDateRange(selectedPeriod, filteredTimestamps, data.timestamps), [selectedPeriod, filteredTimestamps, data.timestamps]);\n const dynamicValue = useMemo2(() => formatCurrencyValue(calculateSum(filteredData)), [filteredData]);\n const { points, chartWidth, chartHeight } = useMemo2(() => {\n const width = 400;\n const height = 100;\n const padding = 5;\n if (!filteredData || filteredData.length === 0) return { points: [], minValue: 0, maxValue: 0, chartWidth: width, chartHeight: height };\n const min = Math.min(...filteredData);\n const max = Math.max(...filteredData);\n const range = max - min || 1;\n const calculatedPoints = filteredData.map((value, index) => ({\n x: padding + index / (filteredData.length - 1) * (width - padding * 2),\n y: height - padding - (value - min) / range * (height - padding * 2),\n value\n }));\n return { points: calculatedPoints, minValue: min, maxValue: max, chartWidth: width, chartHeight: height };\n }, [filteredData]);\n const linearPath = useMemo2(() => createLinearPath(points), [points]);\n const areaPath = useMemo2(() => createAreaPath(points, chartHeight), [points, chartHeight]);\n const gradientId = useMemo2(\n () => `kpi-gradient-${isPositive ? \"positive\" : \"negative\"}-${Math.random().toString(36).substr(2, 9)}`,\n [isPositive]\n );\n const handleMouseMove = (event) => {\n if (!containerRef.current || points.length === 0) return;\n const svg = event.currentTarget.ownerSVGElement;\n if (!svg) return;\n const rect = svg.getBoundingClientRect();\n const x = (event.clientX - rect.left) / rect.width * chartWidth;\n let nearestIndex = 0;\n let minDistance = Math.abs(points[0].x - x);\n points.forEach((point, index) => {\n const distance = Math.abs(point.x - x);\n if (distance < minDistance) {\n minDistance = distance;\n nearestIndex = index;\n }\n });\n setHoveredIndex(nearestIndex);\n setTooltipPos({\n x: points[nearestIndex].x / chartWidth * rect.width,\n y: points[nearestIndex].y / chartHeight * rect.height\n });\n };\n const positiveGradientStop = isPositive ? [\n { offset: \"0%\", color: \"rgba(34,197,94,0.2)\" },\n { offset: \"50%\", color: \"rgba(34,197,94,0.1)\" },\n { offset: \"100%\", color: \"rgba(34,197,94,0.02)\" }\n ] : [\n { offset: \"0%\", color: \"rgba(239,68,68,0.2)\" },\n { offset: \"50%\", color: \"rgba(239,68,68,0.1)\" },\n { offset: \"100%\", color: \"rgba(239,68,68,0.02)\" }\n ];\n const trendColor = isPositive ? \"rgba(34,197,94,1)\" : \"rgba(239,68,68,1)\";\n const changeIndicatorBg = isPositive ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n return /* @__PURE__ */ jsxs19(\n \"div\",\n {\n ref: containerRef,\n className: \"w-full flex flex-col overflow-hidden rounded-[10px] p-4 sm:px-6 sm:pb-6 sm:pt-5\",\n style: {\n height: \"350px\",\n border: \"1px solid rgba(23,97,163,1)\",\n background: \"rgba(241,247,248,1)\",\n boxShadow: \"0 1px 2px 0 rgba(0,0,0,0.05)\"\n },\n children: [\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex items-start justify-between mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsx22(\"div\", { className: \"relative flex-1\", children: /* @__PURE__ */ jsx22(\n \"h3\",\n {\n className: \"text-[13px] sm:text-sm lg:text-[15px] font-medium leading-[1.4]\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.01em\" },\n children: data.title\n }\n ) }),\n data.timePeriods && data.timePeriods.length > 0 && /* @__PURE__ */ jsx22(\"div\", { className: \"absolute left-1/2 -translate-x-1/2 flex gap-[6px] sm:gap-2 items-center\", children: data.timePeriods.map((period) => /* @__PURE__ */ jsx22(\n \"button\",\n {\n type: \"button\",\n onClick: () => setSelectedPeriod(period),\n className: \"px-3 py-1 sm:px-[14px] sm:py-[5px] lg:px-4 lg:py-[6px] rounded-[20px] text-[11px] sm:text-xs lg:text-[13px] font-medium whitespace-nowrap border-none cursor-pointer transition-all\",\n style: {\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n backgroundColor: selectedPeriod === period ? \"rgba(23,97,163,1)\" : \"transparent\",\n color: selectedPeriod === period ? \"white\" : \"rgba(148,163,184,1)\"\n },\n children: period\n },\n period\n )) }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"flex-shrink-0\", children: /* @__PURE__ */ jsxs19(\n \"div\",\n {\n className: \"flex items-center gap-[3px] sm:gap-1 px-2 sm:px-[10px] py-[3px] sm:py-1 rounded-[6px]\",\n style: { backgroundColor: changeIndicatorBg, transition: \"background-color 0.3s ease-in-out\" },\n children: [\n /* @__PURE__ */ jsx22(\n \"svg\",\n {\n className: \"w-[11px] h-[11px] sm:w-3 sm:h-3 lg:w-[13px] lg:h-[13px]\",\n viewBox: \"0 0 12 12\",\n style: { fill: trendColor, transition: \"fill 0.3s ease-in-out\" },\n children: isPositive ? /* @__PURE__ */ jsx22(\"path\", { d: \"M6 2L10 6H8V10H4V6H2L6 2Z\" }) : /* @__PURE__ */ jsx22(\"path\", { d: \"M6 10L2 6H4V2H8V6H10L6 10Z\" })\n }\n ),\n /* @__PURE__ */ jsxs19(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-semibold\",\n style: { color: trendColor, fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"color 0.3s ease-in-out\" },\n children: [\n Math.abs(percentageChange),\n \"%\"\n ]\n }\n )\n ]\n }\n ) })\n ] }),\n /* @__PURE__ */ jsx22(\"div\", { className: \"mb-[14px] sm:mb-4 lg:mb-[18px]\", children: /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"text-[28px] sm:text-[36px] md:text-[40px] lg:text-[42px] xl:text-[44px] font-bold leading-[1.1]\",\n style: { color: \"rgba(15,23,42,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", letterSpacing: \"-0.02em\", transition: \"opacity 0.3s ease-in-out\" },\n children: dynamicValue\n }\n ) }),\n /* @__PURE__ */ jsxs19(\"div\", { className: \"flex-1 relative min-h-[100px] sm:min-h-[110px] lg:min-h-[120px] mb-3 sm:mb-[14px] lg:mb-4\", children: [\n /* @__PURE__ */ jsxs19(\n \"svg\",\n {\n className: \"w-full h-full overflow-visible\",\n viewBox: `0 0 ${chartWidth} ${chartHeight}`,\n preserveAspectRatio: \"none\",\n children: [\n /* @__PURE__ */ jsx22(\"defs\", { children: /* @__PURE__ */ jsx22(\"linearGradient\", { id: gradientId, x1: \"0%\", y1: \"0%\", x2: \"0%\", y2: \"100%\", children: positiveGradientStop.map((s) => /* @__PURE__ */ jsx22(\"stop\", { offset: s.offset, stopColor: s.color }, s.offset)) }) }),\n /* @__PURE__ */ jsx22(\"path\", { d: areaPath, fill: `url(#${gradientId})`, stroke: \"none\", style: { transition: \"d 0.4s ease-in-out, fill 0.3s ease-in-out\" } }),\n /* @__PURE__ */ jsx22(\n \"path\",\n {\n d: linearPath,\n fill: \"none\",\n stroke: trendColor,\n strokeWidth: \"1.5\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n style: { transition: \"d 0.4s ease-in-out, stroke 0.3s ease-in-out\" }\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && !isNaN(points[hoveredIndex].x) && /* @__PURE__ */ jsxs19(Fragment8, { children: [\n /* @__PURE__ */ jsx22(\n \"line\",\n {\n x1: points[hoveredIndex].x,\n y1: \"0\",\n x2: points[hoveredIndex].x,\n y2: chartHeight,\n stroke: \"rgba(148,163,184,0.3)\",\n strokeWidth: \"1\",\n strokeDasharray: \"4 4\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n ),\n /* @__PURE__ */ jsx22(\n \"circle\",\n {\n cx: points[hoveredIndex].x,\n cy: points[hoveredIndex].y,\n r: \"3.5\",\n fill: trendColor,\n stroke: \"white\",\n strokeWidth: \"1\",\n style: { opacity: 1, transition: \"opacity 0.2s\" }\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"rect\",\n {\n x: \"0\",\n y: \"0\",\n width: chartWidth,\n height: chartHeight,\n fill: \"transparent\",\n style: { cursor: \"crosshair\" },\n onMouseMove: handleMouseMove,\n onMouseLeave: () => setHoveredIndex(null)\n }\n )\n ]\n }\n ),\n hoveredIndex !== null && points[hoveredIndex] && /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"absolute pointer-events-none z-10 rounded-[6px] text-xs sm:text-[13px] lg:text-sm font-semibold whitespace-nowrap px-[10px] py-[6px] sm:px-3 sm:py-2 lg:px-[14px] lg:py-[10px]\",\n style: {\n left: tooltipPos.x,\n top: tooltipPos.y,\n backgroundColor: \"rgba(220,235,238,1)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"'Inter', 'Poppins', sans-serif\",\n transform: \"translate(-50%, -100%) translateY(-8px)\",\n boxShadow: \"0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06)\",\n border: \"1px solid rgba(23,97,163,0.2)\",\n opacity: 1,\n transition: \"opacity 0.2s\"\n },\n children: points[hoveredIndex].value.toLocaleString()\n }\n )\n ] }),\n /* @__PURE__ */ jsx22(\n \"div\",\n {\n className: \"flex items-center justify-between pt-[10px] sm:pt-3 lg:pt-[14px] flex-shrink-0\",\n style: { borderTop: \"1px solid rgba(226,232,240,0.6)\" },\n children: [dynamicTimeLabel, dynamicDateRange].map((text, i) => /* @__PURE__ */ jsx22(\n \"span\",\n {\n className: \"text-[11px] sm:text-xs lg:text-[13px] font-medium\",\n style: { color: \"rgba(148,163,184,1)\", fontFamily: \"'Inter', 'Poppins', sans-serif\", transition: \"opacity 0.3s ease-in-out\" },\n children: text\n },\n i\n ))\n }\n )\n ]\n }\n );\n};\nKPIChart.displayName = \"KPIChart\";\n\n// src/components/GroupBarChart.tsx\nimport { jsx as jsx23, jsxs as jsxs20 } from \"react/jsx-runtime\";\nvar DEFAULT_BAR_COLORS = {\n revenue: \"rgba(23,97,163,1)\",\n profit: \"rgba(77,175,131,1)\",\n loss: \"rgba(220,38,38,1)\",\n cost: \"rgba(47,164,169,1)\"\n};\nvar GroupBarChart = ({\n title,\n groups,\n legends,\n yAxisConfig\n}) => {\n const safeGroups = groups || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_BAR_COLORS;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const BAR_COLORS = getColorMap();\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const getProfitOrLoss = (group) => {\n if (group.profitOrLoss !== void 0 && group.profitOrLoss !== null) return group.profitOrLoss;\n return group.revenue - group.cost;\n };\n return /* @__PURE__ */ jsxs20(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx23(\n \"div\",\n {\n style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 },\n className: \"sm:text-base\",\n children: title\n }\n ),\n /* @__PURE__ */ jsx23(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx23(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx23(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex flex-col justify-between items-end pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 },\n className: \"sm:text-xs\",\n children: label\n },\n idx\n )) }),\n /* @__PURE__ */ jsxs20(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs20(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute left-0 right-0 h-px z-[1]\",\n style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" }\n },\n idx\n );\n }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeGroups.map((group, index) => {\n const profitOrLossValue = getProfitOrLoss(group);\n const isProfitable = profitOrLossValue >= 0;\n const profitLossColor = isProfitable ? BAR_COLORS.profit : BAR_COLORS.loss;\n const profitLossAbsValue = Math.abs(profitOrLossValue);\n return /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-row items-end justify-center relative h-full gap-1 px-2\", children: [\n { value: group.revenue, color: BAR_COLORS.revenue },\n { value: profitLossAbsValue, color: profitLossColor },\n { value: group.cost, color: BAR_COLORS.cost }\n ].map(({ value, color }, barIdx) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[30px] h-full\", children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"w-full rounded-t min-h-[2px] relative transition-all hover:opacity-85 hover:-translate-y-[2px]\",\n style: { height: `${calculateHeight(value)}%`, background: color },\n children: /* @__PURE__ */ jsx23(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2\",\n style: {\n top: \"-24px\",\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"10px\",\n fontWeight: 500\n },\n children: value.toString()\n }\n )\n }\n ) }, barIdx)) }, `${group.name}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx23(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeGroups.map((group, index) => /* @__PURE__ */ jsx23(\"div\", { className: \"flex-1 flex justify-center items-start px-2 min-w-0\", children: /* @__PURE__ */ jsx23(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: group.name\n }\n ) }, index)) })\n ] })\n ] });\n};\nGroupBarChart.displayName = \"GroupBarChart\";\n\n// src/components/StackBarChart.tsx\nimport { useState as useState11 } from \"react\";\nimport { jsx as jsx24, jsxs as jsxs21 } from \"react/jsx-runtime\";\nvar DEFAULT_COLORS2 = {\n aggregating: \"rgba(37,99,235,1)\",\n outstanding: \"rgba(34,197,94,1)\",\n writeOff: \"rgba(239,68,68,1)\"\n};\nvar StackBarChart = ({\n title,\n data,\n legends,\n yAxisConfig\n}) => {\n const [tooltip, setTooltip] = useState11(null);\n const safeData = data || [];\n const maxValue = yAxisConfig?.max || 125;\n const minValue = yAxisConfig?.min || 0;\n const yAxisLabels = yAxisConfig?.labels || [0, 25, 50, 75, 100, 125];\n const getColorMap = () => {\n if (!legends || legends.length === 0) return DEFAULT_COLORS2;\n const colorMap = {};\n legends.forEach((legend) => {\n colorMap[legend.key] = legend.color;\n });\n return colorMap;\n };\n const COLORS = getColorMap();\n const getLabel = (key) => {\n if (legends && legends.length > 0) {\n const legend = legends.find((l) => l.key === key);\n if (legend) return legend.label;\n }\n const defaultLabels = {\n aggregating: \"Aggregating Amount\",\n outstanding: \"Outstanding Amount\",\n writeOff: \"Write-Off Amount\"\n };\n return defaultLabels[key] || key;\n };\n const formatValue = (value) => {\n if (value >= 1e3) return `$${(value / 1e3).toFixed(0)}k`;\n return `$${value}`;\n };\n const calculateHeight = (value) => {\n if (maxValue === minValue) return 0;\n return Math.max(0, Math.min(100, (value - minValue) / (maxValue - minValue) * 100));\n };\n const handleSegmentMouseEnter = (event, dayData, type) => {\n const rect = event.currentTarget.getBoundingClientRect();\n setTooltip({ day: dayData.day, type, value: dayData[type], label: getLabel(type), x: rect.left + rect.width / 2, y: rect.top });\n };\n return /* @__PURE__ */ jsxs21(\"div\", { className: \"w-full h-full flex flex-col\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex items-center justify-between mb-6\", children: [\n /* @__PURE__ */ jsx24(\"div\", { style: { color: \"rgba(23,97,163,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"14px\", fontWeight: 600 }, className: \"sm:text-base\", children: title }),\n /* @__PURE__ */ jsx24(\"button\", { className: \"w-6 h-6 sm:w-8 sm:h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\", children: /* @__PURE__ */ jsx24(\"div\", { className: \"flex gap-[2px] sm:gap-1\", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx24(\"span\", { className: \"w-[2px] h-[2px] sm:w-1 sm:h-1 rounded-full\", style: { backgroundColor: \"rgba(107,114,128,1)\" } }, i)) }) })\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 flex flex-col relative min-h-[300px] w-full\", children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-row w-full\", children: [\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex flex-col justify-between items-start pr-2 flex-shrink-0\", style: { width: \"40px\", height: \"250px\" }, children: yAxisLabels.slice().reverse().map((label, idx) => /* @__PURE__ */ jsxs21(\"span\", { style: { color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\", fontSize: \"10px\", fontWeight: 400 }, className: \"sm:text-xs\", children: [\n \"$\",\n label\n ] }, idx)) }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"flex-1 relative flex flex-col\", style: { height: \"250px\" }, children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"absolute inset-0 pointer-events-none\", children: [\n yAxisLabels.map((label, idx) => {\n const position = 100 - (label - yAxisLabels[0]) / (yAxisLabels[yAxisLabels.length - 1] - yAxisLabels[0]) * 100;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 right-0 h-px z-[1]\", style: { top: `${position}%`, backgroundColor: \"rgba(229,231,235,1)\" } }, idx);\n }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute left-0 top-0 bottom-0 w-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"absolute bottom-0 left-0 right-0 h-[2px] z-[2]\", style: { backgroundColor: \"rgba(125,125,125,1)\" } })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"relative flex-1 flex items-end justify-start px-[10px] h-full z-10\", children: safeData.map((dayData, index) => {\n const total = dayData.aggregating + dayData.outstanding + dayData.writeOff;\n const totalHeight = calculateHeight(total);\n const aggregatingPercent = total > 0 ? dayData.aggregating / total * 100 : 0;\n const outstandingPercent = total > 0 ? dayData.outstanding / total * 100 : 0;\n const writeOffPercent = total > 0 ? dayData.writeOff / total * 100 : 0;\n return /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex flex-col items-center justify-end relative max-w-[100px] h-full px-2\", children: /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"w-full max-w-[60px] relative flex flex-col-reverse rounded-t overflow-hidden transition-all\",\n style: { height: `${totalHeight}%` },\n children: [\n /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"absolute whitespace-nowrap left-1/2 -translate-x-1/2 text-[11px] sm:text-xs font-medium\",\n style: { top: \"-24px\", color: \"rgba(94,94,94,1)\", fontFamily: \"Poppins, sans-serif\" },\n children: formatValue(total)\n }\n ),\n dayData.writeOff > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${writeOffPercent}%`, backgroundColor: COLORS.writeOff || DEFAULT_COLORS2.writeOff },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"writeOff\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.outstanding > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${outstandingPercent}%`, backgroundColor: COLORS.outstanding || DEFAULT_COLORS2.outstanding },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"outstanding\"),\n onMouseLeave: () => setTooltip(null)\n }\n ),\n dayData.aggregating > 0 && /* @__PURE__ */ jsx24(\n \"div\",\n {\n className: \"cursor-pointer transition-all hover:opacity-85 hover:brightness-110\",\n style: { height: `${aggregatingPercent}%`, backgroundColor: COLORS.aggregating || DEFAULT_COLORS2.aggregating },\n onMouseEnter: (e) => handleSegmentMouseEnter(e, dayData, \"aggregating\"),\n onMouseLeave: () => setTooltip(null)\n }\n )\n ]\n }\n ) }, `${dayData.day}-${index}`);\n }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx24(\"div\", { className: \"flex justify-start px-[10px] mt-3\", style: { marginLeft: \"40px\", width: \"calc(100% - 40px)\" }, children: safeData.map((dayData, index) => /* @__PURE__ */ jsx24(\"div\", { className: \"flex-1 flex justify-center items-start max-w-[100px] px-2 min-w-0\", children: /* @__PURE__ */ jsx24(\n \"span\",\n {\n style: {\n color: \"rgba(94,94,94,1)\",\n fontFamily: \"Poppins, sans-serif\",\n fontSize: \"11px\",\n fontWeight: 400,\n textAlign: \"center\",\n wordBreak: \"break-word\",\n overflowWrap: \"break-word\",\n lineHeight: 1.3,\n whiteSpace: \"normal\"\n },\n className: \"sm:text-xs\",\n children: dayData.day\n }\n ) }, index)) })\n ] }),\n tooltip && /* @__PURE__ */ jsxs21(\n \"div\",\n {\n className: \"fixed pointer-events-none z-[9999] rounded-lg text-xs sm:text-[13px] font-medium px-[14px] py-[10px] sm:px-4 sm:py-3 whitespace-nowrap\",\n style: {\n left: tooltip.x,\n top: tooltip.y,\n backgroundColor: \"rgba(158,153,153,0.75)\",\n backdropFilter: \"blur(10px)\",\n color: \"rgba(0,0,0,1)\",\n fontFamily: \"Poppins, sans-serif\",\n boxShadow: \"0 2px 12px rgba(0,0,0,0.06), 0 1px 4px rgba(0,0,0,0.04)\",\n border: \"1px solid rgba(209,213,219,0.94)\",\n transform: \"translate(-50%, -100%) translateY(-10px)\",\n opacity: 1\n },\n children: [\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-[11px] sm:text-xs font-normal mb-1\", style: { color: \"rgba(0,0,0,0.7)\" }, children: [\n tooltip.day,\n \" - \",\n tooltip.label\n ] }),\n /* @__PURE__ */ jsxs21(\"div\", { className: \"text-sm sm:text-[15px] font-semibold\", style: { color: \"rgba(0,0,0,1)\" }, children: [\n \"$\",\n tooltip.value\n ] })\n ]\n }\n )\n ] });\n};\nStackBarChart.displayName = \"StackBarChart\";\n\n// src/components/MahatiChartAnalyticsWidget.tsx\nimport { Fragment as Fragment9, jsx as jsx25, jsxs as jsxs22 } from \"react/jsx-runtime\";\nvar assetSrc3 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar FALLBACK_ICONS = {\n performancePeakIcon: \"/chart-icons/performance-peak-icon.png\",\n calendarIcon: \"/chart-icons/calendar-3.png\",\n increaseIcon: \"/chart-icons/increase.png\",\n decreaseIcon: \"/chart-icons/decrease.png\"\n};\nvar getIconSrc = (imported, fallback) => {\n const src = assetSrc3(imported);\n return src || fallback;\n};\nvar performancePeakIcon = \"\";\nvar calendarIcon = \"\";\nvar increaseIcon = \"\";\nvar decreaseIcon = \"\";\ntry {\n performancePeakIcon = require_performance_peak_icon();\n calendarIcon = require_calendar_3();\n increaseIcon = require_increase();\n decreaseIcon = require_decrease();\n} catch (e) {\n}\nvar colorToClass = (color) => {\n const c = typeof color === \"string\" ? color.toLowerCase() : \"\";\n if (c.startsWith(\"rgba(\") || c.startsWith(\"rgb(\")) return c;\n const map = {\n \"#7dcfaf\": \"#7DCFAF\",\n \"#f28a18\": \"#F28A18\",\n \"#2094f3\": \"#2094F3\",\n \"#909592\": \"#909592\",\n \"#bcc6cb\": \"#BCC6CB\",\n \"#3b82f6\": \"#3B82F6\",\n \"#10b981\": \"#10B981\",\n \"#ef4444\": \"#EF4444\",\n \"#f97316\": \"#F97316\",\n \"#f59e0b\": \"#F59E0B\",\n \"#8b5cf6\": \"#8B5CF6\",\n \"#ec4899\": \"#EC4899\",\n \"#6366f1\": \"#6366F1\"\n };\n return map[c] || (typeof color === \"string\" ? color : \"#D1D5DB\");\n};\nvar getStatusColors = (status) => {\n const statusConfig = {\n \"In Progress\": { textColor: \"rgba(23,97,163,1)\", backgroundColor: \"rgba(23,97,163,0.15)\" },\n \"Overdue\": { textColor: \"rgba(220,38,38,1)\", backgroundColor: \"rgba(239,68,68,0.15)\" },\n \"On Target\": { textColor: \"rgba(46,158,120,1)\", backgroundColor: \"rgba(70,194,155,0.15)\" }\n };\n return statusConfig[status] || statusConfig[\"In Progress\"];\n};\nvar tabLabel = (type) => {\n if (type === \"area\") return \"Area Line Chart\";\n if (type === \"bullet\") return \"Bullet Chart\";\n if (type === \"gauge\") return \"Gauge Chart\";\n if (type === \"riskgauge\") return \"KPI Risk Gauge Chart\";\n if (type === \"gantt\") return \"Gantt Chart\";\n if (type === \"calendarheatmap\") return \"Calendar Heat Map\";\n if (type === \"horizontalbar\") return \"Horizontal Bar Chart\";\n if (type === \"columnchart\") return \"Column Chart\";\n if (type === \"groupbar\") return \"Group Bar Chart\";\n if (type === \"stackbar\") return \"Stacked Bar Chart\";\n if (type === \"lollipop\") return \"Lollipop Chart\";\n if (type === \"kpi\") return \"KPI Chart\";\n return `${type.charAt(0).toUpperCase() + type.slice(1)} Chart`;\n};\nvar MenuDotsButton = () => /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n className: \"w-8 h-8 flex items-center justify-center rounded bg-transparent border-none cursor-pointer transition-colors hover:bg-[rgba(243,244,246,1)]\",\n children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-1 h-1 bg-[rgba(107,114,128,1)] rounded-full\" })\n ] })\n }\n);\nvar MahatiChartAnalyticsWidget = ({\n title,\n chartTypes,\n initialChartType,\n filters,\n chartFilters,\n selectedFilters,\n chartDataMap,\n bulletData,\n gaugeData,\n horizontalBarData,\n columnChartData,\n groupBarData,\n stackBarData,\n lollipopData,\n kpiData,\n riskGaugeData,\n ganttData,\n heatmapData,\n calendarheatmapData,\n onApplyFilters,\n quickStats,\n actionButtons,\n onChartTypeChange,\n onFiltersChange,\n details\n}) => {\n const [chartType, setChartType] = useState12(initialChartType);\n const [selectedGanttProject, setSelectedGanttProject] = useState12(\"Project 1\");\n const [selectedCalendarHeatmapProject, setSelectedCalendarHeatmapProject] = useState12(\"Project 1\");\n const currentFilters = useMemo3(() => {\n if (chartFilters && chartFilters[chartType]) return chartFilters[chartType] || [];\n return filters;\n }, [chartType, chartFilters, filters]);\n const currentData = useMemo3(() => {\n const base = chartDataMap[chartType];\n if (chartType === \"area\" && base) return makeAreaDataStraight(base);\n return base;\n }, [chartDataMap, chartType]);\n const isLineFamily = chartType === \"line\" || chartType === \"area\";\n const isPieFamily = chartType === \"pie\" || chartType === \"doughnut\";\n const bulletDetails = useMemo3(() => {\n if (chartType === \"bullet\" && bulletData?.bullets) {\n return bulletData.bullets.map((bullet) => {\n const percentageAchieved = Math.round(bullet.achieved / bullet.target * 100);\n return { label: bullet.name, value: `${percentageAchieved}% Done`, description: `${percentageAchieved}% of target achieved`, color: \"rgba(183,232,214,0.9)\" };\n });\n }\n return [];\n }, [chartType, bulletData]);\n const currentGanttData = useMemo3(() => {\n if (chartType === \"gantt\" && ganttData) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const baseData = ganttData[year]?.[type];\n if (!baseData) return void 0;\n if (selectedGanttProject === \"Project 2\") {\n return {\n title: `${baseData.title} - ${selectedGanttProject}`,\n projectName: `${baseData.projectName} - ${selectedGanttProject}`,\n tasks: baseData.tasks.map((task) => {\n const newProgress = Math.max(0, task.progress - 20);\n let newStatus = task.status;\n if (task.progress <= 70 && task.status === \"On Target\") newStatus = \"In Progress\";\n return { ...task, progress: newProgress, status: newStatus };\n })\n };\n }\n return { ...baseData, title: `${baseData.title} - ${selectedGanttProject}`, projectName: `${baseData.projectName} - ${selectedGanttProject}` };\n }\n return void 0;\n }, [chartType, ganttData, selectedFilters, selectedGanttProject]);\n const currentHorizontalBarTopPerformer = useMemo3(() => {\n if (chartType !== \"horizontalbar\" || !horizontalBarData) return void 0;\n const selectedYear = selectedFilters[\"SelectYear\"] || \"2026\";\n const selectedMonth = selectedFilters[\"SelectMonth\"] || \"January\";\n const yearData = horizontalBarData[selectedYear];\n const monthData = yearData?.[selectedMonth];\n if (!monthData) return void 0;\n const monthOrder = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const currentMonthIndex = monthOrder.indexOf(selectedMonth);\n const previousMonth = currentMonthIndex > 0 ? monthOrder[currentMonthIndex - 1] : \"December\";\n const previousYear = currentMonthIndex > 0 ? selectedYear : String(Number(selectedYear) - 1);\n const previousYearData = horizontalBarData[previousYear];\n const previousMonthData = previousYearData?.[previousMonth];\n const products = Object.keys(monthData);\n let maxRevenue = 0, topProduct = \"\", minRevenue = Infinity, needsFocusProduct = \"\";\n products.forEach((product) => {\n const revenue = monthData[product].Revenue;\n if (revenue > maxRevenue) {\n maxRevenue = revenue;\n topProduct = product;\n }\n if (revenue < minRevenue) {\n minRevenue = revenue;\n needsFocusProduct = product;\n }\n });\n let percentageChange = 0, isIncrease = true;\n if (previousMonthData && previousMonthData[topProduct]) {\n const cur = monthData[topProduct].Revenue, prev = previousMonthData[topProduct].Revenue;\n if (prev !== 0) {\n percentageChange = (cur - prev) / prev * 100;\n isIncrease = percentageChange >= 0;\n }\n }\n const topProductData = monthData[topProduct];\n return { category: \"Category\", name: topProduct, revenue: `${topProductData.Revenue}k`, profit: `${topProductData.Profit}k`, needsFocus: needsFocusProduct, change: `${Math.abs(percentageChange).toFixed(0)}%`, isIncrease };\n }, [chartType, horizontalBarData, selectedFilters]);\n const calendarPeakAndActiveDay = useMemo3(() => {\n const empty = { peakDay: { date: \"\", dayName: \"\", value: 0 }, mostActiveDay: { dayName: \"\", count: 0, average: 0 } };\n if (chartType !== \"calendarheatmap\" || !calendarheatmapData) return empty;\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const project = selectedCalendarHeatmapProject;\n if (!calendarheatmapData[project]?.[year]?.[type]) return empty;\n const yearData = calendarheatmapData[project][year][type];\n let allDayData = [];\n const dayOfWeekCounts = { Sunday: { total: 0, count: 0 }, Monday: { total: 0, count: 0 }, Tuesday: { total: 0, count: 0 }, Wednesday: { total: 0, count: 0 }, Thursday: { total: 0, count: 0 }, Friday: { total: 0, count: 0 }, Saturday: { total: 0, count: 0 } };\n Object.keys(yearData).forEach((monthName) => {\n const monthData = yearData[monthName];\n if (monthData?.data && Array.isArray(monthData.data)) {\n monthData.data.forEach((item) => {\n const [y, m, d] = item.date.split(\"-\").map((n) => parseInt(n));\n const dateObj = new Date(y, m - 1, d);\n const dayNames = [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"];\n const dayName = dayNames[dateObj.getDay()];\n allDayData.push({ date: item.date, value: item.value, dayName });\n if (dayOfWeekCounts[dayName]) {\n dayOfWeekCounts[dayName].total += item.value;\n dayOfWeekCounts[dayName].count += 1;\n }\n });\n }\n });\n let peakDay = { date: \"\", dayName: \"\", value: 0 };\n if (allDayData.length > 0) peakDay = allDayData.reduce((max, cur) => cur.value > max.value ? cur : max);\n let mostActiveDay = { dayName: \"\", count: 0, average: 0 };\n Object.entries(dayOfWeekCounts).forEach(([dayName, stats]) => {\n if (stats.count > 0) {\n const avg = stats.total / stats.count;\n if (avg > mostActiveDay.average) mostActiveDay = { dayName, count: stats.count, average: Math.round(avg) };\n }\n });\n return { peakDay, mostActiveDay };\n }, [chartType, calendarheatmapData, selectedFilters, selectedCalendarHeatmapProject]);\n const formatPeakDate = (dateStr) => {\n if (!dateStr) return \"Wed, 12 Jun\";\n try {\n return new Date(dateStr).toLocaleDateString(\"en-US\", { weekday: \"short\", month: \"short\", day: \"numeric\" });\n } catch {\n return \"Wed, 12 Jun\";\n }\n };\n const currentBulletData = useMemo3(() => {\n if (!bulletData) return null;\n const year = selectedFilters.SelectYear || \"2026\";\n const month = selectedFilters.SelectMonth || \"January\";\n const type = selectedFilters.SelectType || \"Sales\";\n const yearData = bulletData[year];\n if (yearData) {\n const typeData = yearData[type];\n if (typeData) {\n const monthData = typeData[month];\n if (monthData?.bullets) return { title: monthData.title || bulletData.title, bullets: monthData.bullets };\n }\n }\n return { title: bulletData.title, bullets: bulletData.bullets };\n }, [bulletData, selectedFilters]);\n const currentKPIData = useMemo3(() => {\n if (chartType !== \"kpi\" || !kpiData) return null;\n const kpiKey = selectedFilters[\"SelectKPI\"];\n if (!kpiKey) return kpiData[Object.keys(kpiData)[0]] || null;\n return kpiData[kpiKey] || null;\n }, [chartType, kpiData, selectedFilters]);\n const renderChart = () => {\n switch (chartType) {\n case \"pie\":\n case \"doughnut\":\n case \"line\":\n case \"area\":\n case \"bar\":\n if (currentData) return /* @__PURE__ */ jsx25(PieLineBarChart, { chartType, data: currentData });\n return null;\n case \"bullet\":\n if (currentBulletData) return /* @__PURE__ */ jsx25(BulletChart, { title: currentBulletData.title, bullets: currentBulletData.bullets });\n return null;\n case \"gauge\": {\n if (gaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges || [];\n if (gaugeData[sy]?.[sm]) currentGauge = gaugeData[sy][sm];\n return /* @__PURE__ */ jsx25(GaugeChart, { title: \"Performance Metrics\", gauges: currentGauge });\n }\n return null;\n }\n case \"gantt\": {\n if (currentGanttData) {\n const month = selectedFilters[\"SelectMonth\"] || \"Jan - Feb\";\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n return /* @__PURE__ */ jsx25(GanttChart, { data: currentGanttData, selectedYear: year, selectedMonth: month, selectedProject: selectedGanttProject, onProjectChange: setSelectedGanttProject });\n }\n return null;\n }\n case \"calendarheatmap\": {\n if (calendarheatmapData?.[selectedCalendarHeatmapProject]) {\n const year = selectedFilters[\"SelectYear\"] || \"2026\";\n const type = selectedFilters[\"SelectType\"] || \"Development\";\n const projectData = calendarheatmapData[selectedCalendarHeatmapProject];\n const yearData = projectData[year];\n if (!yearData?.[type]) return null;\n return /* @__PURE__ */ jsx25(CalendarHeatmapChart, { data: yearData[type], selectedProject: selectedCalendarHeatmapProject, selectedYear: year, selectedType: type, onProjectChange: setSelectedCalendarHeatmapProject, calendarheatmapData });\n }\n return null;\n }\n case \"horizontalbar\": {\n if (!horizontalBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sp = selectedFilters[\"SelectType\"] || \"Product 1\";\n const yearData = horizontalBarData[sy];\n const monthData = yearData?.[sm];\n const productData = monthData?.[sp];\n const xAxisConfig = horizontalBarData.xAxis?.[sy];\n const bars = productData ? [\n { name: \"Revenue\", value: productData.Revenue, color: \"rgba(23,97,163,1)\" },\n { name: \"Profit\", value: productData.Profit, color: \"rgba(70,194,155,1)\" },\n { name: \"Cost\", value: productData.Cost, color: \"rgba(47,164,169,1)\" }\n ] : [];\n return /* @__PURE__ */ jsx25(HorizontalBarChart, { title: horizontalBarData.title, bars, selectedYear: sy, selectedMonth: sm, selectedType: sp, xAxisConfig, topPerformer: currentHorizontalBarTopPerformer });\n }\n case \"columnchart\": {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const yearData = columnChartData?.[sy];\n const typeData = yearData?.[sm]?.[st] || [];\n const yAxisConfig = columnChartData.yAxis?.[sy];\n const columns = typeData.map((item) => ({ name: item.name, value: item.value, gradient: item.gradient || \"linear-gradient(180deg, rgba(77,175,131,1) 0%, rgba(23,97,163,1) 100%)\" }));\n return /* @__PURE__ */ jsx25(ColumnChart, { title: columnChartData.title, columns, selectedYear: sy, selectedMonth: sm, selectedType: st, yAxisConfig });\n }\n case \"lollipop\": {\n if (!lollipopData) return null;\n const ly = selectedFilters[\"SelectYear\"] || \"2026\";\n const lm = selectedFilters[\"SelectMonth\"] || \"January\";\n const lc = selectedFilters[\"SelectType\"] || \"Category A\";\n const lo = selectedFilters[\"SelectOrientation\"] || \"horizontal\";\n const lYearData = lollipopData[ly] || {};\n const lCatData = lYearData?.[lm]?.[lc] || [];\n return /* @__PURE__ */ jsx25(LollipopChart, { title: lollipopData.title, items: lCatData, selectedYear: ly, selectedMonth: lm, selectedCategory: lc, orientation: lo });\n }\n case \"kpi\":\n if (currentKPIData) return /* @__PURE__ */ jsx25(KPIChart, { data: currentKPIData });\n return null;\n case \"riskgauge\": {\n if (riskGaugeData) {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauges = riskGaugeData.gauges || [];\n if (riskGaugeData[sy]?.[sm]?.[st]) currentRiskGauges = riskGaugeData[sy][sm][st];\n return /* @__PURE__ */ jsx25(RiskGaugeChart, { title: \"KPI Risk Assessment Metrics\", gauges: currentRiskGauges });\n }\n return null;\n }\n case \"groupbar\": {\n if (!groupBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm] || [];\n const yAxisConfig = groupBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(GroupBarChart, { title: groupBarData.title, groups, legends: groupBarData.legends, selectedYear: sy, selectedMonth: sm, yAxisConfig });\n }\n case \"stackbar\": {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm]?.[sw]?.[st] || [];\n const yAxisConfig = stackBarData.yAxis?.[sy];\n return /* @__PURE__ */ jsx25(StackBarChart, { title: stackBarData.title, data: typeData, legends: stackBarData.legends, selectedYear: sy, selectedMonth: sm, selectedWeek: sw, selectedType: st, yAxisConfig, allData: stackBarData });\n }\n default:\n return null;\n }\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"min-h-screen bg-white\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"bg-white p-4 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-wrap gap-2\", children: chartTypes.map((type) => {\n const isActive = chartType === type;\n return /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => {\n setChartType(type);\n onChartTypeChange?.(type);\n },\n \"aria-pressed\": isActive,\n className: `\n relative px-4 py-2 text-xs font-medium transition-all duration-200 rounded-full outline-none border cursor-pointer\n sm:px-6 sm:py-2.5 sm:text-sm\n focus-visible:shadow-[0_0_0_2px_rgba(23,97,163,0.35)]\n ${isActive ? \"text-white shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] border-[rgba(23,97,163,0.45)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)]\" : \"text-[rgba(55,65,81,1)] border-transparent bg-transparent hover:border-[rgba(23,97,163,0.25)] hover:bg-[rgba(23,97,163,0.05)]\"}\n `,\n children: tabLabel(type)\n },\n type\n );\n }) }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"p-4 relative z-50 sm:px-6 md:px-8\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"flex gap-3 items-end flex-wrap relative sm:gap-4\", children: [\n currentFilters.map((filter, index) => {\n const options = filter.options.map((opt) => ({ key: opt, value: opt }));\n return /* @__PURE__ */ jsx25(\n \"div\",\n {\n className: \"relative\",\n style: { zIndex: 50 + (currentFilters.length - index) },\n children: /* @__PURE__ */ jsx25(\n ChartDropdown,\n {\n options,\n value: selectedFilters[filter.id],\n onSelect: (val) => onFiltersChange({ ...selectedFilters, [filter.id]: String(val) }),\n variant: \"mahatiFilter\",\n label: filter.label\n }\n )\n },\n filter.id\n );\n }),\n /* @__PURE__ */ jsx25(\n \"button\",\n {\n type: \"button\",\n onClick: () => onApplyFilters?.(selectedFilters),\n className: \"w-[77px] h-[30px] rounded border border-[rgba(23,97,163,1)] bg-gradient-to-r from-[rgba(23,97,163,1)] to-[rgba(77,175,131,1)] text-white text-sm font-medium cursor-pointer transition-opacity hover:opacity-90\",\n children: \"Apply\"\n }\n )\n ] }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"p-4 overflow-y-visible sm:px-6 md:px-8\", children: [\n isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3 sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-visible sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-end mb-4\", children: /* @__PURE__ */ jsx25(MenuDotsButton, {}) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"h-48 p-2 rounded-2xl sm:h-56 md:h-64\", children: renderChart() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"mt-4 flex flex-col gap-2 text-sm sm:mt-6 sm:gap-3\", children: details.map((item, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"w-4 h-2 rounded-sm flex-shrink-0 sm:w-5 sm:h-2.5\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(55,65,81,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label })\n ] }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-black text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-base font-semibold text-[rgba(17,24,39,1)] mb-4 sm:text-lg sm:mb-6\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-3 sm:gap-5\", children: details.map((item, idx) => {\n const statusColors = item.status ? getStatusColors(item.status) : null;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"inline-block flex-shrink-0 w-[18px] h-[10px] rounded-sm\", style: { backgroundColor: colorToClass(item.color) } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-xs overflow-hidden text-ellipsis whitespace-nowrap sm:text-sm\", children: item.label }),\n item.status && statusColors && /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center justify-center w-12 h-4 rounded px-1 py-0.5\", style: { backgroundColor: statusColors.backgroundColor }, children: /* @__PURE__ */ jsx25(\"span\", { className: \"font-[Poppins,sans-serif] font-semibold whitespace-nowrap text-[6px]\", style: { color: statusColors.textColor }, children: item.status }) })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-xs\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-bold text-[rgba(17,24,39,1)] text-xs ml-2 sm:text-sm\", children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 md:col-span-2 lg:col-span-1 sm:gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: `text-xs font-medium mt-1 sm:text-sm ${quickStats.totalVolume.change.startsWith(\"+\") ? \"text-[rgba(22,163,74,1)]\" : \"text-[rgba(220,38,38,1)]\"}`, children: quickStats.totalVolume.change }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] mt-3 sm:text-[30px] sm:mt-4\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-2 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] }),\n chartType === \"bullet\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { children: currentBulletData?.bullets.map((bullet, idx) => {\n const percentage = Math.round(bullet.achieved / bullet.target * 100);\n const getBadgeBg = (name) => {\n const n = name.toLowerCase();\n if (n.includes(\"revenue\")) return \"rgba(70,194,155,0.15)\";\n if (n.includes(\"profit\")) return \"rgba(239,68,68,0.15)\";\n if (n.includes(\"customer\")) return \"rgba(23,97,163,0.15)\";\n return \"rgba(229,231,235,1)\";\n };\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center py-3 not-last:border-b border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-medium text-[rgba(17,24,39,1)]\", children: bullet.name }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs text-[rgba(107,114,128,1)]\", children: [\n bullet.achieved.toLocaleString(),\n \" / \",\n bullet.target.toLocaleString()\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"px-2 py-1 rounded text-sm font-medium\", style: { backgroundColor: getBadgeBg(bullet.name) }, children: [\n percentage,\n \"%\"\n ] })\n ] }, idx);\n }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 pt-4 mt-4 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-full bg-[rgba(96,165,250,1)] flex items-center justify-center flex-shrink-0 mt-0.5\", children: /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-bold text-white\", children: \"i\" }) }),\n /* @__PURE__ */ jsxs22(\"p\", { className: \"text-xs text-[rgba(107,114,128,1)] m-0 leading-relaxed\", children: [\n \"Suggested Actions: \",\n /* @__PURE__ */ jsx25(\"span\", { className: \"font-semibold text-[rgba(17,24,39,1)]\", children: \"Optimizing pricing or reduce operational costs.\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"gauge\" && gaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n let currentGauge = gaugeData.gauges?.length > 0 ? gaugeData.gauges[0] : null;\n if (gaugeData[sy]?.[sm2]?.length > 0) currentGauge = gaugeData[sy][sm2][0];\n if (!currentGauge) return null;\n const gauge = currentGauge;\n const dailyAvgNeeded = Math.round(gauge.value / 30);\n const currentPace = 360;\n const daysRemaining = 8;\n const yearNum = parseInt(sy);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const monthIndex = monthNames.indexOf(sm2);\n const lastDayOfMonth = new Date(yearNum, monthIndex + 1, 0);\n const lastDay = lastDayOfMonth.getDate();\n const lastDayWeekday = lastDayOfMonth.getDay();\n let lastFriday = lastDayWeekday === 5 ? lastDay : lastDayWeekday < 5 ? lastDay - (lastDayWeekday + 2) : lastDay - 1;\n const formattedDate = new Date(yearNum, monthIndex, lastFriday).toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\" });\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Goal Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4 mb-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", `${daysRemaining} days`], [\"Expected Finish\", formattedDate]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsx25(\n QuickInsightsCard,\n {\n totalVolume: \"$33,850.00\",\n peakIconSrc: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon),\n peakDate: \"Wed, 12 Jun\",\n peakEvents: \"5,600 events\",\n calendarIconSrc: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon),\n activeDayLabel: \"Most Active Day\",\n activeDayValue: \"Wednesday\",\n activeAvg: \"Avg 920 / day\",\n dateLabel: (/* @__PURE__ */ new Date()).toLocaleDateString(\"en-US\", { month: \"long\", year: \"numeric\" })\n }\n )\n ] })\n ] }),\n chartType === \"riskgauge\" && riskGaugeData && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Credit Score\";\n let currentRiskGauge = riskGaugeData.gauges?.length > 0 ? riskGaugeData.gauges[0] : null;\n if (riskGaugeData[sy]?.[sm2]?.[st]?.length > 0) currentRiskGauge = riskGaugeData[sy][sm2][st][0];\n if (!currentRiskGauge) return null;\n const gauge = currentRiskGauge;\n const maxScore = gauge.max || 100;\n const dailyAvgNeeded = Math.round(gauge.score / 30);\n const currentPace = Math.round(gauge.score / 20);\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: \"Risk Health\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-medium text-[rgba(46,158,120,1)]\", children: \"On Track\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-4 h-4 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-4\", children: [[\"Current Pace\", `${currentPace} / day`], [\"Required Pace\", `${dailyAvgNeeded} / day`], [\"Days Remaining\", \"8 days\"], [\"Max Score\", String(maxScore)]].map(([label, value]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mb-1\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)]\", children: value })\n ] }, label)) })\n ] });\n })(),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: `${selectedFilters[\"SelectYear\"] || \"2026\"} : ${selectedFilters[\"SelectMonth\"] || \"January\"}` })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Risk Score\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: riskGaugeData?.[selectedFilters[\"SelectYear\"] || \"2026\"]?.[selectedFilters[\"SelectMonth\"] || \"January\"]?.[selectedFilters[\"SelectType\"] || \"Credit Score\"]?.[0]?.score || 0 }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Performance\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"N/A\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"No data\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Assessment Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: \"Wednesday\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Avg Score: 0\" })\n ] })\n ] })\n ] }),\n chartType === \"gantt\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,205px)] lg:gap-1 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto sm:p-3 sm:min-h-[400px] lg:overflow-x-hidden lg:p-[22px_30px_55px_30px] lg:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[650px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[205px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] max-h-[400px] overflow-y-auto sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sticky top-0 bg-[rgba(241,247,248,1)] pb-2 sm:text-sm sm:mb-4\", children: \"Quick Insights - All Titles\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-3 sticky top-5 bg-[rgba(241,247,248,1)] pb-1 sm:text-[10px]\", children: [\n \"Showing data for: \",\n selectedGanttProject\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: currentGanttData?.tasks.map((task) => {\n const taskColor = GANTT_COLORS[task.color] || GANTT_COLORS.blue;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pb-2 border-b border-[rgba(229,231,235,1)] last:border-none\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3 h-3 rounded-full flex-shrink-0\", style: { background: taskColor } }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-medium text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: task.name }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[8px] text-[rgba(107,114,128,1)] mt-0.5\", children: [\n task.progress,\n \"% complete\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[8px] font-semibold px-2 py-0.5 rounded whitespace-nowrap\", style: { backgroundColor: getStatusColors(task.status).backgroundColor, color: getStatusColors(task.status).textColor }, children: task.status })\n ] }, task.id);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Project Summary\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(75,85,99,1)] mb-2 sm:text-[10px]\", children: \"Overall Status\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(254,242,242,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(220,38,38,1)] text-[10px] font-semibold sm:text-xs\", children: \"Overdue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"Overdue\").length || 0 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(239,246,255,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(37,99,235,1)] text-[10px] font-semibold sm:text-xs\", children: \"In Progress\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"In Progress\").length || 0 })\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-1 gap-2 mt-2\", children: /* @__PURE__ */ jsxs22(\"div\", { className: \"bg-[rgba(240,253,244,1)] p-2 rounded\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(22,163,74,1)] text-[10px] font-semibold sm:text-xs\", children: \"On Target\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-bold text-[rgba(17,24,39,1)] sm:text-lg\", children: currentGanttData?.tasks.filter((t) => t.status === \"On Target\").length || 0 })\n ] }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-2 sm:text-[10px] sm:mt-3\", children: (() => {\n if (!currentGanttData?.tasks?.length) return \"Expected by 25 Feb 2025\";\n const lastTask = currentGanttData.tasks[currentGanttData.tasks.length - 1];\n const [day, month] = lastTask.endDate.split(\"/\");\n const monthNames = { \"01\": \"Jan\", \"02\": \"Feb\", \"03\": \"Mar\", \"04\": \"Apr\", \"05\": \"May\", \"06\": \"Jun\", \"07\": \"Jul\", \"08\": \"Aug\", \"09\": \"Sep\", \"10\": \"Oct\", \"11\": \"Nov\", \"12\": \"Dec\" };\n return `Expected by ${day} ${monthNames[month] || \"Jan\"} ${selectedFilters[\"SelectYear\"] || \"2026\"}`;\n })() })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"calendarheatmap\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full overflow-hidden lg:grid-cols-[minmax(0,1fr)_minmax(0,280px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-x-auto lg:overflow-x-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col min-w-[750px] w-full lg:min-w-0\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-3 w-full min-w-0 lg:max-w-[280px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Activity Legend\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2\", children: [[\"rgba(154,219,255,1)\", \"<1K: Low activity\"], [\"rgba(102,194,241,1)\", \"1K - 3K: Moderate activity\"], [\"rgba(43,160,209,1)\", \"3K - 5K: High activity\"], [\"rgba(23,97,163,1)\", \">5K: Very high activity\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-4 h-4 rounded-sm flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] whitespace-nowrap sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full max-w-[280px] min-h-[210px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] p-3 flex flex-col gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium text-right\", children: [\n selectedFilters[\"SelectYear\"] || \"2026\",\n \", \",\n selectedCalendarHeatmapProject,\n \", \",\n selectedFilters[\"SelectType\"] || \"Development\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[11px] font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[17px] font-semibold mt-2\", children: [\n \"$\",\n quickStats.totalVolume.value\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(performancePeakIcon, FALLBACK_ICONS.performancePeakIcon), alt: \"\", className: \"w-[11px] h-[11px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: formatPeakDate(calendarPeakAndActiveDay.peakDay.date) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: calendarPeakAndActiveDay.peakDay.value ? `${calendarPeakAndActiveDay.peakDay.value.toLocaleString()} events` : \"5,600 events\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2 w-full\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[18px] h-[18px] rounded bg-[rgba(23,97,163,1)] flex items-center justify-center flex-shrink-0\", children: /* @__PURE__ */ jsx25(\"img\", { src: getIconSrc(calendarIcon, FALLBACK_ICONS.calendarIcon), alt: \"\", className: \"w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-1 flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: \"Most Active Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-[9px] font-semibold whitespace-nowrap\", children: calendarPeakAndActiveDay.mostActiveDay.dayName || \"Wednesday\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[7.5px] font-medium whitespace-nowrap\", children: [\n \"Avg \",\n calendarPeakAndActiveDay.mostActiveDay.average || 920,\n \" / day\"\n ] })\n ] })\n ] })\n ] })\n ] })\n ] }),\n chartType === \"horizontalbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Demo Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(70,194,155,1)\", \"Profit\"], [\"rgba(47,164,169,1)\", \"Cost\"]].map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded bg-transparent flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] }),\n currentHorizontalBarTopPerformer && /* @__PURE__ */ jsx25(TopPerformerCard, { performer: currentHorizontalBarTopPerformer })\n ] })\n ] }),\n chartType === \"columnchart\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex items-center bg-[rgba(77,175,131,0.15)] px-3 py-1 rounded-xl text-[10px] font-semibold text-[rgba(77,175,131,1)] font-[Poppins,sans-serif]\", children: \"Leading\" })\n ] }),\n (() => {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, item) => item.value > max.value ? item : max, typeData[0]);\n const totalRevenue = typeData.reduce((sum, item) => sum + item.value, 0);\n const contribution = totalRevenue > 0 ? Math.round(topPerformer.value / totalRevenue * 100) : 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTop = prevTypeData.find((i) => i.name === topPerformer.name);\n const growth = prevTop?.value > 0 ? Math.round((topPerformer.value - prevTop.value) / prevTop.value * 100) : 14;\n const rank = [...typeData].sort((a, b) => b.value - a.value).findIndex((i) => i.name === topPerformer.name) + 1;\n return /* @__PURE__ */ jsxs22(Fragment9, { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-base font-semibold text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] mb-5\", children: topPerformer.name }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"grid grid-cols-2 gap-3\", children: [[\"Revenue\", topPerformer.value >= 1e3 ? `${(topPerformer.value / 1e3).toFixed(1)}k` : topPerformer.value, void 0], [\"Contribution\", `${contribution}%`, void 0], [\"Growth\", `${growth >= 0 ? \"+\" : \"\"}${growth}%`, growth >= 0 ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\"], [\"Rank\", `#${rank}`, void 0]].map(([label, value, color]) => /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold\", style: { color: color || \"rgba(17,24,39,1)\" }, children: String(value) })\n ] }, String(label))) })\n ] });\n })()\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] flex flex-col justify-center sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between items-center mb-10\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: [\n selectedFilters[\"SelectMonth\"] || \"January\",\n \" \",\n selectedFilters[\"SelectYear\"] || \"2026\"\n ] })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-8 font-[Poppins,sans-serif]\", children: \"Total Volume\" }),\n (() => {\n if (!columnChartData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = columnChartData?.[sy]?.[sm2]?.[st] || [];\n const currentTotal = typeData.reduce((sum, item) => sum + item.value, 0);\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevTypeData = columnChartData?.[prevYear]?.[prevMonth]?.[st] || [];\n const prevTotal = prevTypeData.reduce((sum, item) => sum + item.value, 0);\n const pctChange = prevTotal > 0 ? Math.round((currentTotal - prevTotal) / prevTotal * 100) : 0;\n const isIncrease = pctChange >= 0;\n const bgColor = isIncrease ? \"rgba(209,250,229,1)\" : \"rgba(254,226,226,1)\";\n const textColor = isIncrease ? \"rgba(5,150,105,1)\" : \"rgba(220,38,38,1)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-2xl font-bold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif] tracking-tight\", children: [\n \"$\",\n currentTotal.toLocaleString(\"en-US\", { minimumFractionDigits: 2, maximumFractionDigits: 2 })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"inline-flex items-center gap-1 px-2.5 py-1.5 rounded-md flex-shrink-0\", style: { background: bgColor }, children: [\n /* @__PURE__ */ jsx25(\"img\", { src: isIncrease ? getIconSrc(increaseIcon, FALLBACK_ICONS.increaseIcon) : getIconSrc(decreaseIcon, FALLBACK_ICONS.decreaseIcon), alt: isIncrease ? \"increase\" : \"decrease\", className: \"w-3.5 h-3.5 object-contain\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold font-[Poppins,sans-serif]\", style: { color: textColor }, children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"groupbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!groupBarData) return null;\n const legends = groupBarData.legends || [];\n const defaultLegends = [[\"rgba(23,97,163,1)\", \"Revenue\"], [\"rgba(77,175,131,1)\", \"Profit\"], [\"rgba(220,38,38,1)\", \"Loss\"], [\"rgba(47,164,169,1)\", \"Cost\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col h-[130px] gap-4 sm:gap-5\", children: legends.length > 0 ? legends.map((legend, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: legend.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: legend.label })\n ] }, legend.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!groupBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const groups = groupBarData?.[sy]?.[sm2] || [];\n if (!groups.length) return null;\n const legends = groupBarData.legends || [];\n const getColor = (key, fallback) => legends.find((l) => l.key === key)?.color || fallback;\n const revenueColor = getColor(\"revenue\", \"rgba(37,99,235,1)\");\n const profitColor = getColor(\"profit\", \"rgba(77,175,131,1)\");\n const lossColor = getColor(\"loss\", \"rgba(220,38,38,1)\");\n const getProfitOrLoss = (g) => g.profitOrLoss !== void 0 && g.profitOrLoss !== null ? g.profitOrLoss : g.revenue - g.cost;\n const topPerformer = groups.reduce((max, item) => item.revenue > max.revenue ? item : max, groups[0]);\n const topPL = getProfitOrLoss(topPerformer);\n const isTopProfitable = topPL >= 0;\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\n const ci = monthNames.indexOf(sm2);\n const prevMonth = ci > 0 ? monthNames[ci - 1] : \"December\";\n const prevYear = ci > 0 ? sy : String(Number(sy) - 1);\n const prevGroups = groupBarData?.[prevYear]?.[prevMonth] || [];\n const prevTop = prevGroups.find((i) => i.name === topPerformer.name);\n const pctChange = prevTop && prevTop.revenue > 0 ? Math.round((topPerformer.revenue - prevTop.revenue) / prevTop.revenue * 100) : 12;\n const isIncrease = pctChange >= 0;\n const lossProducts = groups.filter((i) => getProfitOrLoss(i) < 0);\n const needsFocus = lossProducts.length > 0 ? lossProducts.reduce((max, i) => getProfitOrLoss(i) < getProfitOrLoss(max) ? i : max, lossProducts[0]) : groups.reduce((min, i) => i.revenue < min.revenue ? i : min, groups[0]);\n const needsFocusHasLoss = getProfitOrLoss(needsFocus) < 0;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n Math.abs(pctChange),\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: revenueColor }, children: [\n topPerformer.revenue,\n \"k\"\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: isTopProfitable ? \"Profit\" : \"Loss\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold\", style: { color: isTopProfitable ? profitColor : lossColor }, children: [\n Math.abs(topPL),\n \"k\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: [\n needsFocus.name,\n \" \",\n needsFocusHasLoss ? \"(Loss)\" : \"(Low Revenue)\"\n ] })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"stackbar\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n (() => {\n if (!stackBarData) return null;\n const legends = stackBarData.legends || [];\n const defaultLegends = [[\"rgba(37,99,235,1)\", \"Aggregating Amount\"], [\"rgba(34,197,94,1)\", \"Outstanding Amount\"], [\"rgba(239,68,68,1)\", \"Write-Off Amount\"]];\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Legends\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: legends.length > 0 ? legends.map((l, i) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: l.color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: l.label })\n ] }, l.key || i)) : defaultLegends.map(([color, label]) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-[14px] h-3 rounded flex-shrink-0\", style: { backgroundColor: color } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: label })\n ] }, label)) })\n ] });\n })(),\n (() => {\n if (!stackBarData) return null;\n const sy = selectedFilters[\"SelectYear\"] || \"2026\";\n const sm2 = selectedFilters[\"SelectMonth\"] || \"January\";\n const sw = selectedFilters[\"SelectWeek\"] || \"Week 1\";\n const st = selectedFilters[\"SelectType\"] || \"Category A\";\n const typeData = stackBarData?.[sy]?.[sm2]?.[sw]?.[st] || [];\n if (!typeData.length) return null;\n const topPerformer = typeData.reduce((max, day) => {\n const mt = max.aggregating + max.outstanding + max.writeOff;\n const ct = day.aggregating + day.outstanding + day.writeOff;\n return ct > mt ? day : max;\n }, typeData[0]);\n const topTotal = topPerformer.aggregating + topPerformer.outstanding + topPerformer.writeOff;\n const needsFocus = typeData.reduce((min, day) => {\n const mt2 = min.aggregating + min.outstanding + min.writeOff;\n const ct2 = day.aggregating + day.outstanding + day.writeOff;\n return ct2 < mt2 ? day : min;\n }, typeData[0]);\n const weekNum = parseInt(sw.replace(\"Week \", \"\"));\n let percentageChange = 12, isIncrease = true;\n const prevWeek = weekNum > 1 ? `Week ${weekNum - 1}` : null;\n if (prevWeek) {\n const prevTypeData = stackBarData?.[sy]?.[sm2]?.[prevWeek]?.[st] || [];\n const prevDay = prevTypeData.find((d) => d.day === topPerformer.day);\n if (prevDay) {\n const pt = prevDay.aggregating + prevDay.outstanding + prevDay.writeOff;\n if (pt > 0) {\n const ch = (topTotal - pt) / pt * 100;\n percentageChange = Math.abs(Math.round(ch));\n isIncrease = ch >= 0;\n }\n }\n }\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsxs22(\"span\", { className: \"text-[10px] font-semibold\", children: [\n percentageChange,\n \"%\"\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: topPerformer.day })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Aggregating\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: [\n \"$\",\n topPerformer.aggregating\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Outstanding\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"text-sm font-semibold text-[rgba(34,197,94,1)]\", children: [\n \"$\",\n topPerformer.outstanding\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: needsFocus.day })\n ] })\n ] });\n })()\n ] })\n ] }),\n chartType === \"lollipop\" && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n return currentFilters.find((f) => f.id === fid)?.label || \"Categories\";\n })() }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: (() => {\n const fid = currentFilters[currentFilters.length - 2]?.id;\n const filter = currentFilters.find((f) => f.id === fid);\n const colors = [\"rgba(37,99,235,1)\", \"rgba(16,185,129,1)\", \"rgba(245,158,11,1)\", \"rgba(239,68,68,1)\", \"rgba(147,51,234,1)\"];\n return (filter?.options || []).map((opt, idx) => /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-3.5 h-3.5 rounded-full flex-shrink-0\", style: { backgroundColor: colors[idx % colors.length] } }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] text-[rgba(55,65,81,1)] sm:text-xs\", children: opt })\n ] }, opt));\n })() })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-4\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: \"Monthly Summary\" }),\n /* @__PURE__ */ jsx25(\"button\", { className: \"w-5 h-5 flex items-center justify-center text-[rgba(156,163,175,1)] bg-transparent border-none cursor-pointer hover:text-[rgba(75,85,99,1)]\", children: /* @__PURE__ */ jsxs22(\"svg\", { width: \"16\", height: \"16\", viewBox: \"0 0 16 16\", fill: \"currentColor\", children: [\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"4\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"8\", r: \"1\" }),\n /* @__PURE__ */ jsx25(\"circle\", { cx: \"8\", cy: \"12\", r: \"1\" })\n ] }) })\n ] }),\n (() => {\n const f0 = currentFilters[0]?.id, f1 = currentFilters[1]?.id, f2 = currentFilters[2]?.id;\n const year = selectedFilters[f0] || currentFilters[0]?.options[0] || \"2026\";\n const month = selectedFilters[f1] || currentFilters[1]?.options[0] || \"January\";\n const category = selectedFilters[f2] || currentFilters[2]?.options[0] || \"Category A\";\n const yearData = lollipopData?.[year] || {};\n const catData = yearData?.[month]?.[category] || [];\n const bestItem = catData.length ? catData.reduce((max, i) => i.value > max.value ? i : max, catData[0]) : null;\n const lowestItem = catData.length ? catData.reduce((min, i) => i.value < min.value ? i : min, catData[0]) : null;\n const avg = catData.length ? Math.round(catData.reduce((s, i) => s + i.value, 0) / catData.length) : 0;\n const aboveAvg = catData.filter((i) => i.value > avg).length;\n const isPositive = aboveAvg > catData.length - aboveAvg;\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Best Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: bestItem?.label || \"N/A\" })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Lowest Product\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex justify-between gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Average\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] font-[Poppins,sans-serif]\", children: avg })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] font-[Poppins,sans-serif] font-medium\", children: \"Trend\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: isPositive ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: isPositive ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-sm font-semibold font-[Poppins,sans-serif]\", children: isPositive ? \"Positive\" : \"Negative\" })\n ] })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 text-xs font-[Poppins,sans-serif]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(107,114,128,1)] font-medium\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[rgba(220,38,38,1)] font-semibold\", children: lowestItem?.label || \"N/A\" })\n ] })\n ] });\n })()\n ] })\n ] })\n ] }),\n chartType === \"kpi\" && currentKPIData && /* @__PURE__ */ jsx25(\"div\", { className: \"w-full\", children: renderChart() }),\n (chartType === \"line\" || chartType === \"area\" || chartType === \"bar\") && !isPieFamily && /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-1 gap-4 max-w-full lg:grid-cols-[minmax(0,1fr)_minmax(0,276px)] lg:gap-0 sm:gap-6\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"w-full min-h-[350px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] overflow-hidden sm:p-[22px_30px_55px_30px] sm:min-h-[383px]\", children: /* @__PURE__ */ jsx25(\"div\", { className: \"h-full flex flex-col\", children: renderChart() }) }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex flex-col gap-4 w-full lg:max-w-[276px] sm:gap-6\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Details\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"flex flex-col gap-2 sm:gap-3\", children: details.map((item, idx) => {\n let bgColor = \"rgba(229,231,235,0.5)\";\n if (item.label === \"Revenue\") bgColor = \"rgba(70,194,155,0.15)\";\n else if (item.label === \"Profit\") bgColor = \"rgba(239,68,68,0.15)\";\n else if (item.label === \"New Customers\") bgColor = \"rgba(23,97,163,0.15)\";\n return /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-start gap-2\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex-1 min-w-0\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"font-semibold text-[rgba(17,24,39,1)] text-[10px] overflow-hidden text-ellipsis whitespace-nowrap sm:text-xs\", children: item.label }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)] mt-0.5 line-clamp-2 sm:text-[10px]\", children: item.description })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"inline-flex items-center justify-center px-2 py-1 rounded text-[10px] font-bold text-[rgba(17,24,39,1)] whitespace-nowrap flex-shrink-0 sm:text-xs sm:px-2.5 sm:py-1.5\", style: { backgroundColor: bgColor }, children: item.value })\n ] }, idx);\n }) })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] mb-3 sm:text-sm sm:mb-4\", children: \"Quick Stats\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"mb-3\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.totalVolume.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.totalVolume.description })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(31,41,55,1)] font-semibold text-xs sm:text-sm\", children: \"Transactions\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-xl font-bold text-[rgba(17,24,39,1)] mt-2\", children: quickStats.transactions.value }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)] mt-1 sm:text-xs\", children: quickStats.transactions.description })\n ] })\n ] })\n ] })\n ] })\n ] })\n ] });\n};\nMahatiChartAnalyticsWidget.displayName = \"MahatiChartAnalyticsWidget\";\nvar QuickInsightsCard = ({\n totalVolume,\n peakIconSrc,\n peakDate,\n peakEvents,\n calendarIconSrc,\n activeDayLabel,\n activeDayValue,\n activeAvg,\n dateLabel\n}) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-[276px] h-[191px] rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] relative\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"absolute top-[17px] left-[19px] right-[17px] flex items-center justify-between\", children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Quick Insights\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[10px] font-medium\", children: dateLabel })\n ] }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[57px] left-[18px] text-black font-[Poppins,sans-serif] text-xs font-semibold\", children: \"Total Volume\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[80px] left-[18px] text-black font-[Poppins,sans-serif] text-lg font-semibold\", children: totalVolume }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[119px] left-[19px] right-[19px] h-px bg-[rgba(77,175,131,0.2)]\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[19px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: peakIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-3 h-3 object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[48px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: \"Peak Day\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[48px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: peakDate }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[48px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: peakEvents }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[137px] left-[164px] w-5 h-5 rounded bg-[rgba(23,97,163,1)]\", children: /* @__PURE__ */ jsx25(\"img\", { src: calendarIconSrc, alt: \"\", className: \"absolute top-1 left-1 w-[10px] h-[10px] object-cover\" }) }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[134px] left-[193px] text-[rgba(23,97,163,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeDayLabel }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[146px] left-[193px] text-black font-[Poppins,sans-serif] text-[10px] font-semibold\", children: activeDayValue }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"absolute top-[161px] left-[193px] text-[rgba(94,94,94,1)] font-[Poppins,sans-serif] text-[8px] font-medium\", children: activeAvg })\n] });\nvar TopPerformerCard = ({ performer }) => /* @__PURE__ */ jsxs22(\"div\", { className: \"w-full rounded-[10px] border border-[rgba(23,97,163,1)] bg-[rgba(241,247,248,1)] p-4 shadow-[0_1px_2px_0_rgba(0,0,0,0.05)] sm:p-[29px]\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center justify-between mb-3\", children: [\n /* @__PURE__ */ jsx25(\"h3\", { className: \"text-xs font-semibold text-[rgba(17,24,39,1)] sm:text-sm\", children: \"Top Performer\" }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-1\", style: { color: performer.isIncrease ? \"rgba(46,158,120,1)\" : \"rgba(220,38,38,1)\" }, children: [\n /* @__PURE__ */ jsx25(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 14 14\", fill: \"none\", style: { transform: performer.isIncrease ? \"rotate(0deg)\" : \"rotate(180deg)\" }, children: /* @__PURE__ */ jsx25(\"path\", { d: \"M7 0L13.9282 13.5H0.0717969L7 0Z\", fill: \"currentColor\" }) }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[10px] font-semibold\", children: performer.change })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[10px] text-[rgba(107,114,128,1)]\", children: \"Category\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(17,24,39,1)] mb-3\", children: performer.name })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"grid grid-cols-2 gap-3 mb-3\", children: [\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Revenue\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(37,99,235,1)]\", children: performer.revenue })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { children: [\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Profit\" }),\n /* @__PURE__ */ jsx25(\"div\", { className: \"text-sm font-semibold text-[rgba(77,175,131,1)]\", children: performer.profit })\n ] })\n ] }),\n /* @__PURE__ */ jsxs22(\"div\", { className: \"flex items-center gap-2 pt-3 border-t border-[rgba(229,231,235,1)]\", children: [\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-[9px] text-[rgba(107,114,128,1)]\", children: \"Needs Focus:\" }),\n /* @__PURE__ */ jsx25(\"span\", { className: \"text-xs font-semibold text-[rgba(220,38,38,1)]\", children: performer.needsFocus })\n ] })\n] });\n\n// src/components/Tooltip.tsx\nimport React19, { useState as useState13 } from \"react\";\nimport { Fragment as Fragment10, jsx as jsx26, jsxs as jsxs23 } from \"react/jsx-runtime\";\nvar Tooltip2 = ({\n text,\n position = \"top\",\n children,\n variant = \"default\",\n className = \"\",\n textColor,\n backgroundColor,\n image,\n testId,\n animation\n}) => {\n const [visible, setVisible] = useState13(false);\n const [isReady, setIsReady] = useState13(false);\n const [showAnimation, setShowAnimation] = useState13(false);\n const [tooltipPosition, setTooltipPosition] = useState13({ top: 0, left: 0 });\n const [adjustedPosition, setAdjustedPosition] = useState13(position);\n const triggerRef = React19.useRef(null);\n const tooltipRef = React19.useRef(null);\n const hasContent = !!(text || image);\n const calculatePosition = () => {\n if (!triggerRef.current || !tooltipRef.current) return;\n const rect = triggerRef.current.getBoundingClientRect();\n const tooltipRect = tooltipRef.current.getBoundingClientRect();\n const scrollY = window.scrollY;\n const scrollX = window.scrollX;\n const viewportWidth = window.innerWidth;\n const viewportHeight = window.innerHeight;\n let top = 0;\n let left = 0;\n let finalPosition = position;\n const offset = 12;\n const padding = 10;\n switch (position) {\n case \"top\":\n top = rect.top + scrollY - tooltipRect.height - offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.top < tooltipRect.height + offset + padding) {\n finalPosition = \"bottom\";\n top = rect.bottom + scrollY + offset;\n }\n break;\n case \"right\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.right + scrollX + offset;\n if (rect.right + tooltipRect.width + offset + padding > viewportWidth) {\n finalPosition = \"left\";\n left = rect.left + scrollX - tooltipRect.width - offset;\n }\n break;\n case \"bottom\":\n top = rect.bottom + scrollY + offset;\n left = rect.left + scrollX + rect.width / 2 - tooltipRect.width / 2;\n if (rect.bottom + tooltipRect.height + offset + padding > viewportHeight) {\n finalPosition = \"top\";\n top = rect.top + scrollY - tooltipRect.height - offset;\n }\n break;\n case \"left\":\n top = rect.top + scrollY + rect.height / 2 - tooltipRect.height / 2;\n left = rect.left + scrollX - tooltipRect.width - offset;\n if (rect.left < tooltipRect.width + offset + padding) {\n finalPosition = \"right\";\n left = rect.right + scrollX + offset;\n }\n break;\n }\n if (left < padding) left = padding;\n else if (left + tooltipRect.width > viewportWidth - padding)\n left = viewportWidth - tooltipRect.width - padding;\n if (top < scrollY + padding) top = scrollY + padding;\n else if (top + tooltipRect.height > scrollY + viewportHeight - padding)\n top = scrollY + viewportHeight - tooltipRect.height - padding;\n setTooltipPosition({ top, left });\n setAdjustedPosition(finalPosition);\n setIsReady(true);\n };\n const showTooltip = () => {\n if (!hasContent) return;\n setIsReady(false);\n setVisible(true);\n requestAnimationFrame(() => calculatePosition());\n if (animation) {\n const delay = animation.triggerDelay || 100;\n setTimeout(() => setShowAnimation(true), delay);\n }\n };\n const hideTooltip = () => {\n setVisible(false);\n setIsReady(false);\n setShowAnimation(false);\n setAdjustedPosition(position);\n };\n React19.useEffect(() => {\n if (visible) {\n const handleUpdate = () => {\n requestAnimationFrame(calculatePosition);\n };\n window.addEventListener(\"scroll\", handleUpdate, { passive: true });\n window.addEventListener(\"resize\", handleUpdate);\n return () => {\n window.removeEventListener(\"scroll\", handleUpdate);\n window.removeEventListener(\"resize\", handleUpdate);\n };\n }\n }, [visible]);\n const renderTooltipContent = () => {\n if (image) {\n return /* @__PURE__ */ jsx26(\n \"img\",\n {\n src: image.src,\n alt: image.alt || \"Tooltip image\",\n width: image.width || 200,\n height: image.height || 150,\n loading: \"lazy\",\n className: \"max-w-full h-auto rounded object-cover block\"\n }\n );\n }\n return text;\n };\n const renderAnimation = () => {\n if (!animation || !showAnimation) return null;\n const AnimationComponent = animation.component;\n return /* @__PURE__ */ jsx26(\n AnimationComponent,\n {\n isActive: showAnimation,\n ...animation.props\n }\n );\n };\n if (!hasContent) return /* @__PURE__ */ jsx26(Fragment10, { children });\n const variantStyle = variant === \"default\" ? \"bg-gradient-to-r from-[#1761A3] to-[#4DAF83] text-white text-[11px]\" : \"bg-white/95 text-gray-700 border border-gray-200 text-[13px]\";\n return /* @__PURE__ */ jsxs23(\n \"div\",\n {\n \"data-testid\": testId,\n ref: triggerRef,\n className: `relative inline-block ${className}`,\n onMouseEnter: showTooltip,\n onMouseLeave: hideTooltip,\n onFocus: showTooltip,\n onBlur: hideTooltip,\n children: [\n children,\n renderAnimation(),\n /* @__PURE__ */ jsxs23(\n \"div\",\n {\n ref: tooltipRef,\n role: \"tooltip\",\n style: {\n top: tooltipPosition.top,\n left: tooltipPosition.left,\n color: textColor,\n background: backgroundColor\n },\n className: `\nfixed z-[99999]\nmax-w-[calc(100vw-16px)]\nmin-w-0\nbox-border\nfont-[Poppins]\nfont-medium\nrounded-[6px]\nwhitespace-normal\nbreak-words [overflow-wrap:anywhere]\nflex flex-wrap\ntransition-all duration-200\n${variantStyle}\n${visible && isReady ? \"opacity-100 visible scale-100\" : \"opacity-0 invisible scale-95 pointer-events-none\"}\n${image ? \"p-1\" : \"px-3 py-2\"}\n`,\n children: [\n renderTooltipContent(),\n variant === \"default\" && !image && /* @__PURE__ */ jsx26(\n \"div\",\n {\n className: \"absolute w-0 h-0 border-solid\",\n style: {\n ...adjustedPosition === \"top\" && {\n bottom: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"6px 6px 0 6px\",\n borderColor: \"#1761A3 transparent transparent transparent\"\n },\n ...adjustedPosition === \"bottom\" && {\n top: -6,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n borderWidth: \"0 6px 6px 6px\",\n borderColor: \"transparent transparent #1761A3 transparent\"\n },\n ...adjustedPosition === \"left\" && {\n right: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 0 6px 6px\",\n borderColor: \"transparent transparent transparent #1761A3\"\n },\n ...adjustedPosition === \"right\" && {\n left: -6,\n top: \"50%\",\n transform: \"translateY(-50%)\",\n borderWidth: \"6px 6px 6px 0\",\n borderColor: \"transparent #1761A3 transparent transparent\"\n }\n }\n }\n )\n ]\n }\n )\n ]\n }\n );\n};\nTooltip2.displayName = \"Tooltip\";\n\n// src/components/ToastMessage.tsx\nimport React20, { useEffect as useEffect9 } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { jsx as jsx27, jsxs as jsxs24 } from \"react/jsx-runtime\";\nvar assetSrc4 = (m) => {\n if (typeof m === \"string\") return m;\n const anyM = m;\n if (typeof anyM?.src === \"string\") return anyM.src;\n const d = anyM?.default;\n if (typeof d === \"string\") return d;\n if (typeof d?.src === \"string\") return d.src;\n return \"\";\n};\nvar checkMarkIcon = \"\";\nvar dangerIcon = \"\";\nvar notificationIcon = \"\";\nvar closeIcon = \"\";\nvar checkMarkIcon2 = \"\";\nvar dangerIcon2 = \"\";\nvar dangerIcon1_1 = \"\";\nvar notificationIcon2 = \"\";\nvar closeIconCopy = \"\";\ntry {\n checkMarkIcon = require_check_mark_1();\n dangerIcon = require_danger_1();\n notificationIcon = require_notification_1();\n closeIcon = require_close();\n checkMarkIcon2 = require_check_mark_2();\n dangerIcon2 = require_danger_2();\n dangerIcon1_1 = require_danger_1_1();\n notificationIcon2 = require_notification_2();\n closeIconCopy = require_close_copy_1();\n} catch (e) {\n}\nvar FALLBACK_ICONS2 = {\n checkMarkIcon: \"/toast-icons/check-mark_1.png\",\n dangerIcon: \"/toast-icons/danger_1.png\",\n notificationIcon: \"/toast-icons/notification_1.png\",\n closeIcon: \"/toast-icons/close.png\",\n checkMarkIcon2: \"/toast-icons/check-mark_2.png\",\n dangerIcon2: \"/toast-icons/danger_2.png\",\n dangerIcon1_1: \"/toast-icons/danger_1_1.png\",\n notificationIcon2: \"/toast-icons/notification_2.png\",\n closeIconCopy: \"/toast-icons/close_copy_1.png\"\n};\nvar getIconSrc2 = (imported, fallback) => {\n const src = assetSrc4(imported);\n return src || fallback;\n};\nvar getStripGradient = (type) => {\n switch (type) {\n case \"success\":\n return \"linear-gradient(90deg, rgba(40, 167, 69, 1) 22.5%, rgba(58, 208, 125, 1) 130%)\";\n case \"error\":\n return \"linear-gradient(90deg, rgba(220, 53, 69, 1) 22.5%, rgba(183, 28, 28, 1) 130%)\";\n case \"warning\":\n return \"linear-gradient(90deg, rgba(245, 158, 11, 1) 22.5%, rgba(255, 191, 92, 1) 130%)\";\n case \"notification\":\n default:\n return \"linear-gradient(90deg, rgba(23, 97, 163, 1) 22.5%, rgba(77, 175, 131, 1) 130%)\";\n }\n};\nvar getTitleColor = (type) => {\n switch (type) {\n case \"success\":\n return \"rgba(40, 167, 69, 1)\";\n case \"error\":\n return \"rgba(220, 53, 69, 1)\";\n case \"warning\":\n return \"rgba(245, 158, 11, 1)\";\n case \"notification\":\n default:\n return \"rgba(23, 97, 163, 1)\";\n }\n};\nvar getIcon = (type, background) => {\n const style = { width: \"28px\", height: \"28px\", objectFit: \"contain\" };\n if (background === \"transparent\") {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(checkMarkIcon2, FALLBACK_ICONS2.checkMarkIcon2), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(dangerIcon2, FALLBACK_ICONS2.dangerIcon2), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(dangerIcon1_1, FALLBACK_ICONS2.dangerIcon1_1), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(notificationIcon2, FALLBACK_ICONS2.notificationIcon2), alt: \"Notification\", style });\n }\n } else {\n switch (type) {\n case \"success\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(checkMarkIcon, FALLBACK_ICONS2.checkMarkIcon), alt: \"Success\", style });\n case \"error\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(dangerIcon, FALLBACK_ICONS2.dangerIcon), alt: \"Error\", style });\n case \"warning\":\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(dangerIcon, FALLBACK_ICONS2.dangerIcon), alt: \"Warning\", style });\n case \"notification\":\n default:\n return /* @__PURE__ */ jsx27(\"img\", { src: getIconSrc2(notificationIcon, FALLBACK_ICONS2.notificationIcon), alt: \"Notification\", style });\n }\n }\n};\nvar ToastMessage = React20.forwardRef(\n ({\n type = \"notification\",\n title: customTitle,\n message,\n onClose,\n showClose = true,\n duration = 5e3,\n background = \"solid\",\n custom,\n action,\n className,\n testId,\n ...rest\n }, ref) => {\n const displayTitle = customTitle ?? type.charAt(0).toUpperCase() + type.slice(1);\n const hasActions = action && action.length > 0;\n useEffect9(() => {\n if (!onClose) return;\n if (duration <= 0) return;\n const timer = setTimeout(onClose, duration);\n return () => clearTimeout(timer);\n }, [duration, onClose]);\n const closeIconSrc = custom?.closeIconSrc || (background === \"transparent\" ? getIconSrc2(closeIconCopy, FALLBACK_ICONS2.closeIconCopy) : getIconSrc2(closeIcon, FALLBACK_ICONS2.closeIcon));\n const iconElement = custom?.iconSrc ? /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: custom.iconSrc,\n alt: type,\n style: {\n width: custom.iconWidth || \"28px\",\n height: custom.iconHeight || \"28px\",\n objectFit: \"contain\"\n }\n }\n ) : getIcon(type, background);\n const content = /* @__PURE__ */ jsxs24(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: `fixed top-[20px] right-[20px] w-[325px] rounded-[12px] shadow-md z-[9999] overflow-hidden flex \n ${hasActions ? \"flex-col p-[10px]\" : \"flex-row items-center pl-[10px]\"} \n ${background === \"transparent\" ? \"bg-white text-[#555]\" : \"text-white\"}\n ${className || \"\"}`,\n role: \"alert\",\n \"aria-live\": \"assertive\",\n ...rest,\n children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"absolute left-[5px] top-0 w-[5px] h-full rounded-[20px_0_0_20px]\",\n style: { background: getStripGradient(type) }\n }\n ),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex items-center flex-1 min-h-[50px]\", children: [\n /* @__PURE__ */ jsx27(\"div\", { className: \"flex items-center justify-center w-[40px] h-[40px] mr-[12px] flex-shrink-0 z-[1]\", children: iconElement }),\n /* @__PURE__ */ jsxs24(\"div\", { className: \"flex-1 min-w-0 z-[1]\", children: [\n /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"font-semibold text-[16px] truncate\",\n style: {\n fontFamily: custom?.titleFontFamily || \"Poppins\",\n color: custom?.titleColor || (background === \"transparent\" ? getTitleColor(type) : \"white\")\n },\n children: displayTitle\n }\n ),\n message && /* @__PURE__ */ jsx27(\n \"div\",\n {\n className: \"text-[10px] mt-[2px] truncate\",\n style: {\n fontFamily: custom?.messageFontFamily || \"Poppins\",\n color: custom?.messageColor || (background === \"transparent\" ? \"#555\" : \"white\")\n },\n children: message\n }\n )\n ] }),\n showClose && onClose && /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: onClose,\n \"aria-label\": \"Close toast\",\n className: \"ml-[8px] p-[4px] opacity-80 hover:opacity-100 flex-shrink-0\",\n children: /* @__PURE__ */ jsx27(\n \"img\",\n {\n src: closeIconSrc,\n alt: \"Close\",\n style: {\n width: custom?.closeIconWidth || \"20px\",\n height: custom?.closeIconHeight || \"20px\",\n objectFit: \"contain\"\n }\n }\n )\n }\n )\n ] }),\n hasActions && /* @__PURE__ */ jsx27(\"div\", { className: \"flex gap-[8px] mt-[10px] pl-[5px] justify-end\", children: action?.map((btn, index) => /* @__PURE__ */ jsx27(\n \"button\",\n {\n onClick: btn.onClick,\n className: \"text-[12px] font-semibold px-[16px] py-[6px] rounded-[6px] transition-all active:scale-95\",\n style: {\n background: btn.backgroundColor || (btn.variant === \"secondary\" ? \"transparent\" : \"rgba(255,255,255,0.9)\"),\n color: btn.textColor || (btn.variant === \"secondary\" ? \"white\" : \"black\"),\n border: btn.borderColor ? `1px solid ${btn.borderColor}` : \"none\"\n },\n children: btn.label\n },\n index\n )) })\n ]\n }\n );\n return ReactDOM.createPortal(content, document.body);\n }\n);\nToastMessage.displayName = \"ToastMessage\";\n\n// src/components/ConfettiExplosion.tsx\nimport { useState as useState14, useEffect as useEffect10, useRef as useRef6, useMemo as useMemo4 } from \"react\";\nimport { jsx as jsx28 } from \"react/jsx-runtime\";\nvar ConfettiExplosion = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState14([]);\n const animationFrameRef = useRef6(void 0);\n const timerRef = useRef6(void 0);\n const stableColors = useMemo4(() => colors, [JSON.stringify(colors)]);\n useEffect10(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx28(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nConfettiExplosion.displayName = \"ConfettiExplosion\";\n\n// src/components/RealisticConfetti.tsx\nimport { useState as useState15, useEffect as useEffect11, useRef as useRef7, useMemo as useMemo5 } from \"react\";\nimport { jsx as jsx29 } from \"react/jsx-runtime\";\nvar RealisticConfetti = ({\n testId,\n isActive,\n particleCount = 150,\n duration = 4e3,\n colors = [\n \"#FF0000\",\n \"#00FF00\",\n \"#0000FF\",\n \"#FFFF00\",\n \"#FF00FF\",\n \"#00FFFF\",\n \"#FF8000\",\n \"#8000FF\",\n \"#FF0080\",\n \"#80FF00\",\n \"#0080FF\",\n \"#FF8080\"\n ],\n force = 0.5,\n particleSize = 8,\n stageHeight = 800\n}) => {\n const [particles, setParticles] = useState15([]);\n const animationFrameRef = useRef7(void 0);\n const timerRef = useRef7(void 0);\n const stableColors = useMemo5(() => colors, [JSON.stringify(colors)]);\n useEffect11(() => {\n if (isActive) {\n const newParticles = Array.from({ length: particleCount }, (_, i) => {\n const angle = Math.random() * Math.PI * 2;\n const speed = (Math.random() * 5 + 5) * force;\n const fromLeft = Math.random() > 0.5;\n const startX = fromLeft ? 0 : 100;\n return {\n id: i,\n color: stableColors[Math.floor(Math.random() * stableColors.length)],\n size: Math.random() * particleSize + particleSize / 2,\n shape: [\"circle\", \"rectangle\", \"star\"][Math.floor(Math.random() * 3)],\n rotation: Math.random() * 360,\n rotationSpeed: (Math.random() - 0.5) * 10,\n x: startX,\n y: 100,\n vx: Math.cos(angle) * speed * (fromLeft ? 1 : -1),\n vy: -Math.sin(angle) * speed - 2,\n gravity: 0.1 + Math.random() * 0.1,\n opacity: 1,\n life: 1,\n delay: Math.random() * 300\n };\n });\n setParticles(newParticles);\n let startTime;\n const animate = (timestamp) => {\n if (!startTime) startTime = timestamp;\n const elapsed = timestamp - startTime;\n setParticles(\n (prevParticles) => prevParticles.map((particle) => {\n if (elapsed < particle.delay) return particle;\n const life = Math.max(0, 1 - (elapsed - particle.delay) / duration);\n if (life <= 0) return particle;\n return {\n ...particle,\n x: particle.x + particle.vx * 0.5,\n y: particle.y + particle.vy * 0.5,\n vy: particle.vy + particle.gravity,\n rotation: particle.rotation + particle.rotationSpeed,\n opacity: life,\n life\n };\n }).filter((p) => p.life > 0)\n );\n if (elapsed < duration) {\n animationFrameRef.current = requestAnimationFrame(animate);\n }\n };\n animationFrameRef.current = requestAnimationFrame(animate);\n timerRef.current = setTimeout(() => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n setParticles([]);\n }, duration + 500);\n return () => {\n if (animationFrameRef.current) cancelAnimationFrame(animationFrameRef.current);\n if (timerRef.current) clearTimeout(timerRef.current);\n };\n } else {\n setParticles([]);\n }\n }, [isActive, particleCount, duration, stableColors, force, particleSize]);\n if (!isActive || particles.length === 0) return null;\n return (\n // Container: was styled.div with stageHeight prop\n /* @__PURE__ */ jsx29(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"fixed inset-0 pointer-events-none z-50 overflow-hidden\",\n style: { height: `${stageHeight}px` },\n children: particles.map((particle) => {\n const starGradient = particle.shape === \"star\" ? `conic-gradient(from 0deg, ${particle.color} 0% 20%, transparent 20% 40%, ${particle.color} 40% 60%, transparent 60% 80%, ${particle.color} 80% 100%)` : void 0;\n return /* @__PURE__ */ jsx29(\n \"div\",\n {\n className: [\n \"absolute\",\n \"origin-center\",\n // Shape-specific static classes\n particle.shape === \"circle\" ? \"rounded-full\" : \"\",\n particle.shape === \"rectangle\" ? \"rounded-[2px]\" : \"\"\n // Star uses clip-path via inline style (cannot be a static Tailwind class)\n ].join(\" \"),\n style: {\n // Dynamic values as CSS custom properties — picked up by arbitrary Tailwind classes\n left: `${particle.x}%`,\n bottom: `${particle.y}%`,\n width: `${particle.size}px`,\n height: `${particle.size}px`,\n opacity: particle.opacity,\n transform: `rotate(${particle.rotation}deg)`,\n backgroundColor: particle.shape === \"star\" ? \"transparent\" : particle.color,\n ...particle.shape === \"star\" && {\n background: starGradient,\n clipPath: \"polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)\"\n }\n }\n },\n particle.id\n );\n })\n }\n )\n );\n};\nRealisticConfetti.displayName = \"RealisticConfetti\";\n\n// src/components/Spinner.tsx\nimport { jsx as jsx30, jsxs as jsxs25 } from \"react/jsx-runtime\";\nvar SrOnly = ({ children }) => /* @__PURE__ */ jsx30(\"span\", { className: \"absolute w-[1px] h-[1px] p-0 m-[-1px] overflow-hidden whitespace-nowrap border-0 clip-[rect(0,0,0,0)]\", children });\nvar Spinner = ({\n size = 24,\n borderWidth = 4,\n borderRadius = 50,\n primaryColor = \"#007bff\",\n backgroundColor = \"rgba(0,123,255,0.2)\",\n speed = 1,\n testId\n}) => {\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: {\n width: size,\n height: size,\n borderWidth,\n borderRadius,\n borderColor: backgroundColor,\n borderTopColor: primaryColor,\n animation: `spin ${speed}s linear infinite`\n },\n className: \"border-solid\",\n children: /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n }\n );\n};\nvar CircularSpinner = ({\n size = 48,\n color = \"rgba(37,99,235,1)\",\n speed = 1.5,\n ringCount = 1,\n testId\n}) => {\n const rings = Array.from({ length: Math.max(1, ringCount) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n className: \"relative\",\n style: { width: size, height: size },\n children: [\n rings.map((_, i) => {\n const ringSize = size - i * (size / (ringCount + 1));\n const offset = (size - ringSize) / 2;\n const opacity = 1 - i * 0.3;\n return /* @__PURE__ */ jsx30(\n \"span\",\n {\n style: {\n width: ringSize,\n height: ringSize,\n top: offset,\n left: offset,\n opacity,\n borderWidth: Math.max(2, ringSize / 12),\n borderTopColor: color,\n animation: `circularSpin ${speed + i * 0.3}s linear infinite`\n },\n className: \"absolute border border-transparent rounded-full\"\n },\n i\n );\n }),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading...\" })\n ]\n }\n );\n};\nvar CardOverlayLoader = ({\n show = true,\n spinnerSize = 32,\n spinnerBorderWidth = 4,\n spinnerPrimary = \"rgba(37,99,235,1)\",\n spinnerTrack = \"rgba(229,231,235,1)\",\n backdrop = \"rgba(255,255,255,0.65)\",\n label = \"Loading...\",\n testId\n}) => {\n if (!show) return null;\n return /* @__PURE__ */ jsx30(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-live\": \"polite\",\n style: { backgroundColor: backdrop },\n className: \"absolute inset-0 grid place-content-center rounded-xl backdrop-blur-[1px]\",\n children: /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col items-center gap-3\", children: [\n /* @__PURE__ */ jsx30(\n Spinner,\n {\n size: spinnerSize,\n borderWidth: spinnerBorderWidth,\n borderRadius: 50,\n primaryColor: spinnerPrimary,\n backgroundColor: spinnerTrack\n }\n ),\n /* @__PURE__ */ jsx30(\"span\", { className: \"text-sm font-medium text-gray-800\", children: label })\n ] })\n }\n );\n};\nvar LoadingDots = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 3,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(0, count) });\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsBounce ${speed}s ease-in-out ${i * (speed / dots.length)}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar LoadingDotsLinear = ({\n size = 8,\n color = \"rgba(55,65,81,1)\",\n gap = 6,\n speed = 1.2,\n count = 5,\n testId\n}) => {\n const dots = Array.from({ length: Math.max(1, count) });\n const delay = speed / count;\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n role: \"status\",\n \"aria-label\": \"Loading\",\n className: \"inline-flex items-center\",\n children: [\n dots.map((_, i) => /* @__PURE__ */ jsx30(\n \"span\",\n {\n \"aria-hidden\": true,\n style: {\n width: size,\n height: size,\n backgroundColor: color,\n marginRight: i === dots.length - 1 ? 0 : gap,\n animation: `dotsLinear ${speed}s ease-in-out ${i * delay}s infinite`\n },\n className: \"rounded-full inline-block\"\n },\n i\n )),\n /* @__PURE__ */ jsx30(SrOnly, { children: \"Loading\\u2026\" })\n ]\n }\n );\n};\nvar CardWithLoading = ({\n loading = true,\n imageUrl = \"https://upload.wikimedia.org/wikipedia/commons/c/cb/Adirondacks_2016_Cascade_mountain_hike.jpg\",\n title = \"Amazing Landscape\",\n content = \"Discover breathtaking views and natural wonders from around the world.\",\n testId\n}) => {\n return /* @__PURE__ */ jsxs25(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"rounded-xl overflow-hidden shadow-lg bg-white border border-gray-200 max-w-[28rem] relative\",\n children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-64 bg-gray-100 overflow-hidden relative\", children: !loading ? /* @__PURE__ */ jsx30(\"img\", { src: imageUrl, alt: title, className: \"w-full h-full object-cover\" }) : /* @__PURE__ */ jsx30(\"div\", { className: \"w-full h-full shimmer\" }) }),\n /* @__PURE__ */ jsxs25(\"div\", { className: \"p-6\", children: [\n !loading ? /* @__PURE__ */ jsx30(\"h3\", { className: \"text-xl font-semibold text-gray-900 mb-3\", children: title }) : /* @__PURE__ */ jsx30(\"div\", { className: \"h-7 w-[70%] shimmer rounded mb-3\" }),\n !loading ? /* @__PURE__ */ jsx30(\"p\", { className: \"text-sm text-gray-500 leading-relaxed\", children: content }) : /* @__PURE__ */ jsxs25(\"div\", { className: \"flex flex-col gap-2\", children: [\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-full shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[95%] shimmer rounded\" }),\n /* @__PURE__ */ jsx30(\"div\", { className: \"h-4 w-[80%] shimmer rounded\" })\n ] })\n ] })\n ]\n }\n );\n};\n\n// src/components/NestedDropdown.tsx\nimport { useEffect as useEffect12, useRef as useRef8, useState as useState16 } from \"react\";\nimport { ChevronDown as ChevronDown4, X as X3, Loader2 } from \"lucide-react\";\nimport { Fragment as Fragment11, jsx as jsx31, jsxs as jsxs26 } from \"react/jsx-runtime\";\nfunction SearchableDropdown({\n label,\n options,\n value,\n onChange,\n placeholder = \"search here\",\n testId\n}) {\n const [open, setOpen] = useState16(false);\n const [search, setSearch] = useState16(\"\");\n const ref = useRef8(null);\n useEffect12(() => {\n const h = (e) => ref.current && !ref.current.contains(e.target) && setOpen(false);\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, []);\n const filtered = (options ?? []).filter(\n (o) => o.label.toLowerCase().includes(search.toLowerCase())\n );\n return /* @__PURE__ */ jsxs26(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-[320px] max-w-full mx-auto\",\n children: [\n label && /* @__PURE__ */ jsx31(\"label\", { className: \"block mb-2 text-[12px] font-semibold text-[#1761a3]\", children: label }),\n /* @__PURE__ */ jsxs26(\n \"button\",\n {\n onClick: () => setOpen((o) => !o),\n className: \"w-full flex justify-between items-center px-4 py-3 rounded-[8px] \\r\\n bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white font-semibold\",\n children: [\n (options ?? []).find((o) => o.value === value)?.label || placeholder,\n /* @__PURE__ */ jsx31(ChevronDown4, { size: 16 })\n ]\n }\n ),\n open && /* @__PURE__ */ jsxs26(\n \"div\",\n {\n className: \"absolute top-[calc(100%+8px)] left-0 w-full bg-white rounded-[12px]\\r\\n border border-[rgba(23,97,163,0.3)] z-[100]\",\n children: [\n /* @__PURE__ */ jsxs26(\"div\", { className: \"p-3 border-b border-[#e5e7eb] relative\", children: [\n /* @__PURE__ */ jsx31(\n \"input\",\n {\n placeholder: \"search..\",\n value: search,\n onChange: (e) => setSearch(e.target.value),\n className: \"w-full h-[36px] px-3 pr-9 border rounded-[6px]\\r\\n border-[rgba(23,97,163,0.3)] outline-none\"\n }\n ),\n search && /* @__PURE__ */ jsx31(\n \"button\",\n {\n onClick: () => setSearch(\"\"),\n className: \"absolute right-[15px] top-1/2 -translate-y-1/2\\r\\n w-[22px] h-[22px] rounded-full bg-[#9ca3af] text-white\",\n children: \"\\u2715\"\n }\n )\n ] }),\n /* @__PURE__ */ jsxs26(\"div\", { className: \"max-h-[220px] overflow-y-auto\", children: [\n filtered.map((o) => /* @__PURE__ */ jsx31(\n \"div\",\n {\n onClick: () => {\n onChange(o.value);\n setOpen(false);\n setSearch(\"\");\n },\n className: \"px-4 py-[10px] text-[14px] cursor-pointer hover:bg-[#f1f5f9]\",\n children: o.label\n },\n o.value\n )),\n filtered.length === 0 && /* @__PURE__ */ jsx31(\"div\", { className: \"p-3 text-[#9ca3af]\", children: \"No results\" })\n ] })\n ]\n }\n )\n ]\n }\n );\n}\n\n// src/components/TextToAudio.tsx\nimport { useEffect as useEffect13, useRef as useRef9, useState as useState17 } from \"react\";\nimport { jsx as jsx32, jsxs as jsxs27 } from \"react/jsx-runtime\";\nvar ControlIcon = ({ src }) => /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${src})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\"\n }\n }\n);\nvar defaultIcons = {\n play: \"/icons/play-btn.png\",\n pause: \"/icons/pause-btn.png\",\n stop: \"/icons/hard-stop.png\",\n repeat: \"/icons/repeat-icon.png\",\n skipForward: \"/icons/skip-forward.png\",\n skipBackward: \"/icons/Backward-icon.png\",\n tenForward: \"/icons/ten-skip-forward.png\",\n tenBackward: \"/icons/ten-skip-backward.png\"\n};\nvar TexttoAudio = ({ icons = defaultIcons }) => {\n const WORDS_PER_SECOND = 2.5;\n const [text, setText] = useState17(\"\");\n const [mode, setMode] = useState17(\"textarea\");\n const [playing, setPlaying] = useState17(false);\n const [currentTime, setCurrentTime] = useState17(0);\n const [duration, setDuration] = useState17(1);\n const [volume, setVolume] = useState17(1);\n const [speed, setSpeed] = useState17(1);\n const [loop, setLoop] = useState17(false);\n const utteranceRef = useRef9(null);\n const timerRef = useRef9(null);\n const wordIndexRef = useRef9(0);\n const textAreaRef = useRef9(null);\n const highlightOnSkipRef = useRef9(false);\n const [summary, setSummary] = useState17(\"\");\n const [loopMode, setLoopMode] = useState17(0);\n const loopCountRef = useRef9(0);\n const autoPlayRef = useRef9(false);\n const baseDurationRef = useRef9(0);\n const timerBaseRef = useRef9(0);\n const volumeRef = useRef9(volume);\n const speedRef = useRef9(speed);\n const categorizeText = (input) => {\n if (!input.trim()) return \"This content covers general topics.\";\n const text2 = input.toLowerCase();\n const categories = {\n Technology: {\n keywords: [\n \"technology\",\n \"software\",\n \"hardware\",\n \"ai\",\n \"artificial intelligence\",\n \"machine learning\",\n \"computer\",\n \"internet\",\n \"digital\",\n \"platform\",\n \"app\"\n ],\n summary: \"This content focuses on technology, software systems, and digital innovation.\"\n },\n Business: {\n keywords: [\n \"business\",\n \"marketing\",\n \"sales\",\n \"brand\",\n \"strategy\",\n \"market\",\n \"customer\",\n \"startup\",\n \"company\",\n \"growth\"\n ],\n summary: \"This content discusses business concepts, strategies, and market growth.\"\n },\n Education: {\n keywords: [\n \"education\",\n \"learning\",\n \"teaching\",\n \"students\",\n \"training\",\n \"course\",\n \"knowledge\",\n \"research\",\n \"study\"\n ],\n summary: \"This content is related to education, learning processes, and knowledge sharing.\"\n },\n Media: {\n keywords: [\n \"content\",\n \"video\",\n \"audio\",\n \"blog\",\n \"podcast\",\n \"social media\",\n \"youtube\",\n \"linkedin\",\n \"posts\"\n ],\n summary: \"This content explains media, communication formats, and content creation.\"\n },\n Human: {\n keywords: [\n \"human\",\n \"people\",\n \"communication\",\n \"engagement\",\n \"interaction\",\n \"society\",\n \"culture\",\n \"behavior\"\n ],\n summary: \"This content highlights human behavior, interaction, and social aspects.\"\n },\n Geography: {\n keywords: [\n \"geography\",\n \"location\",\n \"region\",\n \"country\",\n \"city\",\n \"map\",\n \"area\",\n \"population\"\n ],\n summary: \"This content relates to geographical regions and location-based information.\"\n },\n Nature: {\n keywords: [\n \"nature\",\n \"environment\",\n \"climate\",\n \"earth\",\n \"ecosystem\",\n \"forest\",\n \"water\",\n \"animals\",\n \"plants\"\n ],\n summary: \"This content focuses on nature, environment, and ecological systems.\"\n },\n Health: {\n keywords: [\n \"health\",\n \"medical\",\n \"fitness\",\n \"wellness\",\n \"mental\",\n \"physical\",\n \"disease\"\n ],\n summary: \"This content discusses health, wellness, and medical-related topics.\"\n }\n };\n const summaries = [];\n for (const key in categories) {\n if (categories[key].keywords.some((k) => text2.includes(k))) {\n summaries.push(categories[key].summary);\n }\n }\n return summaries.length ? summaries.slice(0, 2).join(\" \") : \"This content provides general informational insights.\";\n };\n const highlightWordAt = (startIndex) => {\n const ta = textAreaRef.current;\n if (!ta) return;\n const value = ta.value;\n let start = startIndex;\n while (start > 0 && /\\S/.test(value[start - 1])) {\n start--;\n }\n let end = startIndex;\n while (end < value.length && /\\S/.test(value[end])) {\n end++;\n }\n ta.focus();\n ta.setSelectionRange(start, end);\n };\n const formatTime2 = (sec) => {\n const m = Math.floor(sec / 60);\n const s = Math.floor(sec % 60);\n return `${m}:${s.toString().padStart(2, \"0\")}`;\n };\n const getSourceText = () => text;\n const speakFromTime = (time) => {\n const source = text;\n if (!source.trim()) return;\n const words = source.split(/\\s+/);\n const startWordIndex = Math.floor(time * WORDS_PER_SECOND);\n const charOffset = words.slice(0, startWordIndex).join(\" \").length + (startWordIndex > 0 ? 1 : 0);\n window.speechSynthesis.cancel();\n stopTimer();\n const u = new SpeechSynthesisUtterance(source.slice(charOffset));\n u.rate = speedRef.current;\n u.volume = volumeRef.current;\n u.onboundary = (e) => {\n if (e.name === \"word\" && highlightOnSkipRef.current) {\n highlightWordAt(charOffset + e.charIndex);\n }\n };\n u.onend = () => {\n stopTimer();\n highlightOnSkipRef.current = false;\n if (loopMode === 1 && loopCountRef.current === 0) {\n loopCountRef.current = 1;\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n if (loopMode === 2) {\n setCurrentTime(0);\n speakFromTime(0);\n return;\n }\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(duration);\n };\n utteranceRef.current = u;\n window.speechSynthesis.speak(u);\n setPlaying(true);\n startTimer(time);\n };\n const startTimer = (fromTime) => {\n stopTimer();\n const start = Date.now() - fromTime * 1e3;\n timerRef.current = setInterval(() => {\n const elapsed = (Date.now() - start) / 1e3;\n setCurrentTime(Math.min(elapsed, duration));\n }, 100);\n };\n const togglePlay = () => {\n if (!utteranceRef.current) {\n loopCountRef.current = 0;\n speakFromTime(currentTime);\n return;\n }\n if (playing) {\n window.speechSynthesis.pause();\n stopTimer();\n setPlaying(false);\n } else {\n window.speechSynthesis.resume();\n startTimer(currentTime);\n setPlaying(true);\n }\n };\n const stopTimer = () => {\n if (timerRef.current) {\n clearInterval(timerRef.current);\n timerRef.current = null;\n }\n };\n const getQuickSummary = () => {\n if (mode === \"page\") {\n const pageText = document.body.innerText.replace(/\\s+/g, \" \").trim();\n return pageText ? \"This page provides key information and functionality related to the current module.\" : \"No content available on this page.\";\n }\n return categorizeText(text);\n };\n const getPageContent = () => {\n return document.body.innerText.replace(/\\s+/g, \" \").trim();\n };\n const downloadAudio = () => {\n alert(\"Download audio requires Backend TTS integration\");\n };\n const skip = (sec) => {\n const next = Math.max(0, Math.min(currentTime + sec, duration));\n highlightOnSkipRef.current = true;\n window.speechSynthesis.cancel();\n stopTimer();\n setCurrentTime(next);\n speakFromTime(next);\n startTimer(next);\n };\n const stop = () => {\n window.speechSynthesis.cancel();\n stopTimer();\n loopCountRef.current = 0;\n setPlaying(false);\n setCurrentTime(0);\n textAreaRef.current?.setSelectionRange(0, 0);\n };\n useEffect13(() => {\n volumeRef.current = volume;\n }, [volume]);\n useEffect13(() => {\n speedRef.current = speed;\n }, [speed]);\n useEffect13(() => {\n if (!playing) return;\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(currentTime);\n }, [volume]);\n useEffect13(() => {\n if (!text.trim()) {\n setDuration(0);\n setCurrentTime(0);\n return;\n }\n const words = text.trim().split(/\\s+/).length;\n const baseDuration = words / WORDS_PER_SECOND;\n baseDurationRef.current = baseDuration;\n setDuration(baseDuration / speed);\n setCurrentTime(0);\n }, [text]);\n useEffect13(() => {\n if (!baseDurationRef.current) return;\n const progress = duration === 0 ? 0 : currentTime / duration;\n const newDuration = baseDurationRef.current / speed;\n const newCurrentTime = progress * newDuration;\n setDuration(newDuration);\n setCurrentTime(newCurrentTime);\n if (playing) {\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(newCurrentTime);\n }\n }, [speed]);\n useEffect13(() => {\n if (!autoPlayRef.current) return;\n if (!text.trim()) return;\n autoPlayRef.current = false;\n speakFromTime(0);\n }, [text]);\n return /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-container\",\n className: \"grid grid-cols-[4fr_1fr] gap-[10px] max-[900px]:grid-cols-1\",\n children: [\n /* @__PURE__ */ jsxs27(\n \"div\",\n {\n \"data-testid\": \"text-to-audio-card\",\n className: \"border border-[#8ed1b2] bg-[#f1f7f7] rounded-[16px] overflow-hidden flex flex-col h-full\",\n children: [\n /* @__PURE__ */ jsx32(\"div\", { className: \"px-[16px] py-[12px] bg-[#e2ecf1] border-b border-[#8ed1b2] font-semibold\", children: \"Text to Speech\" }),\n /* @__PURE__ */ jsx32(\"div\", { className: \"flex flex-1 overflow-hidden\", children: /* @__PURE__ */ jsx32(\n \"textarea\",\n {\n ref: textAreaRef,\n placeholder: \"Enter text here...\",\n value: text,\n onChange: (e) => setText(e.target.value),\n className: \"w-full flex-1 h-[240px] min-h-[240px] max-h-[240px] border-none bg-transparent p-[16px] resize-none outline-none overflow-y-auto leading-[1.6]\"\n }\n ) }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex flex-wrap items-center gap-[10px] p-[12px] bg-[#eaf6f1] border-t border-[#8ed1b2] flex-shrink-0\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[8px] bg-[#d1e4e7] px-[12px] py-[8px] rounded-full overflow-x-auto\", children: [\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10 sec backward\", onClick: () => skip(-10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[#4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"skip-backward-btn\", onClick: () => skip(-5), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.skipBackward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"play-pause-btn\", onClick: togglePlay, children: /* @__PURE__ */ jsx32(ControlIcon, { src: playing ? icons.pause : icons.play }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"10-sec-forward-skip\", onClick: () => skip(10), children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.tenForward }) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"5-sec-forward-skip\", onClick: () => skip(5), children: /* @__PURE__ */ jsx32(\n \"div\",\n {\n style: {\n width: 16,\n height: 16,\n backgroundImage: `url(${icons.skipBackward})`,\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center\",\n backgroundSize: \"contain\",\n transform: \"scaleX(-1)\"\n }\n }\n ) }),\n /* @__PURE__ */ jsx32(\"button\", { className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\", \"data-testid\": \"force-stop\", onClick: stop, children: /* @__PURE__ */ jsx32(ControlIcon, { src: icons.stop }) }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"border border-[4daf83] bg-[#d4e4eb] rounded-[6px] p-[6px] cursor-pointer\",\n \"data-testid\": \"on-loop-btn\",\n onClick: () => {\n setLoopMode((prev) => prev === 2 ? 0 : prev + 1);\n },\n title: loopMode === 0 ? \"Loop off\" : loopMode === 1 ? \"Loop once\" : \"Loop continuously\",\n children: /* @__PURE__ */ jsxs27(\"div\", { style: { position: \"relative\" }, children: [\n /* @__PURE__ */ jsx32(ControlIcon, { src: icons.repeat }),\n loopMode === 1 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n width: 6,\n height: 6,\n borderRadius: \"50%\",\n background: \"#1761a3\"\n }\n }\n ),\n loopMode === 2 && /* @__PURE__ */ jsx32(\n \"span\",\n {\n style: {\n position: \"absolute\",\n right: -4,\n bottom: -4,\n fontSize: 10,\n fontWeight: 700,\n color: \"#1761a3\"\n },\n children: \"1\"\n }\n )\n ] })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex items-center gap-[6px] w-[180px]\", children: [\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n className: \"flex-1 appearance-none h-[6px] rounded-full cursor-pointer\",\n \"data-testid\": \"seek-bar\",\n type: \"range\",\n min: 0,\n max: duration,\n step: 0.01,\n value: currentTime,\n style: {\n \"--progress\": `${currentTime / duration * 100}%`\n },\n onChange: (e) => {\n const t = Number(e.target.value);\n setCurrentTime(t);\n window.speechSynthesis.cancel();\n stopTimer();\n speakFromTime(t);\n }\n }\n ),\n /* @__PURE__ */ jsxs27(\n \"span\",\n {\n style: {\n fontSize: 10,\n color: \"#4a5c57\",\n minWidth: 5,\n textAlign: \"right\"\n },\n children: [\n formatTime2(currentTime),\n \".\",\n formatTime2(duration)\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text-white border-none px-[12px] py-[6px] rounded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-entire-page-btn\",\n onClick: () => {\n const pageText = getPageContent();\n loopCountRef.current = 0;\n setText(pageText);\n setMode(\"page\");\n setCurrentTime(0);\n speakFromTime(0);\n },\n children: \"Reads Entire page\"\n }\n ),\n /* @__PURE__ */ jsx32(\n \"button\",\n {\n className: \"bg-gradient-to-r from-[#1761a3] to-[#4daf83] text white border-none px-[12px] py-[6px] ronded-[6px] cursor-pointer\",\n \"data-testid\": \"reads-given-input\",\n onClick: () => {\n loopCountRef.current = 0;\n setMode(\"textarea\");\n setCurrentTime(0);\n setSummary(categorizeText(text));\n speakFromTime(0);\n },\n children: \"Reads input text\"\n }\n )\n ] })\n ]\n }\n ),\n /* @__PURE__ */ jsx32(\"div\", { className: \"flex flex-col gap-[16px]\", children: /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px] mb-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"flex justify-between items-center text-[13px] font-semibold text-[#243a36] mb-[10px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Volume\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n Math.round(volume * 100),\n \"%\"\n ] })\n ] }),\n /* @__PURE__ */ jsx32(\n \"input\",\n {\n \"data-testid\": \"text-to-audio-volume\",\n type: \"range\",\n min: 0,\n max: 1,\n step: 0.01,\n value: volume,\n style: { \"--value\": `${volume * 100}%` },\n onChange: (e) => setVolume(Number(e.target.value))\n }\n )\n ] }) }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsxs27(\"div\", { className: \"text-[13px] font-semibold text-[#243a36] flex justify-between mb-[12px]\", children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Playback Speed\" }),\n /* @__PURE__ */ jsxs27(\"span\", { children: [\n speed.toFixed(2),\n \"x\"\n ] })\n ] }),\n /* @__PURE__ */ jsx32(\"div\", { className: \"bg-[#eef5f2] rounded-[12px] p-[12px]\", children: /* @__PURE__ */ jsx32(\n \"input\",\n {\n className: \"w-full appearance-none h-[6px] rounded-full\",\n \"data-testid\": \"test-to-audio-playbackspeed\",\n type: \"range\",\n min: 0.5,\n max: 2,\n step: 0.25,\n value: speed,\n style: {\n \"--value\": `${(speed - 0.5) / 1.5 * 100}%`\n },\n onChange: (e) => setSpeed(Number(e.target.value))\n }\n ) }),\n /* @__PURE__ */ jsxs27(\n \"div\",\n {\n style: {\n fontSize: 12,\n color: \"#7a8b86\",\n marginTop: 6,\n display: \"flex\",\n justifyContent: \"space-between\"\n },\n children: [\n /* @__PURE__ */ jsx32(\"span\", { children: \"Slower\" }),\n /* @__PURE__ */ jsx32(\"span\", { children: \"Faster\" })\n ]\n }\n )\n ] }),\n /* @__PURE__ */ jsxs27(\"div\", { className: \"bg-[#f7fbfb] border border-[#cfe5da] rounded-[14px] p-[16px]\", children: [\n /* @__PURE__ */ jsx32(\"div\", { className: \"text-[13px] font-semibold text-[#243a36] flex justify-between mb-[12px]\" }),\n /* @__PURE__ */ jsx32(\"span\", { \"data-testid\": \"quick-summary\", children: \"Quick Summary\" })\n ] }),\n /* @__PURE__ */ jsx32(\"p\", { style: { fontSize: 13, color: \"#4a5c57\", lineHeight: 1.5 }, children: mode === \"textarea\" ? categorizeText(text) : getQuickSummary() })\n ]\n }\n );\n};\n\n// src/components/Notifications.tsx\nimport { useEffect as useEffect14, useRef as useRef10, useState as useState18 } from \"react\";\nimport { createPortal as createPortal2 } from \"react-dom\";\nimport { X as X4 } from \"lucide-react\";\nimport { jsx as jsx33, jsxs as jsxs28 } from \"react/jsx-runtime\";\nvar MahatiLocationAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const ref = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const [location, setLocation] = useState18(null);\n useEffect14(() => {\n if (!navigator.permissions) return;\n navigator.permissions.query({ name: \"geolocation\" }).then((res) => {\n setStatus(res.state);\n res.onchange = () => setStatus(res.state);\n });\n }, []);\n useEffect14(() => {\n if (status === \"granted\" && location) {\n onAllow?.(location.coords);\n onClose();\n }\n }, [status, location]);\n const requestLocation = () => {\n navigator.geolocation.getCurrentPosition(\n (pos) => {\n setLocation(pos);\n setStatus(\"granted\");\n },\n () => setStatus(\"denied\"),\n { enableHighAccuracy: true }\n );\n };\n useEffect14(() => {\n if (!isOpen) return;\n const h = (e) => !ref.current?.contains(e.target) && onClose();\n document.addEventListener(\"mousedown\", h);\n return () => document.removeEventListener(\"mousedown\", h);\n }, [isOpen]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-sm\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n className: \"w-[144px] object-contain\",\n alt: \"location\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestLocation,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Location Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiCameraAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestCamera = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n video: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Camera error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Camera Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestCamera,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Camera Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiMicrophoneAccessModal = ({\n isOpen,\n onClose,\n title,\n description,\n image,\n allowText,\n denyText,\n onAllow,\n onDeny,\n testId\n}) => {\n const cardRef = useRef10(null);\n const [status, setStatus] = useState18(\"prompt\");\n const requestMic = async () => {\n try {\n const stream = await navigator.mediaDevices.getUserMedia({\n audio: true\n });\n setStatus(\"granted\");\n onAllow?.(stream);\n onClose();\n } catch (err) {\n console.error(\"Microphone error:\", err);\n setStatus(\"denied\");\n onDeny?.();\n }\n };\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!cardRef.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n ref: cardRef,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] rounded-[24px] border-2 border-[#c2e2d5] bg-[#f0f5f8] px-8 py-10 shadow-[0_12px_28px_rgba(0,0,0,0.18)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-5 top-5 flex h-8 w-8 items-center justify-center rounded-full bg-white shadow-[0_2px_6px_rgba(0,0,0,0.15)]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 16 })\n }\n ),\n image && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-2 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: image,\n alt: \"Microphone Access\",\n className: \"w-[144px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h2\", { className: \"mb-3 text-center text-[24px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 whitespace-pre-line text-center text-[14px] text-[#374151]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: requestMic,\n className: \"mb-4 w-full rounded-lg bg-gradient-to-r from-[#1b5fa7] to-[#57b884] py-3 font-medium text-white hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: status === \"granted\" ? \"Microphone Enabled\" : allowText\n }\n ),\n denyText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n setStatus(\"denied\");\n onDeny?.();\n onClose();\n },\n className: \"w-full rounded-lg border-2 border-[#8cb8e8] bg-white py-3 font-medium text-[#1b5fa7] hover:bg-[#f2f8ff]\",\n children: denyText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionCard = ({\n headerTitle,\n title,\n testId,\n description,\n ctaText,\n onCtaClick,\n showInput = false,\n inputPlaceholder,\n onInputChange,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"w-full max-w-[420px] overflow-hidden rounded-[16px] border-2 border-[#c5d9e6] bg-[#f1f7f7] shadow-[0_6px_16px_rgba(0,0,0,0.15)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between bg-gradient-to-r from-[#1761a3] to-[#4daf83] px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium text-white\", children: headerTitle }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-5 py-6\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-2 text-[18px] font-semibold text-[#111827]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-6 text-[14px] text-[#878787]\", children: description }),\n showInput && /* @__PURE__ */ jsx33(\n \"input\",\n {\n type: \"email\",\n placeholder: inputPlaceholder,\n onChange: (e) => onInputChange?.(e.target.value),\n className: \"mb-4 w-full rounded-[8px] border-2 border-[#c2dae8] bg-[#eaf2f6] px-[14px] py-[12px] text-[14px] focus:border-[#1b5fa7] focus:outline-none\"\n }\n ),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onCtaClick,\n className: \"w-full rounded-[8px] bg-[#1761a3] py-[12px] text-[14px] font-medium text-white hover:bg-[#174f8a] hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: ctaText\n }\n )\n ] })\n ]\n }\n );\n};\nvar MahatiPromotionModal = ({\n isOpen,\n onClose,\n ctaLink,\n openInNewTab,\n onCtaClick,\n testId,\n ...cardProps\n}) => {\n const ref = useRef10(null);\n const [email, setEmail] = useState18(\"\");\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.(email);\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px]\", children: /* @__PURE__ */ jsx33(\n \"div\",\n {\n ref,\n \"data-testid\": testId,\n onClick: (e) => e.stopPropagation(),\n children: /* @__PURE__ */ jsx33(\n MahatiPromotionCard,\n {\n ...cardProps,\n onClose,\n onInputChange: setEmail,\n onCtaClick: handleCta\n }\n )\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV2Modal = ({\n isOpen,\n testId,\n onClose,\n headerTitle,\n title,\n description,\n ctaText,\n onCtaClick,\n ctaLink,\n openInNewTab = false,\n showBadgeImage = false,\n badgeImageSrc\n}) => {\n const ref = useRef10(null);\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"relative w-full max-w-[420px] overflow-hidden rounded-[16px] bg-gradient-to-b from-[#4daf83] via-[#2f8fa0] to-[#1761a3] text-white shadow-[0_20px_40px_rgba(0,0,0,0.35)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex items-center justify-between px-5 py-4\", children: [\n /* @__PURE__ */ jsx33(\"h3\", { className: \"text-[16px] font-medium\", children: headerTitle }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[28px] w-[28px] items-center justify-center rounded-full bg-white/20 hover:bg-white/30\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14, color: \"white\" })\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"px-6 py-10\", children: [\n /* @__PURE__ */ jsx33(\"h4\", { className: \"mb-4 text-[28px] font-semibold\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-10 max-w-[80%] text-[14px] opacity-90\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"rounded-[8px] bg-white px-8 py-3 text-[14px] font-semibold text-[#1761a3] hover:bg-[#f2f6fa] hover:shadow-[0_6px_18px_rgba(0,0,0,0.3)]\",\n children: ctaText\n }\n )\n ] }),\n showBadgeImage && badgeImageSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeImageSrc,\n alt: \"Promotion Badge\",\n className: \"absolute bottom-6 right-[-24px] h-[120px] w-[120px] object-contain\"\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar MahatiPromotionModalV3Modal = ({\n isOpen,\n testId,\n onClose,\n title,\n description,\n ctaText,\n onCtaClick,\n secondaryText = \"Later\",\n onSecondaryClick,\n imageSrc,\n ctaLink,\n openInNewTab = false\n}) => {\n const ref = useRef10(null);\n useEffect14(() => {\n if (!isOpen) return;\n const handler = (e) => {\n if (!ref.current?.contains(e.target)) {\n onClose();\n }\n };\n document.addEventListener(\"click\", handler);\n return () => document.removeEventListener(\"click\", handler);\n }, [isOpen, onClose]);\n if (!isOpen) return null;\n const handleCta = () => {\n onCtaClick?.();\n if (ctaLink) {\n openInNewTab ? window.open(ctaLink, \"_blank\") : window.location.href = ctaLink;\n }\n onClose();\n };\n return createPortal2(\n /* @__PURE__ */ jsx33(\"div\", { className: \"fixed inset-0 z-[9999] flex items-center justify-center bg-black/40 backdrop-blur-[6px] p-4\", children: /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n ref,\n onClick: (e) => e.stopPropagation(),\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: [\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"absolute right-[20px] top-[20px] flex h-[28px] w-[28px] items-center justify-center rounded-full bg-[#f1f5f9] hover:bg-[#e5e7eb]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n ),\n imageSrc && /* @__PURE__ */ jsx33(\"div\", { className: \"mb-6 flex justify-center\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: imageSrc,\n alt: \"Promotion\",\n className: \"h-[130px] w-[160px] object-contain\"\n }\n ) }),\n /* @__PURE__ */ jsx33(\"h3\", { className: \"mb-3 text-[22px] font-semibold text-[#4daf83]\", children: title }),\n /* @__PURE__ */ jsx33(\"p\", { className: \"mb-8 text-[14px] text-[#6b7280]\", children: description }),\n /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: handleCta,\n className: \"w-full rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-3 text-[14px] font-medium text-white hover:bg-gradient-to-r hover:from-[#174f8a] hover:to-[#4ca676] hover:shadow-[0_6px_18px_rgba(0,0,0,0.25)]\",\n children: ctaText\n }\n ),\n secondaryText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: () => {\n onSecondaryClick?.();\n onClose();\n },\n className: \"mt-4 text-[14px] font-medium text-[#1761a3] hover:underline\",\n children: secondaryText\n }\n )\n ]\n }\n ) }),\n document.body\n );\n};\nvar BADGE_BG_MAP = {\n like: \"#F9595F\",\n mention: \"#E02424\",\n follow: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n comment: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\",\n add: \"linear-gradient(to bottom right, #1761A3, #4DAF83)\"\n};\nvar MahatiNotificationCard = ({\n title,\n testId,\n description,\n time,\n iconSrc,\n avatarSrc,\n badgeIconSrc,\n badgeType,\n primaryActionText,\n onPrimaryAction,\n secondaryActionText,\n onSecondaryAction,\n onClose\n}) => {\n return /* @__PURE__ */ jsxs28(\n \"div\",\n {\n \"data-testid\": testId,\n className: \"flex w-full max-w-[640px] items-start gap-4 rounded-[16px] border-2 border-[#c2e2d5] bg-[#f1f7f7] px-4 py-3 shadow-[0_2px_6px_rgba(0,0,0,0.08)]\",\n children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"relative h-[56px] w-[56px] flex-shrink-0 md:h-[64px] md:w-[64px]\", children: [\n iconSrc ? /* @__PURE__ */ jsx33(\"div\", { className: \"flex h-full w-full items-center justify-center rounded-[10px] bg-gradient-to-br from-[#1761a3] to-[#4daf83]\", children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: iconSrc,\n alt: \"\",\n className: \"h-[20px] w-[20px] md:h-[24px] md:w-[24px]\"\n }\n ) }) : avatarSrc && /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: avatarSrc,\n alt: \"User\",\n className: \"h-full w-full rounded-[10px] object-cover\"\n }\n ),\n badgeIconSrc && badgeType && /* @__PURE__ */ jsx33(\n \"div\",\n {\n className: \"absolute bottom-[-4px] right-[-4px] flex h-[24px] w-[24px] items-center justify-center rounded-full border-2 border-white\",\n style: { background: BADGE_BG_MAP[badgeType] },\n children: /* @__PURE__ */ jsx33(\n \"img\",\n {\n src: badgeIconSrc,\n alt: \"\",\n className: \"h-[12px] w-[12px]\"\n }\n )\n }\n )\n ] }),\n /* @__PURE__ */ jsxs28(\"div\", { className: \"flex-1\", children: [\n /* @__PURE__ */ jsxs28(\"div\", { className: \"mb-1 flex items-center gap-3\", children: [\n /* @__PURE__ */ jsx33(\"p\", { className: \"text-[14px] font-semibold text-[#111827] md:text-[16px]\", children: title }),\n time && /* @__PURE__ */ jsx33(\"span\", { className: \"whitespace-nowrap text-[10px] text-[#6b7280] md:text-[12px]\", children: time })\n ] }),\n description && /* @__PURE__ */ jsx33(\"p\", { className: \"mb-3 text-[12px] text-[#6b7280] md:text-[14px]\", children: description }),\n (primaryActionText || secondaryActionText) && /* @__PURE__ */ jsxs28(\"div\", { className: \"flex flex-col gap-3 sm:flex-row\", children: [\n primaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onPrimaryAction,\n className: \"flex-1 rounded-[8px] bg-gradient-to-r from-[#1761a3] to-[#4daf83] py-[10px] text-[14px] font-medium text-white hover:shadow-[0_4px_12px_rgba(0,0,0,0.2)]\",\n children: primaryActionText\n }\n ),\n secondaryActionText && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onSecondaryAction,\n className: \"flex-1 rounded-[8px] border-2 border-[#b7d9c9] bg-[#eaf6f1] py-[10px] text-[14px] font-medium text-[#2f6f5e] hover:bg-[#dff1ea]\",\n children: secondaryActionText\n }\n )\n ] })\n ] }),\n onClose && /* @__PURE__ */ jsx33(\n \"button\",\n {\n onClick: onClose,\n className: \"flex h-[24px] w-[24px] items-center justify-center rounded-full bg-[#d7e5ed] hover:bg-[#dcefe6] md:h-[32px] md:w-[32px]\",\n children: /* @__PURE__ */ jsx33(X4, { size: 14 })\n }\n )\n ]\n }\n );\n};\nexport {\n Accordion,\n CardOverlayLoader,\n CardWithLoading,\n CircularSpinner,\n DEFAULT_ACTIVITY_OPTIONS,\n DEFAULT_STATUS_OPTIONS,\n Filter,\n LoadingDots,\n LoadingDotsLinear,\n MahatiActivity,\n Button as MahatiButton,\n Calendar as MahatiCalendar,\n MahatiCameraAccessModal,\n Card as MahatiCard,\n MahatiChartAnalyticsWidget,\n ConfettiExplosion as MahatiConfettiExplosion,\n Dropdown as MahatiDropdown,\n FormContainer as MahatiFormContainer,\n Input as MahatiInput,\n MahatiLocationAccessModal,\n MahatiMicrophoneAccessModal,\n Modal as MahatiModal,\n MahatiNotificationCard,\n MahatiPromotionModal as MahatiPromotionModal_V1,\n MahatiPromotionModalV2Modal as MahatiPromotionModal_V2,\n MahatiPromotionModalV3Modal as MahatiPromotionModal_V3,\n RealisticConfetti as MahatiRealisticConfetti,\n MahatiSearch,\n SearchableDropdown as MahatiSearchableDropdown,\n MahatiStatus,\n TabbedInterface as MahatiTabbedInterface,\n Table as MahatiTable,\n TableWithTab as MahatiTableWithTab,\n TexttoAudio as MahatiTexttoAudio,\n ToastMessage as MahatiToastMessage,\n Tooltip2 as MahatiTooltip,\n Spinner\n};\n"]}
|