orbcafe-ui 1.3.4 → 1.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,17 +1,70 @@
1
- import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as St from'react';import St__default,{createContext,forwardRef,useMemo,useContext,useState,useEffect,useCallback,Fragment as Fragment$1,useRef,useLayoutEffect}from'react';import {usePathname,useRouter}from'next/navigation';import {ChevronRight,Search,Plus,Mic,ThumbsDown,ThumbsUp,Volume2,RefreshCw,Copy,Terminal,Clock,X,ChevronDown,Box as Box$1,Lightbulb,AlertCircle,RotateCw,Check,Clipboard,CheckCircle,XCircle,Loader2,AlertTriangle,Info,BarChart,MapPin,Globe,TrendingDown,GitBranch,Grid as Grid$1,Activity,PieChart,LineChart}from'lucide-react';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {Slot}from'@radix-ui/react-slot';import {cva}from'class-variance-authority';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import tu from'@mui/material/Dialog';import ou from'@mui/material/DialogTitle';import au from'@mui/material/DialogContent';import Lf from'@mui/material/DialogContentText';import ru from'@mui/material/DialogActions';import Xn from'@mui/material/Box';import Vf from'@mui/icons-material/CheckCircle';import Of from'@mui/icons-material/Warning';import Hf from'@mui/icons-material/Error';import Wf from'@mui/icons-material/Info';import {styled,Paper,IconButton,Tooltip,TextField,InputAdornment,CircularProgress,Dialog,DialogTitle,Box,Typography,DialogContent,Stack,Button,TableContainer,Table,TableHead,TableRow,TableCell,TableBody,Checkbox,DialogActions,Link,MenuItem,Chip,InputBase,useTheme,Autocomplete,FormControlLabel,Menu,ListItemText,Divider,Collapse,Grid,ListItemIcon,Alert,Tabs,Tab,LinearProgress,Avatar,AppBar,Toolbar,createTheme,ThemeProvider,FormControl,Select,Switch,Portal,useMediaQuery,Drawer,Popover,ListSubheader,Badge,TableFooter,InputLabel}from'@mui/material';import {alpha,useTheme as useTheme$1,createTheme as createTheme$1,ThemeProvider as ThemeProvider$1}from'@mui/material/styles';import th from'@mui/icons-material/Clear';import oh from'@mui/icons-material/Close';import Gd from'@mui/icons-material/Search';import ix from'@mui/material/Paper';import lx from'@mui/material/Table';import sx from'@mui/material/TableBody';import Ns from'@mui/material/TableCell';import lu from'@mui/material/TableContainer';import Ah from'@mui/material/TableHead';import Bh from'@mui/material/TableRow';import nu from'@mui/material/TextField';import gl from'@mui/material/Button';import iu from'@mui/material/Alert';import {DndContext,closestCenter,useSensors,useSensor,PointerSensor,TouchSensor,closestCorners,DragOverlay,useDroppable,useDraggable}from'@dnd-kit/core';import {restrictToHorizontalAxis}from'@dnd-kit/modifiers';import yh from'@mui/icons-material/ViewColumn';import Xp from'@mui/icons-material/Save';import xh from'@mui/icons-material/Download';import vh from'@mui/icons-material/AccountTree';import Ch from'@mui/icons-material/Functions';import kh from'@mui/icons-material/Insights';import Sh from'@mui/icons-material/Add';import wh from'@mui/icons-material/Edit';import Th from'@mui/icons-material/Delete';import Ph from'@mui/icons-material/KeyboardArrowLeft';import Zg from'@mui/icons-material/KeyboardArrowRight';import Eh from'@mui/material/Checkbox';import Fh from'@mui/material/TableSortLabel';import Lh from'@mui/material/IconButton';import zh from'@mui/material/Tooltip';import Nh from'@mui/icons-material/UnfoldMore';import Vh from'@mui/icons-material/UnfoldLess';import Uh from'@mui/icons-material/KeyboardArrowDown';import ry from'@mui/icons-material/Check';import ny from'@mui/icons-material/ClearAll';import Hy from'@mui/icons-material/MicNoneOutlined';import Wy from'@mui/icons-material/SettingsOutlined';import $y from'@mui/icons-material/SendOutlined';import Vb from'@mui/icons-material/Settings';import Ob from'@mui/icons-material/KeyboardArrowUp';import Wb from'@mui/icons-material/ArrowRightAlt';import cb from'@mui/icons-material/Star';import {DateCalendar}from'@mui/x-date-pickers/DateCalendar';import {PickersDay}from'@mui/x-date-pickers/PickersDay';import {LocalizationProvider}from'@mui/x-date-pickers/LocalizationProvider';import {AdapterDayjs}from'@mui/x-date-pickers/AdapterDayjs';import wb from'@mui/icons-material/CalendarMonth';import Pb from'@mui/icons-material/ArrowForward';import na from'dayjs';import Ib from'dayjs/plugin/isBetween';import Rb from'dayjs/plugin/localizedFormat';import'dayjs/locale/zh-cn';import'dayjs/locale/fr';import'dayjs/locale/de';import'dayjs/locale/ja';import'dayjs/locale/ko';import tx from'@mui/icons-material/StarBorder';import ox from'@mui/icons-material/ViewQuilt';import w0 from'@mui/icons-material/CloseOutlined';import wx from'@mui/icons-material/ContentCopyOutlined';import Tx from'@mui/icons-material/CheckOutlined';import e0 from'@mui/icons-material/ExpandMore';import {arrayMove,SortableContext,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import Ou from'@mui/icons-material/Language';import cv from'@mui/icons-material/DesktopWindows';import dv from'@mui/icons-material/DarkMode';import pv from'@mui/icons-material/LightMode';import mv from'@mui/icons-material/Logout';import RC from'@mui/icons-material/DeleteOutline';import zv from'@mui/icons-material/DragIndicator';import eC from'@mui/icons-material/FilterList';import tC from'@mui/icons-material/TableRows';import Wv from'@mui/icons-material/LayersClear';import JC from'@mui/icons-material/CameraAltRounded';import ek from'@mui/icons-material/QrCodeScannerRounded';import rk from'@mui/icons-material/DragIndicatorRounded';import sk from'@mui/icons-material/BackspaceRounded';import ck from'@mui/icons-material/CloseRounded';import dk from'@mui/icons-material/CheckRounded';import Tk from'@mui/icons-material/SearchRounded';import Pk from'@mui/icons-material/MenuOpenRounded';import Ik from'@mui/icons-material/MenuRounded';import Rk from'@mui/icons-material/ExpandMoreRounded';import Dk from'@mui/icons-material/ChevronRightRounded';import Zk from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import cw from'react-markdown';import dw from'remark-gfm';import pw from'remark-math';import uw from'rehype-katex';import mw from'rehype-raw';import {Prism}from'react-syntax-highlighter';import {oneDark,oneLight}from'react-syntax-highlighter/dist/esm/styles/prism';import {useTheme as useTheme$2}from'next-themes';import pg from'mermaid';import ww from'@mui/icons-material/MicRounded';import Tw from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import Mw from'@mui/icons-material/SendRounded';import Aw from'@mui/icons-material/AddRounded';import Bw from'@mui/icons-material/HardwareRounded';import t1 from'@mui/icons-material/LockOutlined';import Hg from'@mui/icons-material/MailOutline';import Wg from'@mui/icons-material/PersonOutline';import o1 from'@mui/icons-material/VpnKeyOutlined';import x1 from'dayjs/plugin/isoWeek';import A1 from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import B1 from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import E1 from'@mui/icons-material/SplitscreenOutlined';import F1 from'@mui/icons-material/Sort';function Po(...e){return twMerge(clsx(e))}var ws={primary:"#000000",primaryHover:"#333333"},Ri={primary:"bg-primary text-primary-foreground hover:bg-primary/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground"},Dn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},Td=()=>"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50";var cf=cva(Td(),{variants:{variant:{default:`${Ri.primary} shadow-sm`,destructive:"bg-red-500 text-white hover:bg-red-600 active:bg-red-700 dark:bg-red-600 dark:hover:bg-red-500 dark:active:bg-red-700 shadow-sm",outline:`${Ri.outline} shadow-sm`,secondary:"bg-gray-200 text-gray-700 hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600 dark:active:bg-gray-500 shadow-sm",ghost:Ri.ghost,link:"text-blue-600 dark:text-blue-400 underline-offset-4 hover:underline hover:text-blue-700 dark:hover:text-blue-300 active:text-blue-800 dark:active:text-blue-200","chat-tool":"bg-[var(--orbai-surface-2)] border border-[var(--orbai-border-soft)] text-[var(--orbai-text-2)] hover:bg-[var(--orbai-surface-3)] hover:border-[var(--orbai-border-strong)] hover:text-[var(--orbai-text-1)] active:scale-95 transition-all duration-200","chat-send":`bg-[${ws.primary}] hover:bg-[${ws.primaryHover}] text-white border border-[var(--orbai-border-strong)] shadow-[var(--orbai-shadow-soft-sm)] hover:shadow-[var(--orbai-shadow-soft-md)] active:scale-95 transition-all duration-200`,"chat-stop":"bg-red-500 hover:bg-red-600 border border-[var(--orbai-border-strong)] shadow-[var(--orbai-shadow-soft-sm)] hover:shadow-[var(--orbai-shadow-soft-md)] active:scale-95 text-white transition-all duration-200","chat-disabled":"cursor-not-allowed opacity-50 bg-[var(--orbai-surface-2)] border border-[var(--orbai-border-soft)] text-[var(--orbai-muted)]"},size:{default:"h-10 px-4 py-2",sm:"h-9 px-3",lg:"h-11 px-8",icon:"h-10 w-10","chat-sm":"h-8 w-8 rounded-full","chat-md":"h-10 w-10 rounded-full","chat-lg":"h-12 w-12 rounded-full"},rounded:{none:Dn.none,sm:Dn.sm,md:Dn.md,full:Dn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),Ts=St.forwardRef(({className:e,variant:t,size:o,asChild:a=false,...r},n)=>jsx(a?Slot:"button",{className:Po(cf({variant:t,size:o,className:e})),ref:n,...r}));Ts.displayName="Button";var pf={"common.cancel":"Cancel","common.save":"Save","common.ok":"OK","common.done":"Done","common.search":"Search","common.none":"None","common.all":"All","common.noData":"No data","common.copy":"Copy","common.delete":"Delete","common.loading":"Loading...","header.searchPlaceholder":"Ask me...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dark","header.theme.light":"Theme: Light","header.menu.setting":"Setting","header.menu.logout":"Logout","navigation.expand":"Expand navigation","navigation.collapse":"Collapse navigation","navigation.searchPlaceholder":"Search menu...","navigation.noMatch":"No matching menu items","navigation.noAccessibleApp":"No accessible applications","navigation.noItems":"No items to display","navigation.expandView":"Expand {title}","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","pivot.title.default":"Pivot Table Builder","pivot.subtitle.default":"Drag fields to configure the pivot table.","pivot.empty":"Drag at least one field into Values to render the pivot result.","pivot.records":"Records","pivot.afterFilter":"After filter","pivot.grandTotal":"Grand Total","pivot.resultLabel":"Result","pivot.valueLabel":"Value","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Field List","pivot.availableDimensions":"Available dimensions","pivot.allFieldsInUse":"All fields are in use.","pivot.zone.rows":"Rows","pivot.zone.columns":"Columns","pivot.zone.filters":"Filters","pivot.zone.values":"Values","pivot.hint.rows":"Drag fields here to build row hierarchy","pivot.hint.columns":"Drag fields here to build column hierarchy","pivot.hint.filters":"Drag fields here for report filters","pivot.hint.values":"Drag numeric fields here for aggregation","pivot.clearArea":"Clear area","pivot.filter.na":"N/A","pivot.filter.noValues":"No values","pivot.filter.noneSelected":"None selected","pivot.filter.allValues":"All values","pivot.filter.selectedCount":"{selected} / {total} selected","pivot.filter.selectAll":"Select All","pivot.filter.deselectAll":"Deselect All","pivot.filter.noResults":"No results","pivot.collapse.ariaExpand":"Expand configuration area","pivot.collapse.ariaCollapse":"Collapse configuration area","pivot.agg.sum":"Sum","pivot.agg.count":"Count","pivot.agg.avg":"Average","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Select preset","pivot.preset.save":"Save preset","pivot.preset.delete":"Delete preset","pivot.preset.saveDialogTitle":"Save current preset","pivot.preset.nameLabel":"Preset name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot Result","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Expand pivot result","pivot.table.collapse.ariaCollapse":"Collapse pivot result","pivot.chart.title":"Pivot Chart","pivot.chart.subtitle":"Map one dimension and up to two measures into a compact chart.","pivot.chart.subtitleReady":"{dimension} by {measure}","pivot.chart.emptyNoDimension":"Add at least one row or column field to render the chart.","pivot.chart.emptyNoValue":"Add at least one value field to render the chart.","pivot.chart.emptyNoData":"No data available for the current chart selection.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Measure","pivot.chart.secondaryMeasure":"Compare measure","pivot.chart.chartType":"Chart type","pivot.chart.style.barVertical":"Vertical bars","pivot.chart.style.barHorizontal":"Horizontal bars","pivot.chart.style.line":"Line","pivot.chart.style.scatter":"Scatter","pivot.chart.collapse.ariaExpand":"Expand chart area","pivot.chart.collapse.ariaCollapse":"Collapse chart area","smartFilter.adaptFilters":"Adapt Filters","smartFilter.addFilters":"Add Filters","smartFilter.go":"Go","smartFilter.visibleFilters":"Visible Filters","smartFilter.searchPlaceholder":"Search...","smartFilter.noOptionsFound":"No options found","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Equals","smartFilter.operator.contains":"Contains","smartFilter.operator.notContains":"Does Not Contain","smartFilter.operator.wildcard":"Wildcard Search","smartFilter.operator.notEquals":"Not Equals","smartFilter.operator.greaterThan":"Greater Than","smartFilter.operator.lessThan":"Less Than","smartFilter.operator.greaterOrEqual":"Greater Than or Equal","smartFilter.operator.lessOrEqual":"Less Than or Equal","smartFilter.operator.between":"Between","variant.noOptions":"No options","variant.defaultSuffix":"Default","variant.selectVariant":"Select Variant","variant.saveView":"Save View","variant.newVariant":"New Variant","variant.viewName":"View Name","variant.setDefault":"Set as Default","variant.publicAllUsers":"Public (All Users)","variant.toast.fetchFailed":"Failed to load variants","variant.toast.saveFailed":"Failed to save variant","variant.toast.saveSuccess":"Variant saved successfully","variant.toast.deleteFailed":"Failed to delete variant","variant.toast.deleteSuccess":"Variant deleted successfully","variant.toast.defaultFailed":"Failed to update default variant","variant.toast.defaultSuccess":"Default variant updated","layout.saveLayout":"Save Layout","layout.layoutOptions":"Layout Options","layout.selectLayout":"Select Layout","layout.saveCurrentLayout":"Save Current Layout...","layout.noSavedLayouts":"No saved layouts","layout.removeDefault":"Remove Default","layout.setAsDefault":"Set as Default","layout.layoutName":"Layout Name","layout.layoutDescription":"Description","layout.layoutNameHelper":"e.g., 'Compact View'","layout.warningOverwrite":"Warning: Existing layout will be overwritten","layout.useAsDefault":"Use as Default Layout","layout.publicAllUsers":"Public (Visible to all users)","layout.toast.loadFallback":"Failed to load layouts from backend, fallback to local storage","layout.toast.saveSuccess":"Layout saved successfully","layout.toast.saveLocalSuccess":"Layout saved to local storage","layout.toast.backendUnavailableSavedLocal":"Backend unavailable, saved to local storage","layout.toast.deleteSuccess":"Layout deleted successfully","layout.toast.deleteLocalSuccess":"Layout deleted from local storage","layout.toast.backendUnavailableDeletedLocal":"Backend unavailable, deleted from local storage","layout.toast.defaultSuccess":"Default layout set","layout.toast.defaultLocalSuccess":"Default layout set in local storage","layout.toast.backendUnavailableDefaultLocal":"Backend unavailable, default saved to local storage","dateRange.label":"Date Range","dateRange.startDate":"Start Date","dateRange.endDate":"End Date","dateRange.select":"Select...","dateRange.today":"Today","dateRange.thisWeek":"This Week","dateRange.thisMonth":"This Month","graph.records":"{count} records","graph.kpi.totalRecords":"Total Records","graph.kpi.totalReport":"Total Report","graph.kpi.totalBillable":"Total Billable","graph.kpi.efficiency":"Efficiency","graph.kpi.amount":"Amount","graph.kpi.flagged":"Flagged","graph.chart.billable.title":"Billable by Dimension","graph.chart.billable.subtitle":"Top values by billable hours","graph.chart.efficiency.title":"Efficiency by Person","graph.chart.efficiency.subtitle":"Lowest efficiency first","graph.chart.status.title":"Status Distribution","graph.chart.status.subtitle":"Record ratio by status","graph.dataBody":"Data Body","graph.reportTitle":"Graphic Report","graph.unassigned":"Unassigned","graph.column.reportHours":"Report Hours","graph.column.billableHours":"Billable Hours","detail.searchAi.placeholder":"Search fields, or ask AI if no match...","detail.searchAi.matches":"{count} matches found","detail.searchAi.noMatch":"No matching field found.","detail.searchAi.autoAiFallback":"No direct match. Triggering AI analysis...","detail.searchAi.aiResultTitle":"AI Insight","detail.table.title":"Related Records","kanban.empty":"Drop cards here","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Release to move into this bucket","kanban.card.progress":"Progress","kanban.card.openDetail":"Open Detail","kanban.priority.critical":"Critical","kanban.priority.high":"High","kanban.priority.medium":"Medium","kanban.priority.low":"Low","quickCreate.newItem":"New Item","quickCreate.createWithTitle":"Create {title}","quickEdit.editWithTitle":"Edit {title}","quickDelete.confirmTitle":"Confirm Delete","quickDelete.confirmMessageSingle":"Are you sure you want to delete the selected record?","quickDelete.confirmMessageMultiple":"Are you sure you want to delete {count} selected records?","messageBox.confirm":"OK","messageBox.cancel":"Cancel"},uf={"common.cancel":"\u53D6\u6D88","common.save":"\u4FDD\u5B58","common.ok":"\u786E\u5B9A","common.done":"\u5B8C\u6210","common.search":"\u641C\u7D22","common.none":"\u65E0","common.all":"\u5168\u90E8","common.noData":"\u6682\u65E0\u6570\u636E","common.copy":"\u590D\u5236","common.delete":"\u5220\u9664","common.loading":"\u52A0\u8F7D\u4E2D...","header.searchPlaceholder":"\u95EE\u6211\u70B9\u4EC0\u4E48...","header.theme.system":"\u4E3B\u9898\uFF1A\u8DDF\u968F\u7CFB\u7EDF","header.theme.dark":"\u4E3B\u9898\uFF1A\u6DF1\u8272","header.theme.light":"\u4E3B\u9898\uFF1A\u6D45\u8272","header.menu.setting":"\u8BBE\u7F6E","header.menu.logout":"\u6CE8\u9500","navigation.expand":"\u5C55\u5F00\u5BFC\u822A","navigation.collapse":"\u6298\u53E0\u5BFC\u822A","navigation.searchPlaceholder":"\u641C\u7D22\u83DC\u5355...","navigation.noMatch":"\u672A\u627E\u5230\u5339\u914D\u7684\u83DC\u5355\u9879","navigation.noAccessibleApp":"\u6682\u65E0\u53EF\u8BBF\u95EE\u7684\u5E94\u7528","navigation.noItems":"\u6682\u65E0\u53EF\u663E\u793A\u9879","navigation.expandView":"\u5C55\u5F00\u67E5\u770B {title}","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","pivot.title.default":"\u6570\u636E\u900F\u89C6\u8868","pivot.subtitle.default":"\u62D6\u62FD\u5B57\u6BB5\u4EE5\u914D\u7F6E\u900F\u89C6\u8868\u3002","pivot.empty":"\u8BF7\u81F3\u5C11\u62D6\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u900F\u89C6\u7ED3\u679C\u3002","pivot.records":"\u8BB0\u5F55\u6570","pivot.afterFilter":"\u7B5B\u9009\u540E","pivot.grandTotal":"\u603B\u8BA1","pivot.resultLabel":"\u7ED3\u679C","pivot.valueLabel":"\u503C","pivot.table.dimensions":"\u7EF4\u5EA6","pivot.config.title":"\u5E03\u5C40\u914D\u7F6E","pivot.fieldList":"\u5B57\u6BB5\u5217\u8868","pivot.availableDimensions":"\u53EF\u7528\u7EF4\u5EA6","pivot.allFieldsInUse":"\u6240\u6709\u5B57\u6BB5\u90FD\u5DF2\u4F7F\u7528\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u7B5B\u9009","pivot.zone.values":"\u503C","pivot.hint.rows":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u884C\u5C42\u7EA7","pivot.hint.columns":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u5217\u5C42\u7EA7","pivot.hint.filters":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u4F5C\u4E3A\u62A5\u8868\u7B5B\u9009","pivot.hint.values":"\u5C06\u6570\u503C\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u8FDB\u884C\u805A\u5408","pivot.clearArea":"\u6E05\u7A7A\u533A\u57DF","pivot.filter.na":"\u4E0D\u53EF\u7528","pivot.filter.noValues":"\u65E0\u53EF\u9009\u503C","pivot.filter.noneSelected":"\u672A\u9009\u62E9","pivot.filter.allValues":"\u5168\u90E8\u503C","pivot.filter.selectedCount":"\u5DF2\u9009 {selected} / {total}","pivot.filter.selectAll":"\u5168\u9009","pivot.filter.deselectAll":"\u53D6\u6D88\u5168\u9009","pivot.filter.noResults":"\u65E0\u5339\u914D\u7ED3\u679C","pivot.collapse.ariaExpand":"\u5C55\u5F00\u914D\u7F6E\u533A\u57DF","pivot.collapse.ariaCollapse":"\u6298\u53E0\u914D\u7F6E\u533A\u57DF","pivot.agg.sum":"\u6C42\u548C","pivot.agg.count":"\u8BA1\u6570","pivot.agg.avg":"\u5E73\u5747\u503C","pivot.agg.min":"\u6700\u5C0F\u503C","pivot.agg.max":"\u6700\u5927\u503C","pivot.preset.selectPlaceholder":"\u9009\u62E9\u65B9\u6848","pivot.preset.save":"\u4FDD\u5B58\u65B9\u6848","pivot.preset.delete":"\u5220\u9664\u65B9\u6848","pivot.preset.saveDialogTitle":"\u4FDD\u5B58\u5F53\u524D\u65B9\u6848","pivot.preset.nameLabel":"\u65B9\u6848\u540D\u79F0","pivot.preset.defaultName":"\u65B9\u6848 {index}","pivot.table.sectionTitle":"\u900F\u89C6\u7ED3\u679C","pivot.table.expandRowsAll":"\u884C\u5168\u90E8\u6253\u5F00","pivot.table.collapseRowsAll":"\u884C\u5168\u90E8\u6298\u53E0","pivot.table.expandColumnsAll":"\u5217\u5168\u90E8\u6253\u5F00","pivot.table.collapseColumnsAll":"\u5217\u5168\u90E8\u6298\u53E0","pivot.table.collapse.ariaExpand":"\u5C55\u5F00\u900F\u89C6\u7ED3\u679C","pivot.table.collapse.ariaCollapse":"\u6298\u53E0\u900F\u89C6\u7ED3\u679C","pivot.chart.title":"\u900F\u89C6\u56FE\u8868","pivot.chart.subtitle":"\u5C06\u4E00\u4E2A\u7EF4\u5EA6\u4E0E\u6700\u591A\u4E24\u4E2A\u5EA6\u91CF\u6620\u5C04\u4E3A\u7D27\u51D1\u56FE\u8868\u3002","pivot.chart.subtitleReady":"{dimension} \xB7 {measure}","pivot.chart.emptyNoDimension":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u884C\u6216\u5217\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoValue":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoData":"\u5F53\u524D\u56FE\u8868\u9009\u62E9\u4E0B\u6682\u65E0\u53EF\u5C55\u793A\u6570\u636E\u3002","pivot.chart.dimension":"\u56FE\u8868\u7EF4\u5EA6","pivot.chart.primaryMeasure":"\u4E3B\u5EA6\u91CF","pivot.chart.secondaryMeasure":"\u5BF9\u6BD4\u5EA6\u91CF","pivot.chart.chartType":"\u56FE\u8868\u7C7B\u578B","pivot.chart.style.barVertical":"\u7EB5\u5411\u67F1\u72B6\u56FE","pivot.chart.style.barHorizontal":"\u6A2A\u5411\u67F1\u72B6\u56FE","pivot.chart.style.line":"\u6298\u7EBF\u56FE","pivot.chart.style.scatter":"\u6563\u70B9\u56FE","pivot.chart.collapse.ariaExpand":"\u5C55\u5F00\u56FE\u8868\u533A\u57DF","pivot.chart.collapse.ariaCollapse":"\u6298\u53E0\u56FE\u8868\u533A\u57DF","smartFilter.adaptFilters":"\u7B5B\u9009\u8BBE\u7F6E","smartFilter.addFilters":"\u6DFB\u52A0\u7B5B\u9009","smartFilter.go":"\u6267\u884C","smartFilter.visibleFilters":"\u53EF\u89C1\u7B5B\u9009\u9879","smartFilter.searchPlaceholder":"\u641C\u7D22...","smartFilter.noOptionsFound":"\u672A\u627E\u5230\u9009\u9879","smartFilter.min":"\u6700\u5C0F\u503C","smartFilter.max":"\u6700\u5927\u503C","smartFilter.minMaxPlaceholder":"\u6700\u5C0F\u503C - \u6700\u5927\u503C","smartFilter.operator.equals":"\u7B49\u4E8E","smartFilter.operator.contains":"\u5305\u542B","smartFilter.operator.notContains":"\u4E0D\u5305\u542B","smartFilter.operator.wildcard":"\u901A\u914D\u7B26\u641C\u7D22","smartFilter.operator.notEquals":"\u4E0D\u7B49\u4E8E","smartFilter.operator.greaterThan":"\u5927\u4E8E","smartFilter.operator.lessThan":"\u5C0F\u4E8E","smartFilter.operator.greaterOrEqual":"\u5927\u4E8E\u7B49\u4E8E","smartFilter.operator.lessOrEqual":"\u5C0F\u4E8E\u7B49\u4E8E","smartFilter.operator.between":"\u533A\u95F4","variant.noOptions":"\u65E0\u9009\u9879","variant.defaultSuffix":"\u9ED8\u8BA4","variant.selectVariant":"\u9009\u62E9\u89C6\u56FE","variant.saveView":"\u4FDD\u5B58\u89C6\u56FE","variant.newVariant":"\u65B0\u89C6\u56FE","variant.viewName":"\u89C6\u56FE\u540D\u79F0","variant.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","variant.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\uFF09","variant.toast.fetchFailed":"\u52A0\u8F7D\u89C6\u56FE\u5931\u8D25","variant.toast.saveFailed":"\u4FDD\u5B58\u89C6\u56FE\u5931\u8D25","variant.toast.saveSuccess":"\u89C6\u56FE\u4FDD\u5B58\u6210\u529F","variant.toast.deleteFailed":"\u5220\u9664\u89C6\u56FE\u5931\u8D25","variant.toast.deleteSuccess":"\u89C6\u56FE\u5220\u9664\u6210\u529F","variant.toast.defaultFailed":"\u66F4\u65B0\u9ED8\u8BA4\u89C6\u56FE\u5931\u8D25","variant.toast.defaultSuccess":"\u9ED8\u8BA4\u89C6\u56FE\u5DF2\u66F4\u65B0","layout.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","layout.layoutOptions":"\u5E03\u5C40\u9009\u9879","layout.selectLayout":"\u9009\u62E9\u5E03\u5C40","layout.saveCurrentLayout":"\u4FDD\u5B58\u5F53\u524D\u5E03\u5C40...","layout.noSavedLayouts":"\u6682\u65E0\u5DF2\u4FDD\u5B58\u5E03\u5C40","layout.removeDefault":"\u53D6\u6D88\u9ED8\u8BA4","layout.setAsDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","layout.layoutName":"\u5E03\u5C40\u540D\u79F0","layout.layoutDescription":"\u63CF\u8FF0","layout.layoutNameHelper":"\u4F8B\u5982\uFF1A\u7D27\u51D1\u89C6\u56FE","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u5C06\u8986\u76D6\u540C\u540D\u5E03\u5C40","layout.useAsDefault":"\u7528\u4F5C\u9ED8\u8BA4\u5E03\u5C40","layout.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09","layout.toast.loadFallback":"\u540E\u7AEF\u52A0\u8F7D\u5E03\u5C40\u5931\u8D25\uFF0C\u5DF2\u56DE\u9000\u5230\u672C\u5730\u5B58\u50A8","layout.toast.saveSuccess":"\u5E03\u5C40\u4FDD\u5B58\u6210\u529F","layout.toast.saveLocalSuccess":"\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.backendUnavailableSavedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.deleteSuccess":"\u5E03\u5C40\u5220\u9664\u6210\u529F","layout.toast.deleteLocalSuccess":"\u5E03\u5C40\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.backendUnavailableDeletedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.defaultSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u8BBE\u7F6E","layout.toast.defaultLocalSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u5728\u672C\u5730\u5B58\u50A8\u8BBE\u7F6E","layout.toast.backendUnavailableDefaultLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","dateRange.label":"\u65E5\u671F\u8303\u56F4","dateRange.startDate":"\u5F00\u59CB\u65E5\u671F","dateRange.endDate":"\u7ED3\u675F\u65E5\u671F","dateRange.select":"\u8BF7\u9009\u62E9...","dateRange.today":"\u4ECA\u5929","dateRange.thisWeek":"\u672C\u5468","dateRange.thisMonth":"\u672C\u6708","graph.records":"{count} \u6761\u8BB0\u5F55","graph.kpi.totalRecords":"\u603B\u8BB0\u5F55\u6570","graph.kpi.totalReport":"\u603B\u7533\u62A5\u5DE5\u65F6","graph.kpi.totalBillable":"\u603B\u53EF\u8BA1\u8D39\u5DE5\u65F6","graph.kpi.efficiency":"\u6548\u7387","graph.kpi.amount":"\u91D1\u989D","graph.kpi.flagged":"\u6807\u8BB0","graph.chart.billable.title":"\u7EF4\u5EA6\u8BA1\u8D39\u5DE5\u65F6","graph.chart.billable.subtitle":"\u6309\u53EF\u8BA1\u8D39\u5DE5\u65F6\u6392\u5E8F\u524D\u5217","graph.chart.efficiency.title":"\u4EBA\u5458\u6548\u7387","graph.chart.efficiency.subtitle":"\u6309\u6700\u4F4E\u6548\u7387\u4F18\u5148","graph.chart.status.title":"\u72B6\u6001\u5206\u5E03","graph.chart.status.subtitle":"\u6309\u72B6\u6001\u8BB0\u5F55\u5360\u6BD4","graph.dataBody":"\u6570\u636E\u660E\u7EC6","graph.reportTitle":"\u56FE\u8868\u62A5\u8868","graph.unassigned":"\u672A\u5206\u914D","graph.column.reportHours":"\u7533\u62A5\u5DE5\u65F6","graph.column.billableHours":"\u53EF\u8BA1\u8D39\u5DE5\u65F6","detail.searchAi.placeholder":"\u641C\u7D22\u5B57\u6BB5\uFF1B\u5982\u65E0\u7ED3\u679C\u5219\u81EA\u52A8\u89E6\u53D1 AI...","detail.searchAi.matches":"{count} \u6761\u5339\u914D\u7ED3\u679C","detail.searchAi.noMatch":"\u672A\u627E\u5230\u5339\u914D\u5B57\u6BB5\u3002","detail.searchAi.autoAiFallback":"\u672A\u547D\u4E2D\u5B57\u6BB5\uFF0C\u6B63\u5728\u89E6\u53D1 AI \u5206\u6790...","detail.searchAi.aiResultTitle":"AI \u5206\u6790\u7ED3\u679C","detail.table.title":"\u5173\u8054\u8BB0\u5F55","kanban.empty":"\u5C06\u5361\u7247\u62D6\u5230\u8FD9\u91CC","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u91CA\u653E\u540E\u79FB\u52A8\u5230\u8BE5 bucket","kanban.card.progress":"\u8FDB\u5EA6","kanban.card.openDetail":"\u6253\u5F00\u8BE6\u60C5","kanban.priority.critical":"\u7D27\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u5EFA\u6761\u76EE","quickCreate.createWithTitle":"\u521B\u5EFA{title}","quickEdit.editWithTitle":"\u7F16\u8F91{title}","quickDelete.confirmTitle":"\u786E\u8BA4\u5220\u9664","quickDelete.confirmMessageSingle":"\u786E\u8BA4\u5220\u9664\u5F53\u524D\u9009\u4E2D\u8BB0\u5F55\u5417\uFF1F","quickDelete.confirmMessageMultiple":"\u786E\u8BA4\u5220\u9664\u5DF2\u9009\u4E2D\u7684 {count} \u6761\u8BB0\u5F55\u5417\uFF1F","messageBox.confirm":"\u786E\u5B9A","messageBox.cancel":"\u53D6\u6D88"},mf={"common.cancel":"Annuler","common.save":"Enregistrer","common.ok":"OK","common.done":"Terminer","common.search":"Rechercher","common.none":"Aucun","common.all":"Tout","common.noData":"Aucune donn\xE9e","common.copy":"Copier","common.delete":"Supprimer","common.loading":"Chargement...","header.searchPlaceholder":"Demandez-moi...","header.theme.system":"Th\xE8me : Syst\xE8me","header.theme.dark":"Th\xE8me : Sombre","header.theme.light":"Th\xE8me : Clair","header.menu.setting":"Param\xE8tres","header.menu.logout":"Se d\xE9connecter","navigation.expand":"D\xE9velopper la navigation","navigation.collapse":"R\xE9duire la navigation","navigation.searchPlaceholder":"Rechercher dans le menu...","navigation.noMatch":"Aucun \xE9l\xE9ment correspondant","navigation.noAccessibleApp":"Aucune application accessible","navigation.noItems":"Aucun \xE9l\xE9ment \xE0 afficher","navigation.expandView":"D\xE9velopper {title}","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","pivot.title.default":"Tableau crois\xE9 dynamique","pivot.subtitle.default":"Faites glisser les champs pour configurer le tableau crois\xE9.","pivot.empty":"Ajoutez au moins un champ de valeur pour afficher le r\xE9sultat.","pivot.records":"Enregistrements","pivot.afterFilter":"Apr\xE8s filtre","pivot.grandTotal":"Total g\xE9n\xE9ral","pivot.resultLabel":"R\xE9sultat","pivot.valueLabel":"Valeur","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Liste des champs","pivot.availableDimensions":"Dimensions disponibles","pivot.allFieldsInUse":"Tous les champs sont d\xE9j\xE0 utilis\xE9s.","pivot.zone.rows":"Lignes","pivot.zone.columns":"Colonnes","pivot.zone.filters":"Filtres","pivot.zone.values":"Valeurs","pivot.hint.rows":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des lignes","pivot.hint.columns":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des colonnes","pivot.hint.filters":"D\xE9posez les champs ici pour les filtres du rapport","pivot.hint.values":"D\xE9posez les champs num\xE9riques ici pour les agr\xE9gations","pivot.clearArea":"Vider la zone","pivot.filter.na":"N/A","pivot.filter.noValues":"Aucune valeur","pivot.filter.noneSelected":"Aucune s\xE9lection","pivot.filter.allValues":"Toutes les valeurs","pivot.filter.selectedCount":"{selected} / {total} s\xE9lectionn\xE9es","pivot.filter.selectAll":"Tout s\xE9lectionner","pivot.filter.deselectAll":"Tout d\xE9s\xE9lectionner","pivot.filter.noResults":"Aucun r\xE9sultat","pivot.collapse.ariaExpand":"D\xE9velopper la zone de configuration","pivot.collapse.ariaCollapse":"R\xE9duire la zone de configuration","pivot.agg.sum":"Somme","pivot.agg.count":"Compte","pivot.agg.avg":"Moyenne","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"S\xE9lectionner un preset","pivot.preset.save":"Enregistrer le preset","pivot.preset.delete":"Supprimer le preset","pivot.preset.saveDialogTitle":"Enregistrer le preset actuel","pivot.preset.nameLabel":"Nom du preset","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"R\xE9sultat du pivot","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"D\xE9velopper le r\xE9sultat du pivot","pivot.table.collapse.ariaCollapse":"R\xE9duire le r\xE9sultat du pivot","pivot.chart.title":"Graphique pivot","pivot.chart.subtitle":"Associez une dimension et jusqu\u2019\xE0 deux mesures dans un graphique compact.","pivot.chart.subtitleReady":"{dimension} par {measure}","pivot.chart.emptyNoDimension":"Ajoutez au moins un champ de ligne ou de colonne pour afficher le graphique.","pivot.chart.emptyNoValue":"Ajoutez au moins un champ de valeur pour afficher le graphique.","pivot.chart.emptyNoData":"Aucune donn\xE9e disponible pour la s\xE9lection actuelle du graphique.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Mesure","pivot.chart.secondaryMeasure":"Mesure de comparaison","pivot.chart.chartType":"Type de graphique","pivot.chart.style.barVertical":"Barres verticales","pivot.chart.style.barHorizontal":"Barres horizontales","pivot.chart.style.line":"Ligne","pivot.chart.style.scatter":"Nuage de points","pivot.chart.collapse.ariaExpand":"D\xE9velopper la zone du graphique","pivot.chart.collapse.ariaCollapse":"R\xE9duire la zone du graphique","smartFilter.adaptFilters":"Adapter les filtres","smartFilter.addFilters":"Ajouter des filtres","smartFilter.go":"Ex\xE9cuter","smartFilter.visibleFilters":"Filtres visibles","smartFilter.searchPlaceholder":"Rechercher...","smartFilter.noOptionsFound":"Aucune option trouv\xE9e","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"\xC9gal \xE0","smartFilter.operator.contains":"Contient","smartFilter.operator.notContains":"Ne contient pas","smartFilter.operator.wildcard":"Recherche g\xE9n\xE9rique","smartFilter.operator.notEquals":"Diff\xE9rent de","smartFilter.operator.greaterThan":"Sup\xE9rieur \xE0","smartFilter.operator.lessThan":"Inf\xE9rieur \xE0","smartFilter.operator.greaterOrEqual":"Sup\xE9rieur ou \xE9gal","smartFilter.operator.lessOrEqual":"Inf\xE9rieur ou \xE9gal","smartFilter.operator.between":"Entre","variant.noOptions":"Aucune option","variant.defaultSuffix":"Par d\xE9faut","variant.selectVariant":"S\xE9lectionner une vue","variant.saveView":"Enregistrer la vue","variant.newVariant":"Nouvelle vue","variant.viewName":"Nom de la vue","variant.setDefault":"D\xE9finir par d\xE9faut","variant.publicAllUsers":"Public (tous les utilisateurs)","variant.toast.fetchFailed":"\xC9chec du chargement des vues","variant.toast.saveFailed":"\xC9chec de l'enregistrement de la vue","variant.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","variant.toast.deleteFailed":"\xC9chec de la suppression de la vue","variant.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","variant.toast.defaultFailed":"\xC9chec de la mise \xE0 jour de la vue par d\xE9faut","variant.toast.defaultSuccess":"Vue par d\xE9faut mise \xE0 jour","layout.saveLayout":"Enregistrer la vue","layout.layoutOptions":"Options de vue","layout.selectLayout":"S\xE9lectionner une vue","layout.saveCurrentLayout":"Enregistrer la vue actuelle...","layout.noSavedLayouts":"Aucune vue enregistr\xE9e","layout.removeDefault":"Retirer le d\xE9faut","layout.setAsDefault":"D\xE9finir par d\xE9faut","layout.layoutName":"Nom de la vue","layout.layoutDescription":"Description","layout.layoutNameHelper":"ex. : Vue compacte","layout.warningOverwrite":"Attention : la vue existante sera \xE9cras\xE9e","layout.useAsDefault":"Utiliser comme vue par d\xE9faut","layout.publicAllUsers":"Public (visible par tous les utilisateurs)","layout.toast.loadFallback":"\xC9chec du chargement depuis le backend, bascule vers le stockage local","layout.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","layout.toast.saveLocalSuccess":"Vue enregistr\xE9e dans le stockage local","layout.toast.backendUnavailableSavedLocal":"Backend indisponible, enregistr\xE9 en local","layout.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","layout.toast.deleteLocalSuccess":"Vue supprim\xE9e du stockage local","layout.toast.backendUnavailableDeletedLocal":"Backend indisponible, supprim\xE9 en local","layout.toast.defaultSuccess":"Vue par d\xE9faut d\xE9finie","layout.toast.defaultLocalSuccess":"Vue par d\xE9faut d\xE9finie en local","layout.toast.backendUnavailableDefaultLocal":"Backend indisponible, d\xE9faut enregistr\xE9 en local","dateRange.label":"Plage de dates","dateRange.startDate":"Date de d\xE9but","dateRange.endDate":"Date de fin","dateRange.select":"S\xE9lectionner...","dateRange.today":"Aujourd'hui","dateRange.thisWeek":"Cette semaine","dateRange.thisMonth":"Ce mois-ci","graph.records":"{count} enregistrements","graph.kpi.totalRecords":"Total des enregistrements","graph.kpi.totalReport":"Total d\xE9clar\xE9","graph.kpi.totalBillable":"Total facturable","graph.kpi.efficiency":"Efficacit\xE9","graph.kpi.amount":"Montant","graph.kpi.flagged":"Signal\xE9","graph.chart.billable.title":"Facturable par dimension","graph.chart.billable.subtitle":"Top valeurs par heures facturables","graph.chart.efficiency.title":"Efficacit\xE9 par personne","graph.chart.efficiency.subtitle":"Efficacit\xE9 la plus faible en premier","graph.chart.status.title":"R\xE9partition des statuts","graph.chart.status.subtitle":"Ratio des enregistrements par statut","graph.dataBody":"Donn\xE9es","graph.reportTitle":"Rapport graphique","graph.unassigned":"Non attribu\xE9","graph.column.reportHours":"Heures d\xE9clar\xE9es","graph.column.billableHours":"Heures facturables","detail.searchAi.placeholder":"Rechercher des champs, ou interroger l\u2019IA en cas d\u2019absence de r\xE9sultat...","detail.searchAi.matches":"{count} correspondances trouv\xE9es","detail.searchAi.noMatch":"Aucun champ correspondant trouv\xE9.","detail.searchAi.autoAiFallback":"Aucune correspondance directe. Analyse IA en cours...","detail.searchAi.aiResultTitle":"Analyse IA","detail.table.title":"Enregistrements li\xE9s","kanban.empty":"D\xE9posez les cartes ici","kanban.bucket.limit":"Limite","kanban.bucket.dropHere":"Rel\xE2chez pour d\xE9placer dans cette colonne","kanban.card.progress":"Progression","kanban.card.openDetail":"Ouvrir le d\xE9tail","kanban.priority.critical":"Critique","kanban.priority.high":"\xC9lev\xE9e","kanban.priority.medium":"Moyenne","kanban.priority.low":"Faible","quickCreate.newItem":"Nouvel \xE9l\xE9ment","quickCreate.createWithTitle":"Cr\xE9er {title}","quickEdit.editWithTitle":"Modifier {title}","quickDelete.confirmTitle":"Confirmer la suppression","quickDelete.confirmMessageSingle":"Voulez-vous vraiment supprimer l\u2019enregistrement s\xE9lectionn\xE9 ?","quickDelete.confirmMessageMultiple":"Voulez-vous vraiment supprimer les {count} enregistrements s\xE9lectionn\xE9s ?","messageBox.confirm":"OK","messageBox.cancel":"Annuler"},gf={"common.cancel":"Abbrechen","common.save":"Speichern","common.ok":"OK","common.done":"Fertig","common.search":"Suchen","common.none":"Keine","common.all":"Alle","common.noData":"Keine Daten","common.copy":"Kopieren","common.delete":"L\xF6schen","common.loading":"Wird geladen...","header.searchPlaceholder":"Frag mich...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dunkel","header.theme.light":"Theme: Hell","header.menu.setting":"Einstellungen","header.menu.logout":"Abmelden","navigation.expand":"Navigation erweitern","navigation.collapse":"Navigation einklappen","navigation.searchPlaceholder":"Men\xFC suchen...","navigation.noMatch":"Keine passenden Men\xFCeintr\xE4ge","navigation.noAccessibleApp":"Keine verf\xFCgbaren Anwendungen","navigation.noItems":"Keine Eintr\xE4ge vorhanden","navigation.expandView":"{title} aufklappen","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","pivot.title.default":"Pivot-Tabelle","pivot.subtitle.default":"Ziehen Sie Felder, um die Pivot-Tabelle zu konfigurieren.","pivot.empty":"Ziehen Sie mindestens ein Wertefeld, um das Ergebnis anzuzeigen.","pivot.records":"Datens\xE4tze","pivot.afterFilter":"Nach Filter","pivot.grandTotal":"Gesamtsumme","pivot.resultLabel":"Ergebnis","pivot.valueLabel":"Wert","pivot.table.dimensions":"Dimensionen","pivot.config.title":"Konfiguration","pivot.fieldList":"Feldliste","pivot.availableDimensions":"Verf\xFCgbare Dimensionen","pivot.allFieldsInUse":"Alle Felder sind bereits verwendet.","pivot.zone.rows":"Zeilen","pivot.zone.columns":"Spalten","pivot.zone.filters":"Filter","pivot.zone.values":"Werte","pivot.hint.rows":"Felder hierhin ziehen, um die Zeilenhierarchie zu erstellen","pivot.hint.columns":"Felder hierhin ziehen, um die Spaltenhierarchie zu erstellen","pivot.hint.filters":"Felder hierhin ziehen f\xFCr Berichtsfilter","pivot.hint.values":"Numerische Felder hierhin ziehen f\xFCr Aggregation","pivot.clearArea":"Bereich leeren","pivot.filter.na":"N/V","pivot.filter.noValues":"Keine Werte","pivot.filter.noneSelected":"Nichts ausgew\xE4hlt","pivot.filter.allValues":"Alle Werte","pivot.filter.selectedCount":"{selected} / {total} ausgew\xE4hlt","pivot.filter.selectAll":"Alle ausw\xE4hlen","pivot.filter.deselectAll":"Alle abw\xE4hlen","pivot.filter.noResults":"Keine Ergebnisse","pivot.collapse.ariaExpand":"Konfigurationsbereich erweitern","pivot.collapse.ariaCollapse":"Konfigurationsbereich reduzieren","pivot.agg.sum":"Summe","pivot.agg.count":"Anzahl","pivot.agg.avg":"Durchschnitt","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Preset w\xE4hlen","pivot.preset.save":"Preset speichern","pivot.preset.delete":"Preset l\xF6schen","pivot.preset.saveDialogTitle":"Aktuelles Preset speichern","pivot.preset.nameLabel":"Preset-Name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot-Ergebnis","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Pivot-Ergebnis erweitern","pivot.table.collapse.ariaCollapse":"Pivot-Ergebnis reduzieren","pivot.chart.title":"Pivot-Diagramm","pivot.chart.subtitle":"Eine Dimension und bis zu zwei Kennzahlen in einem kompakten Diagramm abbilden.","pivot.chart.subtitleReady":"{dimension} nach {measure}","pivot.chart.emptyNoDimension":"F\xFCgen Sie mindestens ein Zeilen- oder Spaltenfeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoValue":"F\xFCgen Sie mindestens ein Wertefeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoData":"F\xFCr die aktuelle Diagrammauswahl sind keine Daten verf\xFCgbar.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Kennzahl","pivot.chart.secondaryMeasure":"Vergleichskennzahl","pivot.chart.chartType":"Diagrammtyp","pivot.chart.style.barVertical":"Vertikale Balken","pivot.chart.style.barHorizontal":"Horizontale Balken","pivot.chart.style.line":"Linie","pivot.chart.style.scatter":"Streudiagramm","pivot.chart.collapse.ariaExpand":"Diagrammbereich erweitern","pivot.chart.collapse.ariaCollapse":"Diagrammbereich reduzieren","smartFilter.adaptFilters":"Filter anpassen","smartFilter.addFilters":"Filter hinzuf\xFCgen","smartFilter.go":"Los","smartFilter.visibleFilters":"Sichtbare Filter","smartFilter.searchPlaceholder":"Suchen...","smartFilter.noOptionsFound":"Keine Optionen gefunden","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Gleich","smartFilter.operator.contains":"Enth\xE4lt","smartFilter.operator.notContains":"Enth\xE4lt nicht","smartFilter.operator.wildcard":"Wildcard-Suche","smartFilter.operator.notEquals":"Ungleich","smartFilter.operator.greaterThan":"Gr\xF6\xDFer als","smartFilter.operator.lessThan":"Kleiner als","smartFilter.operator.greaterOrEqual":"Gr\xF6\xDFer gleich","smartFilter.operator.lessOrEqual":"Kleiner gleich","smartFilter.operator.between":"Zwischen","variant.noOptions":"Keine Optionen","variant.defaultSuffix":"Standard","variant.selectVariant":"Variante w\xE4hlen","variant.saveView":"Ansicht speichern","variant.newVariant":"Neue Variante","variant.viewName":"Ansichtsname","variant.setDefault":"Als Standard setzen","variant.publicAllUsers":"\xD6ffentlich (alle Benutzer)","variant.toast.fetchFailed":"Varianten konnten nicht geladen werden","variant.toast.saveFailed":"Variante konnte nicht gespeichert werden","variant.toast.saveSuccess":"Variante erfolgreich gespeichert","variant.toast.deleteFailed":"Variante konnte nicht gel\xF6scht werden","variant.toast.deleteSuccess":"Variante erfolgreich gel\xF6scht","variant.toast.defaultFailed":"Standardvariante konnte nicht aktualisiert werden","variant.toast.defaultSuccess":"Standardvariante aktualisiert","layout.saveLayout":"Layout speichern","layout.layoutOptions":"Layout-Optionen","layout.selectLayout":"Layout w\xE4hlen","layout.saveCurrentLayout":"Aktuelles Layout speichern...","layout.noSavedLayouts":"Keine gespeicherten Layouts","layout.removeDefault":"Standard entfernen","layout.setAsDefault":"Als Standard setzen","layout.layoutName":"Layoutname","layout.layoutDescription":"Beschreibung","layout.layoutNameHelper":"z. B. Kompaktansicht","layout.warningOverwrite":"Warnung: Vorhandenes Layout wird \xFCberschrieben","layout.useAsDefault":"Als Standardlayout verwenden","layout.publicAllUsers":"\xD6ffentlich (f\xFCr alle sichtbar)","layout.toast.loadFallback":"Layouts konnten nicht vom Backend geladen werden, Wechsel zu lokalem Speicher","layout.toast.saveSuccess":"Layout erfolgreich gespeichert","layout.toast.saveLocalSuccess":"Layout im lokalen Speicher gespeichert","layout.toast.backendUnavailableSavedLocal":"Backend nicht verf\xFCgbar, lokal gespeichert","layout.toast.deleteSuccess":"Layout erfolgreich gel\xF6scht","layout.toast.deleteLocalSuccess":"Layout aus lokalem Speicher gel\xF6scht","layout.toast.backendUnavailableDeletedLocal":"Backend nicht verf\xFCgbar, lokal gel\xF6scht","layout.toast.defaultSuccess":"Standardlayout gesetzt","layout.toast.defaultLocalSuccess":"Standardlayout lokal gesetzt","layout.toast.backendUnavailableDefaultLocal":"Backend nicht verf\xFCgbar, Standard lokal gespeichert","dateRange.label":"Datumsbereich","dateRange.startDate":"Startdatum","dateRange.endDate":"Enddatum","dateRange.select":"Ausw\xE4hlen...","dateRange.today":"Heute","dateRange.thisWeek":"Diese Woche","dateRange.thisMonth":"Diesen Monat","graph.records":"{count} Datens\xE4tze","graph.kpi.totalRecords":"Gesamt Datens\xE4tze","graph.kpi.totalReport":"Gesamt Report","graph.kpi.totalBillable":"Gesamt abrechenbar","graph.kpi.efficiency":"Effizienz","graph.kpi.amount":"Betrag","graph.kpi.flagged":"Markiert","graph.chart.billable.title":"Abrechenbar nach Dimension","graph.chart.billable.subtitle":"Top-Werte nach abrechenbaren Stunden","graph.chart.efficiency.title":"Effizienz pro Person","graph.chart.efficiency.subtitle":"Niedrigste Effizienz zuerst","graph.chart.status.title":"Statusverteilung","graph.chart.status.subtitle":"Anteil je Status","graph.dataBody":"Datentabelle","graph.reportTitle":"Grafikbericht","graph.unassigned":"Nicht zugewiesen","graph.column.reportHours":"Melde-Stunden","graph.column.billableHours":"Abrechenbare Stunden","detail.searchAi.placeholder":"Felder suchen, oder bei keinem Treffer die KI fragen...","detail.searchAi.matches":"{count} Treffer gefunden","detail.searchAi.noMatch":"Kein passendes Feld gefunden.","detail.searchAi.autoAiFallback":"Keine direkte \xDCbereinstimmung. KI-Analyse wird gestartet...","detail.searchAi.aiResultTitle":"KI-Ergebnis","detail.table.title":"Verkn\xFCpfte Eintr\xE4ge","kanban.empty":"Karten hier ablegen","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Loslassen, um in diese Spalte zu verschieben","kanban.card.progress":"Fortschritt","kanban.card.openDetail":"Detail \xF6ffnen","kanban.priority.critical":"Kritisch","kanban.priority.high":"Hoch","kanban.priority.medium":"Mittel","kanban.priority.low":"Niedrig","quickCreate.newItem":"Neuer Eintrag","quickCreate.createWithTitle":"{title} erstellen","quickEdit.editWithTitle":"{title} bearbeiten","quickDelete.confirmTitle":"L\xF6schen best\xE4tigen","quickDelete.confirmMessageSingle":"M\xF6chten Sie den ausgew\xE4hlten Datensatz wirklich l\xF6schen?","quickDelete.confirmMessageMultiple":"M\xF6chten Sie die {count} ausgew\xE4hlten Datens\xE4tze wirklich l\xF6schen?","messageBox.confirm":"OK","messageBox.cancel":"Abbrechen"},ff={"common.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB","common.save":"\u4FDD\u5B58","common.ok":"OK","common.done":"\u5B8C\u4E86","common.search":"\u691C\u7D22","common.none":"\u306A\u3057","common.all":"\u3059\u3079\u3066","common.noData":"\u30C7\u30FC\u30BF\u306A\u3057","common.copy":"\u30B3\u30D4\u30FC","common.delete":"\u524A\u9664","common.loading":"\u8AAD\u307F\u8FBC\u307F\u4E2D...","header.searchPlaceholder":"\u4F55\u304B\u805E\u3044\u3066\u304F\u3060\u3055\u3044...","header.theme.system":"\u30C6\u30FC\u30DE\uFF1A\u30B7\u30B9\u30C6\u30E0","header.theme.dark":"\u30C6\u30FC\u30DE\uFF1A\u30C0\u30FC\u30AF","header.theme.light":"\u30C6\u30FC\u30DE\uFF1A\u30E9\u30A4\u30C8","header.menu.setting":"\u8A2D\u5B9A","header.menu.logout":"\u30ED\u30B0\u30A2\u30A6\u30C8","navigation.expand":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u5C55\u958B","navigation.collapse":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u6298\u308A\u305F\u305F\u3080","navigation.searchPlaceholder":"\u30E1\u30CB\u30E5\u30FC\u3092\u691C\u7D22...","navigation.noMatch":"\u4E00\u81F4\u3059\u308B\u30E1\u30CB\u30E5\u30FC\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noAccessibleApp":"\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A\u30A2\u30D7\u30EA\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noItems":"\u8868\u793A\u3067\u304D\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093","navigation.expandView":"{title} \u3092\u5C55\u958B","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","pivot.title.default":"\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB","pivot.subtitle.default":"\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002","pivot.empty":"\u7D50\u679C\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5024\u30A8\u30EA\u30A2\u306B\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.records":"\u30EC\u30B3\u30FC\u30C9","pivot.afterFilter":"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C","pivot.grandTotal":"\u7DCF\u8A08","pivot.resultLabel":"\u7D50\u679C","pivot.valueLabel":"\u5024","pivot.table.dimensions":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.config.title":"\u8A2D\u5B9A","pivot.fieldList":"\u30D5\u30A3\u30FC\u30EB\u30C9\u4E00\u89A7","pivot.availableDimensions":"\u5229\u7528\u53EF\u80FD\u306A\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.allFieldsInUse":"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u4F7F\u7528\u4E2D\u3067\u3059\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u30D5\u30A3\u30EB\u30BF\u30FC","pivot.zone.values":"\u5024","pivot.hint.rows":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u884C\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.columns":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u5217\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.filters":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30EC\u30DD\u30FC\u30C8\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u8A2D\u5B9A","pivot.hint.values":"\u3053\u3053\u306B\u6570\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u96C6\u8A08","pivot.clearArea":"\u30A8\u30EA\u30A2\u3092\u30AF\u30EA\u30A2","pivot.filter.na":"N/A","pivot.filter.noValues":"\u5024\u304C\u3042\u308A\u307E\u305B\u3093","pivot.filter.noneSelected":"\u672A\u9078\u629E","pivot.filter.allValues":"\u3059\u3079\u3066\u306E\u5024","pivot.filter.selectedCount":"{selected} / {total} \u3092\u9078\u629E","pivot.filter.selectAll":"\u3059\u3079\u3066\u9078\u629E","pivot.filter.deselectAll":"\u3059\u3079\u3066\u89E3\u9664","pivot.filter.noResults":"\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093","pivot.collapse.ariaExpand":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u5C55\u958B","pivot.collapse.ariaCollapse":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u6298\u308A\u305F\u305F\u3080","pivot.agg.sum":"\u5408\u8A08","pivot.agg.count":"\u4EF6\u6570","pivot.agg.avg":"\u5E73\u5747","pivot.agg.min":"\u6700\u5C0F","pivot.agg.max":"\u6700\u5927","pivot.preset.selectPlaceholder":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u9078\u629E","pivot.preset.save":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.delete":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u524A\u9664","pivot.preset.saveDialogTitle":"\u73FE\u5728\u306E\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.nameLabel":"\u30D7\u30EA\u30BB\u30C3\u30C8\u540D","pivot.preset.defaultName":"\u30D7\u30EA\u30BB\u30C3\u30C8 {index}","pivot.table.sectionTitle":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u5C55\u958B","pivot.table.collapse.ariaCollapse":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u6298\u308A\u305F\u305F\u3080","pivot.chart.title":"\u30D4\u30DC\u30C3\u30C8\u30C1\u30E3\u30FC\u30C8","pivot.chart.subtitle":"1\u3064\u306E\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u3068\u6700\u59272\u3064\u306E\u6307\u6A19\u3092\u30B3\u30F3\u30D1\u30AF\u30C8\u306A\u30C1\u30E3\u30FC\u30C8\u306B\u307E\u3068\u3081\u307E\u3059\u3002","pivot.chart.subtitleReady":"{dimension} \u3054\u3068\u306E {measure}","pivot.chart.emptyNoDimension":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u884C\u307E\u305F\u306F\u5217\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoValue":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoData":"\u73FE\u5728\u306E\u30C1\u30E3\u30FC\u30C8\u9078\u629E\u3067\u306F\u8868\u793A\u3067\u304D\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093\u3002","pivot.chart.dimension":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.chart.primaryMeasure":"\u6307\u6A19","pivot.chart.secondaryMeasure":"\u6BD4\u8F03\u6307\u6A19","pivot.chart.chartType":"\u30C1\u30E3\u30FC\u30C8\u7A2E\u5225","pivot.chart.style.barVertical":"\u7E26\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.barHorizontal":"\u6A2A\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.line":"\u6298\u308C\u7DDA\u30B0\u30E9\u30D5","pivot.chart.style.scatter":"\u6563\u5E03\u56F3","pivot.chart.collapse.ariaExpand":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u5C55\u958B","pivot.chart.collapse.ariaCollapse":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u6298\u308A\u305F\u305F\u3080","smartFilter.adaptFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8ABF\u6574","smartFilter.addFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8FFD\u52A0","smartFilter.go":"\u5B9F\u884C","smartFilter.visibleFilters":"\u8868\u793A\u30D5\u30A3\u30EB\u30BF\u30FC","smartFilter.searchPlaceholder":"\u691C\u7D22...","smartFilter.noOptionsFound":"\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093","smartFilter.min":"\u6700\u5C0F","smartFilter.max":"\u6700\u5927","smartFilter.minMaxPlaceholder":"\u6700\u5C0F - \u6700\u5927","smartFilter.operator.equals":"\u7B49\u3057\u3044","smartFilter.operator.contains":"\u542B\u3080","smartFilter.operator.notContains":"\u542B\u307E\u306A\u3044","smartFilter.operator.wildcard":"\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u691C\u7D22","smartFilter.operator.notEquals":"\u7B49\u3057\u304F\u306A\u3044","smartFilter.operator.greaterThan":"\u3088\u308A\u5927\u304D\u3044","smartFilter.operator.lessThan":"\u3088\u308A\u5C0F\u3055\u3044","smartFilter.operator.greaterOrEqual":"\u4EE5\u4E0A","smartFilter.operator.lessOrEqual":"\u4EE5\u4E0B","smartFilter.operator.between":"\u7BC4\u56F2","variant.noOptions":"\u30AA\u30D7\u30B7\u30E7\u30F3\u306A\u3057","variant.defaultSuffix":"\u30C7\u30D5\u30A9\u30EB\u30C8","variant.selectVariant":"\u30D3\u30E5\u30FC\u3092\u9078\u629E","variant.saveView":"\u30D3\u30E5\u30FC\u4FDD\u5B58","variant.newVariant":"\u65B0\u3057\u3044\u30D3\u30E5\u30FC","variant.viewName":"\u30D3\u30E5\u30FC\u540D","variant.setDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","variant.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\uFF09","variant.toast.fetchFailed":"\u30D3\u30E5\u30FC\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveFailed":"\u30D3\u30E5\u30FC\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveSuccess":"\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","variant.toast.deleteFailed":"\u30D3\u30E5\u30FC\u306E\u524A\u9664\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.deleteSuccess":"\u30D3\u30E5\u30FC\u3092\u524A\u9664\u3057\u307E\u3057\u305F","variant.toast.defaultFailed":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u306E\u66F4\u65B0\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F","layout.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","layout.layoutOptions":"\u30EC\u30A4\u30A2\u30A6\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3","layout.selectLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u9078\u629E","layout.saveCurrentLayout":"\u73FE\u5728\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58...","layout.noSavedLayouts":"\u4FDD\u5B58\u6E08\u307F\u30EC\u30A4\u30A2\u30A6\u30C8\u306A\u3057","layout.removeDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u89E3\u9664","layout.setAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","layout.layoutName":"\u30EC\u30A4\u30A2\u30A6\u30C8\u540D","layout.layoutDescription":"\u8AAC\u660E","layout.layoutNameHelper":"\u4F8B\uFF1A\u30B3\u30F3\u30D1\u30AF\u30C8\u8868\u793A","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u65E2\u5B58\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059","layout.useAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3068\u3057\u3066\u4F7F\u7528","layout.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\u306B\u8868\u793A\uFF09","layout.toast.loadFallback":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u304B\u3089\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u3001\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F","layout.toast.saveSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.saveLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableSavedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.deleteSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.deleteLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDeletedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.defaultLocalSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u306B\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDefaultLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","dateRange.label":"\u65E5\u4ED8\u7BC4\u56F2","dateRange.startDate":"\u958B\u59CB\u65E5","dateRange.endDate":"\u7D42\u4E86\u65E5","dateRange.select":"\u9078\u629E...","dateRange.today":"\u4ECA\u65E5","dateRange.thisWeek":"\u4ECA\u9031","dateRange.thisMonth":"\u4ECA\u6708","graph.records":"{count} \u4EF6","graph.kpi.totalRecords":"\u7DCF\u30EC\u30B3\u30FC\u30C9","graph.kpi.totalReport":"\u7DCF\u5831\u544A\u6642\u9593","graph.kpi.totalBillable":"\u7DCF\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.kpi.efficiency":"\u52B9\u7387","graph.kpi.amount":"\u91D1\u984D","graph.kpi.flagged":"\u8981\u78BA\u8A8D","graph.chart.billable.title":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u5225\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.chart.billable.subtitle":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593\u306E\u4E0A\u4F4D","graph.chart.efficiency.title":"\u62C5\u5F53\u8005\u5225\u52B9\u7387","graph.chart.efficiency.subtitle":"\u52B9\u7387\u306E\u4F4E\u3044\u9806","graph.chart.status.title":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5206\u5E03","graph.chart.status.subtitle":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5225\u6BD4\u7387","graph.dataBody":"\u30C7\u30FC\u30BF\u672C\u4F53","graph.reportTitle":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","graph.unassigned":"\u672A\u5272\u308A\u5F53\u3066","graph.column.reportHours":"\u5831\u544A\u6642\u9593","graph.column.billableHours":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","detail.searchAi.placeholder":"\u9805\u76EE\u3092\u691C\u7D22\u3002\u898B\u3064\u304B\u3089\u306A\u3044\u5834\u5408\u306FAI\u306B\u8CEA\u554F\u3057\u307E\u3059...","detail.searchAi.matches":"{count} \u4EF6\u306E\u4E00\u81F4","detail.searchAi.noMatch":"\u4E00\u81F4\u3059\u308B\u9805\u76EE\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002","detail.searchAi.autoAiFallback":"\u4E00\u81F4\u306A\u3057\u3002AI\u5206\u6790\u3092\u5B9F\u884C\u3057\u307E\u3059...","detail.searchAi.aiResultTitle":"AI\u5206\u6790\u7D50\u679C","detail.table.title":"\u95A2\u9023\u30EC\u30B3\u30FC\u30C9","kanban.empty":"\u3053\u3053\u306B\u30AB\u30FC\u30C9\u3092\u30C9\u30ED\u30C3\u30D7","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u96E2\u3059\u3068\u3053\u306E bucket \u306B\u79FB\u52D5\u3057\u307E\u3059","kanban.card.progress":"\u9032\u6357","kanban.card.openDetail":"\u8A73\u7D30\u3092\u958B\u304F","kanban.priority.critical":"\u7DCA\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u898F\u4F5C\u6210","quickCreate.createWithTitle":"{title} \u3092\u4F5C\u6210","quickEdit.editWithTitle":"{title} \u3092\u7DE8\u96C6","quickDelete.confirmTitle":"\u524A\u9664\u306E\u78BA\u8A8D","quickDelete.confirmMessageSingle":"\u9078\u629E\u3057\u305F\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","quickDelete.confirmMessageMultiple":"\u9078\u629E\u3057\u305F {count} \u4EF6\u306E\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","messageBox.confirm":"OK","messageBox.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB"},hf={"common.cancel":"\uCDE8\uC18C","common.save":"\uC800\uC7A5","common.ok":"\uD655\uC778","common.done":"\uC644\uB8CC","common.search":"\uAC80\uC0C9","common.none":"\uC5C6\uC74C","common.all":"\uC804\uCCB4","common.noData":"\uB370\uC774\uD130 \uC5C6\uC74C","common.copy":"\uBCF5\uC0AC","common.delete":"\uC0AD\uC81C","common.loading":"\uB85C\uB529 \uC911...","header.searchPlaceholder":"\uBB34\uC5C7\uC774\uB4E0 \uBB3C\uC5B4\uBCF4\uC138\uC694...","header.theme.system":"\uD14C\uB9C8: \uC2DC\uC2A4\uD15C","header.theme.dark":"\uD14C\uB9C8: \uB2E4\uD06C","header.theme.light":"\uD14C\uB9C8: \uB77C\uC774\uD2B8","header.menu.setting":"\uC124\uC815","header.menu.logout":"\uB85C\uADF8\uC544\uC6C3","navigation.expand":"\uD0D0\uC0C9 \uD3BC\uCE58\uAE30","navigation.collapse":"\uD0D0\uC0C9 \uC811\uAE30","navigation.searchPlaceholder":"\uBA54\uB274 \uAC80\uC0C9...","navigation.noMatch":"\uC77C\uCE58\uD558\uB294 \uBA54\uB274\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noAccessibleApp":"\uC811\uADFC \uAC00\uB2A5\uD55C \uC571\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noItems":"\uD45C\uC2DC\uD560 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.expandView":"{title} \uD3BC\uCE58\uAE30","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","pivot.title.default":"\uD53C\uBC97 \uD14C\uC774\uBE14","pivot.subtitle.default":"\uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD53C\uBC97 \uD14C\uC774\uBE14\uC744 \uAD6C\uC131\uD558\uC138\uC694.","pivot.empty":"\uACB0\uACFC\uB97C \uBCF4\uB824\uBA74 \uAC12 \uC601\uC5ED\uC5D0 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.records":"\uB808\uCF54\uB4DC","pivot.afterFilter":"\uD544\uD130 \uD6C4","pivot.grandTotal":"\uCD1D\uD569","pivot.resultLabel":"\uACB0\uACFC","pivot.valueLabel":"\uAC12","pivot.table.dimensions":"\uCC28\uC6D0","pivot.config.title":"\uAD6C\uC131","pivot.fieldList":"\uD544\uB4DC \uBAA9\uB85D","pivot.availableDimensions":"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uCC28\uC6D0","pivot.allFieldsInUse":"\uBAA8\uB4E0 \uD544\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.","pivot.zone.rows":"\uD589","pivot.zone.columns":"\uC5F4","pivot.zone.filters":"\uD544\uD130","pivot.zone.values":"\uAC12","pivot.hint.rows":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD589 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.columns":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uC5F4 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.filters":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uBCF4\uACE0\uC11C \uD544\uD130\uB85C \uC0AC\uC6A9","pivot.hint.values":"\uC22B\uC790 \uD544\uB4DC\uB97C \uC5EC\uAE30\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC9D1\uACC4","pivot.clearArea":"\uC601\uC5ED \uBE44\uC6B0\uAE30","pivot.filter.na":"\uD574\uB2F9 \uC5C6\uC74C","pivot.filter.noValues":"\uAC12 \uC5C6\uC74C","pivot.filter.noneSelected":"\uC120\uD0DD \uC5C6\uC74C","pivot.filter.allValues":"\uBAA8\uB4E0 \uAC12","pivot.filter.selectedCount":"{selected} / {total} \uC120\uD0DD\uB428","pivot.filter.selectAll":"\uC804\uCCB4 \uC120\uD0DD","pivot.filter.deselectAll":"\uC804\uCCB4 \uD574\uC81C","pivot.filter.noResults":"\uAC80\uC0C9 \uACB0\uACFC \uC5C6\uC74C","pivot.collapse.ariaExpand":"\uAD6C\uC131 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.collapse.ariaCollapse":"\uAD6C\uC131 \uC601\uC5ED \uC811\uAE30","pivot.agg.sum":"\uD569\uACC4","pivot.agg.count":"\uAC1C\uC218","pivot.agg.avg":"\uD3C9\uADE0","pivot.agg.min":"\uCD5C\uC18C","pivot.agg.max":"\uCD5C\uB300","pivot.preset.selectPlaceholder":"\uD504\uB9AC\uC14B \uC120\uD0DD","pivot.preset.save":"\uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.delete":"\uD504\uB9AC\uC14B \uC0AD\uC81C","pivot.preset.saveDialogTitle":"\uD604\uC7AC \uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.nameLabel":"\uD504\uB9AC\uC14B \uC774\uB984","pivot.preset.defaultName":"\uD504\uB9AC\uC14B {index}","pivot.table.sectionTitle":"\uD53C\uBC97 \uACB0\uACFC","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\uD53C\uBC97 \uACB0\uACFC \uD3BC\uCE58\uAE30","pivot.table.collapse.ariaCollapse":"\uD53C\uBC97 \uACB0\uACFC \uC811\uAE30","pivot.chart.title":"\uD53C\uBC97 \uCC28\uD2B8","pivot.chart.subtitle":"\uD558\uB098\uC758 \uCC28\uC6D0\uACFC \uCD5C\uB300 \uB450 \uAC1C\uC758 \uCE21\uC815\uAC12\uC744 \uAC04\uACB0\uD55C \uCC28\uD2B8\uB85C \uD45C\uC2DC\uD569\uB2C8\uB2E4.","pivot.chart.subtitleReady":"{dimension}\uBCC4 {measure}","pivot.chart.emptyNoDimension":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD589 \uB610\uB294 \uC5F4 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoValue":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uAC12 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoData":"\uD604\uC7AC \uCC28\uD2B8 \uC120\uD0DD\uC5D0 \uD45C\uC2DC\uD560 \uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.","pivot.chart.dimension":"\uCC28\uD2B8 \uCC28\uC6D0","pivot.chart.primaryMeasure":"\uC8FC \uCE21\uC815\uAC12","pivot.chart.secondaryMeasure":"\uBE44\uAD50 \uCE21\uC815\uAC12","pivot.chart.chartType":"\uCC28\uD2B8 \uC720\uD615","pivot.chart.style.barVertical":"\uC138\uB85C \uB9C9\uB300","pivot.chart.style.barHorizontal":"\uAC00\uB85C \uB9C9\uB300","pivot.chart.style.line":"\uC120\uD615 \uCC28\uD2B8","pivot.chart.style.scatter":"\uC0B0\uC810\uB3C4","pivot.chart.collapse.ariaExpand":"\uCC28\uD2B8 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.chart.collapse.ariaCollapse":"\uCC28\uD2B8 \uC601\uC5ED \uC811\uAE30","smartFilter.adaptFilters":"\uD544\uD130 \uC870\uC815","smartFilter.addFilters":"\uD544\uD130 \uCD94\uAC00","smartFilter.go":"\uC2E4\uD589","smartFilter.visibleFilters":"\uD45C\uC2DC \uD544\uD130","smartFilter.searchPlaceholder":"\uAC80\uC0C9...","smartFilter.noOptionsFound":"\uC635\uC158\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4","smartFilter.min":"\uCD5C\uC18C","smartFilter.max":"\uCD5C\uB300","smartFilter.minMaxPlaceholder":"\uCD5C\uC18C - \uCD5C\uB300","smartFilter.operator.equals":"\uAC19\uC74C","smartFilter.operator.contains":"\uD3EC\uD568","smartFilter.operator.notContains":"\uBBF8\uD3EC\uD568","smartFilter.operator.wildcard":"\uC640\uC77C\uB4DC\uCE74\uB4DC \uAC80\uC0C9","smartFilter.operator.notEquals":"\uAC19\uC9C0 \uC54A\uC74C","smartFilter.operator.greaterThan":"\uBCF4\uB2E4 \uD07C","smartFilter.operator.lessThan":"\uBCF4\uB2E4 \uC791\uC74C","smartFilter.operator.greaterOrEqual":"\uC774\uC0C1","smartFilter.operator.lessOrEqual":"\uC774\uD558","smartFilter.operator.between":"\uBC94\uC704","variant.noOptions":"\uC635\uC158 \uC5C6\uC74C","variant.defaultSuffix":"\uAE30\uBCF8","variant.selectVariant":"\uBDF0 \uC120\uD0DD","variant.saveView":"\uBDF0 \uC800\uC7A5","variant.newVariant":"\uC0C8 \uBDF0","variant.viewName":"\uBDF0 \uC774\uB984","variant.setDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","variant.publicAllUsers":"\uACF5\uAC1C(\uC804\uCCB4 \uC0AC\uC6A9\uC790)","variant.toast.fetchFailed":"\uBDF0\uB97C \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveFailed":"\uBDF0\uB97C \uC800\uC7A5\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveSuccess":"\uBDF0\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.deleteFailed":"\uBDF0\uB97C \uC0AD\uC81C\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.deleteSuccess":"\uBDF0\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.defaultFailed":"\uAE30\uBCF8 \uBDF0\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.defaultSuccess":"\uAE30\uBCF8 \uBDF0\uAC00 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","layout.layoutOptions":"\uB808\uC774\uC544\uC6C3 \uC635\uC158","layout.selectLayout":"\uB808\uC774\uC544\uC6C3 \uC120\uD0DD","layout.saveCurrentLayout":"\uD604\uC7AC \uB808\uC774\uC544\uC6C3 \uC800\uC7A5...","layout.noSavedLayouts":"\uC800\uC7A5\uB41C \uB808\uC774\uC544\uC6C3 \uC5C6\uC74C","layout.removeDefault":"\uAE30\uBCF8 \uD574\uC81C","layout.setAsDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","layout.layoutName":"\uB808\uC774\uC544\uC6C3 \uC774\uB984","layout.layoutDescription":"\uC124\uBA85","layout.layoutNameHelper":"\uC608: \uCEF4\uD329\uD2B8 \uBDF0","layout.warningOverwrite":"\uACBD\uACE0: \uAE30\uC874 \uB808\uC774\uC544\uC6C3\uC774 \uB36E\uC5B4\uC4F0\uAE30 \uB429\uB2C8\uB2E4","layout.useAsDefault":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC73C\uB85C \uC0AC\uC6A9","layout.publicAllUsers":"\uACF5\uAC1C(\uBAA8\uB4E0 \uC0AC\uC6A9\uC790\uC5D0\uAC8C \uD45C\uC2DC)","layout.toast.loadFallback":"\uBC31\uC5D4\uB4DC\uC5D0\uC11C \uB808\uC774\uC544\uC6C3\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD574 \uB85C\uCEEC \uC800\uC7A5\uC18C\uB85C \uC804\uD658\uD588\uC2B5\uB2C8\uB2E4","layout.toast.saveSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.saveLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableSavedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","layout.toast.deleteSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.deleteLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0\uC11C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDeletedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0\uC11C \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4","layout.toast.defaultSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.defaultLocalSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC\uC5D0 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDefaultLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uAE30\uBCF8\uAC12\uC744 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","dateRange.label":"\uB0A0\uC9DC \uBC94\uC704","dateRange.startDate":"\uC2DC\uC791\uC77C","dateRange.endDate":"\uC885\uB8CC\uC77C","dateRange.select":"\uC120\uD0DD...","dateRange.today":"\uC624\uB298","dateRange.thisWeek":"\uC774\uBC88 \uC8FC","dateRange.thisMonth":"\uC774\uBC88 \uB2EC","graph.records":"{count}\uAC74","graph.kpi.totalRecords":"\uCD1D \uB808\uCF54\uB4DC","graph.kpi.totalReport":"\uCD1D \uBCF4\uACE0 \uC2DC\uAC04","graph.kpi.totalBillable":"\uCD1D \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.kpi.efficiency":"\uD6A8\uC728","graph.kpi.amount":"\uAE08\uC561","graph.kpi.flagged":"\uD50C\uB798\uADF8","graph.chart.billable.title":"\uCC28\uC6D0\uBCC4 \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.chart.billable.subtitle":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04 \uC0C1\uC704 \uAC12","graph.chart.efficiency.title":"\uB2F4\uB2F9\uC790\uBCC4 \uD6A8\uC728","graph.chart.efficiency.subtitle":"\uB0AE\uC740 \uD6A8\uC728 \uC6B0\uC120","graph.chart.status.title":"\uC0C1\uD0DC \uBD84\uD3EC","graph.chart.status.subtitle":"\uC0C1\uD0DC\uBCC4 \uBE44\uC728","graph.dataBody":"\uB370\uC774\uD130 \uBCF8\uBB38","graph.reportTitle":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","graph.unassigned":"\uBBF8\uC9C0\uC815","graph.column.reportHours":"\uBCF4\uACE0 \uC2DC\uAC04","graph.column.billableHours":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","detail.searchAi.placeholder":"\uD544\uB4DC\uB97C \uAC80\uC0C9\uD558\uACE0, \uACB0\uACFC\uAC00 \uC5C6\uC73C\uBA74 AI\uC5D0 \uC9C8\uBB38\uD558\uC138\uC694...","detail.searchAi.matches":"{count}\uAC1C \uC77C\uCE58 \uD56D\uBAA9","detail.searchAi.noMatch":"\uC77C\uCE58\uD558\uB294 \uD544\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.","detail.searchAi.autoAiFallback":"\uC77C\uCE58 \uD56D\uBAA9\uC774 \uC5C6\uC5B4 AI \uBD84\uC11D\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4...","detail.searchAi.aiResultTitle":"AI \uBD84\uC11D \uACB0\uACFC","detail.table.title":"\uAD00\uB828 \uB808\uCF54\uB4DC","kanban.empty":"\uC5EC\uAE30\uC5D0 \uCE74\uB4DC\uB97C \uB193\uC73C\uC138\uC694","kanban.bucket.limit":"\uD55C\uB3C4","kanban.bucket.dropHere":"\uB193\uC73C\uBA74 \uC774 \uBC84\uD0B7\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4","kanban.card.progress":"\uC9C4\uD589\uB960","kanban.card.openDetail":"\uC0C1\uC138 \uC5F4\uAE30","kanban.priority.critical":"\uAE34\uAE09","kanban.priority.high":"\uB192\uC74C","kanban.priority.medium":"\uBCF4\uD1B5","kanban.priority.low":"\uB0AE\uC74C","quickCreate.newItem":"\uC2E0\uADDC \uD56D\uBAA9","quickCreate.createWithTitle":"{title} \uC0DD\uC131","quickEdit.editWithTitle":"{title} \uC218\uC815","quickDelete.confirmTitle":"\uC0AD\uC81C \uD655\uC778","quickDelete.confirmMessageSingle":"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","quickDelete.confirmMessageMultiple":"\uC120\uD0DD\uD55C {count}\uAC1C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","messageBox.confirm":"\uD655\uC778","messageBox.cancel":"\uCDE8\uC18C"},Mn={en:pf,zh:uf,fr:mf,de:gf,ja:ff,ko:hf};var Id=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,a)=>{let r=t[a];return r==null?"":String(r)}):e,vf={locale:"en",t:(e,t)=>Id(Mn.en[e]||e,t)},Rd=createContext(vf),Di=({locale:e="en",messages:t,children:o})=>{let a=useMemo(()=>{let r=Mn[e]||Mn.en,n=t?.[e]||{},i={...Mn.en,...r,...n};return {locale:e,t:(s,d)=>Id(i[s]||s,d)}},[e,t]);return jsx(Rd.Provider,{value:a,children:o})},ee=()=>useContext(Rd);function Is({items:e,onItemClick:t,className:o="",level:a=0,expandedIds:r,onToggleExpand:n,colorMode:i="light"}){let{t:s}=ee(),d=i==="dark",l=usePathname(),[c,g]=useState(false),[f,u]=useState(new Set),h=r!==void 0&&n!==void 0,w=h?r:f;useEffect(()=>{g(true);},[]);let p=m=>{if(h)n(m);else {let y=new Set(f);y.has(m)?y.delete(m):y.add(m),u(y);}},k=m=>{m.children&&m.children.length>0&&p(m.id),t&&t(m);};return !e||!Array.isArray(e)?jsx("div",{className:Po("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:s("navigation.noItems")})}):jsx("div",{className:Po("tree-menu",o),children:e.map(m=>{let y=w.has(m.id)||m.isExpanded,b=m.children&&m.children.length>0,v=m.appurl||m.href,B=c&&v?l===v:false;return jsxs("div",{className:"tree-menu-item relative",children:[B&&jsx("div",{className:Po("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(Ts,{variant:"ghost",className:Po("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${a*4}`,B?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>k(m),children:[b&&jsx("div",{className:Po("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",B?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!b&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),m.icon&&jsx("div",{className:Po("flex-shrink-0 transition-colors duration-200",B?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:m.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:Po("text-sm truncate transition-colors duration-200",B?"font-semibold":"font-medium"),children:m.title||m.label}),m.description&&jsx("div",{className:Po("text-xs truncate transition-colors duration-200",B?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:m.description,children:m.description})]})]}),b&&jsx("div",{className:Po("grid transition-[grid-template-rows] duration-300 ease-in-out",y?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsx("div",{className:"overflow-hidden",children:jsx(Is,{items:m.children,onItemClick:t,level:a+1,expandedIds:r,onToggleExpand:n,colorMode:i})})})]},m.id)})})}var Fd=({collapsed:e,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light"})=>{let{t:i}=ee(),s=n==="dark",d=useRouter(),[l,c]=useState(""),[g,f]=useState(new Set);useEffect(()=>{e&&f(new Set);},[e]);let u=useCallback(k=>{let m=[],y=b=>{b.forEach(v=>{m.push(v.id),v.children&&y(v.children);});};return y(k),m},[]),h=useMemo(()=>{if(!l.trim())return r;let k=m=>m.reduce((y,b)=>{let v=b.title?.toLowerCase().includes(l.toLowerCase())||b.description?.toLowerCase().includes(l.toLowerCase()),B=b.children?k(b.children):[];return (v||B.length>0)&&y.push({...b,children:B.length>0?B:b.children}),y},[]);return k(r)},[l,r]),w=useMemo(()=>l.trim()?new Set(u(r)):g,[l,r,g,u]),p=useCallback(async k=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",k),k.id==="chat"||k.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{d.push("/chat?new=true");}catch(y){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",y),d.push("/chat");}return}let m=k.appurl||k.href;m&&(m.startsWith("http://")||m.startsWith("https://")?window.open(m,"_blank"):d.push(m));},[d]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${s?"bg-[#111111] border-white/10":"bg-white/70 border-white/30"}`,style:{backdropFilter:"blur(16px) saturate(180%)",WebkitBackdropFilter:"blur(16px) saturate(180%)",transition:"width 400ms cubic-bezier(0.4, 0.0, 0.2, 1), border-radius 0ms cubic-bezier(0.4, 0.0, 0.2, 1), box-shadow 400ms ease-out",maxHeight:a?`${a}px`:void 0},children:[jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsx("div",{className:"flex justify-center",children:jsx("button",{onClick:t,className:`w-10 h-10 flex items-center justify-center rounded-lg transition-colors duration-200 ${s?"text-gray-300 hover:bg-gray-800":"text-gray-500 hover:bg-gray-50"}`,title:i("navigation.expand"),children:jsx(Search,{className:"h-5 w-5"})})}):jsxs("div",{className:`relative transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:[jsx("input",{type:"text",placeholder:i("navigation.searchPlaceholder"),value:l,onChange:k=>c(k.target.value),className:`w-full pl-10 pr-4 py-2 text-sm border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent ${s?"border-gray-700 bg-[#1A1A1A] text-white placeholder-gray-400":"border-gray-300 bg-white text-gray-900 placeholder-gray-500"}`}),jsx("div",{className:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none",children:jsx(Search,{className:`h-4 w-4 ${s?"text-gray-500":"text-gray-400"}`})})]})}),jsx("nav",{className:`flex-1 pb-4 transition-all duration-500 ease-in-out overflow-y-auto min-h-0 ${e?"px-1":"px-2"}`,children:h.length===0?jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":i(l?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxs(Fragment,{children:[!e&&jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsx(Is,{items:h,onItemClick:p,className:"space-y-1",expandedIds:w,colorMode:n,onToggleExpand:k=>{let m=new Set(g);h.some(b=>b.id===k)?m.has(k)?m.delete(k):(h.forEach(b=>{b.id!==k&&m.has(b.id)&&m.delete(b.id);}),m.add(k)):m.has(k)?m.delete(k):m.add(k),f(m);}})}),e&&jsx("div",{className:"space-y-2",children:r.map(k=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let m=new Set([k.id]);f(m);},className:`w-full flex items-center justify-center p-2 rounded-lg cursor-pointer transition-colors duration-200 ${s?"text-gray-400 hover:bg-gray-800":"text-gray-600 hover:bg-gray-50"}`,title:i("navigation.expandView",{title:k.title||""}),children:k.icon||jsx("div",{className:`w-6 h-6 rounded text-xs flex items-center justify-center font-medium ${s?"bg-[#90caf9] text-[#0b0b0b]":"bg-[#1976d2] text-white"}`,children:k.title?.charAt(0)||"?"})})},k.id))})]})}),!e&&jsx("button",{onClick:t,className:`absolute -bottom-1 -right-1 w-6 h-6 bg-transparent rounded-full flex items-center justify-center transition-all duration-300 ease-in-out z-20 ${s?"hover:bg-gray-800/50":"hover:bg-white/20"}`,title:i("navigation.collapse"),children:jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsx("div",{className:s?"border-yellow-400":"",style:{width:"32px",height:"32px",borderRadius:"16px",border:"3px solid #21BCFF",backgroundColor:"transparent",position:"absolute",top:"-16px",left:"-16px"}})})})]})};var zd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[a,r]=useState(t),[n,i]=useState(o),s=useCallback(()=>{r(l=>!l);},[]),d=useMemo(()=>({collapsed:a,onToggle:s,menuData:n}),[a,s,n]);return {collapsed:a,setCollapsed:r,toggleCollapsed:s,menuData:n,setMenuData:i,navigationIslandProps:d}};var zo=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Ds=class{constructor(){a(this,"listener",null);}register(t){this.listener=t;}unregister(){this.listener=null;}show(t,o,a){this.listener&&this.listener({type:t,content:o,options:a});}hide(){this.listener&&this.listener(null);}},ua=new Ds,zT={success:(e,t)=>ua.show("success",e,t),error:(e,t)=>ua.show("error",e,t),warning:(e,t)=>ua.show("warning",e,t),info:(e,t)=>ua.show("info",e,t),show:(e,t,o)=>ua.show(e,t,o),hide:()=>ua.hide()};var $f={success:{icon:jsx(Vf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(Of,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(Hf,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(Wf,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},An=({open:e,title:t,message:o,onClose:a,onConfirm:r,confirmText:n,cancelText:i,showCancel:s=true,maxWidth:d="xs",type:l="default"})=>{let{t:c}=ee(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),u=()=>{r?r():a();},h=$f[l],w=l!=="default";return jsxs(tu,{open:e,onClose:a,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...w&&{borderTop:`6px solid ${h.iconColor}`}}},children:[w&&jsx(Xn,{sx:{display:"flex",justifyContent:"center",pt:3,color:h.iconColor},children:h.icon}),t&&jsx(ou,{sx:{textAlign:w?"center":"left",pt:w?1:2},children:t}),jsx(au,{sx:{textAlign:w?"center":"left"},children:typeof o=="string"?jsx(Lf,{children:o}):o}),jsxs(ru,{sx:{justifyContent:w?"center":"flex-end",pb:3,px:3},children:[s&&jsx(zo,{onClick:a,variant:"text",color:"inherit",children:f}),jsx(zo,{onClick:u,variant:"contained",sx:{bgcolor:w?h.iconColor:void 0,"&:hover":{bgcolor:w?h.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},JT=()=>{let[e,t]=St__default.useState(null),[o,a]=St__default.useState(false);St__default.useEffect(()=>{let i=s=>{s?(t(s),a(true)):(a(false),t(null));};return ua.register(i),()=>ua.unregister()},[]);let r=()=>{a(false),e?.options?.onClose&&e.options.onClose(),t(null);},n=()=>{e?.options?.onConfirm&&e.options.onConfirm(),a(false),t(null);};return e?jsx(An,{open:o,type:e.type,message:e.content,title:e.options?.title,onClose:r,onConfirm:n,confirmText:e.options?.confirmText,cancelText:e.options?.cancelText,showCancel:e.options?.showCancel,maxWidth:e.options?.maxWidth}):null};var ah=[{field:"value",label:"Value",minWidth:120},{field:"label",label:"Description",minWidth:180}],Ud=e=>Array.isArray(e)?e:e==null||e===""?[]:[e],Qo=e=>String(e),Kd=(e,t)=>e[t],qd=e=>{let t=e.value??e.id??e.key??e.code;return typeof t=="number"||typeof t=="string"?t:""},rh=e=>{let t=e.label??e.description??e.name??e.title;return String(typeof t=="number"||typeof t=="string"?t:qd(e))},nh=e=>{let t=e.description??e.subtitle;return typeof t=="number"||typeof t=="string"?String(t):void 0},_d=({value:e=null,items:t=[],columns:o,mode:a="single",dialogTitle:r="Value Help",searchPlaceholder:n="Search values...",selectLabel:i="Select",clearLabel:s="Clear",cancelLabel:d="Cancel",valueHelpLabel:l="Open value help",noResultsText:c="No matching values",loading:g=false,clearable:f=true,selectedItems:u=[],displayValue:h,getOptionValue:w=qd,getOptionLabel:p=rh,getOptionDescription:k=nh,onChange:m,onSearch:y,disabled:b,InputProps:v,onKeyDown:B,...M})=>{let S=a==="multiple",[E,I]=useState(false),[C,D]=useState(""),[T,P]=useState(null),[A,W]=useState(false),[z,Q]=useState(()=>Ud(e)),re=useMemo(()=>o&&o.length>0?o:ah,[o]),ne=T??t,ae=useMemo(()=>{let X=[...u,...t,...T??[]],pe=new Map;return X.forEach(Be=>{pe.set(Qo(w(Be)),Be);}),pe},[w,t,T,u]),_=useMemo(()=>Ud(e),[e]);useEffect(()=>{E||Q(_);},[E,_]);let Ue=useMemo(()=>{let X=C.trim().toLowerCase();if(!X||y)return ne;let pe=re.filter(Be=>Be.searchable!==false);return ne.filter(Be=>[w(Be),p(Be),k(Be),...pe.map(qe=>Kd(Be,qe.field))].some(qe=>String(qe??"").toLowerCase().includes(X)))},[ne,k,p,w,y,C,re]),Ze=useMemo(()=>{if(h!==void 0)return h;if(_.length===0)return "";let X=pe=>{let Be=ae.get(Qo(pe));if(!Be)return String(pe);let Ee=p(Be);return Ee&&Ee!==String(pe)?`${pe} - ${Ee}`:String(pe)};return S?_.length>2?`${_.length} selected`:_.map(X).join(", "):X(_[0])},[h,p,S,ae,_]),Oe=useCallback(async()=>{if(y){W(true);try{let X=await y(C);Array.isArray(X)&&P(X);}finally{W(false);}}},[y,C]),ie=()=>{b||(Q(_),I(true));},we=()=>{I(false);},Ae=()=>{m?.(S?[]:null,S?[]:null),Q([]);},Ye=X=>{let pe=w(X);if(S){Q(Be=>Be.some(qe=>Qo(qe)===Qo(pe))?Be.filter(qe=>Qo(qe)!==Qo(pe)):[...Be,pe]);return}Q([pe]);},st=()=>{let X=z.map(pe=>ae.get(Qo(pe))).filter(pe=>!!pe);S?m?.(z,X):m?.(z[0]??null,X[0]??null),I(false);},Z=X=>{if(X.key==="F4"){X.preventDefault(),ie();return}B?.(X);},Ke=g||A,xt=_.length>0;return jsxs(Fragment,{children:[jsx(TextField,{...M,disabled:b,value:Ze,onKeyDown:Z,InputProps:{...v,readOnly:true,endAdornment:jsxs(InputAdornment,{position:"end",children:[Ke?jsx(CircularProgress,{size:18}):null,f&&xt&&!b?jsx(Tooltip,{title:s,children:jsx(IconButton,{size:"small",edge:"end","aria-label":s,onClick:Ae,children:jsx(th,{fontSize:"small"})})}):null,jsx(Tooltip,{title:l,children:jsx("span",{children:jsx(IconButton,{size:"small",edge:"end","aria-label":l,onClick:ie,disabled:b,children:jsx(Gd,{fontSize:"small"})})})})]})}}),jsxs(Dialog,{open:E,onClose:we,fullWidth:true,maxWidth:"md",PaperProps:{sx:X=>({borderRadius:2,overflow:"hidden",border:`1px solid ${X.palette.divider}`,boxShadow:X.palette.mode==="dark"?`0 24px 80px ${alpha(X.palette.common.black,.72)}`:`0 24px 80px ${alpha(X.palette.common.black,.18)}`})},children:[jsxs(DialogTitle,{sx:X=>({display:"flex",alignItems:"center",justifyContent:"space-between",gap:2,px:2.5,py:2,pr:1.5,borderBottom:`1px solid ${X.palette.divider}`,bgcolor:X.palette.background.paper}),children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:r}),S?jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.25},children:`${z.length} selected`}):null]}),jsx(IconButton,{"aria-label":"Close",onClick:we,size:"small",children:jsx(oh,{fontSize:"small"})})]}),jsxs(DialogContent,{sx:{p:0},children:[jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1,sx:X=>({px:2.5,py:1.5,borderBottom:`1px solid ${X.palette.divider}`,bgcolor:X.palette.mode==="dark"?alpha(X.palette.common.white,.025):alpha(X.palette.primary.main,.035)}),children:[jsx(TextField,{size:"small",fullWidth:true,value:C,placeholder:n,onChange:X=>D(X.target.value),onKeyDown:X=>{X.key==="Enter"&&(X.preventDefault(),Oe());},InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Gd,{fontSize:"small"})}),sx:X=>({borderRadius:1,bgcolor:X.palette.background.paper,"& fieldset":{borderColor:alpha(X.palette.text.primary,X.palette.mode==="dark"?.2:.16)},"&:hover fieldset":{borderColor:alpha(X.palette.primary.main,.52)},"&.Mui-focused fieldset":{borderColor:X.palette.primary.main}})}}),y?jsx(Button,{variant:"outlined",onClick:()=>{Oe();},disabled:Ke,sx:{minWidth:96,textTransform:"none",fontWeight:700},children:Ke?jsx(CircularProgress,{size:18}):"Search"}):null]}),jsx(TableContainer,{sx:{maxHeight:420},children:jsxs(Table,{stickyHeader:true,size:"small",children:[jsx(TableHead,{children:jsxs(TableRow,{children:[jsx(TableCell,{padding:"checkbox",sx:X=>({bgcolor:X.palette.mode==="dark"?"#111111":X.palette.background.paper,borderBottom:`1px solid ${X.palette.divider}`})}),re.map(X=>jsx(TableCell,{align:X.align,sx:pe=>({minWidth:X.minWidth,width:X.width,fontSize:"0.78rem",fontWeight:800,bgcolor:pe.palette.mode==="dark"?"#111111":pe.palette.background.paper,borderBottom:`1px solid ${pe.palette.divider}`}),children:X.label},String(X.field)))]})}),jsxs(TableBody,{children:[Ue.map(X=>{let pe=w(X),Be=z.some(Ee=>Qo(Ee)===Qo(pe));return jsxs(TableRow,{hover:true,selected:Be,onClick:()=>Ye(X),onDoubleClick:()=>{S||(Q([pe]),m?.(pe,X),I(false));},sx:Ee=>({cursor:"pointer","&.Mui-selected":{bgcolor:alpha(Ee.palette.primary.main,Ee.palette.mode==="dark"?.22:.12)},"&.Mui-selected:hover":{bgcolor:alpha(Ee.palette.primary.main,Ee.palette.mode==="dark"?.28:.18)}}),children:[jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:Be})}),re.map(Ee=>{let qe=Kd(X,Ee.field);return jsx(TableCell,{align:Ee.align,sx:{fontSize:"0.82rem",py:1},children:Ee.render?Ee.render(qe,X):String(qe??"")},String(Ee.field))})]},Qo(pe))}),Ue.length===0?jsx(TableRow,{children:jsx(TableCell,{colSpan:re.length+1,children:jsx(Box,{sx:{py:5,textAlign:"center",color:"text.secondary"},children:c})})}):null]})]})})]}),jsxs(DialogActions,{sx:X=>({px:2.5,py:1.5,borderTop:`1px solid ${X.palette.divider}`,bgcolor:X.palette.background.paper,"& .MuiButton-root":{textTransform:"none",fontWeight:700}}),children:[f&&(xt||z.length>0)?jsx(Button,{onClick:Ae,children:s}):null,jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:we,children:d}),jsx(Button,{variant:"contained",onClick:st,disabled:!S&&z.length===0,children:i})]})]})]})};var jd=({title:e,hideHeader:t,children:o})=>jsxs(Box,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[!t&&jsx(Box,{sx:{mb:2},children:jsx(Typography,{variant:"h4",children:e})}),jsx(Box,{sx:{flex:1,overflow:"hidden"},children:o})]});var Ai=e=>{let{t}=ee(),o="0.85rem",a=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],r=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],n=[...a,...r],i=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,s=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],d=typeof e.count=="number"?e.count:0,l=Math.max(0,typeof e.page=="number"?e.page:0),c=i===-1?1:Math.max(1,Math.ceil(d/i)),g=Math.min(l+1,c),f=l>0,u=l<c-1&&i!==-1;return jsxs(Toolbar,{sx:{pl:{sm:2},pr:{xs:1,sm:1},alignItems:"center",gap:1},children:[jsx(TextField,{size:"small",placeholder:t("table.toolbar.searchPlaceholder"),value:e.filterText,onChange:h=>e.setFilterText(h.target.value),InputProps:{sx:{fontSize:o,"& .MuiInputBase-input":{fontSize:o,color:"text.primary"},"& .MuiInputBase-input::placeholder":{fontSize:o,opacity:1}},startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Gd,{fontSize:"small"})})},sx:{width:300}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,ml:1},children:[jsx(Typography,{sx:{fontSize:o,color:"text.secondary",whiteSpace:"nowrap"},children:t("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:i,disableUnderline:true,onChange:h=>e.onRowsPerPageChange?.(Number(h.target.value)),sx:{fontSize:o,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:s.map(h=>jsx(MenuItem,{value:h,sx:{fontSize:o},children:h===-1?t("common.all"):h},`rows-per-page-${h}`))}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(l-1,0)),disabled:!f,sx:{p:.35,color:"text.primary"},children:jsx(Ph,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:o,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:t("table.toolbar.pageOf",{current:g,total:c})}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(l+1,c-1)),disabled:!u,sx:{p:.35,color:"text.primary"},children:jsx(Zg,{fontSize:"small"})})]}),jsx(Box,{sx:{flex:1}}),jsxs(Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[n.length>0&&jsx(Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:n.map((h,w)=>jsx(St__default.Fragment,{children:h},`toolbar-custom-${w}`))}),jsx(Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsx(Tooltip,{title:t("table.toolbar.groupBy"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setGroupAnchorEl(h.currentTarget),children:jsx(Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsx(vh,{})})})}),jsx(Tooltip,{title:t("table.toolbar.summary"),children:jsx(IconButton,{sx:{color:e.showSummary?"primary.main":"text.primary"},onClick:h=>e.setSummaryAnchorEl(h.currentTarget),children:jsx(Ch,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(yh,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(xh,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(Sh,{})})}),e.showEditButton&&jsx(Tooltip,{title:t("table.toolbar.editItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenEditDialog,color:"primary",disabled:!!e.editDisabled,children:jsx(wh,{})})})}),e.showDeleteButton&&jsx(Tooltip,{title:t("table.toolbar.deleteItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenDeleteConfirm,color:"error",disabled:!!e.deleteDisabled,children:jsx(Th,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(kh,{})})}),e.onLayoutSave&&!e.layoutManager&&jsx(Tooltip,{title:t("table.toolbar.saveLayout"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.onLayoutSave(h),children:jsx(Xp,{})})}),e.layoutManager]})]})};var Bi=e=>{let{t}=ee(),{onSelectAllClick:o,order:a,orderBy:r,numSelected:n=0,rowCount:i=0,onRequestSort:s,columns:d,visibleColumns:l,selectionMode:c,grouping:g=[],isAllExpanded:f=false,handleToggleAll:u,onColumnResize:h,columnWidths:w}=e,[p,k]=useState(null),m=useRef(null),y=C=>D=>{p||s(C);},b=(C,D,T)=>{C.preventDefault(),C.stopPropagation(),k(D),m.current={startX:C.clientX,startWidth:T,colId:D},document.addEventListener("mousemove",v),document.addEventListener("mouseup",B),document.body.style.cursor="col-resize";},v=C=>{if(!m.current)return;let{startX:D,startWidth:T,colId:P}=m.current,A=C.clientX-D,W=Math.max(50,T+A);h&&h(P,W);},B=()=>{k(null),m.current=null,document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",B),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",B);},[]);let M=c==="multiple"||c==="single",S=g.length>0&&!!u,E=t(f?"table.group.collapseAll":"table.group.expandAll"),I=d.filter(C=>l.includes(C.id));return jsx(Ah,{children:jsxs(Bh,{children:[M&&jsx(Ns,{padding:"checkbox",sx:C=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:C.palette.mode==="dark"?"#000000":"#f5f5f5",color:C.palette.mode==="dark"?"#ffffff":C.palette.text.primary}),children:jsx(Eh,{color:"primary",indeterminate:n>0&&n<i,checked:i>0&&n===i,onChange:o,disabled:c==="single"})}),S&&jsx(Ns,{align:"center",padding:"checkbox",sx:C=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:C.palette.mode==="dark"?"#000000":"#f5f5f5",color:C.palette.mode==="dark"?"#ffffff":C.palette.text.primary}),children:jsx(zh,{title:E,children:jsx(Lh,{size:"small",onClick:C=>{C.stopPropagation(),u?.(!f);},sx:{p:.2},children:f?jsx(Vh,{fontSize:"small"}):jsx(Nh,{fontSize:"small"})})})}),I.map(C=>{let D=w?.[C.id]||C.minWidth||100;return jsxs(Ns,{align:"left",padding:C.disablePadding?"none":"normal",sortDirection:r===C.id?a:false,style:{width:D,minWidth:D,maxWidth:D},sx:T=>({position:"sticky",top:0,zIndex:4,backgroundColor:T.palette.mode==="dark"?"#000000":"#f5f5f5",color:T.palette.mode==="dark"?"#ffffff":T.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsx(Fh,{active:r===C.id,direction:r===C.id?a:"asc",onClick:y(C.id),sx:T=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:T.palette.mode==="dark"?"#ffffff":T.palette.text.primary,opacity:r===C.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:T.palette.mode==="dark"?"#ffffff":T.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:T.palette.mode==="dark"?"#ffffff":T.palette.text.primary}),children:jsx(Xn,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:C.label})}),jsx(Xn,{onMouseDown:T=>b(T,C.id,typeof D=="number"?D:100),onClick:T=>T.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},C.id)})]})})};var ep=e=>{let{t}=ee(),{visibleRows:o,visibleColumns:a,selected:r=[],handleClick:n,columns:i,toggleGroupExpand:s,expandedGroups:d=new Set,selectionMode:l,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:u}=e,h=m=>r.indexOf(m)!==-1,w=l==="multiple"||l==="single",p=c.length>0,k=a.length+(w?1:0)+(p?1:0);return jsxs(TableBody,{children:[o.map((m,y)=>{if(m.type==="group"){let b=d.has(m.id),v=m.childIds||[],B=v.filter(I=>h(I)).length,M=v.length>0&&B===v.length,S=B>0&&B<v.length;return jsxs(TableRow,{sx:I=>({backgroundColor:I.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:I.palette.text.primary,borderBottomColor:I.palette.divider},"& .MuiIconButton-root":{color:I.palette.text.primary},"& .MuiCheckbox-root":{color:I.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:I.palette.primary.main}}),children:[w&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:M,indeterminate:S,onChange:I=>{if(I.stopPropagation(),!!e.onSelectionChange)if(M){let C=r.filter(D=>!v.includes(D));e.onSelectionChange(C);}else {let C=Array.from(new Set([...r,...v]));e.onSelectionChange(C);}},onClick:I=>I.stopPropagation(),sx:{p:.5}})}),p&&jsx(TableCell,{padding:"checkbox",sx:{width:44},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[c.length>1&&m.level<c.length-1&&jsx(Tooltip,{title:g?.(m.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsx(IconButton,{size:"small",onClick:()=>{g?.(m.id)?u?.(m.id):f?.(m.id);},sx:{p:.25},children:g?.(m.id)?jsx(Vh,{fontSize:"small"}):jsx(Nh,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>s&&s(m.id),sx:{p:.25},children:b?jsx(Uh,{}):jsx(Zg,{})})]})}),jsx(TableCell,{colSpan:a.length,sx:{py:1,pl:m.level*3+1},children:jsxs(Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[m.field,": ",m.value," (",m.count,")"]})})]},m.id)}else {let b=m.data||m,v=m.id||b.id||y,B=h(v),M=`enhanced-table-checkbox-${y}`,E=(m.level!==void 0?m.level:0)*4;return jsxs(TableRow,{hover:true,onClick:I=>n&&n(I,b),role:"checkbox","aria-checked":B,tabIndex:-1,selected:B,sx:{cursor:"pointer"},children:[w&&jsx(TableCell,{padding:"checkbox",sx:{pl:E>0?E+1:void 0},children:jsx(Checkbox,{color:"primary",checked:B,inputProps:{"aria-labelledby":M}})}),p&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(I=>a.includes(I.id)).map((I,C)=>{let T=!w&&C===0&&E>0?{pl:E+2}:{};return jsx(TableCell,{align:"left",sx:T,children:I.render?I.render(b[I.id],b):(function(){let A=b[I.id];if(I.numeric){if(typeof A=="number")return A.toLocaleString();if(typeof A=="string"&&A.trim()!==""&&!isNaN(Number(A)))return Number(A).toLocaleString()}return A})()},I.id)})]},v)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:k,align:"center",children:t("common.noData")})})]})};var tp=e=>{let{visibleColumns:t,summaryRow:o,selectionMode:a,grouping:r=[]}=e;if(!e.showSummary)return null;let n=a==="multiple"||a==="single",i=r.length>0;return jsx(TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxs(TableRow,{children:[n&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper"}}),i&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper",width:44}}),t.map(s=>jsx(TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let l=o[s];return l==null||l===""?"":typeof l=="number"?l.toLocaleString():typeof l=="string"&&l.trim()!==""&&!isNaN(Number(l))?Number(l).toLocaleString():l})()},s))]})})};var ap=e=>{let{t}=ee();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var Wr=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:a,columns:r,toggleGroupField:n})=>{let{t:i}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxs(Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsx(Typography,{variant:"subtitle2",sx:{px:1},children:i("table.menu.groupBy")}),o.length>0&&jsx(Button,{size:"small",color:"error",onClick:()=>a([]),startIcon:jsx(ny,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),r.map(s=>{let d=o.includes(s.id),l=o.indexOf(s.id)+1;return jsx(MenuItem,{onClick:()=>n(s.id),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Checkbox,{checked:d,size:"small"}),jsx(ListItemText,{primary:s.label}),d&&jsx(Badge,{badgeContent:l,color:"primary",sx:{mr:2}})]})},s.id)})]})},$r=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:n("table.menu.visibleColumns")})}),jsx(Divider,{}),o.map(i=>jsxs(MenuItem,{onClick:()=>r(i.id),children:[jsx(Checkbox,{checked:a.includes(i.id),size:"small"}),jsx(ListItemText,{primary:i.label})]},i.id))]})},zi=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:a,columns:r,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:s}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>a(d.target.checked),size:"small"}),label:s("table.menu.showSummaryRow")})}),jsx(Divider,{}),r.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),r.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:s("table.menu.noNumericColumns")})})]})},Ni=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=ee();return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{onClick:t,children:n("common.copy")}),jsx(Divider,{}),jsx(MenuItem,{disabled:true,children:n("table.menu.visibleColumns")}),o.map(i=>jsxs(MenuItem,{onClick:()=>r(i.id),children:[jsx(ListItemIcon,{children:a.includes(i.id)&&jsx(ry,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})};var Nn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),ip=({kpis:e})=>{let{t}=ee(),o=[{label:t("graph.kpi.totalRecords"),value:Nn(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:Nn(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:Nn(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:Nn(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:Nn(e.flaggedCount,0),color:"error.main"}];return jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:o.map(a=>jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsx(Typography,{variant:"caption",color:"text.secondary",children:a.label}),jsx(Typography,{variant:"h4",fontWeight:800,sx:{color:a.color},children:a.value})]},a.label))})};var Vi=({title:e,subtitle:t,children:o})=>jsxs(Paper,{variant:"outlined",sx:{p:2,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",fontWeight:700,children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:t}),o]});var On=({data:e,orientation:t="horizontal",valueSuffix:o="",minHeight:a=210,activeName:r,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=Math.max(...e.map(s=>s.value),1);return t==="vertical"?jsx(Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:a},children:e.map(s=>jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Box,{onClick:()=>n?.(s),sx:{height:`${Math.max(s.value/i*180,6)}px`,bgcolor:s.name===r?"primary.dark":"primary.main",borderRadius:"8px 8px 0 0",cursor:n?"pointer":"default",opacity:r&&s.name!==r?.45:1}}),jsx(Typography,{variant:"caption",noWrap:true,title:s.name,sx:{display:"block",mt:.5},children:s.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[s.value.toFixed(1),o]})]},s.name))}):jsx(Stack,{spacing:1,children:e.map(s=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:s.name,children:s.name}),jsx(Box,{onClick:()=>n?.(s),sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden",cursor:n?"pointer":"default",opacity:r&&s.name!==r?.45:1},children:jsx(Box,{sx:{width:`${s.value/i*100}%`,height:"100%",bgcolor:s.name===r?"primary.dark":"primary.main"}})}),jsxs(Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:[s.value.toFixed(1),o]})]},s.name))})};var cp=({data:e,color:t="#42A5F5",valueSuffix:o="",height:a=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let r=640,n=28,i=e.map(f=>f.value),s=Math.min(...i,0),l=Math.max(...i,1)-s||1,c=e.map((f,u)=>{let h=n+u*(r-n*2)/Math.max(e.length-1,1),w=a-n-(f.value-s)/l*(a-n*2);return {x:h,y:w,...f}}),g=c.map(f=>`${f.x},${f.y}`).join(" ");return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${r} ${a}`,sx:{width:"100%",height:a},children:[jsx("line",{x1:n,y1:a-n,x2:r-n,y2:a-n,stroke:"rgba(148,163,184,0.4)"}),jsx("polyline",{fill:"none",stroke:t,strokeWidth:3,points:g}),c.map(f=>jsx("circle",{cx:f.x,cy:f.y,r:4,fill:t},f.name))]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(f=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:f.name,sx:{display:"block"},children:f.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[f.value.toFixed(1),o]})]},f.name))})]})};var dp=({data:e,barColor:t="#64B5F6",lineColor:o="#FFB74D",height:a=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let r=640,n=28,i=Math.max(...e.map(c=>c.barValue),1),s=Math.max(...e.map(c=>c.lineValue),1),d=e.map((c,g)=>{let f=(r-n*2)/e.length,u=Math.max(f*.5,8),h=n+g*f+(f-u)/2,w=c.barValue/i*(a-n*2),p=a-n-w;return {x:h,y:p,barHeight:w,barWidth:u,item:c}}),l=e.map((c,g)=>{let f=(r-n*2)/e.length,u=n+g*f+f/2,h=a-n-c.lineValue/s*(a-n*2);return {x:u,y:h,item:c}});return jsxs(Stack,{spacing:1.25,children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${r} ${a}`,sx:{width:"100%",height:a},children:[jsx("line",{x1:n,y1:a-n,x2:r-n,y2:a-n,stroke:"rgba(148,163,184,0.4)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points:l.map(c=>`${c.x},${c.y}`).join(" ")}),l.map(c=>jsx("circle",{cx:c.x,cy:c.y,r:3.5,fill:o},`${c.item.name}-line`))]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(c=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:c.name,sx:{display:"block"},children:c.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Bar: ",c.barValue.toFixed(1)]}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Line: ",c.lineValue.toFixed(1)]})]},c.name))})]})};var my=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,up=({data:e})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let t=Array.from(new Set(e.map(n=>n.x))),o=Array.from(new Set(e.map(n=>n.y))),a=Math.max(...e.map(n=>n.value),1),r=new Map(e.map(n=>[`${n.y}__${n.x}`,n.value]));return jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:`120px repeat(${t.length}, minmax(64px, 1fr))`,gap:1,minWidth:120+t.length*64},children:[jsx(Box,{}),t.map(n=>jsx(Typography,{variant:"caption",sx:{textAlign:"center",fontWeight:600},children:n},n)),o.map(n=>jsxs(Box,{sx:{display:"contents"},children:[jsx(Typography,{variant:"caption",sx:{alignSelf:"center"},children:n}),t.map(i=>{let s=r.get(`${n}__${i}`)||0,d=s/a;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:my(d),border:"1px solid rgba(148,163,184,0.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:s.toFixed(1)})},`${n}-${i}`)})]},n))]})})};var gy=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],Ki=({data:e,variant:t="donut",colors:o=gy,size:a=180,activeName:r,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=0,s=e.map((d,l)=>{let c=i;return i+=d.percent,`${o[l%o.length]} ${c}% ${i}%`});return jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsx(Box,{sx:{width:a,height:a,borderRadius:"50%",background:`conic-gradient(${s.join(", ")})`,position:"relative",flexShrink:0},children:t==="donut"&&jsx(Box,{sx:{position:"absolute",inset:Math.round(a*.18),bgcolor:"background.paper",borderRadius:"50%"}})}),jsx(Stack,{spacing:1,sx:{minWidth:180},children:e.map((d,l)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:r&&d.name!==r?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[l%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var gp=({effect:e,branches:t})=>{if(t.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=t.filter((r,n)=>n%2===0),a=t.filter((r,n)=>n%2===1);return jsxs(Stack,{spacing:1.5,children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(o.length,1)}, minmax(0, 1fr))`,gap:1},children:o.map(r=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:r.title}),r.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},r.title))}),jsxs(Box,{sx:{position:"relative",height:32},children:[jsx(Box,{sx:{position:"absolute",inset:"50% 0 auto 0",borderTop:"2px solid",borderColor:"primary.main"}}),jsx(Box,{sx:{position:"absolute",right:0,top:"calc(50% - 12px)",px:1,py:.25,borderRadius:1,bgcolor:"primary.main",color:"primary.contrastText"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:e})})]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(a.length,1)}, minmax(0, 1fr))`,gap:1},children:a.map(r=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:r.title}),r.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},r.title))})]})};var hp=({data:e,height:t=240})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=0,a=e.map(g=>{let f=g.type==="total"?0:o,u=g.type==="total"?g.value:o+g.value;return g.type!=="total"&&(o=u),{...g,start:f,end:u,delta:u-f}}),r=a.flatMap(g=>[g.start,g.end]),n=Math.min(...r,0),i=Math.max(...r,1),s=680,d=30,l=i-n||1,c=g=>t-d-(g-n)/l*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${s} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:s-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),a.map((g,f)=>{let u=(s-d*2)/a.length,h=Math.max(u*.55,8),w=d+f*u+(u-h)/2,p=c(Math.max(g.start,g.end)),k=c(Math.min(g.start,g.end)),m=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:w,y:p,width:h,height:Math.max(k-p,4),rx:6,fill:m}),jsx("text",{x:w+h/2,y:p-6,textAnchor:"middle",fill:"currentColor",fontSize:"11",children:g.end.toFixed(1)})]},g.name)})]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${a.length}, minmax(0, 1fr))`,gap:1},children:a.map(g=>jsx(Typography,{variant:"caption",noWrap:true,title:g.name,children:g.name},g.name))})]})};var $n=({apiKey:e,query:t,zoom:o=14,mapType:a="roadmap"})=>{let r=encodeURIComponent(t);return `https://www.google.com/maps/embed/v1/place?key=${encodeURIComponent(e)}&q=${r}&zoom=${o}&maptype=${a}`},HI=(e,t=360)=>{let o=$n(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var xp=({apiKey:e,query:t,embedUrl:o,zoom:a=14,mapType:r="roadmap",height:n=320})=>{let i=o||(e&&t?$n({apiKey:e,query:t,zoom:a,mapType:r}):"");return i?jsxs(Box,{children:[jsx(Box,{component:"iframe",src:i,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:n,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:i,target:"_blank",rel:"noreferrer",children:"Google Maps"})]})]}):jsx(Box,{children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Google Map requires `embedUrl` or (`apiKey` + `query`)."})})};var ji=({keyword:e,location:t,src:o="orbcafe-ui"})=>{if(t){let a=encodeURIComponent(t.name||e||"Location");return `https://uri.amap.com/marker?position=${t.lng},${t.lat}&name=${a}&src=${encodeURIComponent(o)}&coordinate=gaode&callnative=0`}return e?`https://uri.amap.com/search?keyword=${encodeURIComponent(e)}&src=${encodeURIComponent(o)}&callnative=0`:"https://uri.amap.com/search?keyword=%E5%8C%97%E4%BA%AC&src=orbcafe-ui&callnative=0"};var Sp=({keyword:e,location:t,embedUrl:o,height:a=320})=>{let r=o||ji({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0});return jsxs(Box,{children:[jsx(Box,{component:"iframe",src:r,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:a,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:r,target:"_blank",rel:"noreferrer",children:"AMap"})]})]})};var wp=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:a})=>{let{t:r}=ee();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(Vi,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsx(On,{data:e,orientation:"horizontal",activeName:a?.filters?.primaryDimension,onItemClick:n=>a?.onPrimaryDimensionClick?.(n.name)})}),jsx(Vi,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsx(On,{data:t,orientation:"vertical",valueSuffix:"%",activeName:a?.filters?.secondaryDimension,onItemClick:n=>a?.onSecondaryDimensionClick?.(n.name)})}),jsx(Vi,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsx(Ki,{data:o,variant:"donut",activeName:a?.filters?.status,onItemClick:n=>a?.onStatusClick?.(n.name)})})]})};var Qt=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var Zs=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var Ey=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],Fy=["zh","en","de","fr","ja","ko"],Ip=({open:e,onClose:t,value:o,onSaveAll:a,modelOptions:r=Ey,promptLangOptions:n=Fy,analysisTemplateOptions:i=[],responseTemplateOptions:s=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:l})=>{let[c,g]=useState(o),[f,u]=useState(d||""),[h,w]=useState(l||""),[p,k]=useState(false);useEffect(()=>{e&&(g(o),u(d||""),w(l||""));},[e,o,d,l]);let m=(b,v)=>{g(B=>({...B,[b]:v}));},y=async()=>{if(a)try{k(!0),await a({settings:c,analysisTemplateId:f||void 0,responseTemplateId:h||void 0});}finally{k(false);}};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"lg",children:[jsxs(DialogTitle,{sx:{pr:7,pb:2.2},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800},children:"AI Settings"}),jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:"Configure LLM settings and editable agent prompts by language."}),jsx(IconButton,{onClick:t,sx:{position:"absolute",right:12,top:12},children:jsx(oh,{})})]}),jsx(DialogContent,{sx:{pt:"18px !important"},children:jsxs(Stack,{spacing:2.2,children:[jsxs(Box,{sx:{mt:.8,display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"}},children:[jsx(Box,{children:jsx(Qt,{size:"small",value:c.baseUrl,onChange:b=>m("baseUrl",b.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(Qt,{size:"small",type:"password",value:c.apiKey,onChange:b=>m("apiKey",b.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(Qt,{size:"small",value:c.model,onChange:b=>m("model",b.target.value),fullWidth:true,select:true,label:"Model",children:r.map(b=>jsx(MenuItem,{value:b,children:b},b))})}),jsx(Box,{children:jsx(Qt,{size:"small",value:c.promptLang,onChange:b=>m("promptLang",b.target.value),fullWidth:true,select:true,label:"Prompt Lang",children:n.map(b=>jsx(MenuItem,{value:b,children:b},b))})})]}),jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:[jsxs(Qt,{size:"small",value:f,onChange:b=>u(b.target.value),fullWidth:true,select:true,label:"Analysis Template",children:[jsx(MenuItem,{value:"",children:"Default"}),i.map(b=>jsx(MenuItem,{value:b.id,children:b.label},b.id))]}),jsx(Zs,{multiline:true,minRows:8,value:c.analysisPrompt,onChange:b=>m("analysisPrompt",b.target.value),fullWidth:true,label:"Analysis Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}}),jsxs(Qt,{size:"small",value:h,onChange:b=>w(b.target.value),fullWidth:true,select:true,label:"Response Template",children:[jsx(MenuItem,{value:"",children:"Default"}),s.map(b=>jsx(MenuItem,{value:b.id,children:b.label},b.id))]}),jsx(Zs,{multiline:true,minRows:8,value:c.responsePrompt,onChange:b=>m("responsePrompt",b.target.value),fullWidth:true,label:"Response Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}})]})]})}),jsxs(DialogActions,{sx:{px:3,pb:2.5,pt:1.2,gap:1},children:[jsx(Button,{variant:"outlined",onClick:t,children:"Cancel"}),jsx(Button,{variant:"contained",onClick:y,disabled:!a||p,children:"Save"})]})]})};var Ji=({open:e,onClose:t,model:o,tableContent:a,extraCharts:r,interaction:n,aiAssistant:i})=>{let{t:s}=ee(),[d,l]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,u]=useState(false),h=n?.enabled!==false&&!!n,w=i?.enabled!==false,p=n?.filters||{},k=!!(p.primaryDimension||p.secondaryDimension||p.status),m=i?.placeholder||"Ask AI to analyze data, create charts, or find insights...";useEffect(()=>{e&&l(i?.defaultPrompt||"");},[e,i?.defaultPrompt]);let y=i?.settings||{baseUrl:"/llm-api",apiKey:"",model:"doubao-lite",promptLang:"zh",analysisPrompt:"",responsePrompt:""},b=async()=>{let v=d.trim();if(!(!v||!i?.onSubmit))try{g(!0),await i.onSubmit(v,{filters:p,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:s("graph.records",{count:o.kpis.totalRecords})}),h&&p.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${p.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),h&&p.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${p.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),h&&p.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${p.status}`,onDelete:()=>n?.onClearFilter("status")}),h&&k&&jsx(Button,{size:"small",onClick:()=>n?.onClearAll(),children:"Clear"})]}),jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{width:{xs:"100%",lg:"auto"}},children:[w&&jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minWidth:{xs:0,lg:520},flex:{xs:1,lg:"0 0 auto"}},children:[jsx(IconButton,{size:"small",onClick:i?.onVoiceInput,children:jsx(Hy,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,onChange:v=>l(v.target.value),onKeyDown:v=>{v.key==="Enter"&&(v.preventDefault(),b());},placeholder:m,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:b,disabled:c||!d.trim(),children:jsx($y,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>u(true),children:jsx(Wy,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(oh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(ip,{kpis:o.kpis}),jsx(wp,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:p,onPrimaryDimensionClick:v=>n?.onPrimaryDimensionClick(v),onSecondaryDimensionClick:v=>n?.onSecondaryDimensionClick(v),onStatusClick:v=>n?.onStatusClick(v)}:void 0}),r,a]}),jsx(Ip,{open:f,onClose:()=>u(false),value:y,onSaveAll:i?.onSaveAll,modelOptions:i?.modelOptions,promptLangOptions:i?.promptLangOptions,analysisTemplateOptions:i?.analysisTemplateOptions,responseTemplateOptions:i?.responseTemplateOptions,defaultAnalysisTemplateId:i?.defaultAnalysisTemplateId,defaultResponseTemplateId:i?.defaultResponseTemplateId})]})})};var Va={primaryDimension:["Client","Customer","Category","Project"],secondaryDimension:["Person","Consultant","Owner","Name"],status:["Status","state"],date:["Date","WorkDate","CreatedAt"],description:["Description","Task","Title","Memo"],reportHours:["Report_Hour","Report Hours","Hours","ReportHours"],billableHours:["Billable_Hour","Billable Hours","BillableHours"],amount:["Amount","Billable_Amount","Total_Amount","Value"]},Uy=5,Rp=e=>e.toLowerCase().replace(/[\s_-]/g,""),Oa=(e,t,o,a)=>{if(t)return t;if(e.length===0)return a;let r=Object.keys(e[0]),n=new Map(r.map(i=>[Rp(i),i]));for(let i of o){let s=n.get(Rp(i));if(s)return s}return r[0]||a},yo=e=>{if(typeof e=="number")return Number.isFinite(e)?e:0;if(typeof e=="string"){let t=Number(e.replace(/,/g,"").trim());return Number.isFinite(t)?t:0}return 0},_t=(e,t)=>e==null||e===""?t:String(e),Ky=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let s=_t(i[t],r);n.set(s,(n.get(s)||0)+yo(i[o]));}),Array.from(n.entries()).map(([i,s])=>({name:i,value:s})).sort((i,s)=>s.value-i.value).slice(0,a)},qy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let d=_t(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=yo(s[o]),l.billable+=yo(s[a]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,value:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>s.value-d.value).slice(0,r)},_y=(e,t,o)=>{let a=e.length;if(a===0)return [];let r=new Map;return e.forEach(n=>{let i=_t(n[t],o);r.set(i,(r.get(i)||0)+1);}),Array.from(r.entries()).map(([n,i])=>({name:n,value:i,percent:i/a*100}))},Dp=(e,t,o)=>{let a=new Map;return e.forEach(r=>{let n=_t(r[t],"N/A");a.set(n,(a.get(n)||0)+yo(r[o]));}),Array.from(a.entries()).sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,value:n}))},jy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let d=_t(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=yo(s[o]),l.billable+=yo(s[a]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>d.barValue-s.barValue).slice(0,r)},Zy=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let s=_t(i[t],r),d=_t(i[o],r),l=`${s}__${d}`;n.set(l,(n.get(l)||0)+yo(i[a]));}),Array.from(n.entries()).map(([i,s])=>{let[d,l]=i.split("__");return {x:d,y:l,value:s}})},Xy=(e,t,o)=>{let a=Dp(e,t,o),r=a.map(i=>({name:i.name,value:i.value,type:"delta"})),n=a.reduce((i,s)=>i+s.value,0);return [...r,{name:"Total",value:n,type:"total"}]},Yy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let d=_t(s[t],n),l=`${_t(s[o],n)} / ${_t(s[a],n)}`,c=i.get(d)||new Map;c.set(l,(c.get(l)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([s,d])=>({title:s,causes:Array.from(d.entries()).sort((l,c)=>c[1]-l[1]).slice(0,r).map(([l,c])=>`${l} (${c})`)})).slice(0,6)},Qr=({rows:e,config:t})=>{let{t:o}=ee(),a=o("graph.unassigned"),r=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:Oa(e,c?.primaryDimension,Va.primaryDimension,"Category"),secondaryDimension:Oa(e,c?.secondaryDimension,Va.secondaryDimension,"Owner"),status:Oa(e,c?.status,Va.status,"Status"),date:Oa(e,c?.date,Va.date,"Date"),description:Oa(e,c?.description,Va.description,"Description"),reportHours:Oa(e,c?.reportHours,Va.reportHours,"ReportHours"),billableHours:Oa(e,c?.billableHours,Va.billableHours,"BillableHours"),amount:Oa(e,c?.amount,Va.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=yo(c[r.reportHours]),u=yo(c[r.billableHours]),h=yo(c[r.amount]),w=f>0?u/f*100:0;return {id:`graph-row-${g}`,Date:_t(c[r.date],""),Primary:_t(c[r.primaryDimension],a),Secondary:_t(c[r.secondaryDimension],a),Description:_t(c[r.description],""),ReportHours:f,BillableHours:u,Amount:h,Efficiency:w,Status:_t(c[r.status],a)}}),[e,r,a]),i=useMemo(()=>{let c=n.length,g=n.reduce((k,m)=>k+yo(m.ReportHours),0),f=n.reduce((k,m)=>k+yo(m.BillableHours),0),u=n.reduce((k,m)=>k+yo(m.Amount),0),h=g>0?f/g*100:0,w=t?.statusFlagValues||["flag","flagged","warning","risk"],p=n.filter(k=>w.includes(_t(k.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:u,flaggedCount:p}},[n,t?.statusFlagValues]),s=t?.topN||Uy,d=useMemo(()=>({billableByPrimary:Ky(n,"Primary","BillableHours",s,a),efficiencyBySecondary:qy(n,"Secondary","ReportHours","BillableHours",s,a),statusDistribution:_y(n,"Status",a),lineByDate:Dp(n,"Date","BillableHours"),comboByPrimary:jy(n,"Primary","ReportHours","BillableHours",s,a),heatmapPrimarySecondary:Zy(n,"Primary","Secondary","BillableHours",a),waterfallBillable:Xy(n,"Date","BillableHours"),fishboneStatusCauses:Yy(n,"Status","Primary","Secondary",3,a)}),[n,s,a]),l=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:r.date},{id:"Primary",label:r.primaryDimension},{id:"Secondary",label:r.secondaryDimension},{id:"Description",label:r.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:r.status}],rows:n}}),[d,t?.title,r,i,n,o]);return {fieldMapping:r,model:l}};var Jr=e=>String(e??"").trim(),tl=(e={})=>{let[t,o]=useState(e),a=useCallback((d,l)=>{o(c=>{let g=l?.trim();if(!g){let f={...c};return delete f[d],f}if(c[d]===g){let f={...c};return delete f[d],f}return {...c,[d]:g}});},[]),r=useCallback(d=>{o(l=>{if(!l[d])return l;let c={...l};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),s=useCallback((d,l)=>d.filter(c=>!(t.primaryDimension&&Jr(c[l.primaryDimension])!==Jr(t.primaryDimension)||t.secondaryDimension&&Jr(c[l.secondaryDimension])!==Jr(t.secondaryDimension)||t.status&&Jr(c[l.status])!==Jr(t.status))),[t]);return {filters:t,setFilter:a,clearFilter:r,clearAll:n,hasActiveFilters:i,applyRows:s}};var al=({variants:e,currentVariantId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=ee(),d=useTheme().palette.mode==="dark",l="0.85rem",c={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[g,f]=useState(false),[u,h]=useState(""),[w,p]=useState(false),[k,m]=useState(false),y=e.find(B=>B.id===t),b=()=>{h(y?.name||i("variant.newVariant")),p(y?.isDefault||false),m(y?.isPublic||false),f(true);},v=()=>{a({name:u,isDefault:w,isPublic:k,description:""}),f(false);};return jsxs(Box,{sx:{display:"flex",gap:1,alignItems:"center",width:"100%",maxWidth:"100%"},children:[jsx(Autocomplete,{size:"small",sx:{width:c,"& .MuiInputBase-root":{fontSize:l,bgcolor:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:l},"& .MuiAutocomplete-noOptions":{fontSize:l}},noOptionsText:jsx(Typography,{sx:{fontSize:l},children:i("variant.noOptions")}),options:e,getOptionLabel:B=>B.name+(B.isDefault?` (${i("variant.defaultSuffix")})`:""),value:y||null,onChange:(B,M)=>{M&&o(M);},renderInput:B=>jsx(TextField,{...B,variant:"outlined",size:"small",InputProps:{...B.InputProps,sx:{fontSize:l,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(B,M)=>jsx("li",{...B,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:l},children:M.name}),M.isDefault&&jsx(cb,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:b,size:"small",color:"primary",children:jsx(Xp,{fontSize:"small"})})}),jsxs(Dialog,{open:g,onClose:()=>f(false),children:[jsx(DialogTitle,{children:i("variant.saveView")}),jsxs(DialogContent,{children:[jsx(TextField,{autoFocus:true,margin:"dense",label:i("variant.viewName"),fullWidth:true,variant:"outlined",value:u,onChange:B=>h(B.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w,onChange:B=>p(B.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:k,onChange:B=>m(B.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:v,variant:"contained",children:i("common.save")})]})]})]})};var Np=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:a,layoutRefs:r,onLoad:n,variantService:i,serviceUrl:s,onError:d,onSuccess:l,currentVariantId:c,onVariantChange:g})=>{let{t:f}=ee(),[u,h]=useState([]),[w,p]=useState(""),k=`orbcafe.variants.${e}.${t}`,m=c!==void 0?c:w,y=D=>{c===void 0&&p(D),g&&g(D);},b=useCallback(()=>{try{let D=localStorage.getItem(k);if(!D)return [];let T=JSON.parse(D);return Array.isArray(T)?T:[]}catch{return []}},[k]),v=useCallback(D=>{try{localStorage.setItem(k,JSON.stringify(D));}catch{}},[k]),B=useCallback(D=>{h(D);let T=D.find(P=>P.isDefault);T&&!m&&(y(T.id),n(T));},[m,n,y]),M=useCallback(async()=>{if(!e)return [];try{let D=[];if(i)D=await i.getVariants(e,t);else if(s){let T=await fetch(`${s}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!T.ok)throw new Error(f("variant.toast.fetchFailed"));D=await T.json();}else D=b();return B(D),D}catch(D){console.error("Error fetching variants",D);let T=b();return B(T),d&&d(f("variant.toast.fetchFailed")),T}},[e,t,i,s,b,B,d,f]);return useEffect(()=>{M();},[e,t]),jsx(al,{variants:u,currentVariantId:m,onLoad:D=>{y(D.id),n(D);},onSave:async D=>{let T=Date.now().toString(),P;try{let A=D.scope||"Both",W=u.find(ne=>ne.name===D.name);T=W?W.id:Date.now().toString();let z=[];if(W&&(Array.isArray(W.filters)?z=[...W.filters]:W.filters&&(z=[{scope:"default",filters:W.filters}])),A==="Search"||A==="Both"){let ne=(Array.isArray(o),o);if(ne)if(Array.isArray(ne)&&ne.length>0&&ne[0].scope)ne.forEach(ae=>{let _=z.findIndex(Ue=>Ue.scope===ae.scope);_>=0?z[_]=ae:z.push(ae);});else {let ae={scope:t,filters:ne},_=z.findIndex(Ue=>Ue.scope===t);_>=0?z[_]=ae:z.push(ae);}}let Q=W?.layout||{},re=[];if(W&&Array.isArray(W.layoutRefs)&&(re=[...W.layoutRefs]),A==="Layout"||A==="Both")if(r&&r.length>0)r.forEach(ne=>{let ae=re.findIndex(_=>_.tableKey===ne.tableKey);ae>=0?re[ae]=ne:re.push(ne);});else {let ne={tableKey:t,layoutId:a||null},ae=re.findIndex(_=>_.tableKey===t);ae>=0?re[ae]=ne:re.push(ne);}if(P={appId:e,tableKey:t,...D,scope:A,id:T,createdAt:new Date().toISOString(),filters:z,layout:Q,layoutRefs:re},i)await i.saveVariant(P,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let ae=u.some(_=>_.id===T)?u.map(_=>_.id===T?P:_):[...u,P];h(ae),v(ae);}l&&l(f("variant.toast.saveSuccess")),(i||s)&&await M(),y(T),n(P);}catch(A){console.error("Error saving variant",A);let z=u.some(Q=>Q.id===T)?u.map(Q=>Q.id===T?P:Q):[...u,P];h(z),v(z),y(T),n(P),d&&d(f("variant.toast.saveFailed"));}},onDelete:async D=>{try{if(i)await i.deleteVariant(D);else if(s){if(!(await fetch(`${s}/api/variants/${D}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let T=u.filter(P=>P.id!==D);h(T),v(T);}m===D&&y(""),(i||s)&&M(),l&&l(f("variant.toast.deleteSuccess"));}catch(T){console.error("Error deleting variant",T);let P=u.filter(A=>A.id!==D);h(P),v(P),m===D&&y(""),d&&d(f("variant.toast.deleteFailed"));}},onSetDefault:async D=>{try{let T=u.find(A=>A.id===D);if(!T)return;let P={appId:e,tableKey:t,...T,isDefault:!0};if(i)await i.setDefaultVariant(D,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(P)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let A=u.map(W=>({...W,isDefault:W.id===D}));h(A),v(A);}(i||s)&&await M(),l&&l(f("variant.toast.defaultSuccess"));}catch(T){console.error("Error setting default variant",T);let P=u.map(A=>({...A,isDefault:A.id===D}));h(P),v(P),d&&d(f("variant.toast.defaultFailed"));}}})};na.extend(Ib);na.extend(Rb);var Db=[null,null],ec="0.85rem",Mb={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Ab=styled(PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:o,isEnd:a,isHovered:r})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...r&&!t&&!o&&!a&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...o&&{borderRadius:"50% 0 0 50%",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...a&&{borderRadius:"0 50% 50% 0",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...o&&a&&{borderRadius:"50%"}})),Hp=({label:e,value:t=Db,onChange:o})=>{let{t:a,locale:r}=ee(),n=Mb[r]||"en",i=e||a("dateRange.label"),[s,d]=useState(null),[l,c]=useState(t),[g,f]=useState("start"),[u,h]=useState(null),[w,p]=useState((t[0]||na()).locale(n)),k=St__default.useRef(t);useEffect(()=>{let[T,P]=t,[A,W]=k.current,z=ne=>ne&&typeof ne.isSame=="function",Q=!(T===null&&A===null||z(T)&&z(A)&&T.isSame(A,"day")),re=!(P===null&&W===null||z(P)&&z(W)&&P.isSame(W,"day"));(Q||re)&&(c(t),t[0]&&z(t[0])&&p(t[0].locale(n))),k.current=t;},[t,n]);let m=T=>{d(T.currentTarget);},y=()=>{d(null),f("start"),h(null);},b=!!s,v=T=>{if(!T)return;let P=[...l];if(g==="start")P=[T,null],f("end");else {let A=P[0];A&&T.isBefore(A)?(P=[T,null],f("end")):(P=[A,T],f("start"));}c(P);},B=T=>{let P=na().locale(n),A=[null,null];switch(T){case "today":A=[P,P];break;case "week":A=[P.startOf("week"),P.endOf("week")];break;case "month":A=[P.startOf("month"),P.endOf("month")];break}c(A),f("start"),p(P);},M=()=>{c([null,null]),f("start"),p(na().locale(n));},S=()=>{o&&o(l),y();},E=()=>{c(t),f("start"),y();},I=useCallback(T=>{let{day:P,...A}=T,[W,z]=l,Q=W?P.isSame(W,"day"):false,re=z?P.isSame(z,"day"):false,ne=W&&z?P.isBetween(W,z,"day","()"):false,ae=false;return g==="end"&&W&&!z&&u&&P.isAfter(W,"day")&&P.isBefore(u.add(1,"day"),"day")&&(ae=true),jsx(Ab,{...A,day:P,disableMargin:true,isStart:Q,isEnd:re,isInRange:ne||ae,onMouseEnter:()=>h(P)})},[l,g,u]),C=T=>T?T.locale(n).format("YYYY-MM-DD"):"",D=T=>T?T.locale(n).format("ll"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:l[0]?`${C(l[0])} - ${C(l[1])}`:"",onClick:m,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:ec}},InputProps:{readOnly:true,sx:{fontSize:ec,"& .MuiOutlinedInput-input":{fontSize:ec},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(l[0]||l[1])&&jsx(IconButton,{size:"small",onClick:T=>{T.stopPropagation(),M();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(th,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:m,sx:{padding:"2px"},children:jsx(wb,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxs(Popover,{open:b,anchorEl:s,onClose:y,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,minWidth:320}}},children:[jsx(Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:2,justifyContent:"space-between",children:[jsxs(Box,{sx:{p:1,border:1,borderColor:g==="start"?"primary.main":"divider",borderRadius:1,bgcolor:g==="start"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>f("start"),children:[jsx(Typography,{variant:"caption",color:"text.secondary",display:"block",children:a("dateRange.startDate")}),jsx(Typography,{variant:"body2",fontWeight:500,children:l[0]?D(l[0]):a("dateRange.select")})]}),jsx(Pb,{color:"action",fontSize:"small"}),jsxs(Box,{sx:{p:1,border:1,borderColor:g==="end"?"primary.main":"divider",borderRadius:1,bgcolor:g==="end"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>{l[0]&&f("end");},children:[jsx(Typography,{variant:"caption",color:"text.secondary",display:"block",children:a("dateRange.endDate")}),jsx(Typography,{variant:"body2",fontWeight:500,children:l[1]?D(l[1]):a("dateRange.select")})]})]})}),jsx(Box,{sx:{p:2,pb:0},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsx(Chip,{label:a("dateRange.today"),onClick:()=>B("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisWeek"),onClick:()=>B("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisMonth"),onClick:()=>B("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:w,onMonthChange:p,onYearChange:p,onChange:v,slots:{day:I},views:["day"],showDaysOutsideCurrentMonth:true,sx:{m:0}})}),jsx(Divider,{}),jsxs(Stack,{direction:"row",justifyContent:"flex-end",spacing:1,sx:{p:2},children:[jsx(Button,{size:"small",onClick:E,color:"inherit",children:a("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:S,children:a("common.done")})]})]})]})};var ll={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},$b={equals:"smartFilter.operator.equals",contains:"smartFilter.operator.contains",notContains:"smartFilter.operator.notContains",wildcard:"smartFilter.operator.wildcard","=":"smartFilter.operator.equals","!=":"smartFilter.operator.notEquals",">":"smartFilter.operator.greaterThan","<":"smartFilter.operator.lessThan",">=":"smartFilter.operator.greaterOrEqual","<=":"smartFilter.operator.lessOrEqual",between:"smartFilter.operator.between"},Gb=["equals","contains","notContains","wildcard"],Gp=["=","!=",">","<",">=","<=","between"],ht="0.85rem",Ub=({field:e,value:t,onChange:o})=>{let{t:a}=ee(),[r,n]=useState(null),[i,s]=useState(null),[d,l]=useState(""),[c,g]=useState(""),[f,u]=useState(false),[h,w]=useState(""),[p,k]=useState("");useEffect(()=>{let C=setTimeout(()=>{k(h);},1e3);return ()=>clearTimeout(C)},[h]);let m=t?.operator||(e.type==="number"?"=":"equals"),y=t?.value,b=C=>{let D=$b[C];return D?a(D):C},v=C=>{n(C.currentTarget);},B=C=>{o({...t,operator:C,value:y}),n(null);},M={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:ht}},InputProps:{sx:{fontSize:ht}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ht,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},S=e.type||"text";if(S==="date"){let D=(T=>{if(!T)return [null,null];if(Array.isArray(T)&&T.length===2){let P=T[0]?na.isDayjs(T[0])?T[0]:na(T[0]):null,A=T[1]?na.isDayjs(T[1])?T[1]:na(T[1]):null;return [P,A]}return na.isDayjs(T)||typeof T=="string"?[na.isDayjs(T)?T:na(T),null]:[null,null]})(y);return jsx(Hp,{label:e.label,value:D,onChange:T=>o({value:T,operator:"between"})})}if(S==="number"&&m==="between"){let C=()=>{o({value:[d,c],operator:"between"}),s(null);},D=Array.isArray(y)?`${y[0]||""} - ${y[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...M,label:e.label,value:D,placeholder:a("smartFilter.minMaxPlaceholder"),InputProps:{...M.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:b("between"),children:jsx(IconButton,{size:"small",onClick:v,sx:{width:24,height:24,fontSize:ht},children:ll.between})})}),readOnly:true},onClick:T=>s(T.currentTarget)}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ht,minHeight:"auto",py:.5}}},children:Gp.map(T=>jsxs(MenuItem,{selected:T===m,onClick:()=>B(T),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ll[T]}),jsx(ListItemText,{primary:b(T),primaryTypographyProps:{fontSize:ht}})]},T))}),jsx(Popover,{open:!!i,anchorEl:i,onClose:()=>s(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxs(Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsx(TextField,{size:"small",label:a("smartFilter.min"),type:"number",value:d,onChange:T=>l(T.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ht}},InputProps:{sx:{fontSize:ht}}}),jsx(Wb,{color:"action"}),jsx(TextField,{size:"small",label:a("smartFilter.max"),type:"number",value:c,onChange:T=>g(T.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ht}},InputProps:{sx:{fontSize:ht}}}),jsx(Button,{variant:"contained",size:"small",onClick:C,children:a("common.ok")})]})})]})}if(e.isValueHelp||S==="value-help"){let C=e.valueHelp?.mode||"single";return jsx(_d,{...M,...e.valueHelp,label:e.label,placeholder:e.placeholder||e.valueHelp?.placeholder,value:y??(C==="multiple"?[]:null),mode:C,onChange:D=>o({value:D,operator:C==="multiple"?"anyOf":"equals"})})}if(S==="select")return jsxs(TextField,{...M,select:true,label:e.label,value:y||"",onChange:C=>o({...t,value:C.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:a("common.none")})}),e.options?.map(C=>jsx(MenuItem,{value:C.value,children:C.label},C.value))]});if(S==="multi-select"){let C=Array.isArray(y)?y:[],D=e.options?.filter(T=>T.label.toLowerCase().includes(p.toLowerCase()))||[];return jsxs(TextField,{...M,select:true,label:e.label,value:C,onChange:T=>o({...t,value:T.target.value,operator:"anyOf"}),SelectProps:{...M.SelectProps,multiple:true,onClose:()=>{w(""),k("");},renderValue:T=>{if(!Array.isArray(T)||T.length===0)return jsx("em",{children:a("common.none")});let P=W=>e.options?.find(z=>z.value===W)?.label||W,A=T.map(P);return A.length>2?`${A.slice(0,2).join(", ")} +${A.length-2}`:A.join(", ")}},children:[jsx(ListSubheader,{children:jsx(TextField,{size:"small",autoFocus:true,placeholder:a("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Gd,{fontSize:"small"})}),sx:{fontSize:ht}},value:h,onChange:T=>w(T.target.value),onKeyDown:T=>{T.key!=="Escape"&&T.stopPropagation();},onClick:T=>T.stopPropagation()})}),D.length>0?D.map(T=>jsxs(MenuItem,{value:T.value,children:[jsx(Checkbox,{checked:C.indexOf(T.value)>-1,size:"small"}),jsx(ListItemText,{primary:T.label,primaryTypographyProps:{fontSize:ht}})]},T.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:a("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:ht}})})]})}let E=S==="number"?Gp:Gb,I=f||y!==void 0&&y!==""&&y!==null||!!r;return jsxs(Fragment,{children:[jsx(TextField,{...M,label:e.label,sx:{minWidth:"120px"},value:y||"",type:S==="number"?"number":"text",onChange:C=>o({...t,value:C.target.value,operator:m}),onFocus:()=>u(true),onBlur:()=>u(false),InputProps:{...M.InputProps,startAdornment:I?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:b(m),children:jsx(IconButton,{size:"small",onClick:v,onMouseDown:C=>C.preventDefault(),sx:{width:24,height:24,fontSize:ht,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:ll[m]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(Gd,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ht,minHeight:"auto",py:.5}}},children:E.map(C=>jsxs(MenuItem,{selected:C===m,onClick:()=>B(C),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ll[C]}),jsx(ListItemText,{primary:b(C),primaryTypographyProps:{fontSize:ht}})]},C))})]})},ha=({fields:e,filters:t,onFilterChange:o,variants:a=[],currentVariantId:r,onVariantLoad:n,onVariantSave:i,onVariantDelete:s,onVariantSetDefault:d,onSearch:l,loading:c=false,appId:g,tableKey:f,currentLayout:u,currentLayoutId:h,layoutRefs:w,variantService:p,serviceUrl:k})=>{let{t:m}=ee(),[y,b]=useState(true),[v,B]=useState(null),[M,S]=useState(e.filter(D=>!D.hidden).map(D=>D.id)),E=(D,T)=>{o({...t,[D]:T});},I=D=>{M.includes(D)?S(M.filter(T=>T!==D)):S([...M,D]);};return jsxs(Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxs(Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[g?jsx(Np,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:M},currentLayout:u,currentLayoutId:h,layoutRefs:w,onLoad:D=>{if(!D.filters)return;let T=null;if(Array.isArray(D.filters)){let P=f||"default",A=D.filters.find(W=>W.scope===P);T=A?A.filters:null;}else T=D.filters;T&&(T.values||T.visibleFields?(T.visibleFields&&Array.isArray(T.visibleFields)&&S(T.visibleFields),T.values&&o(T.values)):o(T)),n&&n(D);},variantService:p,serviceUrl:k,currentVariantId:r}):jsx(al,{variants:a,currentVariantId:r,onLoad:n,onSave:D=>{i&&i({...D,filters:{values:t,visibleFields:M}});},onDelete:s,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:m("smartFilter.addFilters"),children:jsx(Button,{onClick:D=>B(D.currentTarget),size:"small",color:"primary",startIcon:jsx(Vb,{fontSize:"small"}),sx:{textTransform:"none",fontSize:ht,whiteSpace:"nowrap",minWidth:"fit-content"},children:m("smartFilter.adaptFilters")})}),jsx(Button,{variant:"contained",size:"small",onClick:l,disabled:c,sx:{minWidth:"52px",fontWeight:"bold",fontSize:ht},children:m(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:v,open:!!v,onClose:()=>B(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:ht,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:m("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:ht}})}),jsx(Divider,{}),e.map(D=>jsxs(MenuItem,{onClick:()=>I(D.id),children:[jsx(Checkbox,{checked:M.includes(D.id),size:"small"}),jsx(ListItemText,{primary:D.label,primaryTypographyProps:{fontSize:ht}})]},D.id))]})]})]}),jsx(Collapse,{in:y,children:jsx(Box,{sx:{px:2,pb:2},children:jsx(Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(D=>M.includes(D.id)).map(D=>jsx(Grid,{size:1,children:jsx(Ub,{field:D,value:t[D.id]||{value:"",operator:D.type==="number"?"=":"equals"},onChange:T=>E(D.id,T)})},D.id))})})}),jsx(Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsx(IconButton,{size:"small",onClick:()=>b(!y),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:20,height:20,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:y?jsx(Ob,{sx:{fontSize:16},color:"action"}):jsx(Uh,{sx:{fontSize:16},color:"action"})})})]})};var Yp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=ee(),[s,d]=useState(null),[l,c]=useState(false),[g,f]=useState(""),[u,h]=useState(""),[w,p]=useState({isDefault:false,isPublic:false}),k=e.find(M=>M.id===t),m=M=>{d(M.currentTarget);},y=()=>{d(null);},b=M=>{o(M),y();},v=()=>{f(""),h(""),p({isDefault:false,isPublic:false}),c(true),y();},B=()=>{g.trim()&&(a({name:g,description:u,...w}),c(false));};return jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:i("layout.saveLayout"),children:jsx(IconButton,{onClick:v,color:"primary",size:"small",children:jsx(Xp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:m,color:k?"primary":"default",children:jsx(ox,{})})}),jsxs(Menu,{anchorEl:s,open:!!s,onClose:y,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"caption",children:i("layout.selectLayout")})}),jsxs(MenuItem,{onClick:v,children:[jsx(ListItemIcon,{children:jsx(Xp,{fontSize:"small"})}),jsx(ListItemText,{children:i("layout.saveCurrentLayout")})]}),jsx(Divider,{}),e.length===0&&jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"body2",color:"text.secondary",children:i("layout.noSavedLayouts")})}),e.map((M,S)=>jsx(MenuItem,{onClick:()=>b(M),selected:M.id===t,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxs(Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsx(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsx(Typography,{variant:"body2",fontWeight:M.id===t?"bold":"normal",noWrap:true,children:M.name})}),M.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:M.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:E=>E.stopPropagation(),children:[jsx(Tooltip,{title:M.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:E=>{E.stopPropagation(),n(M.id);},children:M.isDefault?jsx(cb,{fontSize:"small",color:"warning"}):jsx(tx,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:E=>{E.stopPropagation(),r(M.id);},children:jsx(Th,{fontSize:"small"})})})]})]})},M.id||S))]}),jsxs(Dialog,{open:l,onClose:()=>c(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:i("layout.saveLayout")}),jsx(DialogContent,{children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsx(TextField,{label:i("layout.layoutName"),value:g,onChange:M=>f(M.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(M=>M.name===g)&&jsx(Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:i("layout.warningOverwrite")}),jsx(TextField,{label:i("layout.layoutDescription"),value:u,onChange:M=>h(M.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isDefault,onChange:M=>p({...w,isDefault:M.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isPublic,onChange:M=>p({...w,isPublic:M.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:B,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var pl=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:a,targetLayoutId:r,activeLayoutId:n,serviceUrl:i,onError:s,onSuccess:d})=>{let{t:l}=ee(),[c,g]=useState([]),[f,u]=useState(""),h=`orbcafe.layouts.${e}.${t}`,w=S=>({id:S.layoutId,name:S.name,description:S.description??"",isDefault:!!S.isDefault,isPublic:!!S.isPublic,createdAt:S.createdAt??new Date().toISOString(),layoutData:S.layout??{}}),p=S=>({appId:e,tableKey:t,layoutId:S.id,name:S.name,description:S.description??"",isDefault:!!S.isDefault,isPublic:!!S.isPublic,createdAt:S.createdAt,layout:S.layoutData}),k=useCallback(()=>{try{let S=localStorage.getItem(h);if(!S)return [];let E=JSON.parse(S);return Array.isArray(E)?E:[]}catch{return []}},[h]),m=useCallback(S=>{try{localStorage.setItem(h,JSON.stringify(S));}catch{}},[h]);useEffect(()=>{n!==void 0&&u(n);},[n]),useEffect(()=>{if(r&&c.length>0){let S=c.find(E=>E.id===r);S&&(u(S.id),a(S));}},[r,c,a]);let y=useCallback(async()=>{if(e){if(!i){let S=k();g(S);let E=S.find(I=>I.isDefault);E&&!f&&!r&&(u(E.id),a(E));return}try{let S=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!S.ok)throw new Error("LAYOUT_FETCH_FAILED");let I=(await S.json()).map(w);g(I);let C=I.find(D=>D.isDefault);C&&!f&&!r&&(u(C.id),a(C));}catch(S){console.error("Error fetching layouts",S);let E=k();g(E);let I=E.find(C=>C.isDefault);I&&!f&&!r&&(u(I.id),a(I)),s&&s(l("layout.toast.loadFallback"));}}},[e,t,i,s,f,a,r,k,l]);return useEffect(()=>{y();},[e,t]),jsx(Yp,{layouts:c,currentLayoutId:f,onLoad:S=>{u(S.id),a(S);},onSave:async S=>{let E=c.find(D=>D.name===S.name),I=E?E.id:Date.now().toString(),C={id:I,...S,createdAt:new Date().toISOString(),layoutData:o,isDefault:S.isDefault??false,isPublic:S.isPublic??false};if(!i){let T=c.some(P=>P.id===I)?c.map(P=>P.id===I?C:P):[...c,C];g(T),m(T),u(I),a(C),d&&d(l("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(p(C))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(l("layout.toast.saveSuccess")),await y(),u(I),a(C);}catch(D){console.error("Error saving layout",D);let P=c.some(A=>A.id===I)?c.map(A=>A.id===I?C:A):[...c,C];g(P),m(P),u(I),a(C),d&&d(l("layout.toast.saveLocalSuccess")),s&&s(l("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async S=>{if(!i){let E=c.filter(I=>I.id!==S);g(E),m(E),f===S&&u(""),d&&d(l("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(S)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===S&&u(""),d&&d(l("layout.toast.deleteSuccess")),await y();}catch(E){console.error("Error deleting layout",E);let I=c.filter(C=>C.id!==S);g(I),m(I),f===S&&u(""),d&&d(l("layout.toast.deleteLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async S=>{if(!i){let E=c.map(I=>({...I,isDefault:I.id===S}));g(E),m(E),d&&d(l("layout.toast.defaultLocalSuccess"));return}try{let E=c.find(C=>C.id===S);if(!E)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(p({...E,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(l("layout.toast.defaultSuccess")),await y();}catch(E){console.error("Error setting default",E);let I=c.map(C=>({...C,isDefault:C.id===S}));g(I),m(I),d&&d(l("layout.toast.defaultLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDefaultLocal"));}}})};var Jp=(e,t)=>{if(!e||!e.filters)return null;if(Array.isArray(e.filters)){let o=e.filters.find(r=>r.scope===t);if(o)return o.filters;let a=e.filters.find(r=>r.scope==="default");return a?a.filters:null}return typeof e.filters=="object"?e.filters:null},ul=(e,t)=>{if(!e)return {layout:null,layoutId:null};let o=null,a=null;if(Array.isArray(e.layoutRefs)){let r=e.layoutRefs.find(n=>n.tableKey===t);r&&(o=r.layoutId);}return !o&&e.layoutId&&(o=e.layoutId),e.layout&&typeof e.layout=="object"&&!Array.isArray(e.layout)&&(a=e.layout),{layoutId:o,layout:a}};function eu(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function rx(e,t){return e==="desc"?(o,a)=>eu(o,a,t):(o,a)=>-eu(o,a,t)}function nx(e,t){let o=e.map((a,r)=>[a,r]);return o.sort((a,r)=>{let n=t(a[0],r[0]);return n!==0?n:a[1]-r[1]}),o.map(a=>a[0])}var on=e=>{let t=useCallback(H=>{let Y=String(H?.label??H?.id??"").length*9+64,Pe=typeof H?.minWidth=="number"?H.minWidth:0;return Math.max(100,Pe,Y)},[]),o=useCallback(()=>(e.columns||[]).filter(H=>!!H?.numeric).map(H=>H.id),[e.columns]),[a,r]=useState(""),[n,i]=useState(e.order||"asc"),[s,d]=useState(e.orderBy||""),[l,c]=useState(e.page||0),[g,f]=useState(e.rowsPerPage||20),[u,h]=useState(e.selected||[]),[w,p]=useState(e.columns?e.columns.map(H=>H.id):[]),[k,m]=useState(e.showSummary||false),[y,b]=useState(()=>o()),[v,B]=useState([]),[M,S]=useState(new Set),[E,I]=useState(()=>{let H={};return (e.columns||[]).forEach($=>{H[$.id]=t($);}),H}),[C,D]=useState(null),[T,P]=useState(null),[A,W]=useState(null),[z,Q]=useState(null),[re,ne]=useState(false),[ae,_]=useState(""),[Ue,Ze]=useState("");useEffect(()=>{e.layout&&De(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&h(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&c(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&f(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let H=o();b($=>$.filter(Pe=>H.includes(Pe)));},[o]),useEffect(()=>{I(H=>{let $={...H};return (e.columns||[]).forEach(Y=>{$[Y.id]===void 0&&($[Y.id]=t(Y));}),$});},[e.columns,t]);let Oe=useMemo(()=>{let H=e.rows||[];return a&&(H=H.filter($=>Object.keys($).some(Y=>String($[Y]).toLowerCase().includes(a.toLowerCase())))),H},[e.rows,a]),ie=useMemo(()=>e.onSortChange||!s?Oe:nx(Oe,rx(n,s)),[Oe,n,s,e.onSortChange]),we=useCallback(H=>{if(v.length===0)return H.map(Ve=>({type:"row",data:Ve,id:Ve[e.rowKey||"id"]}));let $=[...H].sort((Ve,Ce)=>{for(let $e of v){if(Ve[$e]<Ce[$e])return -1;if(Ve[$e]>Ce[$e])return 1}return 0}),Y=(Ve,Ce=0)=>{if(Ce>=v.length)return Ve;let $e=v[Ce],R={},O=[];return Ve.forEach(U=>{let G=U[$e],te=`${$e}:${G}`;R[te]||(R[te]={key:te,field:$e,value:G,children:[],count:0,level:Ce},O.push(R[te])),R[te].children.push(U),R[te].count++;}),O.forEach(U=>{U.children&&(U.children=Y(U.children,Ce+1));}),O},Pe=Y($),Te=(Ve,Ce="")=>{let $e=[];return Ve.forEach(R=>{if(R.children){let O=Ce?`${Ce}>${R.key}`:R.key,U=M.has(O);$e.push({type:"group",id:O,field:R.field,value:R.value,level:R.level,count:R.count,isExpanded:U,childIds:(function G(te){let Re=[];return te.children.forEach(ze=>{ze.children?Re=Re.concat(G(ze)):Re.push(ze[e.rowKey||"id"]);}),Re})(R)}),U&&($e=$e.concat(Te(R.children,O)));}else $e.push({type:"row",data:R,id:R[e.rowKey||"id"],level:v.length});}),$e};return Te(Pe)},[v,M,e.rowKey]),Ae=useCallback(H=>{if(v.length===0)return [];let $=[...H].sort((Te,Ve)=>{for(let Ce of v){if(Te[Ce]<Ve[Ce])return -1;if(Te[Ce]>Ve[Ce])return 1}return 0}),Y=[],Pe=(Te,Ve,Ce)=>{if(Ve>=v.length)return;let $e=v[Ve],R=new Map;Te.forEach(O=>{let U=O[$e],G=R.get(U);G?G.push(O):R.set(U,[O]);}),R.forEach((O,U)=>{let G=`${$e}:${U}`,te=Ce?`${Ce}>${G}`:G;Y.push(te),Pe(O,Ve+1,te);});};return Pe($,0,""),Y},[v]),Ye=useMemo(()=>we(ie),[ie,we]),st=useMemo(()=>Ae(ie),[ie,Ae]),Z=useMemo(()=>{let H=(e.rows||[]).length;return typeof e.count=="number"&&e.count>H},[e.count,e.rows]),Ke=useMemo(()=>Z?Ye:g>0?Ye.slice(l*g,l*g+g):Ye,[Ye,l,g,Z]),xt=useMemo(()=>Z&&typeof e.count=="number"?e.count:Ye.length,[Ye.length,Z,e.count]),X=H=>{S($=>{let Y=new Set($);return Y.has(H)?Y.delete(H):Y.add(H),Y});},pe=H=>{let $=st.filter(Y=>Y===H||Y.startsWith(`${H}>`));S(Y=>{let Pe=new Set(Y);return $.forEach(Te=>Pe.add(Te)),Pe});},Be=H=>{S($=>{let Y=new Set($);return Array.from(Y).forEach(Pe=>{(Pe===H||Pe.startsWith(`${H}>`))&&Y.delete(Pe);}),Y});},Ee=H=>{if(!H){S(new Set);return}S(new Set(st));},qe=H=>{let $=st.filter(Y=>Y.startsWith(`${H}>`));return $.length===0?M.has(H):M.has(H)&&$.every(Y=>M.has(Y))},K=H=>{let $=s===H&&n==="asc",Y=s===H&&n==="desc";if(e.onSortChange){$?e.onSortChange(H,"desc"):Y?e.onSortChange("","asc"):e.onSortChange(H,"asc");return}$?(i("desc"),d(H)):Y?(i("asc"),d("")):(i("asc"),d(H));},ye=(H,$)=>{I(Y=>({...Y,[H]:$}));},be=H=>{if(H.target.checked){let $=Oe.map(Y=>Y[e.rowKey||"id"]);h($),e.onSelectionChange&&e.onSelectionChange($);return}h([]),e.onSelectionChange&&e.onSelectionChange([]);},xe=(H,$)=>{let Y=$[e.rowKey||"id"],Pe=u.indexOf(Y),Te=[];Pe===-1?Te=Te.concat(u,Y):Pe===0?Te=Te.concat(u.slice(1)):Pe===u.length-1?Te=Te.concat(u.slice(0,-1)):Pe>0&&(Te=Te.concat(u.slice(0,Pe),u.slice(Pe+1))),h(Te),e.onSelectionChange&&e.onSelectionChange(Te);},Qe=H=>{c(H),e.onPageChange&&e.onPageChange(H);},He=H=>{f(H),c(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(H);},qt=H=>{let $=w.indexOf(H),Y=[...w];$===-1?Y.push(H):Y.splice($,1),p(Y);},ao=H=>{let $=v.indexOf(H),Y=[...v];$===-1?Y.push(H):Y.splice($,1),B(Y);},ro=H=>{o().includes(H)&&b(Y=>Y.includes(H)?Y.filter(Pe=>Pe!==H):[...Y,H]);},uo=H=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:w,order:n,orderBy:s,grouping:v,columnWidths:E,showSummary:k,summaryColumns:y});},Et=H=>{let{layout:$,layoutId:Y}=ul(H,e.tableKey||"default");Y?(Ze(Y),_(Y)):(Ze(""),_("")),$&&($.visibleColumns&&p($.visibleColumns),$.order&&i($.order),$.orderBy&&d($.orderBy),$.grouping&&B($.grouping),$.columnWidths&&I($.columnWidths),$.showSummary!==void 0&&m(!!$.showSummary),Array.isArray($.summaryColumns)&&b($.summaryColumns));},De=H=>{let $=H?.layoutData||H?.layout||H||{};$.visibleColumns&&p($.visibleColumns),$.order&&i($.order),$.orderBy!==void 0&&d($.orderBy),$.grouping&&B($.grouping),$.columnWidths&&I($.columnWidths),$.showSummary!==void 0&&m(!!$.showSummary),Array.isArray($.summaryColumns)&&b($.summaryColumns),S(new Set),c(0),H?.id&&_(H.id),Ze("");};useEffect(()=>{e.layout&&Et({layout:e.layout});},[e.layout]);let he=H=>{H.preventDefault(),Q(z===null?{mouseX:H.clientX+2,mouseY:H.clientY-6}:null);},Tt=()=>{Q(null);},_e=useMemo(()=>{if(!k)return {};let H={};e.columns.forEach(Y=>{if(Y.numeric&&y.includes(Y.id)){let Pe=Oe.reduce((Te,Ve)=>{let Ce=parseFloat(Ve[Y.id]);return Te+(isNaN(Ce)?0:Ce)},0);H[Y.id]=Pe.toFixed(2);}else H[Y.id]="";});let $=e.columns.find(Y=>w.includes(Y.id));return $&&!$.numeric&&(H[$.id]="Total"),H},[Oe,e.columns,k,y,w]),Pt=()=>{if(!e.columns||!Oe)return;let H=e.columns.map(Ve=>Ve.label).join(","),$=Oe.map(Ve=>e.columns.map(Ce=>{let $e=Ve[Ce.id];return `"${($e==null?"":String($e)).replace(/"/g,'""')}"`}).join(",")).join(`
2
- `),Y=`data:text/csv;charset=utf-8,${H}
3
- ${$}`,Pe=encodeURI(Y),Te=document.createElement("a");Te.setAttribute("href",Pe),Te.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(Te),Te.click(),document.body.removeChild(Te);},mo=()=>{ne(true);},ia=()=>{ne(false);};return {isMobile:false,columns:e.columns,order:n,setOrder:i,orderBy:s,setOrderBy:d,filterText:a,setFilterText:r,visibleColumns:w,setVisibleColumns:p,showSummary:k,setShowSummary:m,summaryColumns:y,grouping:v,setGrouping:B,expandedGroups:M,setExpandedGroups:S,groupAnchorEl:T,setGroupAnchorEl:P,summaryAnchorEl:A,setSummaryAnchorEl:W,columnWidths:E,setColumnWidths:I,anchorEl:C,setAnchorEl:D,contextMenu:z,setContextMenu:Q,sensors:void 0,sortedAndFilteredRows:ie,visibleRows:Ke,summaryRow:_e,page:l,setPage:Qe,rowsPerPage:g,setRowsPerPage:He,totalDisplayCount:xt,selected:u,setSelected:h,isAllExpanded:st.length>0&&st.every(H=>M.has(H)),handleColumnResize:ye,handleRequestSort:K,handleSelectAllClick:be,handleClick:xe,toggleSummaryColumn:ro,handleDragEnd:()=>{},handleExport:Pt,handleContextMenu:he,handleCloseContextMenu:Tt,toggleColumnVisibility:qt,toggleGroupExpand:X,toggleGroupField:ao,handleToggleAll:Ee,handleExpandGroupRecursively:pe,handleCollapseGroupRecursively:Be,isGroupFullyExpanded:qe,handleLayoutLoad:De,handleVariantLoad:Et,handleLayoutSave:uo,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:w,order:n,orderBy:s,grouping:v,columnWidths:E,showSummary:k,summaryColumns:y},currentLayoutId:ae,layoutIdToLoad:Ue,onPageChange:Qe,onRowsPerPageChange:He,graphReportOpen:re,handleOpenGraphReport:mo,handleCloseGraphReport:ia}};var RM=e=>jsx(sx,{...e}),DM=e=>jsx(Ns,{...e}),MM=e=>jsx(lu,{...e}),AM=e=>jsx(Ah,{...e}),BM=e=>jsx(Bh,{...e}),Ua=e=>{let{t}=ee(),o="0.85rem",{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:p,rowKey:k,tableKey:m="default",graphReport:y,quickCreate:b,quickEdit:v,quickDelete:B,serviceUrl:M}=e,S=a||t("table.title.default"),{isMobile:E,columns:I,order:C,orderBy:D,filterText:T,setFilterText:P,visibleColumns:A,showSummary:W,setShowSummary:z,summaryColumns:Q,grouping:re,setGrouping:ne,expandedGroups:ae,groupAnchorEl:_,setGroupAnchorEl:Ue,summaryAnchorEl:Ze,setSummaryAnchorEl:Oe,columnWidths:ie,anchorEl:we,setAnchorEl:Ae,contextMenu:Ye,sensors:st,sortedAndFilteredRows:Z,summaryRow:Ke,visibleRows:xt,isAllExpanded:X,page:pe,setPage:Be,rowsPerPage:Ee,setRowsPerPage:qe,totalDisplayCount:K,setSelected:ye,handleColumnResize:be,handleRequestSort:xe,handleSelectAllClick:Qe,handleClick:He,toggleSummaryColumn:qt,handleDragEnd:ao,handleExport:ro,handleContextMenu:uo,handleCloseContextMenu:Et,toggleColumnVisibility:De,toggleGroupExpand:he,toggleGroupField:Tt,handleToggleAll:_e,handleExpandGroupRecursively:Pt,handleCollapseGroupRecursively:mo,isGroupFullyExpanded:ia,handleLayoutLoad:H,handleVariantLoad:$,handleLayoutSave:Y,effectiveAppId:Pe,currentLayoutData:Te,currentLayoutId:Ve,layoutIdToLoad:Ce,graphReportOpen:$e,handleOpenGraphReport:R,handleCloseGraphReport:O}=on(e),U=y?.enabled??false,G=U&&(y?.interaction?.enabled??true),te=tl(),Re=!!b?.enabled,ze=!!v?.enabled,le=!!B?.enabled,Ie=b?.fields,We=b?.excludeFields||[],vt=b?.initialValues||{},[je,gt]=St__default.useState(false),[It,no]=St__default.useState(false),[Rt,Ft]=St__default.useState({}),[Xt,Dt]=St__default.useState(false),[Xe,Eo]=St__default.useState(false),[_o,la]=St__default.useState({}),[or,jo]=St__default.useState(false),[ar,rr]=St__default.useState(false),Zo=u||It||Xe||ar,sa=St__default.useMemo(()=>{let N=[...I];if(Array.isArray(Ie)&&Ie.length>0){let oe=new Set(Ie);N=N.filter(J=>oe.has(J.id));}if(We.length>0){let oe=new Set(We);N=N.filter(J=>!oe.has(J.id));}return N.filter(oe=>!!oe?.id)},[I,We,Ie]),Aa=k||"id",Yt=St__default.useMemo(()=>{let N=new Set(i);return Z.filter(oe=>N.has(oe?.[Aa]))},[i,Z,Aa]),Fo=Yt.length===1?Yt[0]:null,ca=v?.fields,To=v?.excludeFields||[],Xo=v?.editableFields||[],nr=v?.nonEditableFields||[],Er=v?.primaryKeys?.length?v.primaryKeys:[Aa],Ba=St__default.useMemo(()=>{let N=[...I];if(Array.isArray(ca)&&ca.length>0){let oe=new Set(ca);N=N.filter(J=>oe.has(J.id));}if(To.length>0){let oe=new Set(To);N=N.filter(J=>!oe.has(J.id));}return N.filter(oe=>!!oe?.id)},[I,To,ca]),ir=St__default.useMemo(()=>new Set(Er),[Er]),da=St__default.useMemo(()=>new Set(Xo),[Xo]),io=St__default.useMemo(()=>new Set(nr),[nr]),Lo=St__default.useCallback(N=>da.size>0?da.has(N):!(io.has(N)||ir.has(N)),[da,io,ir]);St__default.useEffect(()=>{!$e&&te.hasActiveFilters&&te.clearAll();},[$e,te.hasActiveFilters,te.clearAll]);let Fr=()=>{let N={};sa.forEach(oe=>{N[oe.id]=vt[oe.id]??"";}),Ft(N),gt(true);},lr=()=>{It||gt(false);},Lr=(N,oe)=>{Ft(J=>({...J,[N]:oe}));},zr=async()=>{if(!b?.onSubmit){gt(false);return}try{no(!0),await b.onSubmit(Rt),gt(!1);}finally{no(false);}},Nr=()=>{if(!Fo)return;let N={};Ba.forEach(J=>{N[J.id]=Fo[J.id]??"";});let oe=v?.getInitialValues?{...N,...v.getInitialValues(Fo)}:N;la(oe),Dt(true);},go=()=>{Xe||Dt(false);},Vr=(N,oe)=>{la(J=>({...J,[N]:oe}));},Or=async()=>{if(Fo){if(!v?.onSubmit){Dt(false);return}try{Eo(!0),await v.onSubmit(_o,Fo),Dt(!1);}finally{Eo(false);}}},sr=()=>{Yt.length!==0&&jo(true);},pa=()=>{ar||jo(false);},Ea=async()=>{if(Yt.length===0){jo(false);return}if(!B?.onConfirm){jo(false),ye([]),s?.([]);return}try{rr(!0),await B.onConfirm(Yt),jo(!1),ye([]),s?.([]);}finally{rr(false);}},Fa=Z,{fieldMapping:x}=Qr({rows:Fa,config:{...y,title:y?.title||`${S} ${t("graph.reportTitle")}`}}),F=St__default.useMemo(()=>G?te.applyRows(Fa,x):Fa,[G,te.applyRows,Fa,x]),{model:L}=Qr({rows:F,config:{...y,title:y?.title||`${S} ${t("graph.reportTitle")}`,fieldMapping:x}}),q=L.table.columns.map(N=>({id:N.id,label:N.label,align:N.align||"left",minWidth:120,numeric:N.align==="right"})),ce=Pe?jsx(pl,{appId:Pe,tableKey:m,currentLayoutData:Te,onLayoutLoad:H,targetLayoutId:Ce,activeLayoutId:Ve,serviceUrl:M??p?.serviceUrl}):null,Se=jsxs(Fragment,{children:[jsx(Wr,{groupAnchorEl:_,setGroupAnchorEl:Ue,grouping:re,setGrouping:ne,columns:I,toggleGroupField:Tt}),jsx($r,{anchorEl:we,setAnchorEl:Ae,columns:I,visibleColumns:A,toggleColumnVisibility:De}),jsx(zi,{anchorEl:Ze,setAnchorEl:Oe,showSummary:W,setShowSummary:z,columns:I,summaryColumns:Q,toggleSummaryColumn:qt}),jsx(Ni,{contextMenu:Ye,handleCloseContextMenu:Et,columns:I,visibleColumns:A,toggleColumnVisibility:De})]});return E?jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[p&&jsx(ha,{fields:p.fields,filters:p.filters,onFilterChange:p.onFilterChange,onSearch:p.onSearch,variants:p.variants||[],currentVariantId:p.currentVariantId,onVariantLoad:p.onVariantLoad,onVariantSave:p.onVariantSave,onVariantDelete:p.onVariantDelete,onVariantSetDefault:p.onVariantSetDefault,appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:Te}],variantService:p.variantService,serviceUrl:M??p.serviceUrl}),jsx(ap,{title:S,loading:u,showSummary:W,setShowSummary:z,setAnchorEl:Ae,setSummaryAnchorEl:Oe,filterText:T,setFilterText:P,sortedAndFilteredRows:Z,selected:i,columns:I,visibleColumns:A,summaryRow:Ke,handleClick:He,selectionMode:n}),Se]}):jsxs(Xn,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[p&&jsx(Xn,{sx:{mb:2},children:jsx(ha,{fields:p.fields,filters:p.filters,onFilterChange:p.onFilterChange,onSearch:p.onSearch,variants:p.variants||[],currentVariantId:p.currentVariantId,onVariantLoad:N=>{$(N),p.onVariantLoad&&p.onVariantLoad(N);},onVariantSave:p.onVariantSave,onVariantDelete:p.onVariantDelete,onVariantSetDefault:p.onVariantSetDefault,loading:u,appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:Te}],currentLayoutId:Ve,layoutRefs:[{tableKey:m,layoutId:Ve}],variantService:p.variantService,serviceUrl:M??p.serviceUrl})}),jsxs(ix,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Zo?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...f?{height:f}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[r&&jsx(Ai,{filterText:T,setFilterText:P,onRowsPerPageChange:qe,rowsPerPage:Ee,rowsPerPageOptions:h,page:pe,count:K,onPageChange:Be,actions:d,extraTools:l,grouping:re,setGroupAnchorEl:Ue,showSummary:W,setShowSummary:z,setAnchorEl:Ae,setSummaryAnchorEl:Oe,handleExport:ro,showCreateButton:Re,onOpenCreateDialog:Fr,showEditButton:ze,onOpenEditDialog:Nr,editDisabled:Yt.length!==1,showDeleteButton:le,onOpenDeleteConfirm:sr,deleteDisabled:Yt.length===0,onLayoutSave:w||p?.variantService&&p?.appId?Y:void 0,loading:u,layoutManager:ce,onOpenGraphReport:U?R:void 0}),jsx(lu,{sx:{flex:1,...f?{maxHeight:f,height:f}:c?{height:0,maxHeight:"none"}:{maxHeight:"calc(100vh - 320px)"},overflowY:"auto",overflowX:"auto",position:"relative",minHeight:0},children:jsx(DndContext,{sensors:st,collisionDetection:closestCenter,onDragEnd:ao,modifiers:[restrictToHorizontalAxis],children:jsxs(lx,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(ie).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(Bi,{columns:I,visibleColumns:A,order:C,orderBy:D,onRequestSort:xe,onContextMenu:uo,selectionMode:n,grouping:re,isAllExpanded:X,handleToggleAll:_e,rowCount:Z.length,numSelected:i.length,onSelectAllClick:Qe,columnWidths:ie,onColumnResize:be}),jsx(ep,{visibleRows:xt,columns:I,visibleColumns:A,selectionMode:n,selected:i,orderBy:D,loading:u,expandedGroups:ae,toggleGroupExpand:he,handleExpandGroupRecursively:Pt,handleCollapseGroupRecursively:mo,isGroupFullyExpanded:ia,handleClick:He,onSelectionChange:s,grouping:re,rowKeyProp:k,page:pe,rowsPerPage:Ee}),W&&jsx(tp,{showSummary:W,columns:I,visibleColumns:A,summaryRow:Ke,selectionMode:n?.toString(),grouping:re,orderBy:D,zIndex:3})]})})})]}),Re&&jsxs(tu,{open:je,onClose:lr,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:N=>`1px solid ${N.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(ou,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:b?.title||t("quickCreate.createWithTitle",{title:S})}),jsx(au,{sx:{pt:"8px !important"},children:jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[sa.map(N=>{let oe=N.type==="number"||N.numeric?"number":N.type==="date"?"date":"text",J=N.label||N.id;return jsx(nu,{label:J,value:Rt[N.id]??"",onChange:nt=>Lr(N.id,nt.target.value),type:oe,size:"small",fullWidth:true,InputLabelProps:{shrink:oe==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${N.id}`)}),b?.description&&jsx(iu,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:b.description})]})}),jsxs(ru,{sx:{px:3,pb:2},children:[jsx(gl,{onClick:lr,sx:{fontSize:"0.85rem"},disabled:It,children:b?.cancelLabel||t("common.cancel")}),jsx(gl,{onClick:zr,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:It,children:b?.submitLabel||t("common.save")})]})]}),ze&&jsxs(tu,{open:Xt,onClose:go,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:N=>`1px solid ${N.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(ou,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:v?.title||t("quickEdit.editWithTitle",{title:S})}),jsx(au,{sx:{pt:"8px !important"},children:jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ba.map(N=>{let oe=N.type==="number"||N.numeric?"number":N.type==="date"?"date":"text",J=N.label||N.id,nt=Lo(N.id);return jsx(nu,{label:J,value:_o[N.id]??"",onChange:V=>Vr(N.id,V.target.value),type:oe,size:"small",fullWidth:true,disabled:!nt,InputLabelProps:{shrink:oe==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${N.id}`)}),v?.description&&jsx(iu,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:v.description})]})}),jsxs(ru,{sx:{px:3,pb:2},children:[jsx(gl,{onClick:go,sx:{fontSize:"0.85rem"},disabled:Xe,children:v?.cancelLabel||t("common.cancel")}),jsx(gl,{onClick:Or,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:Xe||!Fo,children:v?.submitLabel||t("common.save")})]})]}),le&&jsx(An,{open:or,type:"warning",title:B?.title||t("quickDelete.confirmTitle"),message:B?.message||(Yt.length>1?t("quickDelete.confirmMessageMultiple",{count:Yt.length}):t("quickDelete.confirmMessageSingle")),confirmText:B?.confirmText||t("common.delete"),cancelText:B?.cancelText||t("common.cancel"),onClose:pa,onConfirm:Ea}),Se,U&&jsx(Ji,{open:$e,onClose:O,model:L,aiAssistant:y?.aiAssistant,interaction:G?{enabled:true,filters:te.filters,fieldMapping:x,onPrimaryDimensionClick:N=>te.setFilter("primaryDimension",N),onSecondaryDimensionClick:N=>te.setFilter("secondaryDimension",N),onStatusClick:N=>te.setFilter("status",N),onClearFilter:te.clearFilter,onClearAll:te.clearAll}:void 0,tableContent:jsx(Ua,{appId:Pe||"graph-report-internal",title:t("graph.dataBody"),columns:q,rows:L.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},EM=Ua;var HM=({id:e,title:t,hideHeader:o=true,filterConfig:a,tableProps:r,children:n,spacing:i=1,mode:s="separated"})=>{let d=a?{...a,appId:a.appId||e}:void 0,l={...r,appId:r.appId||e};return jsxs(jd,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[s==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(ha,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(Ua,{...l,fitContainer:true,filterConfig:s==="integrated"?d:void 0})})]}),n]})};var qM=({metadata:e,fetchData:t,initialRowsPerPage:o=20,rowsPerPageOptions:a=[20,50,100,-1],tableKey:r="default",mode:n="integrated",serviceUrl:i,variantService:s})=>{let{t:d}=ee(),[l,c]=useState(false),[g,f]=useState([]),[u,h]=useState({}),[w,p]=useState(e.variants||[]),[k,m]=useState(e.layout||null),[y,b]=useState(""),[v,B]=useState(0),[M,S]=useState(0),[E,I]=useState(o),[C,D]=useState([]),[T,P]=useState("asc"),[A,W]=useState("");useEffect(()=>{let ie={};e.filters.forEach(we=>{we.defaultValue!==void 0&&(ie[we.id]=we.defaultValue);}),h(ie);},[e.filters]);let z=useCallback(async(ie,we,Ae,Ye,st)=>{c(true);try{let Z={...ie,page:we+1,limit:Ae,sort:st,order:Ye},Ke;t?Ke=await t(Z):typeof e.api=="function"?Ke=await e.api(Z):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,Z),Ke={rows:[],total:0}):(console.warn("No API configured for report"),Ke={rows:[],total:0}),Ke&&(f(Ke.rows||[]),B(Ke.total||0));}catch(Z){console.error("Failed to fetch report data",Z);}finally{c(false);}},[e.api,t]);useEffect(()=>{z(u,M,E,T,A);},[z,M,E,T,A]);let Q=()=>{S(0),z(u,0,E,T,A);},re=ie=>{S(0),I(ie);},ne=(ie,we)=>{P(we),W(ie);},ae=ie=>{h(ie);},_=ie=>{b(ie?.id||"");let we=Jp(ie,r);if(we){let Ye=we.values??we;h(Ye),z(Ye,0,E,T,A),S(0);}let{layout:Ae}=ul(ie,r);Ae&&m(Ae);},Ue=ie=>{let we={...ie,id:Date.now().toString(),createdAt:new Date().toISOString()};p(Ae=>[...Ae,we]);},Ze=ie=>{m(ie);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:r,fields:e.filters,filters:u,onFilterChange:ae,onSearch:Q,onVariantLoad:_,onVariantSave:Ue,onVariantDelete:ie=>p(we=>we.filter(Ae=>Ae.id!==ie)),onVariantSetDefault:ie=>{p(we=>we.map(Ae=>({...Ae,isDefault:Ae.id===ie})));},variants:w,currentVariantId:y,variantService:s,serviceUrl:i},tableProps:{appId:e.id,tableKey:r,columns:e.columns,rows:g,loading:l,rowKey:"id",count:v,page:M,rowsPerPage:E,rowsPerPageOptions:a,onPageChange:S,onRowsPerPageChange:re,selectionMode:"multiple",selected:C,onSelectionChange:D,onLayoutSave:Ze,layout:k,title:e.title,showSummary:true,order:T,orderBy:A,serviceUrl:i,onSortChange:ne,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:u,rows:g,loading:l,refresh:Q}};var bx=e=>[...e].sort((t,o)=>o.value-t.value),ZM=({bars:e=[],lines:t=[],combos:o=[],heatmap:a=[],pies:r=[],waterfalls:n=[]})=>{let i=useMemo(()=>bx(e),[e]),s=useMemo(()=>[...t],[t]),d=useMemo(()=>[...o],[o]),l=useMemo(()=>[...a],[a]),c=useMemo(()=>{let f=r.reduce((u,h)=>u+h.value,0);return r.map(u=>({...u,percent:f>0?u.value/f*100:u.percent}))},[r]),g=useMemo(()=>[...n],[n]);return {bars:i,lines:s,combos:d,heatmap:l,pies:c,waterfalls:g}};var eA=({apiKey:e,query:t,zoom:o=14,mapType:a="roadmap"})=>useMemo(()=>!e||!t?"":$n({apiKey:e,query:t,zoom:o,mapType:a}),[e,t,o,a]),tA=({keyword:e,location:t})=>useMemo(()=>ji({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var Yn=({code:e,language:t="text",copyable:o=true,showLineNumbers:a=false,wrapLongLines:r=false,maxHeight:n})=>{let[i,s]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
4
- `),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400);}catch{s(false);}},children:i?jsx(Tx,{fontSize:"inherit"}):jsx(wx,{fontSize:"inherit"})})})]}),jsx(Box,{component:"pre",sx:{m:0,p:1.25,fontSize:"0.82rem",lineHeight:1.55,overflow:"auto",maxHeight:n,bgcolor:"background.default",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a?d.map((c,g)=>jsxs(Box,{sx:{display:"flex"},children:[jsx(Box,{component:"span",sx:{width:34,flexShrink:0,textAlign:"right",pr:1,color:"text.disabled",userSelect:"none"},children:g+1}),jsx(Box,{component:"span",sx:{whiteSpace:r?"pre-wrap":"pre",wordBreak:r?"break-word":"normal"},children:c})]},`${g}-${c}`)):jsx(Box,{component:"code",sx:{display:"block",whiteSpace:r?"pre-wrap":"pre",wordBreak:r?"break-word":"normal"},children:e})})]})};var Mx=e=>{let t=e.trim();return t.startsWith("$$")&&t.endsWith("$$")&&t.length>=4&&(t=t.slice(2,-2).trim()),t.startsWith("$")&&t.endsWith("$")&&t.length>=2&&(t=t.slice(1,-1).trim()),t},Ax=async e=>new Function("m","return import(m)")(e),Qn=({expression:e,inline:t=false,allowKatex:o=false})=>{let a=useMemo(()=>Mx(e),[e]),[r,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!a){n("");return}try{let d=await Ax("katex"),c=(d?.default||d)?.renderToString?.(a,{displayMode:!t,throwOnError:!1,strict:"warn"});i&&typeof c=="string"&&n(c);}catch{i&&n("");}})(),()=>{i=false;}},[o,a,t]),a?r?jsx(Box,{component:t?"span":"div",sx:{display:t?"inline-flex":"block",my:t?0:.5,overflowX:"auto"},dangerouslySetInnerHTML:{__html:r}}):t?jsx(Box,{component:"code",sx:{px:.4,py:.05,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a}):jsx(Box,{sx:{my:1,p:1,borderRadius:1.2,border:"1px dashed",borderColor:"divider",bgcolor:"background.paper"},children:jsx(Typography,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",fontSize:"0.9rem",lineHeight:1.5,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:a})}):null};var Vx=async e=>new Function("m","return import(m)")(e),pc=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:a=true})=>{let[r,n]=useState(""),[i,s]=useState(""),[d,l]=useState(false),c=useMemo(()=>e.trim(),[e]);return useEffect(()=>{let g=true;return (async()=>{if(!a||!c){n(""),s("");return}l(true),s(""),n("");try{let u=await Vx("mermaid"),h=u?.default||u;if(!h||typeof h.render!="function")throw new Error("Mermaid runtime is not available");h.initialize?.({startOnLoad:!1,securityLevel:"loose",theme:"default"});let w=await h.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),p=typeof w=="string"?w:w?.svg;g&&typeof p=="string"&&n(p);}catch(u){if(g){let h=u instanceof Error?u.message:"Failed to render Mermaid diagram";s(h);}}finally{g&&l(false);}})(),()=>{g=false;}},[a,c]),jsxs(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:[jsx(Box,{sx:{px:1,py:.6,borderBottom:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{variant:"caption",color:"text.secondary",sx:{letterSpacing:.4,textTransform:"uppercase"},children:t})}),jsxs(Box,{sx:{p:1},children:[d&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!d&&r&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:r}}),!d&&!r&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(Yn,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var uc=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),qx=e=>/^:?-{3,}:?$/.test(e.trim()),_x=e=>{let t=e.trim(),o=t.startsWith(":"),a=t.endsWith(":");return o&&a?"center":a?"right":"left"},yl=e=>{let t=e.split(`
5
- `).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=uc(t[0]),a=uc(t[1]);if(o.length===0||a.length!==o.length||!a.every(qx))return null;let r=a.map(_x),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let s=uc(i);return s.length<o.length?[...s,...Array.from({length:o.length-s.length},()=>"")]:s.slice(0,o.length)});return {headers:o,aligns:r,rows:n}},mc=({markdown:e,table:t,maxHeight:o=360})=>{let a=useMemo(()=>t||(e?yl(e):null),[t,e]);return !a||a.headers.length===0?jsx(Paper,{variant:"outlined",sx:{p:1.2,borderRadius:1.5},children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Invalid table block"})}):jsx(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:jsx(TableContainer,{sx:{maxHeight:o},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:jsx(TableRow,{children:a.headers.map((r,n)=>jsx(TableCell,{align:a.aligns[n],sx:{fontWeight:700,bgcolor:"background.paper"},children:r},`${r}-${n}`))})}),jsx(TableBody,{children:a.rows.map((r,n)=>jsx(TableRow,{hover:true,children:r.map((i,s)=>jsx(TableCell,{align:a.aligns[s],sx:{whiteSpace:"pre-wrap",wordBreak:"break-word"},children:i||jsx(Box,{component:"span",sx:{color:"text.disabled"},children:"-"})},`cell-${n}-${s}`))},`row-${n}`))})]})})})};var xl=({content:e,title:t="Thinking",defaultExpanded:o=false,isStreaming:a=false})=>{let[r,n]=useState(o);return jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1,my:.8},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:.6,children:[jsx(IconButton,{size:"small",onClick:()=>n(i=>!i),sx:{transform:r?"rotate(180deg)":"rotate(0deg)",transition:"transform .15s ease"},children:jsx(e0,{fontSize:"inherit"})}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{fontStyle:"italic"},children:[t,a?" ...":""]})]}),jsx(Collapse,{in:r,children:jsx(Typography,{variant:"body2",sx:{pl:4,pt:.4,whiteSpace:"pre-wrap",color:"text.secondary",fontStyle:"italic",lineHeight:1.55},children:e})})]})};var fc=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,vl=e=>e.trim().startsWith("```"),yu=e=>/^#{1,6}\s+/.test(e.trim()),hc=e=>/^[-*+]\s+/.test(e.trim()),yc=e=>/^\d+\.\s+/.test(e.trim()),bu=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),bc=e=>e.trim().startsWith(">"),xu=(e,t)=>{if(t+1>=e.length)return false;let o=e[t],a=e[t+1];return !o.includes("|")||!a.includes("|")?false:/^\s*\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(a.trim())},vu=e=>e.trim().startsWith("<think>")||e.trim()===":::think",ti=(e,t,o)=>{let a=[],r=0,n=0;fc.lastIndex=0;let i=fc.exec(e);for(;i;){i.index>r&&a.push(e.slice(r,i.index));let s=i[0],d=`${o}-${n}`;if(s.startsWith("**")&&s.endsWith("**"))a.push(jsx("strong",{children:s.slice(2,-2)},d));else if(s.startsWith("*")&&s.endsWith("*"))a.push(jsx("em",{children:s.slice(1,-1)},d));else if(s.startsWith("`")&&s.endsWith("`"))a.push(jsx(Box,{component:"code",sx:{px:.45,py:.08,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:s.slice(1,-1)},d));else if(s.startsWith("[")&&s.includes("](")&&s.endsWith(")")){let l=s.match(/^\[([^\]]+)\]\(([^)]+)\)$/);l?a.push(jsx(Link,{href:l[2],target:"_blank",rel:"noreferrer",underline:"hover",children:l[1]},d)):a.push(s);}else s.startsWith("$")&&s.endsWith("$")&&t.enableMath?a.push(jsx(Qn,{expression:s,inline:true,allowKatex:true},d)):a.push(s);r=i.index+s.length,n+=1,i=fc.exec(e);}return r<e.length&&a.push(e.slice(r)),a.length>0?a:[e]},oi=({markdown:e,content:t,className:o,enableMath:a=true,enableMermaid:r=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:s=false})=>{let d=e??t??"",l=useMemo(()=>{let c=[],g=d.replace(/\r\n/g,`
1
+ import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as Dt from'react';import Dt__default,{createContext,forwardRef,useMemo,useContext,useState,useEffect,useCallback,Fragment as Fragment$1,useRef,useLayoutEffect}from'react';import {usePathname,useRouter}from'next/navigation';import {ChevronRight,Search,Plus,Mic,ThumbsDown,ThumbsUp,Volume2,RefreshCw,Copy,Terminal,Clock,X,ChevronDown,Box as Box$1,Lightbulb,AlertCircle,RotateCw,Check,Clipboard,CheckCircle,XCircle,Loader2,AlertTriangle,Info,BarChart,MapPin,Globe,TrendingDown,GitBranch,Grid as Grid$1,Activity,PieChart,LineChart}from'lucide-react';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {Slot}from'@radix-ui/react-slot';import {cva}from'class-variance-authority';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import fp from'@mui/material/Dialog';import hp from'@mui/material/DialogTitle';import bp from'@mui/material/DialogContent';import Xf from'@mui/material/DialogContentText';import yp from'@mui/material/DialogActions';import ei from'@mui/material/Box';import Jf from'@mui/icons-material/CheckCircle';import eh from'@mui/icons-material/Warning';import th from'@mui/icons-material/Error';import oh from'@mui/icons-material/Info';import {styled,Paper,IconButton,Tooltip,TextField,InputAdornment,CircularProgress,Dialog,DialogTitle,Box,Typography,DialogContent,Stack,Button,TableContainer,Table,TableHead,TableRow,TableCell,TableBody,Checkbox,DialogActions,Link,MenuItem,Chip,InputBase,useTheme,Autocomplete,FormControlLabel,Menu,ListItemText,Divider,Collapse,Grid,ListItemIcon,Alert,Tabs,Tab,LinearProgress,Avatar,AppBar,Toolbar,createTheme,ThemeProvider,FormControl,Select,Switch,Portal,useMediaQuery,Drawer,Popover,ListSubheader,Badge,TableFooter,InputLabel}from'@mui/material';import {alpha,useTheme as useTheme$1,createTheme as createTheme$1,ThemeProvider as ThemeProvider$1}from'@mui/material/styles';import hh from'@mui/icons-material/Clear';import bh from'@mui/icons-material/Close';import Xd from'@mui/icons-material/Search';import Mx from'@mui/material/Paper';import Ax from'@mui/material/Table';import Bx from'@mui/material/TableBody';import $s from'@mui/material/TableCell';import Cp from'@mui/material/TableContainer';import qh from'@mui/material/TableHead';import _h from'@mui/material/TableRow';import xp from'@mui/material/TextField';import yl from'@mui/material/Button';import vp from'@mui/material/Alert';import {DndContext,closestCenter,useSensors,useSensor,PointerSensor,TouchSensor,closestCorners,DragOverlay,useDroppable,useDraggable}from'@dnd-kit/core';import {restrictToHorizontalAxis}from'@dnd-kit/modifiers';import Bh from'@mui/icons-material/ViewColumn';import dp from'@mui/icons-material/Save';import Fh from'@mui/icons-material/Download';import Lh from'@mui/icons-material/AccountTree';import zh from'@mui/icons-material/Functions';import Nh from'@mui/icons-material/Insights';import hu from'@mui/icons-material/Add';import Oh from'@mui/icons-material/Edit';import Hh from'@mui/icons-material/Delete';import Wh from'@mui/icons-material/KeyboardArrowLeft';import uf from'@mui/icons-material/KeyboardArrowRight';import jh from'@mui/material/Checkbox';import Zh from'@mui/material/TableSortLabel';import Xh from'@mui/material/IconButton';import Yh from'@mui/material/Tooltip';import Qh from'@mui/icons-material/UnfoldMore';import Jh from'@mui/icons-material/UnfoldLess';import {arrayMove,SortableContext,horizontalListSortingStrategy,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import cb from'@mui/icons-material/KeyboardArrowDown';import Sb from'@mui/icons-material/Check';import mu from'@mui/icons-material/ClearAll';import gu from'@mui/icons-material/ArrowUpward';import fu from'@mui/icons-material/ArrowDownward';import wb from'@mui/icons-material/VisibilityOff';import Pb from'@mui/icons-material/DeleteOutline';import dy from'@mui/icons-material/MicNoneOutlined';import uy from'@mui/icons-material/SettingsOutlined';import py from'@mui/icons-material/SendOutlined';import sx from'@mui/icons-material/Settings';import cx from'@mui/icons-material/KeyboardArrowUp';import ux from'@mui/icons-material/ArrowRightAlt';import Ey from'@mui/icons-material/Star';import {DateCalendar}from'@mui/x-date-pickers/DateCalendar';import {PickersDay}from'@mui/x-date-pickers/PickersDay';import {LocalizationProvider}from'@mui/x-date-pickers/LocalizationProvider';import {AdapterDayjs}from'@mui/x-date-pickers/AdapterDayjs';import jy from'@mui/icons-material/CalendarMonth';import Xy from'@mui/icons-material/ArrowForward';import mr from'dayjs';import Yy from'dayjs/plugin/isBetween';import Qy from'dayjs/plugin/localizedFormat';import'dayjs/locale/zh-cn';import'dayjs/locale/fr';import'dayjs/locale/de';import'dayjs/locale/ja';import'dayjs/locale/ko';import Tx from'@mui/icons-material/StarBorder';import Ix from'@mui/icons-material/ViewQuilt';import j0 from'@mui/icons-material/CloseOutlined';import jx from'@mui/icons-material/ContentCopyOutlined';import Zx from'@mui/icons-material/CheckOutlined';import w0 from'@mui/icons-material/ExpandMore';import Jp from'@mui/icons-material/Language';import Ev from'@mui/icons-material/DesktopWindows';import Fv from'@mui/icons-material/DarkMode';import Lv from'@mui/icons-material/LightMode';import Nv from'@mui/icons-material/Logout';import iC from'@mui/icons-material/DragIndicator';import wC from'@mui/icons-material/FilterList';import TC from'@mui/icons-material/TableRows';import uC from'@mui/icons-material/LayersClear';import Sk from'@mui/icons-material/CameraAltRounded';import wk from'@mui/icons-material/QrCodeScannerRounded';import Rk from'@mui/icons-material/DragIndicatorRounded';import Bk from'@mui/icons-material/BackspaceRounded';import Ek from'@mui/icons-material/CloseRounded';import Fk from'@mui/icons-material/CheckRounded';import Zk from'@mui/icons-material/SearchRounded';import Xk from'@mui/icons-material/MenuOpenRounded';import Yk from'@mui/icons-material/MenuRounded';import Qk from'@mui/icons-material/ExpandMoreRounded';import Jk from'@mui/icons-material/ChevronRightRounded';import xS from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import Ew from'react-markdown';import Fw from'remark-gfm';import Lw from'remark-math';import zw from'rehype-katex';import Nw from'rehype-raw';import {Prism}from'react-syntax-highlighter';import {oneDark,oneLight}from'react-syntax-highlighter/dist/esm/styles/prism';import {useTheme as useTheme$2}from'next-themes';import Tg from'mermaid';import jw from'@mui/icons-material/MicRounded';import Zw from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import e1 from'@mui/icons-material/SendRounded';import t1 from'@mui/icons-material/AddRounded';import o1 from'@mui/icons-material/HardwareRounded';import D1 from'@mui/icons-material/LockOutlined';import tf from'@mui/icons-material/MailOutline';import of from'@mui/icons-material/PersonOutline';import M1 from'@mui/icons-material/VpnKeyOutlined';import _1 from'dayjs/plugin/isoWeek';import uT from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import pT from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import mT from'@mui/icons-material/SplitscreenOutlined';import gT from'@mui/icons-material/Sort';function No(...e){return twMerge(clsx(e))}var Rs={primary:"#000000",primaryHover:"#333333"},Bi={primary:"bg-primary text-primary-foreground hover:bg-primary/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground"},An={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},Bd=()=>"inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50";var wf=cva(Bd(),{variants:{variant:{default:`${Bi.primary} shadow-sm`,destructive:"bg-red-500 text-white hover:bg-red-600 active:bg-red-700 dark:bg-red-600 dark:hover:bg-red-500 dark:active:bg-red-700 shadow-sm",outline:`${Bi.outline} shadow-sm`,secondary:"bg-gray-200 text-gray-700 hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:text-gray-200 dark:hover:bg-gray-600 dark:active:bg-gray-500 shadow-sm",ghost:Bi.ghost,link:"text-blue-600 dark:text-blue-400 underline-offset-4 hover:underline hover:text-blue-700 dark:hover:text-blue-300 active:text-blue-800 dark:active:text-blue-200","chat-tool":"bg-[var(--orbai-surface-2)] border border-[var(--orbai-border-soft)] text-[var(--orbai-text-2)] hover:bg-[var(--orbai-surface-3)] hover:border-[var(--orbai-border-strong)] hover:text-[var(--orbai-text-1)] active:scale-95 transition-all duration-200","chat-send":`bg-[${Rs.primary}] hover:bg-[${Rs.primaryHover}] text-white border border-[var(--orbai-border-strong)] shadow-[var(--orbai-shadow-soft-sm)] hover:shadow-[var(--orbai-shadow-soft-md)] active:scale-95 transition-all duration-200`,"chat-stop":"bg-red-500 hover:bg-red-600 border border-[var(--orbai-border-strong)] shadow-[var(--orbai-shadow-soft-sm)] hover:shadow-[var(--orbai-shadow-soft-md)] active:scale-95 text-white transition-all duration-200","chat-disabled":"cursor-not-allowed opacity-50 bg-[var(--orbai-surface-2)] border border-[var(--orbai-border-soft)] text-[var(--orbai-muted)]"},size:{default:"h-10 px-4 py-2",sm:"h-9 px-3",lg:"h-11 px-8",icon:"h-10 w-10","chat-sm":"h-8 w-8 rounded-full","chat-md":"h-10 w-10 rounded-full","chat-lg":"h-12 w-12 rounded-full"},rounded:{none:An.none,sm:An.sm,md:An.md,full:An.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),Ds=Dt.forwardRef(({className:e,variant:t,size:o,asChild:r=false,...a},n)=>jsx(r?Slot:"button",{className:No(wf({variant:t,size:o,className:e})),ref:n,...a}));Ds.displayName="Button";var If={"common.cancel":"Cancel","common.save":"Save","common.ok":"OK","common.done":"Done","common.search":"Search","common.none":"None","common.all":"All","common.noData":"No data","common.copy":"Copy","common.delete":"Delete","common.loading":"Loading...","header.searchPlaceholder":"Ask me...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dark","header.theme.light":"Theme: Light","header.menu.setting":"Setting","header.menu.logout":"Logout","navigation.expand":"Expand navigation","navigation.collapse":"Collapse navigation","navigation.searchPlaceholder":"Search menu...","navigation.noMatch":"No matching menu items","navigation.noAccessibleApp":"No accessible applications","navigation.noItems":"No items to display","navigation.expandView":"Expand {title}","table.toolbar.searchPlaceholder":"Search...","table.title.default":"Data Table","table.toolbar.groupBy":"Group By","table.toolbar.summary":"Summary","table.toolbar.columns":"Columns","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Items per page:","table.toolbar.pageOf":"Page {current} of {total}","table.toolbar.newItem":"New Item","table.toolbar.editItem":"Edit Item","table.toolbar.deleteItem":"Delete Item","table.toolbar.graphicReport":"Graphic Report","table.toolbar.saveLayout":"Save Layout","table.menu.groupBy":"Group By","table.menu.clearAll":"Clear All","table.menu.visibleColumns":"Visible Columns","table.menu.showSummaryRow":"Show Summary Row","table.menu.noNumericColumns":"No numeric columns","table.group.expandAll":"Expand All Groups","table.group.collapseAll":"Collapse All Groups","table.mobile.notImplemented":"Mobile View Not Implemented","table.headerMenu.sortAsc":"Sort Ascending","table.headerMenu.sortDesc":"Sort Descending","table.headerMenu.clearSort":"Clear Sort","table.headerMenu.configureSort":"Configure Sort...","table.headerMenu.group":"Group by this column","table.headerMenu.ungroup":"Remove from grouping","table.headerMenu.addSummary":"Include in Summary","table.headerMenu.removeSummary":"Remove from Summary","table.headerMenu.hideColumn":"Hide Column","table.sortDialog.title":"Sort Settings","table.sortDialog.empty":"No sort rules. Add one to start ordering rows.","table.sortDialog.addRule":"Add Sort Rule","table.sortDialog.clearAll":"Clear All","table.sortDialog.asc":"Ascending","table.sortDialog.desc":"Descending","pivot.title.default":"Pivot Table Builder","pivot.subtitle.default":"Drag fields to configure the pivot table.","pivot.empty":"Drag at least one field into Values to render the pivot result.","pivot.records":"Records","pivot.afterFilter":"After filter","pivot.grandTotal":"Grand Total","pivot.resultLabel":"Result","pivot.valueLabel":"Value","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Field List","pivot.availableDimensions":"Available dimensions","pivot.allFieldsInUse":"All fields are in use.","pivot.zone.rows":"Rows","pivot.zone.columns":"Columns","pivot.zone.filters":"Filters","pivot.zone.values":"Values","pivot.hint.rows":"Drag fields here to build row hierarchy","pivot.hint.columns":"Drag fields here to build column hierarchy","pivot.hint.filters":"Drag fields here for report filters","pivot.hint.values":"Drag numeric fields here for aggregation","pivot.clearArea":"Clear area","pivot.filter.na":"N/A","pivot.filter.noValues":"No values","pivot.filter.noneSelected":"None selected","pivot.filter.allValues":"All values","pivot.filter.selectedCount":"{selected} / {total} selected","pivot.filter.selectAll":"Select All","pivot.filter.deselectAll":"Deselect All","pivot.filter.noResults":"No results","pivot.collapse.ariaExpand":"Expand configuration area","pivot.collapse.ariaCollapse":"Collapse configuration area","pivot.agg.sum":"Sum","pivot.agg.count":"Count","pivot.agg.avg":"Average","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Select preset","pivot.preset.save":"Save preset","pivot.preset.delete":"Delete preset","pivot.preset.saveDialogTitle":"Save current preset","pivot.preset.nameLabel":"Preset name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot Result","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Expand pivot result","pivot.table.collapse.ariaCollapse":"Collapse pivot result","pivot.chart.title":"Pivot Chart","pivot.chart.subtitle":"Map one dimension and up to two measures into a compact chart.","pivot.chart.subtitleReady":"{dimension} by {measure}","pivot.chart.emptyNoDimension":"Add at least one row or column field to render the chart.","pivot.chart.emptyNoValue":"Add at least one value field to render the chart.","pivot.chart.emptyNoData":"No data available for the current chart selection.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Measure","pivot.chart.secondaryMeasure":"Compare measure","pivot.chart.chartType":"Chart type","pivot.chart.style.barVertical":"Vertical bars","pivot.chart.style.barHorizontal":"Horizontal bars","pivot.chart.style.line":"Line","pivot.chart.style.scatter":"Scatter","pivot.chart.collapse.ariaExpand":"Expand chart area","pivot.chart.collapse.ariaCollapse":"Collapse chart area","smartFilter.adaptFilters":"Adapt Filters","smartFilter.addFilters":"Add Filters","smartFilter.go":"Go","smartFilter.visibleFilters":"Visible Filters","smartFilter.searchPlaceholder":"Search...","smartFilter.noOptionsFound":"No options found","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Equals","smartFilter.operator.contains":"Contains","smartFilter.operator.notContains":"Does Not Contain","smartFilter.operator.wildcard":"Wildcard Search","smartFilter.operator.notEquals":"Not Equals","smartFilter.operator.greaterThan":"Greater Than","smartFilter.operator.lessThan":"Less Than","smartFilter.operator.greaterOrEqual":"Greater Than or Equal","smartFilter.operator.lessOrEqual":"Less Than or Equal","smartFilter.operator.between":"Between","variant.noOptions":"No options","variant.defaultSuffix":"Default","variant.selectVariant":"Select Variant","variant.saveView":"Save View","variant.newVariant":"New Variant","variant.viewName":"View Name","variant.setDefault":"Set as Default","variant.publicAllUsers":"Public (All Users)","variant.toast.fetchFailed":"Failed to load variants","variant.toast.saveFailed":"Failed to save variant","variant.toast.saveSuccess":"Variant saved successfully","variant.toast.deleteFailed":"Failed to delete variant","variant.toast.deleteSuccess":"Variant deleted successfully","variant.toast.defaultFailed":"Failed to update default variant","variant.toast.defaultSuccess":"Default variant updated","layout.saveLayout":"Save Layout","layout.layoutOptions":"Layout Options","layout.selectLayout":"Select Layout","layout.saveCurrentLayout":"Save Current Layout...","layout.noSavedLayouts":"No saved layouts","layout.removeDefault":"Remove Default","layout.setAsDefault":"Set as Default","layout.layoutName":"Layout Name","layout.layoutDescription":"Description","layout.layoutNameHelper":"e.g., 'Compact View'","layout.warningOverwrite":"Warning: Existing layout will be overwritten","layout.useAsDefault":"Use as Default Layout","layout.publicAllUsers":"Public (Visible to all users)","layout.toast.loadFallback":"Failed to load layouts from backend, fallback to local storage","layout.toast.saveSuccess":"Layout saved successfully","layout.toast.saveLocalSuccess":"Layout saved to local storage","layout.toast.backendUnavailableSavedLocal":"Backend unavailable, saved to local storage","layout.toast.deleteSuccess":"Layout deleted successfully","layout.toast.deleteLocalSuccess":"Layout deleted from local storage","layout.toast.backendUnavailableDeletedLocal":"Backend unavailable, deleted from local storage","layout.toast.defaultSuccess":"Default layout set","layout.toast.defaultLocalSuccess":"Default layout set in local storage","layout.toast.backendUnavailableDefaultLocal":"Backend unavailable, default saved to local storage","dateRange.label":"Date Range","dateRange.startDate":"Start Date","dateRange.endDate":"End Date","dateRange.select":"Select...","dateRange.today":"Today","dateRange.thisWeek":"This Week","dateRange.thisMonth":"This Month","graph.records":"{count} records","graph.kpi.totalRecords":"Total Records","graph.kpi.totalReport":"Total Report","graph.kpi.totalBillable":"Total Billable","graph.kpi.efficiency":"Efficiency","graph.kpi.amount":"Amount","graph.kpi.flagged":"Flagged","graph.chart.billable.title":"Billable by Dimension","graph.chart.billable.subtitle":"Top values by billable hours","graph.chart.efficiency.title":"Efficiency by Person","graph.chart.efficiency.subtitle":"Lowest efficiency first","graph.chart.status.title":"Status Distribution","graph.chart.status.subtitle":"Record ratio by status","graph.dataBody":"Data Body","graph.reportTitle":"Graphic Report","graph.unassigned":"Unassigned","graph.column.reportHours":"Report Hours","graph.column.billableHours":"Billable Hours","detail.searchAi.placeholder":"Search fields, or ask AI if no match...","detail.searchAi.matches":"{count} matches found","detail.searchAi.noMatch":"No matching field found.","detail.searchAi.autoAiFallback":"No direct match. Triggering AI analysis...","detail.searchAi.aiResultTitle":"AI Insight","detail.table.title":"Related Records","kanban.empty":"Drop cards here","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Release to move into this bucket","kanban.card.progress":"Progress","kanban.card.openDetail":"Open Detail","kanban.priority.critical":"Critical","kanban.priority.high":"High","kanban.priority.medium":"Medium","kanban.priority.low":"Low","quickCreate.newItem":"New Item","quickCreate.createWithTitle":"Create {title}","quickEdit.editWithTitle":"Edit {title}","quickDelete.confirmTitle":"Confirm Delete","quickDelete.confirmMessageSingle":"Are you sure you want to delete the selected record?","quickDelete.confirmMessageMultiple":"Are you sure you want to delete {count} selected records?","messageBox.confirm":"OK","messageBox.cancel":"Cancel"},Pf={"common.cancel":"\u53D6\u6D88","common.save":"\u4FDD\u5B58","common.ok":"\u786E\u5B9A","common.done":"\u5B8C\u6210","common.search":"\u641C\u7D22","common.none":"\u65E0","common.all":"\u5168\u90E8","common.noData":"\u6682\u65E0\u6570\u636E","common.copy":"\u590D\u5236","common.delete":"\u5220\u9664","common.loading":"\u52A0\u8F7D\u4E2D...","header.searchPlaceholder":"\u95EE\u6211\u70B9\u4EC0\u4E48...","header.theme.system":"\u4E3B\u9898\uFF1A\u8DDF\u968F\u7CFB\u7EDF","header.theme.dark":"\u4E3B\u9898\uFF1A\u6DF1\u8272","header.theme.light":"\u4E3B\u9898\uFF1A\u6D45\u8272","header.menu.setting":"\u8BBE\u7F6E","header.menu.logout":"\u6CE8\u9500","navigation.expand":"\u5C55\u5F00\u5BFC\u822A","navigation.collapse":"\u6298\u53E0\u5BFC\u822A","navigation.searchPlaceholder":"\u641C\u7D22\u83DC\u5355...","navigation.noMatch":"\u672A\u627E\u5230\u5339\u914D\u7684\u83DC\u5355\u9879","navigation.noAccessibleApp":"\u6682\u65E0\u53EF\u8BBF\u95EE\u7684\u5E94\u7528","navigation.noItems":"\u6682\u65E0\u53EF\u663E\u793A\u9879","navigation.expandView":"\u5C55\u5F00\u67E5\u770B {title}","table.toolbar.searchPlaceholder":"\u641C\u7D22...","table.title.default":"\u6570\u636E\u8868","table.toolbar.groupBy":"\u5206\u7EC4","table.toolbar.summary":"\u6C47\u603B","table.toolbar.columns":"\u5217","table.toolbar.export":"\u5BFC\u51FA","table.toolbar.itemsPerPage":"\u6BCF\u9875\u6761\u6570\uFF1A","table.toolbar.pageOf":"\u7B2C {current} / {total} \u9875","table.toolbar.newItem":"\u65B0\u5EFA\u6761\u76EE","table.toolbar.editItem":"\u7F16\u8F91\u6761\u76EE","table.toolbar.deleteItem":"\u5220\u9664\u6761\u76EE","table.toolbar.graphicReport":"\u56FE\u8868\u62A5\u8868","table.toolbar.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","table.menu.groupBy":"\u5206\u7EC4","table.menu.clearAll":"\u6E05\u7A7A","table.menu.visibleColumns":"\u53EF\u89C1\u5217","table.menu.showSummaryRow":"\u663E\u793A\u6C47\u603B\u884C","table.menu.noNumericColumns":"\u6CA1\u6709\u6570\u503C\u5217","table.group.expandAll":"\u5C55\u5F00\u5168\u90E8\u5206\u7EC4","table.group.collapseAll":"\u6298\u53E0\u5168\u90E8\u5206\u7EC4","table.mobile.notImplemented":"\u79FB\u52A8\u7AEF\u89C6\u56FE\u6682\u672A\u5B9E\u73B0","table.headerMenu.sortAsc":"\u5347\u5E8F\u6392\u5217","table.headerMenu.sortDesc":"\u964D\u5E8F\u6392\u5217","table.headerMenu.clearSort":"\u6E05\u9664\u6392\u5E8F","table.headerMenu.configureSort":"\u6392\u5E8F\u8BBE\u7F6E...","table.headerMenu.group":"\u6309\u6B64\u5217\u5206\u7EC4","table.headerMenu.ungroup":"\u53D6\u6D88\u5206\u7EC4","table.headerMenu.addSummary":"\u52A0\u5165\u6C47\u603B","table.headerMenu.removeSummary":"\u4ECE\u6C47\u603B\u4E2D\u79FB\u9664","table.headerMenu.hideColumn":"\u9690\u85CF\u8BE5\u5217","table.sortDialog.title":"\u6392\u5E8F\u8BBE\u7F6E","table.sortDialog.empty":"\u6682\u65E0\u6392\u5E8F\u89C4\u5219\uFF0C\u8BF7\u6DFB\u52A0\u89C4\u5219\u8FDB\u884C\u6392\u5E8F\u3002","table.sortDialog.addRule":"\u6DFB\u52A0\u6392\u5E8F\u89C4\u5219","table.sortDialog.clearAll":"\u6E05\u7A7A\u89C4\u5219","table.sortDialog.asc":"\u5347\u5E8F","table.sortDialog.desc":"\u964D\u5E8F","pivot.title.default":"\u6570\u636E\u900F\u89C6\u8868","pivot.subtitle.default":"\u62D6\u62FD\u5B57\u6BB5\u4EE5\u914D\u7F6E\u900F\u89C6\u8868\u3002","pivot.empty":"\u8BF7\u81F3\u5C11\u62D6\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u900F\u89C6\u7ED3\u679C\u3002","pivot.records":"\u8BB0\u5F55\u6570","pivot.afterFilter":"\u7B5B\u9009\u540E","pivot.grandTotal":"\u603B\u8BA1","pivot.resultLabel":"\u7ED3\u679C","pivot.valueLabel":"\u503C","pivot.table.dimensions":"\u7EF4\u5EA6","pivot.config.title":"\u5E03\u5C40\u914D\u7F6E","pivot.fieldList":"\u5B57\u6BB5\u5217\u8868","pivot.availableDimensions":"\u53EF\u7528\u7EF4\u5EA6","pivot.allFieldsInUse":"\u6240\u6709\u5B57\u6BB5\u90FD\u5DF2\u4F7F\u7528\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u7B5B\u9009","pivot.zone.values":"\u503C","pivot.hint.rows":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u884C\u5C42\u7EA7","pivot.hint.columns":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u6784\u5EFA\u5217\u5C42\u7EA7","pivot.hint.filters":"\u5C06\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u4F5C\u4E3A\u62A5\u8868\u7B5B\u9009","pivot.hint.values":"\u5C06\u6570\u503C\u5B57\u6BB5\u62D6\u5230\u8FD9\u91CC\u8FDB\u884C\u805A\u5408","pivot.clearArea":"\u6E05\u7A7A\u533A\u57DF","pivot.filter.na":"\u4E0D\u53EF\u7528","pivot.filter.noValues":"\u65E0\u53EF\u9009\u503C","pivot.filter.noneSelected":"\u672A\u9009\u62E9","pivot.filter.allValues":"\u5168\u90E8\u503C","pivot.filter.selectedCount":"\u5DF2\u9009 {selected} / {total}","pivot.filter.selectAll":"\u5168\u9009","pivot.filter.deselectAll":"\u53D6\u6D88\u5168\u9009","pivot.filter.noResults":"\u65E0\u5339\u914D\u7ED3\u679C","pivot.collapse.ariaExpand":"\u5C55\u5F00\u914D\u7F6E\u533A\u57DF","pivot.collapse.ariaCollapse":"\u6298\u53E0\u914D\u7F6E\u533A\u57DF","pivot.agg.sum":"\u6C42\u548C","pivot.agg.count":"\u8BA1\u6570","pivot.agg.avg":"\u5E73\u5747\u503C","pivot.agg.min":"\u6700\u5C0F\u503C","pivot.agg.max":"\u6700\u5927\u503C","pivot.preset.selectPlaceholder":"\u9009\u62E9\u65B9\u6848","pivot.preset.save":"\u4FDD\u5B58\u65B9\u6848","pivot.preset.delete":"\u5220\u9664\u65B9\u6848","pivot.preset.saveDialogTitle":"\u4FDD\u5B58\u5F53\u524D\u65B9\u6848","pivot.preset.nameLabel":"\u65B9\u6848\u540D\u79F0","pivot.preset.defaultName":"\u65B9\u6848 {index}","pivot.table.sectionTitle":"\u900F\u89C6\u7ED3\u679C","pivot.table.expandRowsAll":"\u884C\u5168\u90E8\u6253\u5F00","pivot.table.collapseRowsAll":"\u884C\u5168\u90E8\u6298\u53E0","pivot.table.expandColumnsAll":"\u5217\u5168\u90E8\u6253\u5F00","pivot.table.collapseColumnsAll":"\u5217\u5168\u90E8\u6298\u53E0","pivot.table.collapse.ariaExpand":"\u5C55\u5F00\u900F\u89C6\u7ED3\u679C","pivot.table.collapse.ariaCollapse":"\u6298\u53E0\u900F\u89C6\u7ED3\u679C","pivot.chart.title":"\u900F\u89C6\u56FE\u8868","pivot.chart.subtitle":"\u5C06\u4E00\u4E2A\u7EF4\u5EA6\u4E0E\u6700\u591A\u4E24\u4E2A\u5EA6\u91CF\u6620\u5C04\u4E3A\u7D27\u51D1\u56FE\u8868\u3002","pivot.chart.subtitleReady":"{dimension} \xB7 {measure}","pivot.chart.emptyNoDimension":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u884C\u6216\u5217\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoValue":"\u8BF7\u81F3\u5C11\u653E\u5165\u4E00\u4E2A\u503C\u5B57\u6BB5\u540E\u518D\u67E5\u770B\u56FE\u8868\u3002","pivot.chart.emptyNoData":"\u5F53\u524D\u56FE\u8868\u9009\u62E9\u4E0B\u6682\u65E0\u53EF\u5C55\u793A\u6570\u636E\u3002","pivot.chart.dimension":"\u56FE\u8868\u7EF4\u5EA6","pivot.chart.primaryMeasure":"\u4E3B\u5EA6\u91CF","pivot.chart.secondaryMeasure":"\u5BF9\u6BD4\u5EA6\u91CF","pivot.chart.chartType":"\u56FE\u8868\u7C7B\u578B","pivot.chart.style.barVertical":"\u7EB5\u5411\u67F1\u72B6\u56FE","pivot.chart.style.barHorizontal":"\u6A2A\u5411\u67F1\u72B6\u56FE","pivot.chart.style.line":"\u6298\u7EBF\u56FE","pivot.chart.style.scatter":"\u6563\u70B9\u56FE","pivot.chart.collapse.ariaExpand":"\u5C55\u5F00\u56FE\u8868\u533A\u57DF","pivot.chart.collapse.ariaCollapse":"\u6298\u53E0\u56FE\u8868\u533A\u57DF","smartFilter.adaptFilters":"\u7B5B\u9009\u8BBE\u7F6E","smartFilter.addFilters":"\u6DFB\u52A0\u7B5B\u9009","smartFilter.go":"\u6267\u884C","smartFilter.visibleFilters":"\u53EF\u89C1\u7B5B\u9009\u9879","smartFilter.searchPlaceholder":"\u641C\u7D22...","smartFilter.noOptionsFound":"\u672A\u627E\u5230\u9009\u9879","smartFilter.min":"\u6700\u5C0F\u503C","smartFilter.max":"\u6700\u5927\u503C","smartFilter.minMaxPlaceholder":"\u6700\u5C0F\u503C - \u6700\u5927\u503C","smartFilter.operator.equals":"\u7B49\u4E8E","smartFilter.operator.contains":"\u5305\u542B","smartFilter.operator.notContains":"\u4E0D\u5305\u542B","smartFilter.operator.wildcard":"\u901A\u914D\u7B26\u641C\u7D22","smartFilter.operator.notEquals":"\u4E0D\u7B49\u4E8E","smartFilter.operator.greaterThan":"\u5927\u4E8E","smartFilter.operator.lessThan":"\u5C0F\u4E8E","smartFilter.operator.greaterOrEqual":"\u5927\u4E8E\u7B49\u4E8E","smartFilter.operator.lessOrEqual":"\u5C0F\u4E8E\u7B49\u4E8E","smartFilter.operator.between":"\u533A\u95F4","variant.noOptions":"\u65E0\u9009\u9879","variant.defaultSuffix":"\u9ED8\u8BA4","variant.selectVariant":"\u9009\u62E9\u89C6\u56FE","variant.saveView":"\u4FDD\u5B58\u89C6\u56FE","variant.newVariant":"\u65B0\u89C6\u56FE","variant.viewName":"\u89C6\u56FE\u540D\u79F0","variant.setDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","variant.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\uFF09","variant.toast.fetchFailed":"\u52A0\u8F7D\u89C6\u56FE\u5931\u8D25","variant.toast.saveFailed":"\u4FDD\u5B58\u89C6\u56FE\u5931\u8D25","variant.toast.saveSuccess":"\u89C6\u56FE\u4FDD\u5B58\u6210\u529F","variant.toast.deleteFailed":"\u5220\u9664\u89C6\u56FE\u5931\u8D25","variant.toast.deleteSuccess":"\u89C6\u56FE\u5220\u9664\u6210\u529F","variant.toast.defaultFailed":"\u66F4\u65B0\u9ED8\u8BA4\u89C6\u56FE\u5931\u8D25","variant.toast.defaultSuccess":"\u9ED8\u8BA4\u89C6\u56FE\u5DF2\u66F4\u65B0","layout.saveLayout":"\u4FDD\u5B58\u5E03\u5C40","layout.layoutOptions":"\u5E03\u5C40\u9009\u9879","layout.selectLayout":"\u9009\u62E9\u5E03\u5C40","layout.saveCurrentLayout":"\u4FDD\u5B58\u5F53\u524D\u5E03\u5C40...","layout.noSavedLayouts":"\u6682\u65E0\u5DF2\u4FDD\u5B58\u5E03\u5C40","layout.removeDefault":"\u53D6\u6D88\u9ED8\u8BA4","layout.setAsDefault":"\u8BBE\u4E3A\u9ED8\u8BA4","layout.layoutName":"\u5E03\u5C40\u540D\u79F0","layout.layoutDescription":"\u63CF\u8FF0","layout.layoutNameHelper":"\u4F8B\u5982\uFF1A\u7D27\u51D1\u89C6\u56FE","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u5C06\u8986\u76D6\u540C\u540D\u5E03\u5C40","layout.useAsDefault":"\u7528\u4F5C\u9ED8\u8BA4\u5E03\u5C40","layout.publicAllUsers":"\u516C\u5F00\uFF08\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09","layout.toast.loadFallback":"\u540E\u7AEF\u52A0\u8F7D\u5E03\u5C40\u5931\u8D25\uFF0C\u5DF2\u56DE\u9000\u5230\u672C\u5730\u5B58\u50A8","layout.toast.saveSuccess":"\u5E03\u5C40\u4FDD\u5B58\u6210\u529F","layout.toast.saveLocalSuccess":"\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.backendUnavailableSavedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","layout.toast.deleteSuccess":"\u5E03\u5C40\u5220\u9664\u6210\u529F","layout.toast.deleteLocalSuccess":"\u5E03\u5C40\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.backendUnavailableDeletedLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4ECE\u672C\u5730\u5B58\u50A8\u5220\u9664","layout.toast.defaultSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u8BBE\u7F6E","layout.toast.defaultLocalSuccess":"\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u5728\u672C\u5730\u5B58\u50A8\u8BBE\u7F6E","layout.toast.backendUnavailableDefaultLocal":"\u540E\u7AEF\u4E0D\u53EF\u7528\uFF0C\u9ED8\u8BA4\u5E03\u5C40\u5DF2\u4FDD\u5B58\u5230\u672C\u5730\u5B58\u50A8","dateRange.label":"\u65E5\u671F\u8303\u56F4","dateRange.startDate":"\u5F00\u59CB\u65E5\u671F","dateRange.endDate":"\u7ED3\u675F\u65E5\u671F","dateRange.select":"\u8BF7\u9009\u62E9...","dateRange.today":"\u4ECA\u5929","dateRange.thisWeek":"\u672C\u5468","dateRange.thisMonth":"\u672C\u6708","graph.records":"{count} \u6761\u8BB0\u5F55","graph.kpi.totalRecords":"\u603B\u8BB0\u5F55\u6570","graph.kpi.totalReport":"\u603B\u7533\u62A5\u5DE5\u65F6","graph.kpi.totalBillable":"\u603B\u53EF\u8BA1\u8D39\u5DE5\u65F6","graph.kpi.efficiency":"\u6548\u7387","graph.kpi.amount":"\u91D1\u989D","graph.kpi.flagged":"\u6807\u8BB0","graph.chart.billable.title":"\u7EF4\u5EA6\u8BA1\u8D39\u5DE5\u65F6","graph.chart.billable.subtitle":"\u6309\u53EF\u8BA1\u8D39\u5DE5\u65F6\u6392\u5E8F\u524D\u5217","graph.chart.efficiency.title":"\u4EBA\u5458\u6548\u7387","graph.chart.efficiency.subtitle":"\u6309\u6700\u4F4E\u6548\u7387\u4F18\u5148","graph.chart.status.title":"\u72B6\u6001\u5206\u5E03","graph.chart.status.subtitle":"\u6309\u72B6\u6001\u8BB0\u5F55\u5360\u6BD4","graph.dataBody":"\u6570\u636E\u660E\u7EC6","graph.reportTitle":"\u56FE\u8868\u62A5\u8868","graph.unassigned":"\u672A\u5206\u914D","graph.column.reportHours":"\u7533\u62A5\u5DE5\u65F6","graph.column.billableHours":"\u53EF\u8BA1\u8D39\u5DE5\u65F6","detail.searchAi.placeholder":"\u641C\u7D22\u5B57\u6BB5\uFF1B\u5982\u65E0\u7ED3\u679C\u5219\u81EA\u52A8\u89E6\u53D1 AI...","detail.searchAi.matches":"{count} \u6761\u5339\u914D\u7ED3\u679C","detail.searchAi.noMatch":"\u672A\u627E\u5230\u5339\u914D\u5B57\u6BB5\u3002","detail.searchAi.autoAiFallback":"\u672A\u547D\u4E2D\u5B57\u6BB5\uFF0C\u6B63\u5728\u89E6\u53D1 AI \u5206\u6790...","detail.searchAi.aiResultTitle":"AI \u5206\u6790\u7ED3\u679C","detail.table.title":"\u5173\u8054\u8BB0\u5F55","kanban.empty":"\u5C06\u5361\u7247\u62D6\u5230\u8FD9\u91CC","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u91CA\u653E\u540E\u79FB\u52A8\u5230\u8BE5 bucket","kanban.card.progress":"\u8FDB\u5EA6","kanban.card.openDetail":"\u6253\u5F00\u8BE6\u60C5","kanban.priority.critical":"\u7D27\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u5EFA\u6761\u76EE","quickCreate.createWithTitle":"\u521B\u5EFA{title}","quickEdit.editWithTitle":"\u7F16\u8F91{title}","quickDelete.confirmTitle":"\u786E\u8BA4\u5220\u9664","quickDelete.confirmMessageSingle":"\u786E\u8BA4\u5220\u9664\u5F53\u524D\u9009\u4E2D\u8BB0\u5F55\u5417\uFF1F","quickDelete.confirmMessageMultiple":"\u786E\u8BA4\u5220\u9664\u5DF2\u9009\u4E2D\u7684 {count} \u6761\u8BB0\u5F55\u5417\uFF1F","messageBox.confirm":"\u786E\u5B9A","messageBox.cancel":"\u53D6\u6D88"},Rf={"common.cancel":"Annuler","common.save":"Enregistrer","common.ok":"OK","common.done":"Terminer","common.search":"Rechercher","common.none":"Aucun","common.all":"Tout","common.noData":"Aucune donn\xE9e","common.copy":"Copier","common.delete":"Supprimer","common.loading":"Chargement...","header.searchPlaceholder":"Demandez-moi...","header.theme.system":"Th\xE8me : Syst\xE8me","header.theme.dark":"Th\xE8me : Sombre","header.theme.light":"Th\xE8me : Clair","header.menu.setting":"Param\xE8tres","header.menu.logout":"Se d\xE9connecter","navigation.expand":"D\xE9velopper la navigation","navigation.collapse":"R\xE9duire la navigation","navigation.searchPlaceholder":"Rechercher dans le menu...","navigation.noMatch":"Aucun \xE9l\xE9ment correspondant","navigation.noAccessibleApp":"Aucune application accessible","navigation.noItems":"Aucun \xE9l\xE9ment \xE0 afficher","navigation.expandView":"D\xE9velopper {title}","table.toolbar.searchPlaceholder":"Rechercher...","table.title.default":"Tableau de donn\xE9es","table.toolbar.groupBy":"Grouper","table.toolbar.summary":"R\xE9sum\xE9","table.toolbar.columns":"Colonnes","table.toolbar.export":"Exporter","table.toolbar.itemsPerPage":"Lignes par page :","table.toolbar.pageOf":"Page {current} sur {total}","table.toolbar.newItem":"Nouvel \xE9l\xE9ment","table.toolbar.editItem":"Modifier l'\xE9l\xE9ment","table.toolbar.deleteItem":"Supprimer l'\xE9l\xE9ment","table.toolbar.graphicReport":"Rapport graphique","table.toolbar.saveLayout":"Enregistrer la vue","table.menu.groupBy":"Grouper","table.menu.clearAll":"Tout effacer","table.menu.visibleColumns":"Colonnes visibles","table.menu.showSummaryRow":"Afficher la ligne de r\xE9sum\xE9","table.menu.noNumericColumns":"Aucune colonne num\xE9rique","table.group.expandAll":"D\xE9velopper tous les groupes","table.group.collapseAll":"R\xE9duire tous les groupes","table.mobile.notImplemented":"Vue mobile non impl\xE9ment\xE9e","table.headerMenu.sortAsc":"Trier ascendant","table.headerMenu.sortDesc":"Trier descendant","table.headerMenu.clearSort":"Effacer le tri","table.headerMenu.configureSort":"Configurer le tri...","table.headerMenu.group":"Grouper par cette colonne","table.headerMenu.ungroup":"Retirer du groupement","table.headerMenu.addSummary":"Inclure dans le r\xE9sum\xE9","table.headerMenu.removeSummary":"Retirer du r\xE9sum\xE9","table.headerMenu.hideColumn":"Masquer la colonne","table.sortDialog.title":"Param\xE8tres de tri","table.sortDialog.empty":"Aucune r\xE8gle de tri. Ajoutez-en une pour commencer.","table.sortDialog.addRule":"Ajouter une r\xE8gle","table.sortDialog.clearAll":"Tout effacer","table.sortDialog.asc":"Ascendant","table.sortDialog.desc":"Descendant","pivot.title.default":"Tableau crois\xE9 dynamique","pivot.subtitle.default":"Faites glisser les champs pour configurer le tableau crois\xE9.","pivot.empty":"Ajoutez au moins un champ de valeur pour afficher le r\xE9sultat.","pivot.records":"Enregistrements","pivot.afterFilter":"Apr\xE8s filtre","pivot.grandTotal":"Total g\xE9n\xE9ral","pivot.resultLabel":"R\xE9sultat","pivot.valueLabel":"Valeur","pivot.table.dimensions":"Dimensions","pivot.config.title":"Configuration","pivot.fieldList":"Liste des champs","pivot.availableDimensions":"Dimensions disponibles","pivot.allFieldsInUse":"Tous les champs sont d\xE9j\xE0 utilis\xE9s.","pivot.zone.rows":"Lignes","pivot.zone.columns":"Colonnes","pivot.zone.filters":"Filtres","pivot.zone.values":"Valeurs","pivot.hint.rows":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des lignes","pivot.hint.columns":"D\xE9posez les champs ici pour construire la hi\xE9rarchie des colonnes","pivot.hint.filters":"D\xE9posez les champs ici pour les filtres du rapport","pivot.hint.values":"D\xE9posez les champs num\xE9riques ici pour les agr\xE9gations","pivot.clearArea":"Vider la zone","pivot.filter.na":"N/A","pivot.filter.noValues":"Aucune valeur","pivot.filter.noneSelected":"Aucune s\xE9lection","pivot.filter.allValues":"Toutes les valeurs","pivot.filter.selectedCount":"{selected} / {total} s\xE9lectionn\xE9es","pivot.filter.selectAll":"Tout s\xE9lectionner","pivot.filter.deselectAll":"Tout d\xE9s\xE9lectionner","pivot.filter.noResults":"Aucun r\xE9sultat","pivot.collapse.ariaExpand":"D\xE9velopper la zone de configuration","pivot.collapse.ariaCollapse":"R\xE9duire la zone de configuration","pivot.agg.sum":"Somme","pivot.agg.count":"Compte","pivot.agg.avg":"Moyenne","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"S\xE9lectionner un preset","pivot.preset.save":"Enregistrer le preset","pivot.preset.delete":"Supprimer le preset","pivot.preset.saveDialogTitle":"Enregistrer le preset actuel","pivot.preset.nameLabel":"Nom du preset","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"R\xE9sultat du pivot","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"D\xE9velopper le r\xE9sultat du pivot","pivot.table.collapse.ariaCollapse":"R\xE9duire le r\xE9sultat du pivot","pivot.chart.title":"Graphique pivot","pivot.chart.subtitle":"Associez une dimension et jusqu\u2019\xE0 deux mesures dans un graphique compact.","pivot.chart.subtitleReady":"{dimension} par {measure}","pivot.chart.emptyNoDimension":"Ajoutez au moins un champ de ligne ou de colonne pour afficher le graphique.","pivot.chart.emptyNoValue":"Ajoutez au moins un champ de valeur pour afficher le graphique.","pivot.chart.emptyNoData":"Aucune donn\xE9e disponible pour la s\xE9lection actuelle du graphique.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Mesure","pivot.chart.secondaryMeasure":"Mesure de comparaison","pivot.chart.chartType":"Type de graphique","pivot.chart.style.barVertical":"Barres verticales","pivot.chart.style.barHorizontal":"Barres horizontales","pivot.chart.style.line":"Ligne","pivot.chart.style.scatter":"Nuage de points","pivot.chart.collapse.ariaExpand":"D\xE9velopper la zone du graphique","pivot.chart.collapse.ariaCollapse":"R\xE9duire la zone du graphique","smartFilter.adaptFilters":"Adapter les filtres","smartFilter.addFilters":"Ajouter des filtres","smartFilter.go":"Ex\xE9cuter","smartFilter.visibleFilters":"Filtres visibles","smartFilter.searchPlaceholder":"Rechercher...","smartFilter.noOptionsFound":"Aucune option trouv\xE9e","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"\xC9gal \xE0","smartFilter.operator.contains":"Contient","smartFilter.operator.notContains":"Ne contient pas","smartFilter.operator.wildcard":"Recherche g\xE9n\xE9rique","smartFilter.operator.notEquals":"Diff\xE9rent de","smartFilter.operator.greaterThan":"Sup\xE9rieur \xE0","smartFilter.operator.lessThan":"Inf\xE9rieur \xE0","smartFilter.operator.greaterOrEqual":"Sup\xE9rieur ou \xE9gal","smartFilter.operator.lessOrEqual":"Inf\xE9rieur ou \xE9gal","smartFilter.operator.between":"Entre","variant.noOptions":"Aucune option","variant.defaultSuffix":"Par d\xE9faut","variant.selectVariant":"S\xE9lectionner une vue","variant.saveView":"Enregistrer la vue","variant.newVariant":"Nouvelle vue","variant.viewName":"Nom de la vue","variant.setDefault":"D\xE9finir par d\xE9faut","variant.publicAllUsers":"Public (tous les utilisateurs)","variant.toast.fetchFailed":"\xC9chec du chargement des vues","variant.toast.saveFailed":"\xC9chec de l'enregistrement de la vue","variant.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","variant.toast.deleteFailed":"\xC9chec de la suppression de la vue","variant.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","variant.toast.defaultFailed":"\xC9chec de la mise \xE0 jour de la vue par d\xE9faut","variant.toast.defaultSuccess":"Vue par d\xE9faut mise \xE0 jour","layout.saveLayout":"Enregistrer la vue","layout.layoutOptions":"Options de vue","layout.selectLayout":"S\xE9lectionner une vue","layout.saveCurrentLayout":"Enregistrer la vue actuelle...","layout.noSavedLayouts":"Aucune vue enregistr\xE9e","layout.removeDefault":"Retirer le d\xE9faut","layout.setAsDefault":"D\xE9finir par d\xE9faut","layout.layoutName":"Nom de la vue","layout.layoutDescription":"Description","layout.layoutNameHelper":"ex. : Vue compacte","layout.warningOverwrite":"Attention : la vue existante sera \xE9cras\xE9e","layout.useAsDefault":"Utiliser comme vue par d\xE9faut","layout.publicAllUsers":"Public (visible par tous les utilisateurs)","layout.toast.loadFallback":"\xC9chec du chargement depuis le backend, bascule vers le stockage local","layout.toast.saveSuccess":"Vue enregistr\xE9e avec succ\xE8s","layout.toast.saveLocalSuccess":"Vue enregistr\xE9e dans le stockage local","layout.toast.backendUnavailableSavedLocal":"Backend indisponible, enregistr\xE9 en local","layout.toast.deleteSuccess":"Vue supprim\xE9e avec succ\xE8s","layout.toast.deleteLocalSuccess":"Vue supprim\xE9e du stockage local","layout.toast.backendUnavailableDeletedLocal":"Backend indisponible, supprim\xE9 en local","layout.toast.defaultSuccess":"Vue par d\xE9faut d\xE9finie","layout.toast.defaultLocalSuccess":"Vue par d\xE9faut d\xE9finie en local","layout.toast.backendUnavailableDefaultLocal":"Backend indisponible, d\xE9faut enregistr\xE9 en local","dateRange.label":"Plage de dates","dateRange.startDate":"Date de d\xE9but","dateRange.endDate":"Date de fin","dateRange.select":"S\xE9lectionner...","dateRange.today":"Aujourd'hui","dateRange.thisWeek":"Cette semaine","dateRange.thisMonth":"Ce mois-ci","graph.records":"{count} enregistrements","graph.kpi.totalRecords":"Total des enregistrements","graph.kpi.totalReport":"Total d\xE9clar\xE9","graph.kpi.totalBillable":"Total facturable","graph.kpi.efficiency":"Efficacit\xE9","graph.kpi.amount":"Montant","graph.kpi.flagged":"Signal\xE9","graph.chart.billable.title":"Facturable par dimension","graph.chart.billable.subtitle":"Top valeurs par heures facturables","graph.chart.efficiency.title":"Efficacit\xE9 par personne","graph.chart.efficiency.subtitle":"Efficacit\xE9 la plus faible en premier","graph.chart.status.title":"R\xE9partition des statuts","graph.chart.status.subtitle":"Ratio des enregistrements par statut","graph.dataBody":"Donn\xE9es","graph.reportTitle":"Rapport graphique","graph.unassigned":"Non attribu\xE9","graph.column.reportHours":"Heures d\xE9clar\xE9es","graph.column.billableHours":"Heures facturables","detail.searchAi.placeholder":"Rechercher des champs, ou interroger l\u2019IA en cas d\u2019absence de r\xE9sultat...","detail.searchAi.matches":"{count} correspondances trouv\xE9es","detail.searchAi.noMatch":"Aucun champ correspondant trouv\xE9.","detail.searchAi.autoAiFallback":"Aucune correspondance directe. Analyse IA en cours...","detail.searchAi.aiResultTitle":"Analyse IA","detail.table.title":"Enregistrements li\xE9s","kanban.empty":"D\xE9posez les cartes ici","kanban.bucket.limit":"Limite","kanban.bucket.dropHere":"Rel\xE2chez pour d\xE9placer dans cette colonne","kanban.card.progress":"Progression","kanban.card.openDetail":"Ouvrir le d\xE9tail","kanban.priority.critical":"Critique","kanban.priority.high":"\xC9lev\xE9e","kanban.priority.medium":"Moyenne","kanban.priority.low":"Faible","quickCreate.newItem":"Nouvel \xE9l\xE9ment","quickCreate.createWithTitle":"Cr\xE9er {title}","quickEdit.editWithTitle":"Modifier {title}","quickDelete.confirmTitle":"Confirmer la suppression","quickDelete.confirmMessageSingle":"Voulez-vous vraiment supprimer l\u2019enregistrement s\xE9lectionn\xE9 ?","quickDelete.confirmMessageMultiple":"Voulez-vous vraiment supprimer les {count} enregistrements s\xE9lectionn\xE9s ?","messageBox.confirm":"OK","messageBox.cancel":"Annuler"},Df={"common.cancel":"Abbrechen","common.save":"Speichern","common.ok":"OK","common.done":"Fertig","common.search":"Suchen","common.none":"Keine","common.all":"Alle","common.noData":"Keine Daten","common.copy":"Kopieren","common.delete":"L\xF6schen","common.loading":"Wird geladen...","header.searchPlaceholder":"Frag mich...","header.theme.system":"Theme: System","header.theme.dark":"Theme: Dunkel","header.theme.light":"Theme: Hell","header.menu.setting":"Einstellungen","header.menu.logout":"Abmelden","navigation.expand":"Navigation erweitern","navigation.collapse":"Navigation einklappen","navigation.searchPlaceholder":"Men\xFC suchen...","navigation.noMatch":"Keine passenden Men\xFCeintr\xE4ge","navigation.noAccessibleApp":"Keine verf\xFCgbaren Anwendungen","navigation.noItems":"Keine Eintr\xE4ge vorhanden","navigation.expandView":"{title} aufklappen","table.toolbar.searchPlaceholder":"Suchen...","table.title.default":"Datentabelle","table.toolbar.groupBy":"Gruppieren","table.toolbar.summary":"Zusammenfassung","table.toolbar.columns":"Spalten","table.toolbar.export":"Export","table.toolbar.itemsPerPage":"Zeilen pro Seite:","table.toolbar.pageOf":"Seite {current} von {total}","table.toolbar.newItem":"Neuer Eintrag","table.toolbar.editItem":"Eintrag bearbeiten","table.toolbar.deleteItem":"Eintrag l\xF6schen","table.toolbar.graphicReport":"Grafikbericht","table.toolbar.saveLayout":"Layout speichern","table.menu.groupBy":"Gruppieren","table.menu.clearAll":"Alles l\xF6schen","table.menu.visibleColumns":"Sichtbare Spalten","table.menu.showSummaryRow":"Summenzeile anzeigen","table.menu.noNumericColumns":"Keine numerischen Spalten","table.group.expandAll":"Alle Gruppen aufklappen","table.group.collapseAll":"Alle Gruppen zuklappen","table.mobile.notImplemented":"Mobile Ansicht nicht implementiert","table.headerMenu.sortAsc":"Aufsteigend sortieren","table.headerMenu.sortDesc":"Absteigend sortieren","table.headerMenu.clearSort":"Sortierung entfernen","table.headerMenu.configureSort":"Sortierung konfigurieren...","table.headerMenu.group":"Nach dieser Spalte gruppieren","table.headerMenu.ungroup":"Aus Gruppierung entfernen","table.headerMenu.addSummary":"In Summe einbeziehen","table.headerMenu.removeSummary":"Aus Summe entfernen","table.headerMenu.hideColumn":"Spalte ausblenden","table.sortDialog.title":"Sortiereinstellungen","table.sortDialog.empty":"Keine Sortierregeln. F\xFCgen Sie eine hinzu, um zu sortieren.","table.sortDialog.addRule":"Regel hinzuf\xFCgen","table.sortDialog.clearAll":"Alle l\xF6schen","table.sortDialog.asc":"Aufsteigend","table.sortDialog.desc":"Absteigend","pivot.title.default":"Pivot-Tabelle","pivot.subtitle.default":"Ziehen Sie Felder, um die Pivot-Tabelle zu konfigurieren.","pivot.empty":"Ziehen Sie mindestens ein Wertefeld, um das Ergebnis anzuzeigen.","pivot.records":"Datens\xE4tze","pivot.afterFilter":"Nach Filter","pivot.grandTotal":"Gesamtsumme","pivot.resultLabel":"Ergebnis","pivot.valueLabel":"Wert","pivot.table.dimensions":"Dimensionen","pivot.config.title":"Konfiguration","pivot.fieldList":"Feldliste","pivot.availableDimensions":"Verf\xFCgbare Dimensionen","pivot.allFieldsInUse":"Alle Felder sind bereits verwendet.","pivot.zone.rows":"Zeilen","pivot.zone.columns":"Spalten","pivot.zone.filters":"Filter","pivot.zone.values":"Werte","pivot.hint.rows":"Felder hierhin ziehen, um die Zeilenhierarchie zu erstellen","pivot.hint.columns":"Felder hierhin ziehen, um die Spaltenhierarchie zu erstellen","pivot.hint.filters":"Felder hierhin ziehen f\xFCr Berichtsfilter","pivot.hint.values":"Numerische Felder hierhin ziehen f\xFCr Aggregation","pivot.clearArea":"Bereich leeren","pivot.filter.na":"N/V","pivot.filter.noValues":"Keine Werte","pivot.filter.noneSelected":"Nichts ausgew\xE4hlt","pivot.filter.allValues":"Alle Werte","pivot.filter.selectedCount":"{selected} / {total} ausgew\xE4hlt","pivot.filter.selectAll":"Alle ausw\xE4hlen","pivot.filter.deselectAll":"Alle abw\xE4hlen","pivot.filter.noResults":"Keine Ergebnisse","pivot.collapse.ariaExpand":"Konfigurationsbereich erweitern","pivot.collapse.ariaCollapse":"Konfigurationsbereich reduzieren","pivot.agg.sum":"Summe","pivot.agg.count":"Anzahl","pivot.agg.avg":"Durchschnitt","pivot.agg.min":"Min","pivot.agg.max":"Max","pivot.preset.selectPlaceholder":"Preset w\xE4hlen","pivot.preset.save":"Preset speichern","pivot.preset.delete":"Preset l\xF6schen","pivot.preset.saveDialogTitle":"Aktuelles Preset speichern","pivot.preset.nameLabel":"Preset-Name","pivot.preset.defaultName":"Preset {index}","pivot.table.sectionTitle":"Pivot-Ergebnis","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"Pivot-Ergebnis erweitern","pivot.table.collapse.ariaCollapse":"Pivot-Ergebnis reduzieren","pivot.chart.title":"Pivot-Diagramm","pivot.chart.subtitle":"Eine Dimension und bis zu zwei Kennzahlen in einem kompakten Diagramm abbilden.","pivot.chart.subtitleReady":"{dimension} nach {measure}","pivot.chart.emptyNoDimension":"F\xFCgen Sie mindestens ein Zeilen- oder Spaltenfeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoValue":"F\xFCgen Sie mindestens ein Wertefeld hinzu, um das Diagramm anzuzeigen.","pivot.chart.emptyNoData":"F\xFCr die aktuelle Diagrammauswahl sind keine Daten verf\xFCgbar.","pivot.chart.dimension":"Dimension","pivot.chart.primaryMeasure":"Kennzahl","pivot.chart.secondaryMeasure":"Vergleichskennzahl","pivot.chart.chartType":"Diagrammtyp","pivot.chart.style.barVertical":"Vertikale Balken","pivot.chart.style.barHorizontal":"Horizontale Balken","pivot.chart.style.line":"Linie","pivot.chart.style.scatter":"Streudiagramm","pivot.chart.collapse.ariaExpand":"Diagrammbereich erweitern","pivot.chart.collapse.ariaCollapse":"Diagrammbereich reduzieren","smartFilter.adaptFilters":"Filter anpassen","smartFilter.addFilters":"Filter hinzuf\xFCgen","smartFilter.go":"Los","smartFilter.visibleFilters":"Sichtbare Filter","smartFilter.searchPlaceholder":"Suchen...","smartFilter.noOptionsFound":"Keine Optionen gefunden","smartFilter.min":"Min","smartFilter.max":"Max","smartFilter.minMaxPlaceholder":"Min - Max","smartFilter.operator.equals":"Gleich","smartFilter.operator.contains":"Enth\xE4lt","smartFilter.operator.notContains":"Enth\xE4lt nicht","smartFilter.operator.wildcard":"Wildcard-Suche","smartFilter.operator.notEquals":"Ungleich","smartFilter.operator.greaterThan":"Gr\xF6\xDFer als","smartFilter.operator.lessThan":"Kleiner als","smartFilter.operator.greaterOrEqual":"Gr\xF6\xDFer gleich","smartFilter.operator.lessOrEqual":"Kleiner gleich","smartFilter.operator.between":"Zwischen","variant.noOptions":"Keine Optionen","variant.defaultSuffix":"Standard","variant.selectVariant":"Variante w\xE4hlen","variant.saveView":"Ansicht speichern","variant.newVariant":"Neue Variante","variant.viewName":"Ansichtsname","variant.setDefault":"Als Standard setzen","variant.publicAllUsers":"\xD6ffentlich (alle Benutzer)","variant.toast.fetchFailed":"Varianten konnten nicht geladen werden","variant.toast.saveFailed":"Variante konnte nicht gespeichert werden","variant.toast.saveSuccess":"Variante erfolgreich gespeichert","variant.toast.deleteFailed":"Variante konnte nicht gel\xF6scht werden","variant.toast.deleteSuccess":"Variante erfolgreich gel\xF6scht","variant.toast.defaultFailed":"Standardvariante konnte nicht aktualisiert werden","variant.toast.defaultSuccess":"Standardvariante aktualisiert","layout.saveLayout":"Layout speichern","layout.layoutOptions":"Layout-Optionen","layout.selectLayout":"Layout w\xE4hlen","layout.saveCurrentLayout":"Aktuelles Layout speichern...","layout.noSavedLayouts":"Keine gespeicherten Layouts","layout.removeDefault":"Standard entfernen","layout.setAsDefault":"Als Standard setzen","layout.layoutName":"Layoutname","layout.layoutDescription":"Beschreibung","layout.layoutNameHelper":"z. B. Kompaktansicht","layout.warningOverwrite":"Warnung: Vorhandenes Layout wird \xFCberschrieben","layout.useAsDefault":"Als Standardlayout verwenden","layout.publicAllUsers":"\xD6ffentlich (f\xFCr alle sichtbar)","layout.toast.loadFallback":"Layouts konnten nicht vom Backend geladen werden, Wechsel zu lokalem Speicher","layout.toast.saveSuccess":"Layout erfolgreich gespeichert","layout.toast.saveLocalSuccess":"Layout im lokalen Speicher gespeichert","layout.toast.backendUnavailableSavedLocal":"Backend nicht verf\xFCgbar, lokal gespeichert","layout.toast.deleteSuccess":"Layout erfolgreich gel\xF6scht","layout.toast.deleteLocalSuccess":"Layout aus lokalem Speicher gel\xF6scht","layout.toast.backendUnavailableDeletedLocal":"Backend nicht verf\xFCgbar, lokal gel\xF6scht","layout.toast.defaultSuccess":"Standardlayout gesetzt","layout.toast.defaultLocalSuccess":"Standardlayout lokal gesetzt","layout.toast.backendUnavailableDefaultLocal":"Backend nicht verf\xFCgbar, Standard lokal gespeichert","dateRange.label":"Datumsbereich","dateRange.startDate":"Startdatum","dateRange.endDate":"Enddatum","dateRange.select":"Ausw\xE4hlen...","dateRange.today":"Heute","dateRange.thisWeek":"Diese Woche","dateRange.thisMonth":"Diesen Monat","graph.records":"{count} Datens\xE4tze","graph.kpi.totalRecords":"Gesamt Datens\xE4tze","graph.kpi.totalReport":"Gesamt Report","graph.kpi.totalBillable":"Gesamt abrechenbar","graph.kpi.efficiency":"Effizienz","graph.kpi.amount":"Betrag","graph.kpi.flagged":"Markiert","graph.chart.billable.title":"Abrechenbar nach Dimension","graph.chart.billable.subtitle":"Top-Werte nach abrechenbaren Stunden","graph.chart.efficiency.title":"Effizienz pro Person","graph.chart.efficiency.subtitle":"Niedrigste Effizienz zuerst","graph.chart.status.title":"Statusverteilung","graph.chart.status.subtitle":"Anteil je Status","graph.dataBody":"Datentabelle","graph.reportTitle":"Grafikbericht","graph.unassigned":"Nicht zugewiesen","graph.column.reportHours":"Melde-Stunden","graph.column.billableHours":"Abrechenbare Stunden","detail.searchAi.placeholder":"Felder suchen, oder bei keinem Treffer die KI fragen...","detail.searchAi.matches":"{count} Treffer gefunden","detail.searchAi.noMatch":"Kein passendes Feld gefunden.","detail.searchAi.autoAiFallback":"Keine direkte \xDCbereinstimmung. KI-Analyse wird gestartet...","detail.searchAi.aiResultTitle":"KI-Ergebnis","detail.table.title":"Verkn\xFCpfte Eintr\xE4ge","kanban.empty":"Karten hier ablegen","kanban.bucket.limit":"Limit","kanban.bucket.dropHere":"Loslassen, um in diese Spalte zu verschieben","kanban.card.progress":"Fortschritt","kanban.card.openDetail":"Detail \xF6ffnen","kanban.priority.critical":"Kritisch","kanban.priority.high":"Hoch","kanban.priority.medium":"Mittel","kanban.priority.low":"Niedrig","quickCreate.newItem":"Neuer Eintrag","quickCreate.createWithTitle":"{title} erstellen","quickEdit.editWithTitle":"{title} bearbeiten","quickDelete.confirmTitle":"L\xF6schen best\xE4tigen","quickDelete.confirmMessageSingle":"M\xF6chten Sie den ausgew\xE4hlten Datensatz wirklich l\xF6schen?","quickDelete.confirmMessageMultiple":"M\xF6chten Sie die {count} ausgew\xE4hlten Datens\xE4tze wirklich l\xF6schen?","messageBox.confirm":"OK","messageBox.cancel":"Abbrechen"},Mf={"common.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB","common.save":"\u4FDD\u5B58","common.ok":"OK","common.done":"\u5B8C\u4E86","common.search":"\u691C\u7D22","common.none":"\u306A\u3057","common.all":"\u3059\u3079\u3066","common.noData":"\u30C7\u30FC\u30BF\u306A\u3057","common.copy":"\u30B3\u30D4\u30FC","common.delete":"\u524A\u9664","common.loading":"\u8AAD\u307F\u8FBC\u307F\u4E2D...","header.searchPlaceholder":"\u4F55\u304B\u805E\u3044\u3066\u304F\u3060\u3055\u3044...","header.theme.system":"\u30C6\u30FC\u30DE\uFF1A\u30B7\u30B9\u30C6\u30E0","header.theme.dark":"\u30C6\u30FC\u30DE\uFF1A\u30C0\u30FC\u30AF","header.theme.light":"\u30C6\u30FC\u30DE\uFF1A\u30E9\u30A4\u30C8","header.menu.setting":"\u8A2D\u5B9A","header.menu.logout":"\u30ED\u30B0\u30A2\u30A6\u30C8","navigation.expand":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u5C55\u958B","navigation.collapse":"\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u3092\u6298\u308A\u305F\u305F\u3080","navigation.searchPlaceholder":"\u30E1\u30CB\u30E5\u30FC\u3092\u691C\u7D22...","navigation.noMatch":"\u4E00\u81F4\u3059\u308B\u30E1\u30CB\u30E5\u30FC\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noAccessibleApp":"\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A\u30A2\u30D7\u30EA\u304C\u3042\u308A\u307E\u305B\u3093","navigation.noItems":"\u8868\u793A\u3067\u304D\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093","navigation.expandView":"{title} \u3092\u5C55\u958B","table.toolbar.searchPlaceholder":"\u691C\u7D22...","table.title.default":"\u30C7\u30FC\u30BF\u30C6\u30FC\u30D6\u30EB","table.toolbar.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.toolbar.summary":"\u96C6\u8A08","table.toolbar.columns":"\u5217","table.toolbar.export":"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8","table.toolbar.itemsPerPage":"1\u30DA\u30FC\u30B8\u306E\u4EF6\u6570\uFF1A","table.toolbar.pageOf":"{current} / {total} \u30DA\u30FC\u30B8","table.toolbar.newItem":"\u65B0\u898F\u4F5C\u6210","table.toolbar.editItem":"\u7DE8\u96C6","table.toolbar.deleteItem":"\u524A\u9664","table.toolbar.graphicReport":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","table.toolbar.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","table.menu.groupBy":"\u30B0\u30EB\u30FC\u30D7\u5316","table.menu.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.menu.visibleColumns":"\u8868\u793A\u5217","table.menu.showSummaryRow":"\u96C6\u8A08\u884C\u3092\u8868\u793A","table.menu.noNumericColumns":"\u6570\u5024\u5217\u304C\u3042\u308A\u307E\u305B\u3093","table.group.expandAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u5C55\u958B","table.group.collapseAll":"\u3059\u3079\u3066\u306E\u30B0\u30EB\u30FC\u30D7\u3092\u6298\u308A\u305F\u305F\u3080","table.mobile.notImplemented":"\u30E2\u30D0\u30A4\u30EB\u8868\u793A\u306F\u672A\u5B9F\u88C5\u3067\u3059","table.headerMenu.sortAsc":"\u6607\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.sortDesc":"\u964D\u9806\u3067\u4E26\u3079\u66FF\u3048","table.headerMenu.clearSort":"\u4E26\u3079\u66FF\u3048\u3092\u89E3\u9664","table.headerMenu.configureSort":"\u4E26\u3079\u66FF\u3048\u3092\u8A2D\u5B9A...","table.headerMenu.group":"\u3053\u306E\u5217\u3067\u30B0\u30EB\u30FC\u30D7\u5316","table.headerMenu.ungroup":"\u30B0\u30EB\u30FC\u30D7\u304B\u3089\u5916\u3059","table.headerMenu.addSummary":"\u96C6\u8A08\u306B\u8FFD\u52A0","table.headerMenu.removeSummary":"\u96C6\u8A08\u304B\u3089\u524A\u9664","table.headerMenu.hideColumn":"\u5217\u3092\u975E\u8868\u793A","table.sortDialog.title":"\u4E26\u3079\u66FF\u3048\u8A2D\u5B9A","table.sortDialog.empty":"\u4E26\u3079\u66FF\u3048\u30EB\u30FC\u30EB\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","table.sortDialog.addRule":"\u30EB\u30FC\u30EB\u3092\u8FFD\u52A0","table.sortDialog.clearAll":"\u3059\u3079\u3066\u30AF\u30EA\u30A2","table.sortDialog.asc":"\u6607\u9806","table.sortDialog.desc":"\u964D\u9806","pivot.title.default":"\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB","pivot.subtitle.default":"\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30D4\u30DC\u30C3\u30C8\u30C6\u30FC\u30D6\u30EB\u3092\u8A2D\u5B9A\u3057\u307E\u3059\u3002","pivot.empty":"\u7D50\u679C\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5024\u30A8\u30EA\u30A2\u306B\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.records":"\u30EC\u30B3\u30FC\u30C9","pivot.afterFilter":"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C","pivot.grandTotal":"\u7DCF\u8A08","pivot.resultLabel":"\u7D50\u679C","pivot.valueLabel":"\u5024","pivot.table.dimensions":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.config.title":"\u8A2D\u5B9A","pivot.fieldList":"\u30D5\u30A3\u30FC\u30EB\u30C9\u4E00\u89A7","pivot.availableDimensions":"\u5229\u7528\u53EF\u80FD\u306A\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.allFieldsInUse":"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u4F7F\u7528\u4E2D\u3067\u3059\u3002","pivot.zone.rows":"\u884C","pivot.zone.columns":"\u5217","pivot.zone.filters":"\u30D5\u30A3\u30EB\u30BF\u30FC","pivot.zone.values":"\u5024","pivot.hint.rows":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u884C\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.columns":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u5217\u968E\u5C64\u3092\u4F5C\u6210","pivot.hint.filters":"\u3053\u3053\u306B\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u30EC\u30DD\u30FC\u30C8\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u8A2D\u5B9A","pivot.hint.values":"\u3053\u3053\u306B\u6570\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u96C6\u8A08","pivot.clearArea":"\u30A8\u30EA\u30A2\u3092\u30AF\u30EA\u30A2","pivot.filter.na":"N/A","pivot.filter.noValues":"\u5024\u304C\u3042\u308A\u307E\u305B\u3093","pivot.filter.noneSelected":"\u672A\u9078\u629E","pivot.filter.allValues":"\u3059\u3079\u3066\u306E\u5024","pivot.filter.selectedCount":"{selected} / {total} \u3092\u9078\u629E","pivot.filter.selectAll":"\u3059\u3079\u3066\u9078\u629E","pivot.filter.deselectAll":"\u3059\u3079\u3066\u89E3\u9664","pivot.filter.noResults":"\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093","pivot.collapse.ariaExpand":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u5C55\u958B","pivot.collapse.ariaCollapse":"\u8A2D\u5B9A\u30A8\u30EA\u30A2\u3092\u6298\u308A\u305F\u305F\u3080","pivot.agg.sum":"\u5408\u8A08","pivot.agg.count":"\u4EF6\u6570","pivot.agg.avg":"\u5E73\u5747","pivot.agg.min":"\u6700\u5C0F","pivot.agg.max":"\u6700\u5927","pivot.preset.selectPlaceholder":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u9078\u629E","pivot.preset.save":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.delete":"\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u524A\u9664","pivot.preset.saveDialogTitle":"\u73FE\u5728\u306E\u30D7\u30EA\u30BB\u30C3\u30C8\u3092\u4FDD\u5B58","pivot.preset.nameLabel":"\u30D7\u30EA\u30BB\u30C3\u30C8\u540D","pivot.preset.defaultName":"\u30D7\u30EA\u30BB\u30C3\u30C8 {index}","pivot.table.sectionTitle":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u5C55\u958B","pivot.table.collapse.ariaCollapse":"\u30D4\u30DC\u30C3\u30C8\u7D50\u679C\u3092\u6298\u308A\u305F\u305F\u3080","pivot.chart.title":"\u30D4\u30DC\u30C3\u30C8\u30C1\u30E3\u30FC\u30C8","pivot.chart.subtitle":"1\u3064\u306E\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u3068\u6700\u59272\u3064\u306E\u6307\u6A19\u3092\u30B3\u30F3\u30D1\u30AF\u30C8\u306A\u30C1\u30E3\u30FC\u30C8\u306B\u307E\u3068\u3081\u307E\u3059\u3002","pivot.chart.subtitleReady":"{dimension} \u3054\u3068\u306E {measure}","pivot.chart.emptyNoDimension":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u884C\u307E\u305F\u306F\u5217\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoValue":"\u30C1\u30E3\u30FC\u30C8\u3092\u8868\u793A\u3059\u308B\u306B\u306F\u3001\u5C11\u306A\u304F\u3068\u30821\u3064\u306E\u5024\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002","pivot.chart.emptyNoData":"\u73FE\u5728\u306E\u30C1\u30E3\u30FC\u30C8\u9078\u629E\u3067\u306F\u8868\u793A\u3067\u304D\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093\u3002","pivot.chart.dimension":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3","pivot.chart.primaryMeasure":"\u6307\u6A19","pivot.chart.secondaryMeasure":"\u6BD4\u8F03\u6307\u6A19","pivot.chart.chartType":"\u30C1\u30E3\u30FC\u30C8\u7A2E\u5225","pivot.chart.style.barVertical":"\u7E26\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.barHorizontal":"\u6A2A\u68D2\u30B0\u30E9\u30D5","pivot.chart.style.line":"\u6298\u308C\u7DDA\u30B0\u30E9\u30D5","pivot.chart.style.scatter":"\u6563\u5E03\u56F3","pivot.chart.collapse.ariaExpand":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u5C55\u958B","pivot.chart.collapse.ariaCollapse":"\u30C1\u30E3\u30FC\u30C8\u9818\u57DF\u3092\u6298\u308A\u305F\u305F\u3080","smartFilter.adaptFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8ABF\u6574","smartFilter.addFilters":"\u30D5\u30A3\u30EB\u30BF\u30FC\u8FFD\u52A0","smartFilter.go":"\u5B9F\u884C","smartFilter.visibleFilters":"\u8868\u793A\u30D5\u30A3\u30EB\u30BF\u30FC","smartFilter.searchPlaceholder":"\u691C\u7D22...","smartFilter.noOptionsFound":"\u30AA\u30D7\u30B7\u30E7\u30F3\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093","smartFilter.min":"\u6700\u5C0F","smartFilter.max":"\u6700\u5927","smartFilter.minMaxPlaceholder":"\u6700\u5C0F - \u6700\u5927","smartFilter.operator.equals":"\u7B49\u3057\u3044","smartFilter.operator.contains":"\u542B\u3080","smartFilter.operator.notContains":"\u542B\u307E\u306A\u3044","smartFilter.operator.wildcard":"\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u691C\u7D22","smartFilter.operator.notEquals":"\u7B49\u3057\u304F\u306A\u3044","smartFilter.operator.greaterThan":"\u3088\u308A\u5927\u304D\u3044","smartFilter.operator.lessThan":"\u3088\u308A\u5C0F\u3055\u3044","smartFilter.operator.greaterOrEqual":"\u4EE5\u4E0A","smartFilter.operator.lessOrEqual":"\u4EE5\u4E0B","smartFilter.operator.between":"\u7BC4\u56F2","variant.noOptions":"\u30AA\u30D7\u30B7\u30E7\u30F3\u306A\u3057","variant.defaultSuffix":"\u30C7\u30D5\u30A9\u30EB\u30C8","variant.selectVariant":"\u30D3\u30E5\u30FC\u3092\u9078\u629E","variant.saveView":"\u30D3\u30E5\u30FC\u4FDD\u5B58","variant.newVariant":"\u65B0\u3057\u3044\u30D3\u30E5\u30FC","variant.viewName":"\u30D3\u30E5\u30FC\u540D","variant.setDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","variant.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\uFF09","variant.toast.fetchFailed":"\u30D3\u30E5\u30FC\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveFailed":"\u30D3\u30E5\u30FC\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.saveSuccess":"\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","variant.toast.deleteFailed":"\u30D3\u30E5\u30FC\u306E\u524A\u9664\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.deleteSuccess":"\u30D3\u30E5\u30FC\u3092\u524A\u9664\u3057\u307E\u3057\u305F","variant.toast.defaultFailed":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u306E\u66F4\u65B0\u306B\u5931\u6557\u3057\u307E\u3057\u305F","variant.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F","layout.saveLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u4FDD\u5B58","layout.layoutOptions":"\u30EC\u30A4\u30A2\u30A6\u30C8\u30AA\u30D7\u30B7\u30E7\u30F3","layout.selectLayout":"\u30EC\u30A4\u30A2\u30A6\u30C8\u9078\u629E","layout.saveCurrentLayout":"\u73FE\u5728\u306E\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58...","layout.noSavedLayouts":"\u4FDD\u5B58\u6E08\u307F\u30EC\u30A4\u30A2\u30A6\u30C8\u306A\u3057","layout.removeDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u89E3\u9664","layout.setAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A","layout.layoutName":"\u30EC\u30A4\u30A2\u30A6\u30C8\u540D","layout.layoutDescription":"\u8AAC\u660E","layout.layoutNameHelper":"\u4F8B\uFF1A\u30B3\u30F3\u30D1\u30AF\u30C8\u8868\u793A","layout.warningOverwrite":"\u8B66\u544A\uFF1A\u65E2\u5B58\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059","layout.useAsDefault":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3068\u3057\u3066\u4F7F\u7528","layout.publicAllUsers":"\u516C\u958B\uFF08\u5168\u30E6\u30FC\u30B6\u30FC\u306B\u8868\u793A\uFF09","layout.toast.loadFallback":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u304B\u3089\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u3001\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F","layout.toast.saveSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.saveLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableSavedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u306B\u4FDD\u5B58\u3057\u307E\u3057\u305F","layout.toast.deleteSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.deleteLocalSuccess":"\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDeletedLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30ED\u30FC\u30AB\u30EB\u304B\u3089\u524A\u9664\u3057\u307E\u3057\u305F","layout.toast.defaultSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.defaultLocalSuccess":"\u30C7\u30D5\u30A9\u30EB\u30C8\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u306B\u8A2D\u5B9A\u3057\u307E\u3057\u305F","layout.toast.backendUnavailableDefaultLocal":"\u30D0\u30C3\u30AF\u30A8\u30F3\u30C9\u672A\u63A5\u7D9A\u306E\u305F\u3081\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u30ED\u30FC\u30AB\u30EB\u4FDD\u5B58\u3057\u307E\u3057\u305F","dateRange.label":"\u65E5\u4ED8\u7BC4\u56F2","dateRange.startDate":"\u958B\u59CB\u65E5","dateRange.endDate":"\u7D42\u4E86\u65E5","dateRange.select":"\u9078\u629E...","dateRange.today":"\u4ECA\u65E5","dateRange.thisWeek":"\u4ECA\u9031","dateRange.thisMonth":"\u4ECA\u6708","graph.records":"{count} \u4EF6","graph.kpi.totalRecords":"\u7DCF\u30EC\u30B3\u30FC\u30C9","graph.kpi.totalReport":"\u7DCF\u5831\u544A\u6642\u9593","graph.kpi.totalBillable":"\u7DCF\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.kpi.efficiency":"\u52B9\u7387","graph.kpi.amount":"\u91D1\u984D","graph.kpi.flagged":"\u8981\u78BA\u8A8D","graph.chart.billable.title":"\u30C7\u30A3\u30E1\u30F3\u30B7\u30E7\u30F3\u5225\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","graph.chart.billable.subtitle":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593\u306E\u4E0A\u4F4D","graph.chart.efficiency.title":"\u62C5\u5F53\u8005\u5225\u52B9\u7387","graph.chart.efficiency.subtitle":"\u52B9\u7387\u306E\u4F4E\u3044\u9806","graph.chart.status.title":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5206\u5E03","graph.chart.status.subtitle":"\u30B9\u30C6\u30FC\u30BF\u30B9\u5225\u6BD4\u7387","graph.dataBody":"\u30C7\u30FC\u30BF\u672C\u4F53","graph.reportTitle":"\u30B0\u30E9\u30D5\u30A3\u30C3\u30AF\u30EC\u30DD\u30FC\u30C8","graph.unassigned":"\u672A\u5272\u308A\u5F53\u3066","graph.column.reportHours":"\u5831\u544A\u6642\u9593","graph.column.billableHours":"\u8ACB\u6C42\u53EF\u80FD\u6642\u9593","detail.searchAi.placeholder":"\u9805\u76EE\u3092\u691C\u7D22\u3002\u898B\u3064\u304B\u3089\u306A\u3044\u5834\u5408\u306FAI\u306B\u8CEA\u554F\u3057\u307E\u3059...","detail.searchAi.matches":"{count} \u4EF6\u306E\u4E00\u81F4","detail.searchAi.noMatch":"\u4E00\u81F4\u3059\u308B\u9805\u76EE\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002","detail.searchAi.autoAiFallback":"\u4E00\u81F4\u306A\u3057\u3002AI\u5206\u6790\u3092\u5B9F\u884C\u3057\u307E\u3059...","detail.searchAi.aiResultTitle":"AI\u5206\u6790\u7D50\u679C","detail.table.title":"\u95A2\u9023\u30EC\u30B3\u30FC\u30C9","kanban.empty":"\u3053\u3053\u306B\u30AB\u30FC\u30C9\u3092\u30C9\u30ED\u30C3\u30D7","kanban.bucket.limit":"\u4E0A\u9650","kanban.bucket.dropHere":"\u96E2\u3059\u3068\u3053\u306E bucket \u306B\u79FB\u52D5\u3057\u307E\u3059","kanban.card.progress":"\u9032\u6357","kanban.card.openDetail":"\u8A73\u7D30\u3092\u958B\u304F","kanban.priority.critical":"\u7DCA\u6025","kanban.priority.high":"\u9AD8","kanban.priority.medium":"\u4E2D","kanban.priority.low":"\u4F4E","quickCreate.newItem":"\u65B0\u898F\u4F5C\u6210","quickCreate.createWithTitle":"{title} \u3092\u4F5C\u6210","quickEdit.editWithTitle":"{title} \u3092\u7DE8\u96C6","quickDelete.confirmTitle":"\u524A\u9664\u306E\u78BA\u8A8D","quickDelete.confirmMessageSingle":"\u9078\u629E\u3057\u305F\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","quickDelete.confirmMessageMultiple":"\u9078\u629E\u3057\u305F {count} \u4EF6\u306E\u30EC\u30B3\u30FC\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F","messageBox.confirm":"OK","messageBox.cancel":"\u30AD\u30E3\u30F3\u30BB\u30EB"},Af={"common.cancel":"\uCDE8\uC18C","common.save":"\uC800\uC7A5","common.ok":"\uD655\uC778","common.done":"\uC644\uB8CC","common.search":"\uAC80\uC0C9","common.none":"\uC5C6\uC74C","common.all":"\uC804\uCCB4","common.noData":"\uB370\uC774\uD130 \uC5C6\uC74C","common.copy":"\uBCF5\uC0AC","common.delete":"\uC0AD\uC81C","common.loading":"\uB85C\uB529 \uC911...","header.searchPlaceholder":"\uBB34\uC5C7\uC774\uB4E0 \uBB3C\uC5B4\uBCF4\uC138\uC694...","header.theme.system":"\uD14C\uB9C8: \uC2DC\uC2A4\uD15C","header.theme.dark":"\uD14C\uB9C8: \uB2E4\uD06C","header.theme.light":"\uD14C\uB9C8: \uB77C\uC774\uD2B8","header.menu.setting":"\uC124\uC815","header.menu.logout":"\uB85C\uADF8\uC544\uC6C3","navigation.expand":"\uD0D0\uC0C9 \uD3BC\uCE58\uAE30","navigation.collapse":"\uD0D0\uC0C9 \uC811\uAE30","navigation.searchPlaceholder":"\uBA54\uB274 \uAC80\uC0C9...","navigation.noMatch":"\uC77C\uCE58\uD558\uB294 \uBA54\uB274\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noAccessibleApp":"\uC811\uADFC \uAC00\uB2A5\uD55C \uC571\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.noItems":"\uD45C\uC2DC\uD560 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4","navigation.expandView":"{title} \uD3BC\uCE58\uAE30","table.toolbar.searchPlaceholder":"\uAC80\uC0C9...","table.title.default":"\uB370\uC774\uD130 \uD14C\uC774\uBE14","table.toolbar.groupBy":"\uADF8\uB8F9","table.toolbar.summary":"\uC694\uC57D","table.toolbar.columns":"\uC5F4","table.toolbar.export":"\uB0B4\uBCF4\uB0B4\uAE30","table.toolbar.itemsPerPage":"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218:","table.toolbar.pageOf":"{current} / {total} \uD398\uC774\uC9C0","table.toolbar.newItem":"\uC2E0\uADDC \uD56D\uBAA9","table.toolbar.editItem":"\uD56D\uBAA9 \uC218\uC815","table.toolbar.deleteItem":"\uD56D\uBAA9 \uC0AD\uC81C","table.toolbar.graphicReport":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","table.toolbar.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","table.menu.groupBy":"\uADF8\uB8F9","table.menu.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.menu.visibleColumns":"\uD45C\uC2DC \uC5F4","table.menu.showSummaryRow":"\uC694\uC57D \uD589 \uD45C\uC2DC","table.menu.noNumericColumns":"\uC22B\uC790 \uC5F4 \uC5C6\uC74C","table.group.expandAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uD3BC\uCE58\uAE30","table.group.collapseAll":"\uBAA8\uB4E0 \uADF8\uB8F9 \uC811\uAE30","table.mobile.notImplemented":"\uBAA8\uBC14\uC77C \uBDF0\uB294 \uC544\uC9C1 \uAD6C\uD604\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4","table.headerMenu.sortAsc":"\uC624\uB984\uCC28\uC21C \uC815\uB82C","table.headerMenu.sortDesc":"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C","table.headerMenu.clearSort":"\uC815\uB82C \uD574\uC81C","table.headerMenu.configureSort":"\uC815\uB82C \uC124\uC815...","table.headerMenu.group":"\uC774 \uC5F4\uB85C \uADF8\uB8F9\uD654","table.headerMenu.ungroup":"\uADF8\uB8F9\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.addSummary":"\uC694\uC57D\uC5D0 \uCD94\uAC00","table.headerMenu.removeSummary":"\uC694\uC57D\uC5D0\uC11C \uC81C\uAC70","table.headerMenu.hideColumn":"\uC5F4 \uC228\uAE30\uAE30","table.sortDialog.title":"\uC815\uB82C \uC124\uC815","table.sortDialog.empty":"\uC815\uB82C \uADDC\uCE59\uC774 \uC5C6\uC2B5\uB2C8\uB2E4. \uCD94\uAC00\uD558\uC138\uC694.","table.sortDialog.addRule":"\uADDC\uCE59 \uCD94\uAC00","table.sortDialog.clearAll":"\uBAA8\uB450 \uC9C0\uC6B0\uAE30","table.sortDialog.asc":"\uC624\uB984\uCC28\uC21C","table.sortDialog.desc":"\uB0B4\uB9BC\uCC28\uC21C","pivot.title.default":"\uD53C\uBC97 \uD14C\uC774\uBE14","pivot.subtitle.default":"\uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD53C\uBC97 \uD14C\uC774\uBE14\uC744 \uAD6C\uC131\uD558\uC138\uC694.","pivot.empty":"\uACB0\uACFC\uB97C \uBCF4\uB824\uBA74 \uAC12 \uC601\uC5ED\uC5D0 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.records":"\uB808\uCF54\uB4DC","pivot.afterFilter":"\uD544\uD130 \uD6C4","pivot.grandTotal":"\uCD1D\uD569","pivot.resultLabel":"\uACB0\uACFC","pivot.valueLabel":"\uAC12","pivot.table.dimensions":"\uCC28\uC6D0","pivot.config.title":"\uAD6C\uC131","pivot.fieldList":"\uD544\uB4DC \uBAA9\uB85D","pivot.availableDimensions":"\uC0AC\uC6A9 \uAC00\uB2A5\uD55C \uCC28\uC6D0","pivot.allFieldsInUse":"\uBAA8\uB4E0 \uD544\uB4DC\uAC00 \uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC785\uB2C8\uB2E4.","pivot.zone.rows":"\uD589","pivot.zone.columns":"\uC5F4","pivot.zone.filters":"\uD544\uD130","pivot.zone.values":"\uAC12","pivot.hint.rows":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uD589 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.columns":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uC5F4 \uACC4\uCE35\uC744 \uAD6C\uC131","pivot.hint.filters":"\uC5EC\uAE30\uC5D0 \uD544\uB4DC\uB97C \uB4DC\uB798\uADF8\uD558\uC5EC \uBCF4\uACE0\uC11C \uD544\uD130\uB85C \uC0AC\uC6A9","pivot.hint.values":"\uC22B\uC790 \uD544\uB4DC\uB97C \uC5EC\uAE30\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC9D1\uACC4","pivot.clearArea":"\uC601\uC5ED \uBE44\uC6B0\uAE30","pivot.filter.na":"\uD574\uB2F9 \uC5C6\uC74C","pivot.filter.noValues":"\uAC12 \uC5C6\uC74C","pivot.filter.noneSelected":"\uC120\uD0DD \uC5C6\uC74C","pivot.filter.allValues":"\uBAA8\uB4E0 \uAC12","pivot.filter.selectedCount":"{selected} / {total} \uC120\uD0DD\uB428","pivot.filter.selectAll":"\uC804\uCCB4 \uC120\uD0DD","pivot.filter.deselectAll":"\uC804\uCCB4 \uD574\uC81C","pivot.filter.noResults":"\uAC80\uC0C9 \uACB0\uACFC \uC5C6\uC74C","pivot.collapse.ariaExpand":"\uAD6C\uC131 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.collapse.ariaCollapse":"\uAD6C\uC131 \uC601\uC5ED \uC811\uAE30","pivot.agg.sum":"\uD569\uACC4","pivot.agg.count":"\uAC1C\uC218","pivot.agg.avg":"\uD3C9\uADE0","pivot.agg.min":"\uCD5C\uC18C","pivot.agg.max":"\uCD5C\uB300","pivot.preset.selectPlaceholder":"\uD504\uB9AC\uC14B \uC120\uD0DD","pivot.preset.save":"\uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.delete":"\uD504\uB9AC\uC14B \uC0AD\uC81C","pivot.preset.saveDialogTitle":"\uD604\uC7AC \uD504\uB9AC\uC14B \uC800\uC7A5","pivot.preset.nameLabel":"\uD504\uB9AC\uC14B \uC774\uB984","pivot.preset.defaultName":"\uD504\uB9AC\uC14B {index}","pivot.table.sectionTitle":"\uD53C\uBC97 \uACB0\uACFC","pivot.table.expandRowsAll":"Expand rows","pivot.table.collapseRowsAll":"Collapse rows","pivot.table.expandColumnsAll":"Expand columns","pivot.table.collapseColumnsAll":"Collapse columns","pivot.table.collapse.ariaExpand":"\uD53C\uBC97 \uACB0\uACFC \uD3BC\uCE58\uAE30","pivot.table.collapse.ariaCollapse":"\uD53C\uBC97 \uACB0\uACFC \uC811\uAE30","pivot.chart.title":"\uD53C\uBC97 \uCC28\uD2B8","pivot.chart.subtitle":"\uD558\uB098\uC758 \uCC28\uC6D0\uACFC \uCD5C\uB300 \uB450 \uAC1C\uC758 \uCE21\uC815\uAC12\uC744 \uAC04\uACB0\uD55C \uCC28\uD2B8\uB85C \uD45C\uC2DC\uD569\uB2C8\uB2E4.","pivot.chart.subtitleReady":"{dimension}\uBCC4 {measure}","pivot.chart.emptyNoDimension":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uD589 \uB610\uB294 \uC5F4 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoValue":"\uCC28\uD2B8\uB97C \uBCF4\uB824\uBA74 \uCD5C\uC18C \uD55C \uAC1C\uC758 \uAC12 \uD544\uB4DC\uB97C \uCD94\uAC00\uD558\uC138\uC694.","pivot.chart.emptyNoData":"\uD604\uC7AC \uCC28\uD2B8 \uC120\uD0DD\uC5D0 \uD45C\uC2DC\uD560 \uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.","pivot.chart.dimension":"\uCC28\uD2B8 \uCC28\uC6D0","pivot.chart.primaryMeasure":"\uC8FC \uCE21\uC815\uAC12","pivot.chart.secondaryMeasure":"\uBE44\uAD50 \uCE21\uC815\uAC12","pivot.chart.chartType":"\uCC28\uD2B8 \uC720\uD615","pivot.chart.style.barVertical":"\uC138\uB85C \uB9C9\uB300","pivot.chart.style.barHorizontal":"\uAC00\uB85C \uB9C9\uB300","pivot.chart.style.line":"\uC120\uD615 \uCC28\uD2B8","pivot.chart.style.scatter":"\uC0B0\uC810\uB3C4","pivot.chart.collapse.ariaExpand":"\uCC28\uD2B8 \uC601\uC5ED \uD3BC\uCE58\uAE30","pivot.chart.collapse.ariaCollapse":"\uCC28\uD2B8 \uC601\uC5ED \uC811\uAE30","smartFilter.adaptFilters":"\uD544\uD130 \uC870\uC815","smartFilter.addFilters":"\uD544\uD130 \uCD94\uAC00","smartFilter.go":"\uC2E4\uD589","smartFilter.visibleFilters":"\uD45C\uC2DC \uD544\uD130","smartFilter.searchPlaceholder":"\uAC80\uC0C9...","smartFilter.noOptionsFound":"\uC635\uC158\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4","smartFilter.min":"\uCD5C\uC18C","smartFilter.max":"\uCD5C\uB300","smartFilter.minMaxPlaceholder":"\uCD5C\uC18C - \uCD5C\uB300","smartFilter.operator.equals":"\uAC19\uC74C","smartFilter.operator.contains":"\uD3EC\uD568","smartFilter.operator.notContains":"\uBBF8\uD3EC\uD568","smartFilter.operator.wildcard":"\uC640\uC77C\uB4DC\uCE74\uB4DC \uAC80\uC0C9","smartFilter.operator.notEquals":"\uAC19\uC9C0 \uC54A\uC74C","smartFilter.operator.greaterThan":"\uBCF4\uB2E4 \uD07C","smartFilter.operator.lessThan":"\uBCF4\uB2E4 \uC791\uC74C","smartFilter.operator.greaterOrEqual":"\uC774\uC0C1","smartFilter.operator.lessOrEqual":"\uC774\uD558","smartFilter.operator.between":"\uBC94\uC704","variant.noOptions":"\uC635\uC158 \uC5C6\uC74C","variant.defaultSuffix":"\uAE30\uBCF8","variant.selectVariant":"\uBDF0 \uC120\uD0DD","variant.saveView":"\uBDF0 \uC800\uC7A5","variant.newVariant":"\uC0C8 \uBDF0","variant.viewName":"\uBDF0 \uC774\uB984","variant.setDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","variant.publicAllUsers":"\uACF5\uAC1C(\uC804\uCCB4 \uC0AC\uC6A9\uC790)","variant.toast.fetchFailed":"\uBDF0\uB97C \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveFailed":"\uBDF0\uB97C \uC800\uC7A5\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.saveSuccess":"\uBDF0\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.deleteFailed":"\uBDF0\uB97C \uC0AD\uC81C\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.deleteSuccess":"\uBDF0\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","variant.toast.defaultFailed":"\uAE30\uBCF8 \uBDF0\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4","variant.toast.defaultSuccess":"\uAE30\uBCF8 \uBDF0\uAC00 \uC5C5\uB370\uC774\uD2B8\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.saveLayout":"\uB808\uC774\uC544\uC6C3 \uC800\uC7A5","layout.layoutOptions":"\uB808\uC774\uC544\uC6C3 \uC635\uC158","layout.selectLayout":"\uB808\uC774\uC544\uC6C3 \uC120\uD0DD","layout.saveCurrentLayout":"\uD604\uC7AC \uB808\uC774\uC544\uC6C3 \uC800\uC7A5...","layout.noSavedLayouts":"\uC800\uC7A5\uB41C \uB808\uC774\uC544\uC6C3 \uC5C6\uC74C","layout.removeDefault":"\uAE30\uBCF8 \uD574\uC81C","layout.setAsDefault":"\uAE30\uBCF8\uC73C\uB85C \uC124\uC815","layout.layoutName":"\uB808\uC774\uC544\uC6C3 \uC774\uB984","layout.layoutDescription":"\uC124\uBA85","layout.layoutNameHelper":"\uC608: \uCEF4\uD329\uD2B8 \uBDF0","layout.warningOverwrite":"\uACBD\uACE0: \uAE30\uC874 \uB808\uC774\uC544\uC6C3\uC774 \uB36E\uC5B4\uC4F0\uAE30 \uB429\uB2C8\uB2E4","layout.useAsDefault":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC73C\uB85C \uC0AC\uC6A9","layout.publicAllUsers":"\uACF5\uAC1C(\uBAA8\uB4E0 \uC0AC\uC6A9\uC790\uC5D0\uAC8C \uD45C\uC2DC)","layout.toast.loadFallback":"\uBC31\uC5D4\uB4DC\uC5D0\uC11C \uB808\uC774\uC544\uC6C3\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD574 \uB85C\uCEEC \uC800\uC7A5\uC18C\uB85C \uC804\uD658\uD588\uC2B5\uB2C8\uB2E4","layout.toast.saveSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.saveLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableSavedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","layout.toast.deleteSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.deleteLocalSuccess":"\uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC \uC800\uC7A5\uC18C\uC5D0\uC11C \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDeletedLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uB85C\uCEEC\uC5D0\uC11C \uC0AD\uC81C\uD588\uC2B5\uB2C8\uB2E4","layout.toast.defaultSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.defaultLocalSuccess":"\uAE30\uBCF8 \uB808\uC774\uC544\uC6C3\uC774 \uB85C\uCEEC\uC5D0 \uC124\uC815\uB418\uC5C8\uC2B5\uB2C8\uB2E4","layout.toast.backendUnavailableDefaultLocal":"\uBC31\uC5D4\uB4DC\uB97C \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC5B4 \uAE30\uBCF8\uAC12\uC744 \uB85C\uCEEC\uC5D0 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4","dateRange.label":"\uB0A0\uC9DC \uBC94\uC704","dateRange.startDate":"\uC2DC\uC791\uC77C","dateRange.endDate":"\uC885\uB8CC\uC77C","dateRange.select":"\uC120\uD0DD...","dateRange.today":"\uC624\uB298","dateRange.thisWeek":"\uC774\uBC88 \uC8FC","dateRange.thisMonth":"\uC774\uBC88 \uB2EC","graph.records":"{count}\uAC74","graph.kpi.totalRecords":"\uCD1D \uB808\uCF54\uB4DC","graph.kpi.totalReport":"\uCD1D \uBCF4\uACE0 \uC2DC\uAC04","graph.kpi.totalBillable":"\uCD1D \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.kpi.efficiency":"\uD6A8\uC728","graph.kpi.amount":"\uAE08\uC561","graph.kpi.flagged":"\uD50C\uB798\uADF8","graph.chart.billable.title":"\uCC28\uC6D0\uBCC4 \uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","graph.chart.billable.subtitle":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04 \uC0C1\uC704 \uAC12","graph.chart.efficiency.title":"\uB2F4\uB2F9\uC790\uBCC4 \uD6A8\uC728","graph.chart.efficiency.subtitle":"\uB0AE\uC740 \uD6A8\uC728 \uC6B0\uC120","graph.chart.status.title":"\uC0C1\uD0DC \uBD84\uD3EC","graph.chart.status.subtitle":"\uC0C1\uD0DC\uBCC4 \uBE44\uC728","graph.dataBody":"\uB370\uC774\uD130 \uBCF8\uBB38","graph.reportTitle":"\uADF8\uB798\uD504 \uB9AC\uD3EC\uD2B8","graph.unassigned":"\uBBF8\uC9C0\uC815","graph.column.reportHours":"\uBCF4\uACE0 \uC2DC\uAC04","graph.column.billableHours":"\uCCAD\uAD6C \uAC00\uB2A5 \uC2DC\uAC04","detail.searchAi.placeholder":"\uD544\uB4DC\uB97C \uAC80\uC0C9\uD558\uACE0, \uACB0\uACFC\uAC00 \uC5C6\uC73C\uBA74 AI\uC5D0 \uC9C8\uBB38\uD558\uC138\uC694...","detail.searchAi.matches":"{count}\uAC1C \uC77C\uCE58 \uD56D\uBAA9","detail.searchAi.noMatch":"\uC77C\uCE58\uD558\uB294 \uD544\uB4DC\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.","detail.searchAi.autoAiFallback":"\uC77C\uCE58 \uD56D\uBAA9\uC774 \uC5C6\uC5B4 AI \uBD84\uC11D\uC744 \uC2E4\uD589\uD569\uB2C8\uB2E4...","detail.searchAi.aiResultTitle":"AI \uBD84\uC11D \uACB0\uACFC","detail.table.title":"\uAD00\uB828 \uB808\uCF54\uB4DC","kanban.empty":"\uC5EC\uAE30\uC5D0 \uCE74\uB4DC\uB97C \uB193\uC73C\uC138\uC694","kanban.bucket.limit":"\uD55C\uB3C4","kanban.bucket.dropHere":"\uB193\uC73C\uBA74 \uC774 \uBC84\uD0B7\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4","kanban.card.progress":"\uC9C4\uD589\uB960","kanban.card.openDetail":"\uC0C1\uC138 \uC5F4\uAE30","kanban.priority.critical":"\uAE34\uAE09","kanban.priority.high":"\uB192\uC74C","kanban.priority.medium":"\uBCF4\uD1B5","kanban.priority.low":"\uB0AE\uC74C","quickCreate.newItem":"\uC2E0\uADDC \uD56D\uBAA9","quickCreate.createWithTitle":"{title} \uC0DD\uC131","quickEdit.editWithTitle":"{title} \uC218\uC815","quickDelete.confirmTitle":"\uC0AD\uC81C \uD655\uC778","quickDelete.confirmMessageSingle":"\uC120\uD0DD\uD55C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","quickDelete.confirmMessageMultiple":"\uC120\uD0DD\uD55C {count}\uAC1C \uD56D\uBAA9\uC744 \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?","messageBox.confirm":"\uD655\uC778","messageBox.cancel":"\uCDE8\uC18C"},Bn={en:If,zh:Pf,fr:Rf,de:Df,ja:Mf,ko:Af};var Fd=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,r)=>{let a=t[r];return a==null?"":String(a)}):e,Lf={locale:"en",t:(e,t)=>Fd(Bn.en[e]||e,t)},Ld=createContext(Lf),Ei=({locale:e="en",messages:t,children:o})=>{let r=useMemo(()=>{let a=Bn[e]||Bn.en,n=t?.[e]||{},i={...Bn.en,...a,...n};return {locale:e,t:(s,d)=>Fd(i[s]||s,d)}},[e,t]);return jsx(Ld.Provider,{value:r,children:o})},ee=()=>useContext(Ld);function As({items:e,onItemClick:t,className:o="",level:r=0,expandedIds:a,onToggleExpand:n,colorMode:i="light"}){let{t:s}=ee(),d=i==="dark",l=usePathname(),[c,g]=useState(false),[h,m]=useState(new Set),b=a!==void 0&&n!==void 0,C=b?a:h;useEffect(()=>{g(true);},[]);let u=p=>{if(b)n(p);else {let f=new Set(h);f.has(p)?f.delete(p):f.add(p),m(f);}},v=p=>{p.children&&p.children.length>0&&u(p.id),t&&t(p);};return !e||!Array.isArray(e)?jsx("div",{className:No("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:s("navigation.noItems")})}):jsx("div",{className:No("tree-menu",o),children:e.map(p=>{let f=C.has(p.id)||p.isExpanded,y=p.children&&p.children.length>0,k=p.appurl||p.href,E=c&&k?l===k:false;return jsxs("div",{className:"tree-menu-item relative",children:[E&&jsx("div",{className:No("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",d?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(Ds,{variant:"ghost",className:No("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${r*4}`,E?d?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":d?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>v(p),children:[y&&jsx("div",{className:No("flex-shrink-0 transition-transform duration-200",f&&"rotate-90",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!y&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),p.icon&&jsx("div",{className:No("flex-shrink-0 transition-colors duration-200",E?d?"text-[#90caf9]":"text-[#1976d2]":d?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:p.icon}),jsxs("div",{className:"flex-1 text-left overflow-hidden z-10",children:[jsx("div",{className:No("text-sm truncate transition-colors duration-200",E?"font-semibold":"font-medium"),children:p.title||p.label}),p.description&&jsx("div",{className:No("text-xs truncate transition-colors duration-200",E?d?"text-[#90caf9]/70":"text-[#1976d2]/75":d?"text-gray-400":"text-gray-500"),title:p.description,children:p.description})]})]}),y&&jsx("div",{className:No("grid transition-[grid-template-rows] duration-300 ease-in-out",f?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:jsx("div",{className:"overflow-hidden",children:jsx(As,{items:p.children,onItemClick:t,level:r+1,expandedIds:a,onToggleExpand:n,colorMode:i})})})]},p.id)})})}var Wd=({collapsed:e,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light"})=>{let{t:i}=ee(),s=n==="dark",d=useRouter(),[l,c]=useState(""),[g,h]=useState(new Set);useEffect(()=>{e&&h(new Set);},[e]);let m=useCallback(v=>{let p=[],f=y=>{y.forEach(k=>{p.push(k.id),k.children&&f(k.children);});};return f(v),p},[]),b=useMemo(()=>{if(!l.trim())return a;let v=p=>p.reduce((f,y)=>{let k=y.title?.toLowerCase().includes(l.toLowerCase())||y.description?.toLowerCase().includes(l.toLowerCase()),E=y.children?v(y.children):[];return (k||E.length>0)&&f.push({...y,children:E.length>0?E:y.children}),f},[]);return v(a)},[l,a]),C=useMemo(()=>l.trim()?new Set(m(a)):g,[l,a,g,m]),u=useCallback(async v=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",v),v.id==="chat"||v.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{d.push("/chat?new=true");}catch(f){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",f),d.push("/chat");}return}let p=v.appurl||v.href;p&&(p.startsWith("http://")||p.startsWith("https://")?window.open(p,"_blank"):d.push(p));},[d]);return jsxs("div",{className:`flex flex-col backdrop-blur-xl border shadow-[0_4px_8px_0_rgba(31,38,135,0.1)] ${e?"w-14 rounded-full":"w-[234px] rounded-2xl"} relative ${o} ${s?"bg-[#111111] border-white/10":"bg-white/70 border-white/30"}`,style:{backdropFilter:"blur(16px) saturate(180%)",WebkitBackdropFilter:"blur(16px) saturate(180%)",transition:"width 400ms cubic-bezier(0.4, 0.0, 0.2, 1), border-radius 0ms cubic-bezier(0.4, 0.0, 0.2, 1), box-shadow 400ms ease-out",maxHeight:r?`${r}px`:void 0},children:[jsx("div",{className:`pt-4 pb-2 transition-all duration-500 ease-in-out ${e?"px-1":"px-2"}`,children:e?jsx("div",{className:"flex justify-center",children:jsx("button",{onClick:t,className:`w-10 h-10 flex items-center justify-center rounded-lg transition-colors duration-200 ${s?"text-gray-300 hover:bg-gray-800":"text-gray-500 hover:bg-gray-50"}`,title:i("navigation.expand"),children:jsx(Search,{className:"h-5 w-5"})})}):jsxs("div",{className:`relative transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:[jsx("input",{type:"text",placeholder:i("navigation.searchPlaceholder"),value:l,onChange:v=>c(v.target.value),className:`w-full pl-10 pr-4 py-2 text-sm border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent ${s?"border-gray-700 bg-[#1A1A1A] text-white placeholder-gray-400":"border-gray-300 bg-white text-gray-900 placeholder-gray-500"}`}),jsx("div",{className:"absolute left-3 top-1/2 transform -translate-y-1/2 pointer-events-none",children:jsx(Search,{className:`h-4 w-4 ${s?"text-gray-500":"text-gray-400"}`})})]})}),jsx("nav",{className:`flex-1 pb-4 transition-all duration-500 ease-in-out overflow-y-auto min-h-0 ${e?"px-1":"px-2"}`,children:b.length===0?jsx("div",{className:"flex items-center justify-center py-8 text-gray-500 text-sm",children:e?"\u{1F4C2}":i(l?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxs(Fragment,{children:[!e&&jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsx(As,{items:b,onItemClick:u,className:"space-y-1",expandedIds:C,colorMode:n,onToggleExpand:v=>{let p=new Set(g);b.some(y=>y.id===v)?p.has(v)?p.delete(v):(b.forEach(y=>{y.id!==v&&p.has(y.id)&&p.delete(y.id);}),p.add(v)):p.has(v)?p.delete(v):p.add(v),h(p);}})}),e&&jsx("div",{className:"space-y-2",children:a.map(v=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let p=new Set([v.id]);h(p);},className:`w-full flex items-center justify-center p-2 rounded-lg cursor-pointer transition-colors duration-200 ${s?"text-gray-400 hover:bg-gray-800":"text-gray-600 hover:bg-gray-50"}`,title:i("navigation.expandView",{title:v.title||""}),children:v.icon||jsx("div",{className:`w-6 h-6 rounded text-xs flex items-center justify-center font-medium ${s?"bg-[#90caf9] text-[#0b0b0b]":"bg-[#1976d2] text-white"}`,children:v.title?.charAt(0)||"?"})})},v.id))})]})}),!e&&jsx("button",{onClick:t,className:`absolute -bottom-1 -right-1 w-6 h-6 bg-transparent rounded-full flex items-center justify-center transition-all duration-300 ease-in-out z-20 ${s?"hover:bg-gray-800/50":"hover:bg-white/20"}`,title:i("navigation.collapse"),children:jsx("div",{className:"absolute",style:{bottom:"0px",right:"0px",width:"16px",height:"16px",overflow:"hidden"},children:jsx("div",{className:s?"border-yellow-400":"",style:{width:"32px",height:"32px",borderRadius:"16px",border:"3px solid #21BCFF",backgroundColor:"transparent",position:"absolute",top:"-16px",left:"-16px"}})})})]})};var Gd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[r,a]=useState(t),[n,i]=useState(o),s=useCallback(()=>{a(l=>!l);},[]),d=useMemo(()=>({collapsed:r,onToggle:s,menuData:n}),[r,s,n]);return {collapsed:r,setCollapsed:a,toggleCollapsed:s,menuData:n,setMenuData:i,navigationIslandProps:d}};var jo=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Es=class{constructor(){a(this,"listener",null);}register(t){this.listener=t;}unregister(){this.listener=null;}show(t,o,r){this.listener&&this.listener({type:t,content:o,options:r});}hide(){this.listener&&this.listener(null);}},yr=new Es,hI={success:(e,t)=>yr.show("success",e,t),error:(e,t)=>yr.show("error",e,t),warning:(e,t)=>yr.show("warning",e,t),info:(e,t)=>yr.show("info",e,t),show:(e,t,o)=>yr.show(e,t,o),hide:()=>yr.hide()};var rh={success:{icon:jsx(Jf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(eh,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(th,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(oh,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},En=({open:e,title:t,message:o,onClose:r,onConfirm:a,confirmText:n,cancelText:i,showCancel:s=true,maxWidth:d="xs",type:l="default"})=>{let{t:c}=ee(),g=n||c("messageBox.confirm"),h=i||c("messageBox.cancel"),m=()=>{a?a():r();},b=rh[l],C=l!=="default";return jsxs(fp,{open:e,onClose:r,maxWidth:d,fullWidth:true,PaperProps:{sx:{borderRadius:3,...C&&{borderTop:`6px solid ${b.iconColor}`}}},children:[C&&jsx(ei,{sx:{display:"flex",justifyContent:"center",pt:3,color:b.iconColor},children:b.icon}),t&&jsx(hp,{sx:{textAlign:C?"center":"left",pt:C?1:2},children:t}),jsx(bp,{sx:{textAlign:C?"center":"left"},children:typeof o=="string"?jsx(Xf,{children:o}):o}),jsxs(yp,{sx:{justifyContent:C?"center":"flex-end",pb:3,px:3},children:[s&&jsx(jo,{onClick:r,variant:"text",color:"inherit",children:h}),jsx(jo,{onClick:m,variant:"contained",sx:{bgcolor:C?b.iconColor:void 0,"&:hover":{bgcolor:C?b.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},EI=()=>{let[e,t]=Dt__default.useState(null),[o,r]=Dt__default.useState(false);Dt__default.useEffect(()=>{let i=s=>{s?(t(s),r(true)):(r(false),t(null));};return yr.register(i),()=>yr.unregister()},[]);let a=()=>{r(false),e?.options?.onClose&&e.options.onClose(),t(null);},n=()=>{e?.options?.onConfirm&&e.options.onConfirm(),r(false),t(null);};return e?jsx(En,{open:o,type:e.type,message:e.content,title:e.options?.title,onClose:a,onConfirm:n,confirmText:e.options?.confirmText,cancelText:e.options?.cancelText,showCancel:e.options?.showCancel,maxWidth:e.options?.maxWidth}):null};var yh=[{field:"value",label:"Value",minWidth:120},{field:"label",label:"Description",minWidth:180}],Yd=e=>Array.isArray(e)?e:e==null||e===""?[]:[e],ir=e=>String(e),Qd=(e,t)=>e[t],Jd=e=>{let t=e.value??e.id??e.key??e.code;return typeof t=="number"||typeof t=="string"?t:""},xh=e=>{let t=e.label??e.description??e.name??e.title;return String(typeof t=="number"||typeof t=="string"?t:Jd(e))},vh=e=>{let t=e.description??e.subtitle;return typeof t=="number"||typeof t=="string"?String(t):void 0},eu=({value:e=null,items:t=[],columns:o,mode:r="single",dialogTitle:a="Value Help",searchPlaceholder:n="Search values...",selectLabel:i="Select",clearLabel:s="Clear",cancelLabel:d="Cancel",valueHelpLabel:l="Open value help",noResultsText:c="No matching values",loading:g=false,clearable:h=true,selectedItems:m=[],displayValue:b,getOptionValue:C=Jd,getOptionLabel:u=xh,getOptionDescription:v=vh,onChange:p,onSearch:f,disabled:y,InputProps:k,onKeyDown:E,...M})=>{let S=r==="multiple",[D,P]=useState(false),[w,B]=useState(""),[R,I]=useState(null),[A,q]=useState(false),[O,K]=useState(()=>Yd(e)),Q=useMemo(()=>o&&o.length>0?o:yh,[o]),ne=R??t,ie=useMemo(()=>{let _=[...m,...t,...R??[]],le=new Map;return _.forEach(Re=>{le.set(ir(C(Re)),Re);}),le},[C,t,R,m]),Y=useMemo(()=>Yd(e),[e]);useEffect(()=>{D||K(Y);},[D,Y]);let Ae=useMemo(()=>{let _=w.trim().toLowerCase();if(!_||f)return ne;let le=Q.filter(Re=>Re.searchable!==false);return ne.filter(Re=>[C(Re),u(Re),v(Re),...le.map(G=>Qd(Re,G.field))].some(G=>String(G??"").toLowerCase().includes(_)))},[ne,v,u,C,f,w,Q]),Ze=useMemo(()=>{if(b!==void 0)return b;if(Y.length===0)return "";let _=le=>{let Re=ie.get(ir(le));if(!Re)return String(le);let Ne=u(Re);return Ne&&Ne!==String(le)?`${le} - ${Ne}`:String(le)};return S?Y.length>2?`${Y.length} selected`:Y.map(_).join(", "):_(Y[0])},[b,u,S,ie,Y]),ht=useCallback(async()=>{if(f){q(true);try{let _=await f(w);Array.isArray(_)&&I(_);}finally{q(false);}}},[f,w]),fe=()=>{y||(K(Y),P(true));},We=()=>{P(false);},Ee=()=>{p?.(S?[]:null,S?[]:null),K([]);},Tt=_=>{let le=C(_);if(S){K(Re=>Re.some(G=>ir(G)===ir(le))?Re.filter(G=>ir(G)!==ir(le)):[...Re,le]);return}K([le]);},_e=()=>{let _=O.map(le=>ie.get(ir(le))).filter(le=>!!le);S?p?.(O,_):p?.(O[0]??null,_[0]??null),P(false);},ze=_=>{if(_.key==="F4"){_.preventDefault(),fe();return}E?.(_);},Ue=g||A,tt=Y.length>0;return jsxs(Fragment,{children:[jsx(TextField,{...M,disabled:y,value:Ze,onKeyDown:ze,InputProps:{...k,readOnly:true,endAdornment:jsxs(InputAdornment,{position:"end",children:[Ue?jsx(CircularProgress,{size:18}):null,h&&tt&&!y?jsx(Tooltip,{title:s,children:jsx(IconButton,{size:"small",edge:"end","aria-label":s,onClick:Ee,children:jsx(hh,{fontSize:"small"})})}):null,jsx(Tooltip,{title:l,children:jsx("span",{children:jsx(IconButton,{size:"small",edge:"end","aria-label":l,onClick:fe,disabled:y,children:jsx(Xd,{fontSize:"small"})})})})]})}}),jsxs(Dialog,{open:D,onClose:We,fullWidth:true,maxWidth:"md",PaperProps:{sx:_=>({borderRadius:2,overflow:"hidden",border:`1px solid ${_.palette.divider}`,boxShadow:_.palette.mode==="dark"?`0 24px 80px ${alpha(_.palette.common.black,.72)}`:`0 24px 80px ${alpha(_.palette.common.black,.18)}`})},children:[jsxs(DialogTitle,{sx:_=>({display:"flex",alignItems:"center",justifyContent:"space-between",gap:2,px:2.5,py:2,pr:1.5,borderBottom:`1px solid ${_.palette.divider}`,bgcolor:_.palette.background.paper}),children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:a}),S?jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.25},children:`${O.length} selected`}):null]}),jsx(IconButton,{"aria-label":"Close",onClick:We,size:"small",children:jsx(bh,{fontSize:"small"})})]}),jsxs(DialogContent,{sx:{p:0},children:[jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1,sx:_=>({px:2.5,py:1.5,borderBottom:`1px solid ${_.palette.divider}`,bgcolor:_.palette.mode==="dark"?alpha(_.palette.common.white,.025):alpha(_.palette.primary.main,.035)}),children:[jsx(TextField,{size:"small",fullWidth:true,value:w,placeholder:n,onChange:_=>B(_.target.value),onKeyDown:_=>{_.key==="Enter"&&(_.preventDefault(),ht());},InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Xd,{fontSize:"small"})}),sx:_=>({borderRadius:1,bgcolor:_.palette.background.paper,"& fieldset":{borderColor:alpha(_.palette.text.primary,_.palette.mode==="dark"?.2:.16)},"&:hover fieldset":{borderColor:alpha(_.palette.primary.main,.52)},"&.Mui-focused fieldset":{borderColor:_.palette.primary.main}})}}),f?jsx(Button,{variant:"outlined",onClick:()=>{ht();},disabled:Ue,sx:{minWidth:96,textTransform:"none",fontWeight:700},children:Ue?jsx(CircularProgress,{size:18}):"Search"}):null]}),jsx(TableContainer,{sx:{maxHeight:420},children:jsxs(Table,{stickyHeader:true,size:"small",children:[jsx(TableHead,{children:jsxs(TableRow,{children:[jsx(TableCell,{padding:"checkbox",sx:_=>({bgcolor:_.palette.mode==="dark"?"#111111":_.palette.background.paper,borderBottom:`1px solid ${_.palette.divider}`})}),Q.map(_=>jsx(TableCell,{align:_.align,sx:le=>({minWidth:_.minWidth,width:_.width,fontSize:"0.78rem",fontWeight:800,bgcolor:le.palette.mode==="dark"?"#111111":le.palette.background.paper,borderBottom:`1px solid ${le.palette.divider}`}),children:_.label},String(_.field)))]})}),jsxs(TableBody,{children:[Ae.map(_=>{let le=C(_),Re=O.some(Ne=>ir(Ne)===ir(le));return jsxs(TableRow,{hover:true,selected:Re,onClick:()=>Tt(_),onDoubleClick:()=>{S||(K([le]),p?.(le,_),P(false));},sx:Ne=>({cursor:"pointer","&.Mui-selected":{bgcolor:alpha(Ne.palette.primary.main,Ne.palette.mode==="dark"?.22:.12)},"&.Mui-selected:hover":{bgcolor:alpha(Ne.palette.primary.main,Ne.palette.mode==="dark"?.28:.18)}}),children:[jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:Re})}),Q.map(Ne=>{let G=Qd(_,Ne.field);return jsx(TableCell,{align:Ne.align,sx:{fontSize:"0.82rem",py:1},children:Ne.render?Ne.render(G,_):String(G??"")},String(Ne.field))})]},ir(le))}),Ae.length===0?jsx(TableRow,{children:jsx(TableCell,{colSpan:Q.length+1,children:jsx(Box,{sx:{py:5,textAlign:"center",color:"text.secondary"},children:c})})}):null]})]})})]}),jsxs(DialogActions,{sx:_=>({px:2.5,py:1.5,borderTop:`1px solid ${_.palette.divider}`,bgcolor:_.palette.background.paper,"& .MuiButton-root":{textTransform:"none",fontWeight:700}}),children:[h&&(tt||O.length>0)?jsx(Button,{onClick:Ee,children:s}):null,jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:We,children:d}),jsx(Button,{variant:"contained",onClick:_e,disabled:!S&&O.length===0,children:i})]})]})]})};var tu=({title:e,hideHeader:t,children:o})=>jsxs(Box,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[!t&&jsx(Box,{sx:{mb:2},children:jsx(Typography,{variant:"h4",children:e})}),jsx(Box,{sx:{flex:1,overflow:"hidden"},children:o})]});var Li=e=>{let{t}=ee(),o="0.85rem",r=Array.isArray(e.actions)?e.actions:e.actions?[e.actions]:[],a=Array.isArray(e.extraTools)?e.extraTools:e.extraTools?[e.extraTools]:[],n=[...r,...a],i=typeof e.rowsPerPage=="number"?e.rowsPerPage:20,s=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],d=typeof e.count=="number"?e.count:0,l=Math.max(0,typeof e.page=="number"?e.page:0),c=i===-1?1:Math.max(1,Math.ceil(d/i)),g=Math.min(l+1,c),h=l>0,m=l<c-1&&i!==-1;return jsxs(Toolbar,{sx:{pl:{sm:2},pr:{xs:1,sm:1},alignItems:"center",gap:1},children:[jsx(TextField,{size:"small",placeholder:t("table.toolbar.searchPlaceholder"),value:e.filterText,onChange:b=>e.setFilterText(b.target.value),InputProps:{sx:{fontSize:o,"& .MuiInputBase-input":{fontSize:o,color:"text.primary"},"& .MuiInputBase-input::placeholder":{fontSize:o,opacity:1}},startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Xd,{fontSize:"small"})})},sx:{width:300}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,ml:1},children:[jsx(Typography,{sx:{fontSize:o,color:"text.secondary",whiteSpace:"nowrap"},children:t("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:i,disableUnderline:true,onChange:b=>e.onRowsPerPageChange?.(Number(b.target.value)),sx:{fontSize:o,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:s.map(b=>jsx(MenuItem,{value:b,sx:{fontSize:o},children:b===-1?t("common.all"):b},`rows-per-page-${b}`))}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.max(l-1,0)),disabled:!h,sx:{p:.35,color:"text.primary"},children:jsx(Wh,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:o,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:t("table.toolbar.pageOf",{current:g,total:c})}),jsx(IconButton,{size:"small",onClick:()=>e.onPageChange?.(Math.min(l+1,c-1)),disabled:!m,sx:{p:.35,color:"text.primary"},children:jsx(uf,{fontSize:"small"})})]}),jsx(Box,{sx:{flex:1}}),jsxs(Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[n.length>0&&jsx(Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:n.map((b,C)=>jsx(Dt__default.Fragment,{children:b},`toolbar-custom-${C}`))}),jsx(Box,{sx:{width:"1px",height:20,bgcolor:"divider",mx:.5}}),jsx(Tooltip,{title:t("table.toolbar.groupBy"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:b=>e.setGroupAnchorEl(b.currentTarget),children:jsx(Badge,{badgeContent:e.grouping?.length,color:"primary",children:jsx(Lh,{})})})}),jsx(Tooltip,{title:t("table.toolbar.summary"),children:jsx(IconButton,{sx:{color:e.showSummary?"primary.main":"text.primary"},onClick:b=>e.setSummaryAnchorEl(b.currentTarget),children:jsx(zh,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:b=>e.setAnchorEl(b.currentTarget),children:jsx(Bh,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(Fh,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(hu,{})})}),e.showEditButton&&jsx(Tooltip,{title:t("table.toolbar.editItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenEditDialog,color:"primary",disabled:!!e.editDisabled,children:jsx(Oh,{})})})}),e.showDeleteButton&&jsx(Tooltip,{title:t("table.toolbar.deleteItem"),children:jsx("span",{children:jsx(IconButton,{onClick:e.onOpenDeleteConfirm,color:"error",disabled:!!e.deleteDisabled,children:jsx(Hh,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(Nh,{})})}),e.onLayoutSave&&!e.layoutManager&&jsx(Tooltip,{title:t("table.toolbar.saveLayout"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:b=>e.onLayoutSave(b),children:jsx(dp,{})})}),e.layoutManager]})]})};var zi=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:o}=e;return "translate3d("+(t?Math.round(t):0)+"px, "+(o?Math.round(o):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:o}=e;return "scaleX("+t+") scaleY("+o+")"}},Transform:{toString(e){if(e)return [zi.Translate.toString(e),zi.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:o,easing:r}=e;return t+" "+o+"ms "+r}}});var Ni=e=>{let{t}=ee(),{onSelectAllClick:o,order:r,orderBy:a,sortBy:n=[],numSelected:i=0,rowCount:s=0,onRequestSort:d,onContextMenu:l,columns:c,visibleColumns:g,selectionMode:h,grouping:m=[],isAllExpanded:b=false,handleToggleAll:C,onColumnResize:u,columnWidths:v,enableColumnReorder:p=false}=e,[f,y]=useState(null),k=useRef(null),E=K=>Q=>{f||d(K);},M=(K,Q,ne)=>{K.preventDefault(),K.stopPropagation(),y(Q),k.current={startX:K.clientX,startWidth:ne,colId:Q},document.addEventListener("mousemove",S),document.addEventListener("mouseup",D),document.body.style.cursor="col-resize";},S=K=>{if(!k.current)return;let{startX:Q,startWidth:ne,colId:ie}=k.current,Y=K.clientX-Q,Ae=Math.max(50,ne+Y);u&&u(ie,Ae);},D=()=>{y(null),k.current=null,document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",D),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",D);},[]);let P=h==="multiple"||h==="single",w=m.length>0&&!!C,B=t(b?"table.group.collapseAll":"table.group.expandAll"),R=c.filter(K=>g.includes(K.id)),I=new Map(n.map((K,Q)=>[K.field,{...K,priority:Q+1}])),A=R.map(K=>{let Q=v?.[K.id]||K.minWidth||100,ne=I.get(K.id);return jsx(rb,{headCell:K,width:typeof Q=="number"?Q:100,order:r,orderBy:a,multiSortInfo:ne,onRequestSort:E(K.id),onContextMenu:l,onResizeMouseDown:ie=>M(ie,K.id,typeof Q=="number"?Q:100),enableColumnReorder:p},K.id)}),q=R.map(K=>K.id),O=jsxs(_h,{children:[P&&jsx($s,{padding:"checkbox",sx:K=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:K.palette.mode==="dark"?"#000000":"#f5f5f5",color:K.palette.mode==="dark"?"#ffffff":K.palette.text.primary}),children:jsx(jh,{color:"primary",indeterminate:i>0&&i<s,checked:s>0&&i===s,onChange:o,disabled:h==="single"})}),w&&jsx($s,{align:"center",padding:"checkbox",sx:K=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:K.palette.mode==="dark"?"#000000":"#f5f5f5",color:K.palette.mode==="dark"?"#ffffff":K.palette.text.primary}),children:jsx(Yh,{title:B,children:jsx(Xh,{size:"small",onClick:K=>{K.stopPropagation(),C?.(!b);},sx:{p:.2},children:b?jsx(Jh,{fontSize:"small"}):jsx(Qh,{fontSize:"small"})})})}),p?jsx(SortableContext,{items:q,strategy:horizontalListSortingStrategy,children:A}):A]});return jsx(qh,{children:O})},rb=({headCell:e,width:t,order:o,orderBy:r,multiSortInfo:a,onRequestSort:n,onContextMenu:i,onResizeMouseDown:s,enableColumnReorder:d})=>{let{setNodeRef:l,attributes:c,listeners:g,transform:h,transition:m,isDragging:b}=useSortable({id:e.id,disabled:!d}),C=d?{transform:zi.Transform.toString(h),transition:m,opacity:b?.6:1}:{},u=a?.direction??(r===e.id?o:"asc"),v=!!a||r===e.id;return jsxs($s,{ref:d?l:void 0,align:"left",padding:e.disablePadding?"none":"normal",sortDirection:v?u:false,onContextMenu:i?p=>i(p,e.id):void 0,style:{width:t,minWidth:t,maxWidth:t,...C},sx:p=>({position:"sticky",top:0,zIndex:4,backgroundColor:p.palette.mode==="dark"?"#000000":"#f5f5f5",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,fontWeight:"bold",userSelect:"none",cursor:d?b?"grabbing":"grab":void 0}),...d?c:{},...d?g:{},children:[jsx(Zh,{active:v,direction:u,onClick:n,sx:p=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary,opacity:v?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:p.palette.mode==="dark"?"#ffffff":p.palette.text.primary}),children:jsxs(ei,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1,display:"inline-flex",alignItems:"center",gap:.5},children:[e.label,a&&jsx(ei,{component:"span",sx:p=>({display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:16,height:16,px:.5,borderRadius:999,fontSize:10,fontWeight:700,color:"#fff",backgroundColor:p.palette.primary.main}),children:a.priority})]})}),jsx(ei,{onMouseDown:s,onPointerDown:p=>p.stopPropagation(),onClick:p=>p.stopPropagation(),sx:p=>({position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize",backgroundColor:"transparent",transition:"background-color 120ms ease","&:hover":{backgroundColor:p.palette.mode==="dark"?"rgba(148,163,184,0.28)":"rgba(15,23,42,0.12)"},zIndex:1})})]})};var nu=e=>{let{t}=ee(),{visibleRows:o,visibleColumns:r,selected:a=[],handleClick:n,columns:i,toggleGroupExpand:s,expandedGroups:d=new Set,selectionMode:l,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:h,handleCollapseGroupRecursively:m}=e,b=p=>a.indexOf(p)!==-1,C=l==="multiple"||l==="single",u=c.length>0,v=r.length+(C?1:0)+(u?1:0);return jsxs(TableBody,{children:[o.map((p,f)=>{if(p.type==="group"){let y=d.has(p.id),k=p.childIds||[],E=k.filter(P=>b(P)).length,M=k.length>0&&E===k.length,S=E>0&&E<k.length;return jsxs(TableRow,{sx:P=>({backgroundColor:P.palette.mode==="dark"?"#111111":"#f5f5f5","& .MuiTableCell-root":{color:P.palette.text.primary,borderBottomColor:P.palette.divider},"& .MuiIconButton-root":{color:P.palette.text.primary},"& .MuiCheckbox-root":{color:P.palette.text.secondary},"& .MuiCheckbox-root.Mui-checked, & .MuiCheckbox-root.MuiCheckbox-indeterminate":{color:P.palette.primary.main}}),children:[C&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:M,indeterminate:S,onChange:P=>{if(P.stopPropagation(),!!e.onSelectionChange)if(M){let w=a.filter(B=>!k.includes(B));e.onSelectionChange(w);}else {let w=Array.from(new Set([...a,...k]));e.onSelectionChange(w);}},onClick:P=>P.stopPropagation(),sx:{p:.5}})}),u&&jsx(TableCell,{padding:"checkbox",sx:{width:44},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.25},children:[c.length>1&&p.level<c.length-1&&jsx(Tooltip,{title:g?.(p.id)?t("table.group.collapseAll"):t("table.group.expandAll"),children:jsx(IconButton,{size:"small",onClick:()=>{g?.(p.id)?m?.(p.id):h?.(p.id);},sx:{p:.25},children:g?.(p.id)?jsx(Jh,{fontSize:"small"}):jsx(Qh,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>s&&s(p.id),sx:{p:.25},children:y?jsx(cb,{}):jsx(uf,{})})]})}),jsx(TableCell,{colSpan:r.length,sx:{py:1,pl:p.level*3+1},children:jsxs(Typography,{variant:"body2",fontWeight:"bold",color:"text.primary",sx:{fontSize:"0.85rem"},children:[p.field,": ",p.value," (",p.count,")"]})})]},p.id)}else {let y=p.data||p,k=p.id||y.id||f,E=b(k),M=`enhanced-table-checkbox-${f}`,D=(p.level!==void 0?p.level:0)*4;return jsxs(TableRow,{hover:true,onClick:P=>n&&n(P,y),role:"checkbox","aria-checked":E,tabIndex:-1,selected:E,sx:{cursor:"pointer"},children:[C&&jsx(TableCell,{padding:"checkbox",sx:{pl:D>0?D+1:void 0},children:jsx(Checkbox,{color:"primary",checked:E,inputProps:{"aria-labelledby":M}})}),u&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(P=>r.includes(P.id)).map((P,w)=>{let R=!C&&w===0&&D>0?{pl:D+2}:{};return jsx(TableCell,{align:"left",sx:R,children:P.render?P.render(y[P.id],y):(function(){let A=y[P.id];if(P.numeric){if(typeof A=="number")return A.toLocaleString();if(typeof A=="string"&&A.trim()!==""&&!isNaN(Number(A)))return Number(A).toLocaleString()}return A})()},P.id)})]},k)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:v,align:"center",children:t("common.noData")})})]})};var iu=e=>{let{visibleColumns:t,summaryRow:o,selectionMode:r,grouping:a=[]}=e;if(!e.showSummary)return null;let n=r==="multiple"||r==="single",i=a.length>0;return jsx(TableFooter,{sx:{position:"sticky",bottom:0,zIndex:e.zIndex,bgcolor:"background.paper"},children:jsxs(TableRow,{children:[n&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper"}}),i&&jsx(TableCell,{padding:"checkbox",sx:{bgcolor:"background.paper",width:44}}),t.map(s=>jsx(TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let l=o[s];return l==null||l===""?"":typeof l=="number"?l.toLocaleString():typeof l=="string"&&l.trim()!==""&&!isNaN(Number(l))?Number(l).toLocaleString():l})()},s))]})})};var su=e=>{let{t}=ee();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var Ua=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:r,columns:a,toggleGroupField:n})=>{let{t:i}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsxs(Box,{sx:{p:1,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsx(Typography,{variant:"subtitle2",sx:{px:1},children:i("table.menu.groupBy")}),o.length>0&&jsx(Button,{size:"small",color:"error",onClick:()=>r([]),startIcon:jsx(mu,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),a.map(s=>{let d=o.includes(s.id),l=o.indexOf(s.id)+1;return jsx(MenuItem,{onClick:()=>n(s.id),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Checkbox,{checked:d,size:"small"}),jsx(ListItemText,{primary:s.label}),d&&jsx(Badge,{badgeContent:l,color:"primary",sx:{mr:2}})]})},s.id)})]})},Ka=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:n("table.menu.visibleColumns")})}),jsx(Divider,{}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(Checkbox,{checked:r.includes(i.id),size:"small"}),jsx(ListItemText,{primary:i.label})]},i.id))]})},Hi=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:r,columns:a,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:s}=ee();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:d=>r(d.target.checked),size:"small"}),label:s("table.menu.showSummaryRow")})}),jsx(Divider,{}),a.filter(d=>d.numeric).map(d=>jsxs(MenuItem,{onClick:()=>i(d.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(d.id),size:"small"}),jsx(ListItemText,{primary:d.label})]},d.id)),a.filter(d=>d.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:s("table.menu.noNumericColumns")})})]})},Wi=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:r,toggleColumnVisibility:a})=>{let{t:n}=ee();return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{onClick:t,children:n("common.copy")}),jsx(Divider,{}),jsx(MenuItem,{disabled:true,children:n("table.menu.visibleColumns")}),o.map(i=>jsxs(MenuItem,{onClick:()=>a(i.id),children:[jsx(ListItemIcon,{children:r.includes(i.id)&&jsx(Sb,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})},bu=({contextMenu:e,handleClose:t,columns:o,visibleColumns:r,grouping:a,summaryColumns:n,showSummary:i,sortBy:s,orderBy:d,order:l,onSortAsc:c,onSortDesc:g,onClearSort:h,onHideColumn:m,onToggleGroup:b,onToggleSummary:C,onOpenSortDialog:u})=>{let{t:v}=ee(),p=e?.columnId??"",f=o.find(w=>w.id===p),y=a.includes(p),k=n.includes(p),E=!!f?.numeric,M=s.find(w=>w.field===p),S=M?M.direction==="asc":d===p&&l==="asc",D=M?M.direction==="desc":d===p&&l==="desc",P=S||D;return jsxs(Menu,{open:e!==null,onClose:t,anchorReference:"anchorPosition",anchorPosition:e!==null?{top:e.mouseY,left:e.mouseX}:void 0,children:[jsx(MenuItem,{disabled:true,sx:{opacity:"1 !important",fontWeight:700},children:jsx(ListItemText,{primary:f?.label??p})}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{c(p),t();},selected:S,children:[jsx(ListItemIcon,{children:jsx(gu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.sortAsc")})]}),jsxs(MenuItem,{onClick:()=>{g(p),t();},selected:D,children:[jsx(ListItemIcon,{children:jsx(fu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.sortDesc")})]}),P&&jsxs(MenuItem,{onClick:()=>{h(p),t();},children:[jsx(ListItemIcon,{children:jsx(mu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.clearSort")})]}),jsxs(MenuItem,{onClick:()=>{u(),t();},children:[jsx(ListItemIcon,{children:jsx(hu,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.configureSort")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{b(p),t();},selected:y,children:[jsx(ListItemIcon,{children:jsx(Lh,{fontSize:"small"})}),jsx(ListItemText,{primary:v(y?"table.headerMenu.ungroup":"table.headerMenu.group")})]}),E&&i&&jsxs(MenuItem,{onClick:()=>{C(p),t();},selected:k,children:[jsx(ListItemIcon,{children:jsx(zh,{fontSize:"small"})}),jsx(ListItemText,{primary:v(k?"table.headerMenu.removeSummary":"table.headerMenu.addSummary")})]}),jsx(Divider,{}),jsxs(MenuItem,{onClick:()=>{m(p),t();},children:[jsx(ListItemIcon,{children:jsx(wb,{fontSize:"small"})}),jsx(ListItemText,{primary:v("table.headerMenu.hideColumn")})]})]})},yu=({open:e,onClose:t,columns:o,initialRules:r,onApply:a,onClear:n})=>{let{t:i}=ee(),[s,d]=useState([]);useEffect(()=>{e&&d(r.length>0?r.map(C=>({...C})):[]);},[e,r]);let l=useMemo(()=>new Set(s.map(C=>C.field)),[s]),c=useMemo(()=>o.filter(C=>!l.has(C.id)),[o,l]),g=()=>{let C=c[0];C&&d(u=>[...u,{field:C.id,direction:"asc"}]);},h=C=>{d(u=>u.filter((v,p)=>p!==C));},m=(C,u)=>{d(v=>v.map((p,f)=>f===C?{...p,...u}:p));},b=(C,u)=>{d(v=>{let p=C+u;if(p<0||p>=v.length)return v;let f=[...v],[y]=f.splice(C,1);return f.splice(p,0,y),f});};return jsxs(Dialog,{open:e,onClose:t,maxWidth:"sm",fullWidth:true,children:[jsx(DialogTitle,{children:i("table.sortDialog.title")}),jsxs(DialogContent,{dividers:true,children:[s.length===0?jsx(Typography,{variant:"body2",sx:{color:"text.secondary",py:2},children:i("table.sortDialog.empty")}):jsx(Stack,{spacing:1,children:s.map((C,u)=>{let v=new Set(s.filter((f,y)=>y!==u).map(f=>f.field)),p=o.filter(f=>!v.has(f.id));return jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"24px 1fr 110px auto auto",alignItems:"center",gap:1},children:[jsx(Badge,{badgeContent:u+1,color:"primary",sx:{ml:.5}}),jsx("select",{value:C.field,onChange:f=>m(u,{field:f.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:p.map(f=>jsx("option",{value:f.id,children:f.label},f.id))}),jsxs("select",{value:C.direction,onChange:f=>m(u,{direction:f.target.value}),style:{padding:6,fontSize:13,borderRadius:4},children:[jsx("option",{value:"asc",children:i("table.sortDialog.asc")}),jsx("option",{value:"desc",children:i("table.sortDialog.desc")})]}),jsx(IconButton,{size:"small",onClick:()=>b(u,-1),disabled:u===0,children:jsx(gu,{fontSize:"small"})}),jsxs(Stack,{direction:"row",children:[jsx(IconButton,{size:"small",onClick:()=>b(u,1),disabled:u===s.length-1,children:jsx(fu,{fontSize:"small"})}),jsx(IconButton,{size:"small",onClick:()=>h(u),children:jsx(Pb,{fontSize:"small"})})]})]},`sort-rule-${u}`)})}),jsx(Button,{size:"small",onClick:g,disabled:c.length===0,startIcon:jsx(hu,{}),sx:{mt:2},children:i("table.sortDialog.addRule")})]}),jsxs(DialogActions,{children:[jsx(Button,{color:"inherit",onClick:()=>{n(),t();},children:i("table.sortDialog.clearAll")}),jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:t,children:i("common.cancel")}),jsx(Button,{variant:"contained",onClick:()=>{a(s),t();},children:i("common.ok")})]})]})};var Wn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),vu=({kpis:e})=>{let{t}=ee(),o=[{label:t("graph.kpi.totalRecords"),value:Wn(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:Wn(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:Wn(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:Wn(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:Wn(e.flaggedCount,0),color:"error.main"}];return jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(6, minmax(0, 1fr))"},gap:1.5},children:o.map(r=>jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2,minHeight:96,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[jsx(Typography,{variant:"caption",color:"text.secondary",children:r.label}),jsx(Typography,{variant:"h4",fontWeight:800,sx:{color:r.color},children:r.value})]},r.label))})};var $i=({title:e,subtitle:t,children:o})=>jsxs(Paper,{variant:"outlined",sx:{p:2,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",fontWeight:700,children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:t}),o]});var Gn=({data:e,orientation:t="horizontal",valueSuffix:o="",minHeight:r=210,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=Math.max(...e.map(s=>s.value),1);return t==="vertical"?jsx(Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:r},children:e.map(s=>jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Box,{onClick:()=>n?.(s),sx:{height:`${Math.max(s.value/i*180,6)}px`,bgcolor:s.name===a?"primary.dark":"primary.main",borderRadius:"8px 8px 0 0",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1}}),jsx(Typography,{variant:"caption",noWrap:true,title:s.name,sx:{display:"block",mt:.5},children:s.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[s.value.toFixed(1),o]})]},s.name))}):jsx(Stack,{spacing:1,children:e.map(s=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:s.name,children:s.name}),jsx(Box,{onClick:()=>n?.(s),sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden",cursor:n?"pointer":"default",opacity:a&&s.name!==a?.45:1},children:jsx(Box,{sx:{width:`${s.value/i*100}%`,height:"100%",bgcolor:s.name===a?"primary.dark":"primary.main"}})}),jsxs(Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:[s.value.toFixed(1),o]})]},s.name))})};var Su=({data:e,color:t="#42A5F5",valueSuffix:o="",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=e.map(h=>h.value),s=Math.min(...i,0),l=Math.max(...i,1)-s||1,c=e.map((h,m)=>{let b=n+m*(a-n*2)/Math.max(e.length-1,1),C=r-n-(h.value-s)/l*(r-n*2);return {x:b,y:C,...h}}),g=c.map(h=>`${h.x},${h.y}`).join(" ");return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),jsx("polyline",{fill:"none",stroke:t,strokeWidth:3,points:g}),c.map(h=>jsx("circle",{cx:h.x,cy:h.y,r:4,fill:t},h.name))]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(h=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:h.name,sx:{display:"block"},children:h.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[h.value.toFixed(1),o]})]},h.name))})]})};var wu=({data:e,barColor:t="#64B5F6",lineColor:o="#FFB74D",height:r=220})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let a=640,n=28,i=Math.max(...e.map(c=>c.barValue),1),s=Math.max(...e.map(c=>c.lineValue),1),d=e.map((c,g)=>{let h=(a-n*2)/e.length,m=Math.max(h*.5,8),b=n+g*h+(h-m)/2,C=c.barValue/i*(r-n*2),u=r-n-C;return {x:b,y:u,barHeight:C,barWidth:m,item:c}}),l=e.map((c,g)=>{let h=(a-n*2)/e.length,m=n+g*h+h/2,b=r-n-c.lineValue/s*(r-n*2);return {x:m,y:b,item:c}});return jsxs(Stack,{spacing:1.25,children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${a} ${r}`,sx:{width:"100%",height:r},children:[jsx("line",{x1:n,y1:r-n,x2:a-n,y2:r-n,stroke:"rgba(148,163,184,0.4)"}),d.map(c=>jsx("rect",{x:c.x,y:c.y,width:c.barWidth,height:Math.max(c.barHeight,4),rx:6,fill:t},c.item.name)),jsx("polyline",{fill:"none",stroke:o,strokeWidth:3,points:l.map(c=>`${c.x},${c.y}`).join(" ")}),l.map(c=>jsx("circle",{cx:c.x,cy:c.y,r:3.5,fill:o},`${c.item.name}-line`))]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`,gap:1},children:e.map(c=>jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",noWrap:true,title:c.name,sx:{display:"block"},children:c.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Bar: ",c.barValue.toFixed(1)]}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:["Line: ",c.lineValue.toFixed(1)]})]},c.name))})]})};var Nb=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,Iu=({data:e})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let t=Array.from(new Set(e.map(n=>n.x))),o=Array.from(new Set(e.map(n=>n.y))),r=Math.max(...e.map(n=>n.value),1),a=new Map(e.map(n=>[`${n.y}__${n.x}`,n.value]));return jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:`120px repeat(${t.length}, minmax(64px, 1fr))`,gap:1,minWidth:120+t.length*64},children:[jsx(Box,{}),t.map(n=>jsx(Typography,{variant:"caption",sx:{textAlign:"center",fontWeight:600},children:n},n)),o.map(n=>jsxs(Box,{sx:{display:"contents"},children:[jsx(Typography,{variant:"caption",sx:{alignSelf:"center"},children:n}),t.map(i=>{let s=a.get(`${n}__${i}`)||0,d=s/r;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:Nb(d),border:"1px solid rgba(148,163,184,0.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:s.toFixed(1)})},`${n}-${i}`)})]},n))]})})};var Vb=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],Zi=({data:e,variant:t="donut",colors:o=Vb,size:r=180,activeName:a,onItemClick:n})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let i=0,s=e.map((d,l)=>{let c=i;return i+=d.percent,`${o[l%o.length]} ${c}% ${i}%`});return jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:2,alignItems:"center",children:[jsx(Box,{sx:{width:r,height:r,borderRadius:"50%",background:`conic-gradient(${s.join(", ")})`,position:"relative",flexShrink:0},children:t==="donut"&&jsx(Box,{sx:{position:"absolute",inset:Math.round(r*.18),bgcolor:"background.paper",borderRadius:"50%"}})}),jsx(Stack,{spacing:1,sx:{minWidth:180},children:e.map((d,l)=>jsxs(Box,{onClick:()=>n?.(d),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:a&&d.name!==a?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[l%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:d.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[d.percent.toFixed(0),"%"]})]},d.name))})]})};var Ru=({effect:e,branches:t})=>{if(t.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=t.filter((a,n)=>n%2===0),r=t.filter((a,n)=>n%2===1);return jsxs(Stack,{spacing:1.5,children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(o.length,1)}, minmax(0, 1fr))`,gap:1},children:o.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))}),jsxs(Box,{sx:{position:"relative",height:32},children:[jsx(Box,{sx:{position:"absolute",inset:"50% 0 auto 0",borderTop:"2px solid",borderColor:"primary.main"}}),jsx(Box,{sx:{position:"absolute",right:0,top:"calc(50% - 12px)",px:1,py:.25,borderRadius:1,bgcolor:"primary.main",color:"primary.contrastText"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:e})})]}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.max(r.length,1)}, minmax(0, 1fr))`,gap:1},children:r.map(a=>jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1},children:[jsx(Typography,{variant:"caption",fontWeight:700,children:a.title}),a.causes.map(n=>jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:n},n))]},a.title))})]})};var Mu=({data:e,height:t=240})=>{if(e.length===0)return jsx(Typography,{variant:"body2",color:"text.secondary",children:"No data"});let o=0,r=e.map(g=>{let h=g.type==="total"?0:o,m=g.type==="total"?g.value:o+g.value;return g.type!=="total"&&(o=m),{...g,start:h,end:m,delta:m-h}}),a=r.flatMap(g=>[g.start,g.end]),n=Math.min(...a,0),i=Math.max(...a,1),s=680,d=30,l=i-n||1,c=g=>t-d-(g-n)/l*(t-d*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${s} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:d,y1:c(0),x2:s-d,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),r.map((g,h)=>{let m=(s-d*2)/r.length,b=Math.max(m*.55,8),C=d+h*m+(m-b)/2,u=c(Math.max(g.start,g.end)),v=c(Math.min(g.start,g.end)),p=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:C,y:u,width:b,height:Math.max(v-u,4),rx:6,fill:p}),jsx("text",{x:C+b/2,y:u-6,textAnchor:"middle",fill:"currentColor",fontSize:"11",children:g.end.toFixed(1)})]},g.name)})]}),jsx(Box,{sx:{mt:1,display:"grid",gridTemplateColumns:`repeat(${r.length}, minmax(0, 1fr))`,gap:1},children:r.map(g=>jsx(Typography,{variant:"caption",noWrap:true,title:g.name,children:g.name},g.name))})]})};var qn=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>{let a=encodeURIComponent(t);return `https://www.google.com/maps/embed/v1/place?key=${encodeURIComponent(e)}&q=${a}&zoom=${o}&maptype=${r}`},VR=(e,t=360)=>{let o=qn(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var Eu=({apiKey:e,query:t,embedUrl:o,zoom:r=14,mapType:a="roadmap",height:n=320})=>{let i=o||(e&&t?qn({apiKey:e,query:t,zoom:r,mapType:a}):"");return i?jsxs(Box,{children:[jsx(Box,{component:"iframe",src:i,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:n,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:i,target:"_blank",rel:"noreferrer",children:"Google Maps"})]})]}):jsx(Box,{children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Google Map requires `embedUrl` or (`apiKey` + `query`)."})})};var Qi=({keyword:e,location:t,src:o="orbcafe-ui"})=>{if(t){let r=encodeURIComponent(t.name||e||"Location");return `https://uri.amap.com/marker?position=${t.lng},${t.lat}&name=${r}&src=${encodeURIComponent(o)}&coordinate=gaode&callnative=0`}return e?`https://uri.amap.com/search?keyword=${encodeURIComponent(e)}&src=${encodeURIComponent(o)}&callnative=0`:"https://uri.amap.com/search?keyword=%E5%8C%97%E4%BA%AC&src=orbcafe-ui&callnative=0"};var Nu=({keyword:e,location:t,embedUrl:o,height:r=320})=>{let a=o||Qi({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0});return jsxs(Box,{children:[jsx(Box,{component:"iframe",src:a,loading:"lazy",referrerPolicy:"no-referrer-when-downgrade",sx:{width:"100%",height:r,border:0,borderRadius:2}}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{mt:.75,display:"block"},children:["If iframe is blocked, open directly: ",jsx(Link,{href:a,target:"_blank",rel:"noreferrer",children:"AMap"})]})]})};var Vu=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:r})=>{let{t:a}=ee();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx($i,{title:a("graph.chart.billable.title"),subtitle:a("graph.chart.billable.subtitle"),children:jsx(Gn,{data:e,orientation:"horizontal",activeName:r?.filters?.primaryDimension,onItemClick:n=>r?.onPrimaryDimensionClick?.(n.name)})}),jsx($i,{title:a("graph.chart.efficiency.title"),subtitle:a("graph.chart.efficiency.subtitle"),children:jsx(Gn,{data:t,orientation:"vertical",valueSuffix:"%",activeName:r?.filters?.secondaryDimension,onItemClick:n=>r?.onSecondaryDimensionClick?.(n.name)})}),jsx($i,{title:a("graph.chart.status.title"),subtitle:a("graph.chart.status.subtitle"),children:jsx(Zi,{data:o,variant:"donut",activeName:r?.filters?.status,onItemClick:n=>r?.onStatusClick?.(n.name)})})]})};var io=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var oc=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var ry=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],ay=["zh","en","de","fr","ja","ko"],Wu=({open:e,onClose:t,value:o,onSaveAll:r,modelOptions:a=ry,promptLangOptions:n=ay,analysisTemplateOptions:i=[],responseTemplateOptions:s=[],defaultAnalysisTemplateId:d,defaultResponseTemplateId:l})=>{let[c,g]=useState(o),[h,m]=useState(d||""),[b,C]=useState(l||""),[u,v]=useState(false);useEffect(()=>{e&&(g(o),m(d||""),C(l||""));},[e,o,d,l]);let p=(y,k)=>{g(E=>({...E,[y]:k}));},f=async()=>{if(r)try{v(!0),await r({settings:c,analysisTemplateId:h||void 0,responseTemplateId:b||void 0});}finally{v(false);}};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"lg",children:[jsxs(DialogTitle,{sx:{pr:7,pb:2.2},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800},children:"AI Settings"}),jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.5},children:"Configure LLM settings and editable agent prompts by language."}),jsx(IconButton,{onClick:t,sx:{position:"absolute",right:12,top:12},children:jsx(bh,{})})]}),jsx(DialogContent,{sx:{pt:"18px !important"},children:jsxs(Stack,{spacing:2.2,children:[jsxs(Box,{sx:{mt:.8,display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"}},children:[jsx(Box,{children:jsx(io,{size:"small",value:c.baseUrl,onChange:y=>p("baseUrl",y.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(io,{size:"small",type:"password",value:c.apiKey,onChange:y=>p("apiKey",y.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(io,{size:"small",value:c.model,onChange:y=>p("model",y.target.value),fullWidth:true,select:true,label:"Model",children:a.map(y=>jsx(MenuItem,{value:y,children:y},y))})}),jsx(Box,{children:jsx(io,{size:"small",value:c.promptLang,onChange:y=>p("promptLang",y.target.value),fullWidth:true,select:true,label:"Prompt Lang",children:n.map(y=>jsx(MenuItem,{value:y,children:y},y))})})]}),jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:[jsxs(io,{size:"small",value:h,onChange:y=>m(y.target.value),fullWidth:true,select:true,label:"Analysis Template",children:[jsx(MenuItem,{value:"",children:"Default"}),i.map(y=>jsx(MenuItem,{value:y.id,children:y.label},y.id))]}),jsx(oc,{multiline:true,minRows:8,value:c.analysisPrompt,onChange:y=>p("analysisPrompt",y.target.value),fullWidth:true,label:"Analysis Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}}),jsxs(io,{size:"small",value:b,onChange:y=>C(y.target.value),fullWidth:true,select:true,label:"Response Template",children:[jsx(MenuItem,{value:"",children:"Default"}),s.map(y=>jsx(MenuItem,{value:y.id,children:y.label},y.id))]}),jsx(oc,{multiline:true,minRows:8,value:c.responsePrompt,onChange:y=>p("responsePrompt",y.target.value),fullWidth:true,label:"Response Prompt",sx:{"& .MuiInputBase-root":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"}}})]})]})}),jsxs(DialogActions,{sx:{px:3,pb:2.5,pt:1.2,gap:1},children:[jsx(Button,{variant:"outlined",onClick:t,children:"Cancel"}),jsx(Button,{variant:"contained",onClick:f,disabled:!r||u,children:"Save"})]})]})};var rl=({open:e,onClose:t,model:o,tableContent:r,extraCharts:a,interaction:n,aiAssistant:i})=>{let{t:s}=ee(),[d,l]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[h,m]=useState(false),b=n?.enabled!==false&&!!n,C=i?.enabled!==false,u=n?.filters||{},v=!!(u.primaryDimension||u.secondaryDimension||u.status),p=i?.placeholder||"Ask AI to analyze data, create charts, or find insights...";useEffect(()=>{e&&l(i?.defaultPrompt||"");},[e,i?.defaultPrompt]);let f=i?.settings||{baseUrl:"/llm-api",apiKey:"",model:"doubao-lite",promptLang:"zh",analysisPrompt:"",responsePrompt:""},y=async()=>{let k=d.trim();if(!(!k||!i?.onSubmit))try{g(!0),await i.onSubmit(k,{filters:u,model:o});}finally{g(false);}};return jsx(Dialog,{open:e,onClose:t,fullScreen:true,children:jsxs(Box,{sx:{height:"100%",display:"flex",flexDirection:"column",bgcolor:"background.default"},children:[jsx(Box,{sx:{p:2,borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:{xs:"column",lg:"row"},alignItems:{xs:"stretch",lg:"center"},justifyContent:"space-between",spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{flexWrap:"wrap"},children:[jsx(Typography,{variant:"h5",fontWeight:800,children:o.title}),jsx(Chip,{size:"small",label:s("graph.records",{count:o.kpis.totalRecords})}),b&&u.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${u.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),b&&u.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${u.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),b&&u.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${u.status}`,onDelete:()=>n?.onClearFilter("status")}),b&&v&&jsx(Button,{size:"small",onClick:()=>n?.onClearAll(),children:"Clear"})]}),jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"center",sx:{width:{xs:"100%",lg:"auto"}},children:[C&&jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minWidth:{xs:0,lg:520},flex:{xs:1,lg:"0 0 auto"}},children:[jsx(IconButton,{size:"small",onClick:i?.onVoiceInput,children:jsx(dy,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:d,onChange:k=>l(k.target.value),onKeyDown:k=>{k.key==="Enter"&&(k.preventDefault(),y());},placeholder:p,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:y,disabled:c||!d.trim(),children:jsx(py,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>m(true),children:jsx(uy,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(bh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(vu,{kpis:o.kpis}),jsx(Vu,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:b?{filters:u,onPrimaryDimensionClick:k=>n?.onPrimaryDimensionClick(k),onSecondaryDimensionClick:k=>n?.onSecondaryDimensionClick(k),onStatusClick:k=>n?.onStatusClick(k)}:void 0}),a,r]}),jsx(Wu,{open:h,onClose:()=>m(false),value:f,onSaveAll:i?.onSaveAll,modelOptions:i?.modelOptions,promptLangOptions:i?.promptLangOptions,analysisTemplateOptions:i?.analysisTemplateOptions,responseTemplateOptions:i?.responseTemplateOptions,defaultAnalysisTemplateId:i?.defaultAnalysisTemplateId,defaultResponseTemplateId:i?.defaultResponseTemplateId})]})})};var qr={primaryDimension:["Client","Customer","Category","Project"],secondaryDimension:["Person","Consultant","Owner","Name"],status:["Status","state"],date:["Date","WorkDate","CreatedAt"],description:["Description","Task","Title","Memo"],reportHours:["Report_Hour","Report Hours","Hours","ReportHours"],billableHours:["Billable_Hour","Billable Hours","BillableHours"],amount:["Amount","Billable_Amount","Total_Amount","Value"]},gy=5,$u=e=>e.toLowerCase().replace(/[\s_-]/g,""),_r=(e,t,o,r)=>{if(t)return t;if(e.length===0)return r;let a=Object.keys(e[0]),n=new Map(a.map(i=>[$u(i),i]));for(let i of o){let s=n.get($u(i));if(s)return s}return a[0]||r},Ro=e=>{if(typeof e=="number")return Number.isFinite(e)?e:0;if(typeof e=="string"){let t=Number(e.replace(/,/g,"").trim());return Number.isFinite(t)?t:0}return 0},Yt=(e,t)=>e==null||e===""?t:String(e),fy=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=Yt(i[t],a);n.set(s,(n.get(s)||0)+Ro(i[o]));}),Array.from(n.entries()).map(([i,s])=>({name:i,value:s})).sort((i,s)=>s.value-i.value).slice(0,r)},hy=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=Yt(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Ro(s[o]),l.billable+=Ro(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,value:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>s.value-d.value).slice(0,a)},by=(e,t,o)=>{let r=e.length;if(r===0)return [];let a=new Map;return e.forEach(n=>{let i=Yt(n[t],o);a.set(i,(a.get(i)||0)+1);}),Array.from(a.entries()).map(([n,i])=>({name:n,value:i,percent:i/r*100}))},Gu=(e,t,o)=>{let r=new Map;return e.forEach(a=>{let n=Yt(a[t],"N/A");r.set(n,(r.get(n)||0)+Ro(a[o]));}),Array.from(r.entries()).sort(([a],[n])=>a.localeCompare(n)).map(([a,n])=>({name:a,value:n}))},yy=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=Yt(s[t],n),l=i.get(d)||{report:0,billable:0};l.report+=Ro(s[o]),l.billable+=Ro(s[r]),i.set(d,l);}),Array.from(i.entries()).map(([s,d])=>({name:s,barValue:d.billable,lineValue:d.report>0?d.billable/d.report*100:0})).sort((s,d)=>d.barValue-s.barValue).slice(0,a)},xy=(e,t,o,r,a)=>{let n=new Map;return e.forEach(i=>{let s=Yt(i[t],a),d=Yt(i[o],a),l=`${s}__${d}`;n.set(l,(n.get(l)||0)+Ro(i[r]));}),Array.from(n.entries()).map(([i,s])=>{let[d,l]=i.split("__");return {x:d,y:l,value:s}})},vy=(e,t,o)=>{let r=Gu(e,t,o),a=r.map(i=>({name:i.name,value:i.value,type:"delta"})),n=r.reduce((i,s)=>i+s.value,0);return [...a,{name:"Total",value:n,type:"total"}]},Cy=(e,t,o,r,a,n)=>{let i=new Map;return e.forEach(s=>{let d=Yt(s[t],n),l=`${Yt(s[o],n)} / ${Yt(s[r],n)}`,c=i.get(d)||new Map;c.set(l,(c.get(l)||0)+1),i.set(d,c);}),Array.from(i.entries()).map(([s,d])=>({title:s,causes:Array.from(d.entries()).sort((l,c)=>c[1]-l[1]).slice(0,a).map(([l,c])=>`${l} (${c})`)})).slice(0,6)},tn=({rows:e,config:t})=>{let{t:o}=ee(),r=o("graph.unassigned"),a=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:_r(e,c?.primaryDimension,qr.primaryDimension,"Category"),secondaryDimension:_r(e,c?.secondaryDimension,qr.secondaryDimension,"Owner"),status:_r(e,c?.status,qr.status,"Status"),date:_r(e,c?.date,qr.date,"Date"),description:_r(e,c?.description,qr.description,"Description"),reportHours:_r(e,c?.reportHours,qr.reportHours,"ReportHours"),billableHours:_r(e,c?.billableHours,qr.billableHours,"BillableHours"),amount:_r(e,c?.amount,qr.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let h=Ro(c[a.reportHours]),m=Ro(c[a.billableHours]),b=Ro(c[a.amount]),C=h>0?m/h*100:0;return {id:`graph-row-${g}`,Date:Yt(c[a.date],""),Primary:Yt(c[a.primaryDimension],r),Secondary:Yt(c[a.secondaryDimension],r),Description:Yt(c[a.description],""),ReportHours:h,BillableHours:m,Amount:b,Efficiency:C,Status:Yt(c[a.status],r)}}),[e,a,r]),i=useMemo(()=>{let c=n.length,g=n.reduce((v,p)=>v+Ro(p.ReportHours),0),h=n.reduce((v,p)=>v+Ro(p.BillableHours),0),m=n.reduce((v,p)=>v+Ro(p.Amount),0),b=g>0?h/g*100:0,C=t?.statusFlagValues||["flag","flagged","warning","risk"],u=n.filter(v=>C.includes(Yt(v.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:h,efficiency:b,totalAmount:m,flaggedCount:u}},[n,t?.statusFlagValues]),s=t?.topN||gy,d=useMemo(()=>({billableByPrimary:fy(n,"Primary","BillableHours",s,r),efficiencyBySecondary:hy(n,"Secondary","ReportHours","BillableHours",s,r),statusDistribution:by(n,"Status",r),lineByDate:Gu(n,"Date","BillableHours"),comboByPrimary:yy(n,"Primary","ReportHours","BillableHours",s,r),heatmapPrimarySecondary:xy(n,"Primary","Secondary","BillableHours",r),waterfallBillable:vy(n,"Date","BillableHours"),fishboneStatusCauses:Cy(n,"Status","Primary","Secondary",3,r)}),[n,s,r]),l=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:d,table:{columns:[{id:"Date",label:a.date},{id:"Primary",label:a.primaryDimension},{id:"Secondary",label:a.secondaryDimension},{id:"Description",label:a.description},{id:"ReportHours",label:o("graph.column.reportHours"),align:"right"},{id:"BillableHours",label:o("graph.column.billableHours"),align:"right"},{id:"Amount",label:"Amount",align:"right"},{id:"Efficiency",label:"Efficiency",align:"right"},{id:"Status",label:a.status}],rows:n}}),[d,t?.title,a,i,n,o]);return {fieldMapping:a,model:l}};var on=e=>String(e??"").trim(),nl=(e={})=>{let[t,o]=useState(e),r=useCallback((d,l)=>{o(c=>{let g=l?.trim();if(!g){let h={...c};return delete h[d],h}if(c[d]===g){let h={...c};return delete h[d],h}return {...c,[d]:g}});},[]),a=useCallback(d=>{o(l=>{if(!l[d])return l;let c={...l};return delete c[d],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),s=useCallback((d,l)=>d.filter(c=>!(t.primaryDimension&&on(c[l.primaryDimension])!==on(t.primaryDimension)||t.secondaryDimension&&on(c[l.secondaryDimension])!==on(t.secondaryDimension)||t.status&&on(c[l.status])!==on(t.status))),[t]);return {filters:t,setFilter:r,clearFilter:a,clearAll:n,hasActiveFilters:i,applyRows:s}};var ll=({variants:e,currentVariantId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=ee(),d=useTheme().palette.mode==="dark",l="0.85rem",c={xs:"calc((100% - 1 * 16px) / 2)",sm:"calc((100% - 2 * 16px) / 3)",md:"calc((100% - 3 * 16px) / 4)",lg:"calc((100% - 5 * 16px) / 6)"},[g,h]=useState(false),[m,b]=useState(""),[C,u]=useState(false),[v,p]=useState(false),f=e.find(E=>E.id===t),y=()=>{b(f?.name||i("variant.newVariant")),u(f?.isDefault||false),p(f?.isPublic||false),h(true);},k=()=>{r({name:m,isDefault:C,isPublic:v,description:""}),h(false);};return jsxs(Box,{sx:{display:"flex",gap:1,alignItems:"center",width:"100%",maxWidth:"100%"},children:[jsx(Autocomplete,{size:"small",sx:{width:c,"& .MuiInputBase-root":{fontSize:l,bgcolor:d?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:d?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:l},"& .MuiAutocomplete-noOptions":{fontSize:l}},noOptionsText:jsx(Typography,{sx:{fontSize:l},children:i("variant.noOptions")}),options:e,getOptionLabel:E=>E.name+(E.isDefault?` (${i("variant.defaultSuffix")})`:""),value:f||null,onChange:(E,M)=>{M&&o(M);},renderInput:E=>jsx(TextField,{...E,variant:"outlined",size:"small",InputProps:{...E.InputProps,sx:{fontSize:l,color:d?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(E,M)=>jsx("li",{...E,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:l},children:M.name}),M.isDefault&&jsx(Ey,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:y,size:"small",color:"primary",children:jsx(dp,{fontSize:"small"})})}),jsxs(Dialog,{open:g,onClose:()=>h(false),children:[jsx(DialogTitle,{children:i("variant.saveView")}),jsxs(DialogContent,{children:[jsx(TextField,{autoFocus:true,margin:"dense",label:i("variant.viewName"),fullWidth:true,variant:"outlined",value:m,onChange:E=>b(E.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:E=>u(E.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:v,onChange:E=>p(E.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>h(false),children:i("common.cancel")}),jsx(Button,{onClick:k,variant:"contained",children:i("common.save")})]})]})]})};var Yu=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:r,layoutRefs:a,onLoad:n,variantService:i,serviceUrl:s,onError:d,onSuccess:l,currentVariantId:c,onVariantChange:g})=>{let{t:h}=ee(),[m,b]=useState([]),[C,u]=useState(""),v=`orbcafe.variants.${e}.${t}`,p=c!==void 0?c:C,f=B=>{c===void 0&&u(B),g&&g(B);},y=useCallback(()=>{try{let B=localStorage.getItem(v);if(!B)return [];let R=JSON.parse(B);return Array.isArray(R)?R:[]}catch{return []}},[v]),k=useCallback(B=>{try{localStorage.setItem(v,JSON.stringify(B));}catch{}},[v]),E=useCallback(B=>{b(B);let R=B.find(I=>I.isDefault);R&&!p&&(f(R.id),n(R));},[p,n,f]),M=useCallback(async()=>{if(!e)return [];try{let B=[];if(i)B=await i.getVariants(e,t);else if(s){let R=await fetch(`${s}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!R.ok)throw new Error(h("variant.toast.fetchFailed"));B=await R.json();}else B=y();return E(B),B}catch(B){console.error("Error fetching variants",B);let R=y();return E(R),d&&d(h("variant.toast.fetchFailed")),R}},[e,t,i,s,y,E,d,h]);return useEffect(()=>{M();},[e,t]),jsx(ll,{variants:m,currentVariantId:p,onLoad:B=>{f(B.id),n(B);},onSave:async B=>{let R=Date.now().toString(),I;try{let A=B.scope||"Both",q=m.find(ne=>ne.name===B.name);R=q?q.id:Date.now().toString();let O=[];if(q&&(Array.isArray(q.filters)?O=[...q.filters]:q.filters&&(O=[{scope:"default",filters:q.filters}])),A==="Search"||A==="Both"){let ne=(Array.isArray(o),o);if(ne)if(Array.isArray(ne)&&ne.length>0&&ne[0].scope)ne.forEach(ie=>{let Y=O.findIndex(Ae=>Ae.scope===ie.scope);Y>=0?O[Y]=ie:O.push(ie);});else {let ie={scope:t,filters:ne},Y=O.findIndex(Ae=>Ae.scope===t);Y>=0?O[Y]=ie:O.push(ie);}}let K=q?.layout||{},Q=[];if(q&&Array.isArray(q.layoutRefs)&&(Q=[...q.layoutRefs]),A==="Layout"||A==="Both")if(a&&a.length>0)a.forEach(ne=>{let ie=Q.findIndex(Y=>Y.tableKey===ne.tableKey);ie>=0?Q[ie]=ne:Q.push(ne);});else {let ne={tableKey:t,layoutId:r||null},ie=Q.findIndex(Y=>Y.tableKey===t);ie>=0?Q[ie]=ne:Q.push(ne);}if(I={appId:e,tableKey:t,...B,scope:A,id:R,createdAt:new Date().toISOString(),filters:O,layout:K,layoutRefs:Q},i)await i.saveVariant(I,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})).ok)throw new Error(h("variant.toast.saveFailed"))}else {let ie=m.some(Y=>Y.id===R)?m.map(Y=>Y.id===R?I:Y):[...m,I];b(ie),k(ie);}l&&l(h("variant.toast.saveSuccess")),(i||s)&&await M(),f(R),n(I);}catch(A){console.error("Error saving variant",A);let O=m.some(K=>K.id===R)?m.map(K=>K.id===R?I:K):[...m,I];b(O),k(O),f(R),n(I),d&&d(h("variant.toast.saveFailed"));}},onDelete:async B=>{try{if(i)await i.deleteVariant(B);else if(s){if(!(await fetch(`${s}/api/variants/${B}`,{method:"DELETE"})).ok)throw new Error(h("variant.toast.deleteFailed"))}else {let R=m.filter(I=>I.id!==B);b(R),k(R);}p===B&&f(""),(i||s)&&M(),l&&l(h("variant.toast.deleteSuccess"));}catch(R){console.error("Error deleting variant",R);let I=m.filter(A=>A.id!==B);b(I),k(I),p===B&&f(""),d&&d(h("variant.toast.deleteFailed"));}},onSetDefault:async B=>{try{let R=m.find(A=>A.id===B);if(!R)return;let I={appId:e,tableKey:t,...R,isDefault:!0};if(i)await i.setDefaultVariant(B,e,t);else if(s){if(!(await fetch(`${s}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})).ok)throw new Error(h("variant.toast.defaultFailed"))}else {let A=m.map(q=>({...q,isDefault:q.id===B}));b(A),k(A);}(i||s)&&await M(),l&&l(h("variant.toast.defaultSuccess"));}catch(R){console.error("Error setting default variant",R);let I=m.map(A=>({...A,isDefault:A.id===B}));b(I),k(I),d&&d(h("variant.toast.defaultFailed"));}}})};mr.extend(Yy);mr.extend(Qy);var Jy=[null,null],lc="0.85rem",ex={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},tx=styled(PickersDay,{shouldForwardProp:e=>e!=="isInRange"&&e!=="isStart"&&e!=="isEnd"&&e!=="isHovered"})(({theme:e,isInRange:t,isStart:o,isEnd:r,isHovered:a})=>({...t&&{borderRadius:0,backgroundColor:e.palette.primary.light,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.main}},...a&&!t&&!o&&!r&&{borderRadius:0,backgroundColor:e.palette.action.hover,border:`1px dashed ${e.palette.primary.main}`},...o&&{borderRadius:"50% 0 0 50%",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...r&&{borderRadius:"0 50% 50% 0",backgroundColor:e.palette.primary.main,color:e.palette.primary.contrastText,"&:hover":{backgroundColor:e.palette.primary.dark}},...o&&r&&{borderRadius:"50%"}})),ep=({label:e,value:t=Jy,onChange:o})=>{let{t:r,locale:a}=ee(),n=ex[a]||"en",i=e||r("dateRange.label"),[s,d]=useState(null),[l,c]=useState(t),[g,h]=useState("start"),[m,b]=useState(null),[C,u]=useState((t[0]||mr()).locale(n)),v=Dt__default.useRef(t);useEffect(()=>{let[R,I]=t,[A,q]=v.current,O=ne=>ne&&typeof ne.isSame=="function",K=!(R===null&&A===null||O(R)&&O(A)&&R.isSame(A,"day")),Q=!(I===null&&q===null||O(I)&&O(q)&&I.isSame(q,"day"));(K||Q)&&(c(t),t[0]&&O(t[0])&&u(t[0].locale(n))),v.current=t;},[t,n]);let p=R=>{d(R.currentTarget);},f=()=>{d(null),h("start"),b(null);},y=!!s,k=R=>{if(!R)return;let I=[...l];if(g==="start")I=[R,null],h("end");else {let A=I[0];A&&R.isBefore(A)?(I=[R,null],h("end")):(I=[A,R],h("start"));}c(I);},E=R=>{let I=mr().locale(n),A=[null,null];switch(R){case "today":A=[I,I];break;case "week":A=[I.startOf("week"),I.endOf("week")];break;case "month":A=[I.startOf("month"),I.endOf("month")];break}c(A),h("start"),u(I);},M=()=>{c([null,null]),h("start"),u(mr().locale(n));},S=()=>{o&&o(l),f();},D=()=>{c(t),h("start"),f();},P=useCallback(R=>{let{day:I,...A}=R,[q,O]=l,K=q?I.isSame(q,"day"):false,Q=O?I.isSame(O,"day"):false,ne=q&&O?I.isBetween(q,O,"day","()"):false,ie=false;return g==="end"&&q&&!O&&m&&I.isAfter(q,"day")&&I.isBefore(m.add(1,"day"),"day")&&(ie=true),jsx(tx,{...A,day:I,disableMargin:true,isStart:K,isEnd:Q,isInRange:ne||ie,onMouseEnter:()=>b(I)})},[l,g,m]),w=R=>R?R.locale(n).format("YYYY-MM-DD"):"",B=R=>R?R.locale(n).format("ll"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:l[0]?`${w(l[0])} - ${w(l[1])}`:"",onClick:p,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:lc}},InputProps:{readOnly:true,sx:{fontSize:lc,"& .MuiOutlinedInput-input":{fontSize:lc},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(l[0]||l[1])&&jsx(IconButton,{size:"small",onClick:R=>{R.stopPropagation(),M();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(hh,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:p,sx:{padding:"2px"},children:jsx(jy,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxs(Popover,{open:y,anchorEl:s,onClose:f,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},slotProps:{paper:{sx:{display:"flex",flexDirection:"column",p:0,minWidth:320}}},children:[jsx(Box,{sx:{p:2,bgcolor:"background.default",borderBottom:1,borderColor:"divider"},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:2,justifyContent:"space-between",children:[jsxs(Box,{sx:{p:1,border:1,borderColor:g==="start"?"primary.main":"divider",borderRadius:1,bgcolor:g==="start"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>h("start"),children:[jsx(Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.startDate")}),jsx(Typography,{variant:"body2",fontWeight:500,children:l[0]?B(l[0]):r("dateRange.select")})]}),jsx(Xy,{color:"action",fontSize:"small"}),jsxs(Box,{sx:{p:1,border:1,borderColor:g==="end"?"primary.main":"divider",borderRadius:1,bgcolor:g==="end"?"action.hover":"transparent",flex:1,cursor:"pointer"},onClick:()=>{l[0]&&h("end");},children:[jsx(Typography,{variant:"caption",color:"text.secondary",display:"block",children:r("dateRange.endDate")}),jsx(Typography,{variant:"body2",fontWeight:500,children:l[1]?B(l[1]):r("dateRange.select")})]})]})}),jsx(Box,{sx:{p:2,pb:0},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",children:[jsx(Chip,{label:r("dateRange.today"),onClick:()=>E("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisWeek"),onClick:()=>E("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:r("dateRange.thisMonth"),onClick:()=>E("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:C,onMonthChange:u,onYearChange:u,onChange:k,slots:{day:P},views:["day"],showDaysOutsideCurrentMonth:true,sx:{m:0}})}),jsx(Divider,{}),jsxs(Stack,{direction:"row",justifyContent:"flex-end",spacing:1,sx:{p:2},children:[jsx(Button,{size:"small",onClick:D,color:"inherit",children:r("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:S,children:r("common.done")})]})]})]})};var ul={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},px={equals:"smartFilter.operator.equals",contains:"smartFilter.operator.contains",notContains:"smartFilter.operator.notContains",wildcard:"smartFilter.operator.wildcard","=":"smartFilter.operator.equals","!=":"smartFilter.operator.notEquals",">":"smartFilter.operator.greaterThan","<":"smartFilter.operator.lessThan",">=":"smartFilter.operator.greaterOrEqual","<=":"smartFilter.operator.lessOrEqual",between:"smartFilter.operator.between"},mx=["equals","contains","notContains","wildcard"],rp=["=","!=",">","<",">=","<=","between"],Ct="0.85rem",gx=({field:e,value:t,onChange:o})=>{let{t:r}=ee(),[a,n]=useState(null),[i,s]=useState(null),[d,l]=useState(""),[c,g]=useState(""),[h,m]=useState(false),[b,C]=useState(""),[u,v]=useState("");useEffect(()=>{let w=setTimeout(()=>{v(b);},1e3);return ()=>clearTimeout(w)},[b]);let p=t?.operator||(e.type==="number"?"=":"equals"),f=t?.value,y=w=>{let B=px[w];return B?r(B):w},k=w=>{n(w.currentTarget);},E=w=>{o({...t,operator:w,value:f}),n(null);},M={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:Ct}},InputProps:{sx:{fontSize:Ct}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ct,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},S=e.type||"text";if(S==="date"){let B=(R=>{if(!R)return [null,null];if(Array.isArray(R)&&R.length===2){let I=R[0]?mr.isDayjs(R[0])?R[0]:mr(R[0]):null,A=R[1]?mr.isDayjs(R[1])?R[1]:mr(R[1]):null;return [I,A]}return mr.isDayjs(R)||typeof R=="string"?[mr.isDayjs(R)?R:mr(R),null]:[null,null]})(f);return jsx(ep,{label:e.label,value:B,onChange:R=>o({value:R,operator:"between"})})}if(S==="number"&&p==="between"){let w=()=>{o({value:[d,c],operator:"between"}),s(null);},B=Array.isArray(f)?`${f[0]||""} - ${f[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...M,label:e.label,value:B,placeholder:r("smartFilter.minMaxPlaceholder"),InputProps:{...M.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:y("between"),children:jsx(IconButton,{size:"small",onClick:k,sx:{width:24,height:24,fontSize:Ct},children:ul.between})})}),readOnly:true},onClick:R=>s(R.currentTarget)}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ct,minHeight:"auto",py:.5}}},children:rp.map(R=>jsxs(MenuItem,{selected:R===p,onClick:()=>E(R),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ul[R]}),jsx(ListItemText,{primary:y(R),primaryTypographyProps:{fontSize:Ct}})]},R))}),jsx(Popover,{open:!!i,anchorEl:i,onClose:()=>s(null),anchorOrigin:{vertical:"bottom",horizontal:"left"},children:jsxs(Box,{sx:{p:2,display:"flex",gap:1,alignItems:"center"},children:[jsx(TextField,{size:"small",label:r("smartFilter.min"),type:"number",value:d,onChange:R=>l(R.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Ct}},InputProps:{sx:{fontSize:Ct}}}),jsx(ux,{color:"action"}),jsx(TextField,{size:"small",label:r("smartFilter.max"),type:"number",value:c,onChange:R=>g(R.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:Ct}},InputProps:{sx:{fontSize:Ct}}}),jsx(Button,{variant:"contained",size:"small",onClick:w,children:r("common.ok")})]})})]})}if(e.isValueHelp||S==="value-help"){let w=e.valueHelp?.mode||"single";return jsx(eu,{...M,...e.valueHelp,label:e.label,placeholder:e.placeholder||e.valueHelp?.placeholder,value:f??(w==="multiple"?[]:null),mode:w,onChange:B=>o({value:B,operator:w==="multiple"?"anyOf":"equals"})})}if(S==="select")return jsxs(TextField,{...M,select:true,label:e.label,value:f||"",onChange:w=>o({...t,value:w.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:r("common.none")})}),e.options?.map(w=>jsx(MenuItem,{value:w.value,children:w.label},w.value))]});if(S==="multi-select"){let w=Array.isArray(f)?f:[],B=e.options?.filter(R=>R.label.toLowerCase().includes(u.toLowerCase()))||[];return jsxs(TextField,{...M,select:true,label:e.label,value:w,onChange:R=>o({...t,value:R.target.value,operator:"anyOf"}),SelectProps:{...M.SelectProps,multiple:true,onClose:()=>{C(""),v("");},renderValue:R=>{if(!Array.isArray(R)||R.length===0)return jsx("em",{children:r("common.none")});let I=q=>e.options?.find(O=>O.value===q)?.label||q,A=R.map(I);return A.length>2?`${A.slice(0,2).join(", ")} +${A.length-2}`:A.join(", ")}},children:[jsx(ListSubheader,{children:jsx(TextField,{size:"small",autoFocus:true,placeholder:r("smartFilter.searchPlaceholder"),fullWidth:true,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Xd,{fontSize:"small"})}),sx:{fontSize:Ct}},value:b,onChange:R=>C(R.target.value),onKeyDown:R=>{R.key!=="Escape"&&R.stopPropagation();},onClick:R=>R.stopPropagation()})}),B.length>0?B.map(R=>jsxs(MenuItem,{value:R.value,children:[jsx(Checkbox,{checked:w.indexOf(R.value)>-1,size:"small"}),jsx(ListItemText,{primary:R.label,primaryTypographyProps:{fontSize:Ct}})]},R.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:r("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:Ct}})})]})}let D=S==="number"?rp:mx,P=h||f!==void 0&&f!==""&&f!==null||!!a;return jsxs(Fragment,{children:[jsx(TextField,{...M,label:e.label,sx:{minWidth:"120px"},value:f||"",type:S==="number"?"number":"text",onChange:w=>o({...t,value:w.target.value,operator:p}),onFocus:()=>m(true),onBlur:()=>m(false),InputProps:{...M.InputProps,startAdornment:P?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:y(p),children:jsx(IconButton,{size:"small",onClick:k,onMouseDown:w=>w.preventDefault(),sx:{width:24,height:24,fontSize:Ct,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:ul[p]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(Xd,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:a,open:!!a,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:Ct,minHeight:"auto",py:.5}}},children:D.map(w=>jsxs(MenuItem,{selected:w===p,onClick:()=>E(w),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ul[w]}),jsx(ListItemText,{primary:y(w),primaryTypographyProps:{fontSize:Ct}})]},w))})]})},vr=({fields:e,filters:t,onFilterChange:o,variants:r=[],currentVariantId:a,onVariantLoad:n,onVariantSave:i,onVariantDelete:s,onVariantSetDefault:d,onSearch:l,loading:c=false,appId:g,tableKey:h,currentLayout:m,currentLayoutId:b,layoutRefs:C,variantService:u,serviceUrl:v})=>{let{t:p}=ee(),[f,y]=useState(true),[k,E]=useState(null),[M,S]=useState(e.filter(B=>!B.hidden).map(B=>B.id)),D=(B,R)=>{o({...t,[B]:R});},P=B=>{M.includes(B)?S(M.filter(R=>R!==B)):S([...M,B]);};return jsxs(Paper,{sx:{mb:0,display:"flex",flexDirection:"column",overflow:"visible",position:"relative"},children:[jsxs(Box,{sx:{p:2,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[g?jsx(Yu,{appId:g,tableKey:h,currentFilters:{values:t,visibleFields:M},currentLayout:m,currentLayoutId:b,layoutRefs:C,onLoad:B=>{if(!B.filters)return;let R=null;if(Array.isArray(B.filters)){let I=h||"default",A=B.filters.find(q=>q.scope===I);R=A?A.filters:null;}else R=B.filters;R&&(R.values||R.visibleFields?(R.visibleFields&&Array.isArray(R.visibleFields)&&S(R.visibleFields),R.values&&o(R.values)):o(R)),n&&n(B);},variantService:u,serviceUrl:v,currentVariantId:a}):jsx(ll,{variants:r,currentVariantId:a,onLoad:n,onSave:B=>{i&&i({...B,filters:{values:t,visibleFields:M}});},onDelete:s,onSetDefault:d}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:p("smartFilter.addFilters"),children:jsx(Button,{onClick:B=>E(B.currentTarget),size:"small",color:"primary",startIcon:jsx(sx,{fontSize:"small"}),sx:{textTransform:"none",fontSize:Ct,whiteSpace:"nowrap",minWidth:"fit-content"},children:p("smartFilter.adaptFilters")})}),jsx(Button,{variant:"contained",size:"small",onClick:l,disabled:c,sx:{minWidth:"52px",fontWeight:"bold",fontSize:Ct},children:p(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:k,open:!!k,onClose:()=>E(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:Ct,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:p("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:Ct}})}),jsx(Divider,{}),e.map(B=>jsxs(MenuItem,{onClick:()=>P(B.id),children:[jsx(Checkbox,{checked:M.includes(B.id),size:"small"}),jsx(ListItemText,{primary:B.label,primaryTypographyProps:{fontSize:Ct}})]},B.id))]})]})]}),jsx(Collapse,{in:f,children:jsx(Box,{sx:{px:2,pb:2},children:jsx(Grid,{container:true,spacing:2,columns:{xs:2,sm:3,md:4,lg:6},children:e.filter(B=>M.includes(B.id)).map(B=>jsx(Grid,{size:1,children:jsx(gx,{field:B,value:t[B.id]||{value:"",operator:B.type==="number"?"=":"equals"},onChange:R=>D(B.id,R)})},B.id))})})}),jsx(Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsx(IconButton,{size:"small",onClick:()=>y(!f),sx:{bgcolor:"background.paper",boxShadow:2,border:"1px solid",borderColor:"divider",width:20,height:20,minHeight:0,p:0,"&:hover":{bgcolor:"background.paper"}},children:f?jsx(cx,{sx:{fontSize:16},color:"action"}):jsx(cb,{sx:{fontSize:16},color:"action"})})})]})};var up=({layouts:e,currentLayoutId:t,onLoad:o,onSave:r,onDelete:a,onSetDefault:n})=>{let{t:i}=ee(),[s,d]=useState(null),[l,c]=useState(false),[g,h]=useState(""),[m,b]=useState(""),[C,u]=useState({isDefault:false,isPublic:false}),v=e.find(M=>M.id===t),p=M=>{d(M.currentTarget);},f=()=>{d(null);},y=M=>{o(M),f();},k=()=>{h(""),b(""),u({isDefault:false,isPublic:false}),c(true),f();},E=()=>{g.trim()&&(r({name:g,description:m,...C}),c(false));};return jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:i("layout.saveLayout"),children:jsx(IconButton,{onClick:k,color:"primary",size:"small",children:jsx(dp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:p,color:v?"primary":"default",children:jsx(Ix,{})})}),jsxs(Menu,{anchorEl:s,open:!!s,onClose:f,PaperProps:{sx:{width:320,maxHeight:400}},children:[jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"caption",children:i("layout.selectLayout")})}),jsxs(MenuItem,{onClick:k,children:[jsx(ListItemIcon,{children:jsx(dp,{fontSize:"small"})}),jsx(ListItemText,{children:i("layout.saveCurrentLayout")})]}),jsx(Divider,{}),e.length===0&&jsx(MenuItem,{disabled:true,children:jsx(Typography,{variant:"body2",color:"text.secondary",children:i("layout.noSavedLayouts")})}),e.map((M,S)=>jsx(MenuItem,{onClick:()=>y(M),selected:M.id===t,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%",justifyContent:"space-between"},children:[jsxs(Box,{sx:{display:"flex",flexDirection:"column",overflow:"hidden",mr:1},children:[jsx(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:jsx(Typography,{variant:"body2",fontWeight:M.id===t?"bold":"normal",noWrap:true,children:M.name})}),M.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:M.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:D=>D.stopPropagation(),children:[jsx(Tooltip,{title:M.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:D=>{D.stopPropagation(),n(M.id);},children:M.isDefault?jsx(Ey,{fontSize:"small",color:"warning"}):jsx(Tx,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:D=>{D.stopPropagation(),a(M.id);},children:jsx(Hh,{fontSize:"small"})})})]})]})},M.id||S))]}),jsxs(Dialog,{open:l,onClose:()=>c(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:i("layout.saveLayout")}),jsx(DialogContent,{children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:2,mt:1},children:[jsx(TextField,{label:i("layout.layoutName"),value:g,onChange:M=>h(M.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(M=>M.name===g)&&jsx(Typography,{variant:"caption",color:"warning.main",sx:{ml:1},children:i("layout.warningOverwrite")}),jsx(TextField,{label:i("layout.layoutDescription"),value:m,onChange:M=>b(M.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C.isDefault,onChange:M=>u({...C,isDefault:M.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C.isPublic,onChange:M=>u({...C,isPublic:M.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:E,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var fl=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:r,targetLayoutId:a,activeLayoutId:n,serviceUrl:i,onError:s,onSuccess:d})=>{let{t:l}=ee(),[c,g]=useState([]),[h,m]=useState(""),b=`orbcafe.layouts.${e}.${t}`,C=S=>({id:S.layoutId,name:S.name,description:S.description??"",isDefault:!!S.isDefault,isPublic:!!S.isPublic,createdAt:S.createdAt??new Date().toISOString(),layoutData:S.layout??{}}),u=S=>({appId:e,tableKey:t,layoutId:S.id,name:S.name,description:S.description??"",isDefault:!!S.isDefault,isPublic:!!S.isPublic,createdAt:S.createdAt,layout:S.layoutData}),v=useCallback(()=>{try{let S=localStorage.getItem(b);if(!S)return [];let D=JSON.parse(S);return Array.isArray(D)?D:[]}catch{return []}},[b]),p=useCallback(S=>{try{localStorage.setItem(b,JSON.stringify(S));}catch{}},[b]);useEffect(()=>{n!==void 0&&m(n);},[n]),useEffect(()=>{if(a&&c.length>0){let S=c.find(D=>D.id===a);S&&(m(S.id),r(S));}},[a,c,r]);let f=useCallback(async()=>{if(e){if(!i){let S=v();g(S);let D=S.find(P=>P.isDefault);D&&!h&&!a&&(m(D.id),r(D));return}try{let S=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!S.ok)throw new Error("LAYOUT_FETCH_FAILED");let P=(await S.json()).map(C);g(P);let w=P.find(B=>B.isDefault);w&&!h&&!a&&(m(w.id),r(w));}catch(S){console.error("Error fetching layouts",S);let D=v();g(D);let P=D.find(w=>w.isDefault);P&&!h&&!a&&(m(P.id),r(P)),s&&s(l("layout.toast.loadFallback"));}}},[e,t,i,s,h,r,a,v,l]);return useEffect(()=>{f();},[e,t]),jsx(up,{layouts:c,currentLayoutId:h,onLoad:S=>{m(S.id),r(S);},onSave:async S=>{let D=c.find(B=>B.name===S.name),P=D?D.id:Date.now().toString(),w={id:P,...S,createdAt:new Date().toISOString(),layoutData:o,isDefault:S.isDefault??false,isPublic:S.isPublic??false};if(!i){let R=c.some(I=>I.id===P)?c.map(I=>I.id===P?w:I):[...c,w];g(R),p(R),m(P),r(w),d&&d(l("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u(w))})).ok)throw new Error("LAYOUT_SAVE_FAILED");d&&d(l("layout.toast.saveSuccess")),await f(),m(P),r(w);}catch(B){console.error("Error saving layout",B);let I=c.some(A=>A.id===P)?c.map(A=>A.id===P?w:A):[...c,w];g(I),p(I),m(P),r(w),d&&d(l("layout.toast.saveLocalSuccess")),s&&s(l("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async S=>{if(!i){let D=c.filter(P=>P.id!==S);g(D),p(D),h===S&&m(""),d&&d(l("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(S)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");h===S&&m(""),d&&d(l("layout.toast.deleteSuccess")),await f();}catch(D){console.error("Error deleting layout",D);let P=c.filter(w=>w.id!==S);g(P),p(P),h===S&&m(""),d&&d(l("layout.toast.deleteLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async S=>{if(!i){let D=c.map(P=>({...P,isDefault:P.id===S}));g(D),p(D),d&&d(l("layout.toast.defaultLocalSuccess"));return}try{let D=c.find(w=>w.id===S);if(!D)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(u({...D,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");d&&d(l("layout.toast.defaultSuccess")),await f();}catch(D){console.error("Error setting default",D);let P=c.map(w=>({...w,isDefault:w.id===S}));g(P),p(P),d&&d(l("layout.toast.defaultLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDefaultLocal"));}}})};var mp=(e,t)=>{if(!e||!e.filters)return null;if(Array.isArray(e.filters)){let o=e.filters.find(a=>a.scope===t);if(o)return o.filters;let r=e.filters.find(a=>a.scope==="default");return r?r.filters:null}return typeof e.filters=="object"?e.filters:null},hl=(e,t)=>{if(!e)return {layout:null,layoutId:null};let o=null,r=null;if(Array.isArray(e.layoutRefs)){let a=e.layoutRefs.find(n=>n.tableKey===t);a&&(o=a.layoutId);}return !o&&e.layoutId&&(o=e.layoutId),e.layout&&typeof e.layout=="object"&&!Array.isArray(e.layout)&&(r=e.layout),{layoutId:o,layout:r}};function gp(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function Rx(e,t){return e==="desc"?(o,r)=>gp(o,r,t):(o,r)=>-gp(o,r,t)}function Dx(e,t){let o=e.map((r,a)=>[r,a]);return o.sort((r,a)=>{let n=t(r[0],a[0]);return n!==0?n:r[1]-a[1]}),o.map(r=>r[0])}var nn=e=>{let t=useCallback(z=>{let H=String(z?.label??z?.id??"").length*9+64,ae=typeof z?.minWidth=="number"?z.minWidth:0;return Math.max(100,ae,H)},[]),o=useCallback(()=>(e.columns||[]).filter(z=>!!z?.numeric).map(z=>z.id),[e.columns]),[r,a]=useState(""),[n,i]=useState(e.order||"asc"),[s,d]=useState(e.orderBy||""),[l,c]=useState([]),[g,h]=useState(e.page||0),[m,b]=useState(e.rowsPerPage||20),[C,u]=useState(e.selected||[]),[v,p]=useState(e.columns?e.columns.map(z=>z.id):[]),[f,y]=useState(e.columns?e.columns.map(z=>z.id):[]),[k,E]=useState(e.showSummary||false),[M,S]=useState(()=>o()),[D,P]=useState([]),[w,B]=useState(new Set),[R,I]=useState(()=>{let z={};return (e.columns||[]).forEach(V=>{z[V.id]=t(V);}),z}),[A,q]=useState(null),[O,K]=useState(null),[Q,ne]=useState(null),[ie,Y]=useState(null),[Ae,Ze]=useState(false),[ht,fe]=useState(""),[We,Ee]=useState("");useEffect(()=>{e.layout&&fo(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&d(e.orderBy);},[e.order,e.orderBy]),useEffect(()=>{e.selected!==void 0&&u(e.selected);},[e.selected]),useEffect(()=>{e.page!==void 0&&h(e.page);},[e.page]),useEffect(()=>{e.rowsPerPage!==void 0&&b(e.rowsPerPage);},[e.rowsPerPage]),useEffect(()=>{let z=o();S(V=>V.filter(ae=>z.includes(ae)));},[o]),useEffect(()=>{I(z=>{let V={...z};return (e.columns||[]).forEach(H=>{V[H.id]===void 0&&(V[H.id]=t(H));}),V});},[e.columns,t]),useEffect(()=>{y(z=>{let V=(e.columns||[]).map(N=>N.id),H=new Set(V),ae=z.filter(N=>H.has(N)),se=new Set(ae),ke=V.filter(N=>!se.has(N)),T=[...ae,...ke];return T.length===z.length&&T.every((N,U)=>N===z[U])?z:T});},[e.columns]);let Tt=useMemo(()=>{let z=e.columns||[];if(f.length===0)return z;let V=new Map(z.map(se=>[se.id,se])),H=[],ae=new Set;return f.forEach(se=>{let ke=V.get(se);ke&&(H.push(ke),ae.add(se));}),z.forEach(se=>{ae.has(se.id)||H.push(se);}),H},[e.columns,f]),_e=useMemo(()=>{let z=e.rows||[];return r&&(z=z.filter(V=>Object.keys(V).some(H=>String(V[H]).toLowerCase().includes(r.toLowerCase())))),z},[e.rows,r]),ze=useMemo(()=>{if(e.onSortChange)return _e;if(l.length>0){let z=[..._e];return z.sort((V,H)=>{for(let ae of l){let se=V?.[ae.field],ke=H?.[ae.field];if(!(se==null&&ke==null)){if(se==null)return ae.direction==="asc"?-1:1;if(ke==null)return ae.direction==="asc"?1:-1;if(se<ke)return ae.direction==="asc"?-1:1;if(se>ke)return ae.direction==="asc"?1:-1}}return 0}),z}return s?Dx(_e,Rx(n,s)):_e},[_e,n,s,l,e.onSortChange]),Ue=useCallback(z=>{if(D.length===0)return z.map(ke=>({type:"row",data:ke,id:ke[e.rowKey||"id"]}));let V=[...z].sort((ke,T)=>{for(let N of D){if(ke[N]<T[N])return -1;if(ke[N]>T[N])return 1}return 0}),H=(ke,T=0)=>{if(T>=D.length)return ke;let N=D[T],U={},J=[];return ke.forEach(ue=>{let he=ue[N],ye=`${N}:${he}`;U[ye]||(U[ye]={key:ye,field:N,value:he,children:[],count:0,level:T},J.push(U[ye])),U[ye].children.push(ue),U[ye].count++;}),J.forEach(ue=>{ue.children&&(ue.children=H(ue.children,T+1));}),J},ae=H(V),se=(ke,T="")=>{let N=[];return ke.forEach(U=>{if(U.children){let J=T?`${T}>${U.key}`:U.key,ue=w.has(J);N.push({type:"group",id:J,field:U.field,value:U.value,level:U.level,count:U.count,isExpanded:ue,childIds:(function he(ye){let me=[];return ye.children.forEach(Be=>{Be.children?me=me.concat(he(Be)):me.push(Be[e.rowKey||"id"]);}),me})(U)}),ue&&(N=N.concat(se(U.children,J)));}else N.push({type:"row",data:U,id:U[e.rowKey||"id"],level:D.length});}),N};return se(ae)},[D,w,e.rowKey]),tt=useCallback(z=>{if(D.length===0)return [];let V=[...z].sort((se,ke)=>{for(let T of D){if(se[T]<ke[T])return -1;if(se[T]>ke[T])return 1}return 0}),H=[],ae=(se,ke,T)=>{if(ke>=D.length)return;let N=D[ke],U=new Map;se.forEach(J=>{let ue=J[N],he=U.get(ue);he?he.push(J):U.set(ue,[J]);}),U.forEach((J,ue)=>{let he=`${N}:${ue}`,ye=T?`${T}>${he}`:he;H.push(ye),ae(J,ke+1,ye);});};return ae(V,0,""),H},[D]),_=useMemo(()=>Ue(ze),[ze,Ue]),le=useMemo(()=>tt(ze),[ze,tt]),Re=useMemo(()=>{let z=(e.rows||[]).length;return typeof e.count=="number"&&e.count>z},[e.count,e.rows]),Ne=useMemo(()=>Re?_:m>0?_.slice(g*m,g*m+m):_,[_,g,m,Re]),G=useMemo(()=>Re&&typeof e.count=="number"?e.count:_.length,[_.length,Re,e.count]),j=z=>{B(V=>{let H=new Set(V);return H.has(z)?H.delete(z):H.add(z),H});},Te=z=>{let V=le.filter(H=>H===z||H.startsWith(`${z}>`));B(H=>{let ae=new Set(H);return V.forEach(se=>ae.add(se)),ae});},Ce=z=>{B(V=>{let H=new Set(V);return Array.from(H).forEach(ae=>{(ae===z||ae.startsWith(`${z}>`))&&H.delete(ae);}),H});},De=z=>{if(!z){B(new Set);return}B(new Set(le));},ot=z=>{let V=le.filter(H=>H.startsWith(`${z}>`));return V.length===0?w.has(z):w.has(z)&&V.every(H=>w.has(H))},je=z=>{l.length>0&&c([]);let V=s===z&&n==="asc",H=s===z&&n==="desc";if(e.onSortChange){V?e.onSortChange(z,"desc"):H?e.onSortChange("","asc"):e.onSortChange(z,"asc");return}V?(i("desc"),d(z)):H?(i("asc"),d("")):(i("asc"),d(z));},eo=z=>{let V=z.filter(H=>H&&H.field);c(V),V.length>0&&d("");},Zt=()=>{c([]);},It=(z,V)=>{I(H=>({...H,[z]:V}));},po=z=>{if(z.target.checked){let V=_e.map(H=>H[e.rowKey||"id"]);u(V),e.onSelectionChange&&e.onSelectionChange(V);return}u([]),e.onSelectionChange&&e.onSelectionChange([]);},Et=(z,V)=>{let H=V[e.rowKey||"id"],ae=C.indexOf(H),se=[];ae===-1?se=se.concat(C,H):ae===0?se=se.concat(C.slice(1)):ae===C.length-1?se=se.concat(C.slice(0,-1)):ae>0&&(se=se.concat(C.slice(0,ae),C.slice(ae+1))),u(se),e.onSelectionChange&&e.onSelectionChange(se);},Fe=z=>{h(z),e.onPageChange&&e.onPageChange(z);},Se=z=>{b(z),h(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(z);},bt=z=>{let V=v.indexOf(z),H=[...v];V===-1?H.push(z):H.splice(V,1),p(H);},Ke=z=>{let V=D.indexOf(z),H=[...D];V===-1?H.push(z):H.splice(V,1),P(H);},Ft=z=>{o().includes(z)&&S(H=>H.includes(z)?H.filter(ae=>ae!==z):[...H,z]);},mo=(z,V)=>{!z||!V||z===V||y(H=>{let ae=H.indexOf(z),se=H.indexOf(V);if(ae===-1||se===-1)return H;let ke=[...H];return ke.splice(ae,1),ke.splice(se,0,z),ke});},go=z=>{let V=z?.active?.id,H=z?.over?.id;typeof V=="string"&&typeof H=="string"&&mo(V,H);},Xt=z=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:v,columnOrder:f,order:n,orderBy:s,sortBy:l,grouping:D,columnWidths:R,showSummary:k,summaryColumns:M});},yt=z=>{let{layout:V,layoutId:H}=hl(z,e.tableKey||"default");H?(Ee(H),fe(H)):(Ee(""),fe("")),V&&(V.visibleColumns&&p(V.visibleColumns),Array.isArray(V.columnOrder)&&y(V.columnOrder),V.order&&i(V.order),V.orderBy&&d(V.orderBy),Array.isArray(V.sortBy)&&c(V.sortBy),V.grouping&&P(V.grouping),V.columnWidths&&I(V.columnWidths),V.showSummary!==void 0&&E(!!V.showSummary),Array.isArray(V.summaryColumns)&&S(V.summaryColumns));},fo=z=>{let V=z?.layoutData||z?.layout||z||{};V.visibleColumns&&p(V.visibleColumns),Array.isArray(V.columnOrder)&&y(V.columnOrder),V.order&&i(V.order),V.orderBy!==void 0&&d(V.orderBy),Array.isArray(V.sortBy)&&c(V.sortBy),V.grouping&&P(V.grouping),V.columnWidths&&I(V.columnWidths),V.showSummary!==void 0&&E(!!V.showSummary),Array.isArray(V.summaryColumns)&&S(V.summaryColumns),B(new Set),h(0),z?.id&&fe(z.id),Ee("");};useEffect(()=>{e.layout&&yt({layout:e.layout});},[e.layout]);let ho=z=>{z.preventDefault(),Y(ie===null?{mouseX:z.clientX+2,mouseY:z.clientY-6}:null);},bo=()=>{Y(null);},Uo=useMemo(()=>{if(!k)return {};let z={};e.columns.forEach(H=>{if(H.numeric&&M.includes(H.id)){let ae=_e.reduce((se,ke)=>{let T=parseFloat(ke[H.id]);return se+(isNaN(T)?0:T)},0);z[H.id]=ae.toFixed(2);}else z[H.id]="";});let V=e.columns.find(H=>v.includes(H.id));return V&&!V.numeric&&(z[V.id]="Total"),z},[_e,e.columns,k,M,v]),ut=()=>{if(!e.columns||!_e)return;let z=e.columns.map(ke=>ke.label).join(","),V=_e.map(ke=>e.columns.map(T=>{let N=ke[T.id];return `"${(N==null?"":String(N)).replace(/"/g,'""')}"`}).join(",")).join(`
2
+ `),H=`data:text/csv;charset=utf-8,${z}
3
+ ${V}`,ae=encodeURI(H),se=document.createElement("a");se.setAttribute("href",ae),se.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(se),se.click(),document.body.removeChild(se);},to=()=>{Ze(true);},xt=()=>{Ze(false);};return {isMobile:false,columns:Tt,order:n,setOrder:i,orderBy:s,setOrderBy:d,sortBy:l,setSortBy:c,applyMultiSort:eo,clearMultiSort:Zt,columnOrder:f,setColumnOrder:y,filterText:r,setFilterText:a,visibleColumns:v,setVisibleColumns:p,showSummary:k,setShowSummary:E,summaryColumns:M,grouping:D,setGrouping:P,expandedGroups:w,setExpandedGroups:B,groupAnchorEl:O,setGroupAnchorEl:K,summaryAnchorEl:Q,setSummaryAnchorEl:ne,columnWidths:R,setColumnWidths:I,anchorEl:A,setAnchorEl:q,contextMenu:ie,setContextMenu:Y,sensors:void 0,sortedAndFilteredRows:ze,visibleRows:Ne,summaryRow:Uo,page:g,setPage:Fe,rowsPerPage:m,setRowsPerPage:Se,totalDisplayCount:G,selected:C,setSelected:u,isAllExpanded:le.length>0&&le.every(z=>w.has(z)),handleColumnResize:It,handleRequestSort:je,handleSelectAllClick:po,handleClick:Et,toggleSummaryColumn:Ft,handleDragEnd:go,handleColumnReorder:mo,handleExport:ut,handleContextMenu:ho,handleCloseContextMenu:bo,toggleColumnVisibility:bt,toggleGroupExpand:j,toggleGroupField:Ke,handleToggleAll:De,handleExpandGroupRecursively:Te,handleCollapseGroupRecursively:Ce,isGroupFullyExpanded:ot,handleLayoutLoad:fo,handleVariantLoad:yt,handleLayoutSave:Xt,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:v,order:n,orderBy:s,sortBy:l,columnOrder:f,grouping:D,columnWidths:R,showSummary:k,summaryColumns:M},currentLayoutId:ht,layoutIdToLoad:We,onPageChange:Fe,onRowsPerPageChange:Se,graphReportOpen:Ae,handleOpenGraphReport:to,handleCloseGraphReport:xt}};var IA=e=>jsx(Bx,{...e}),PA=e=>jsx($s,{...e}),RA=e=>jsx(Cp,{...e}),DA=e=>jsx(qh,{...e}),MA=e=>jsx(_h,{...e}),Xr=e=>{let{t}=ee(),o="0.85rem",{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:h,loading:m=false,rowsPerPageOptions:b=[20,50,100,-1],onLayoutSave:C,filterConfig:u,rowKey:v,tableKey:p="default",graphReport:f,quickCreate:y,quickEdit:k,quickDelete:E,serviceUrl:M}=e,S=r||t("table.title.default"),{isMobile:D,columns:P,order:w,orderBy:B,filterText:R,setFilterText:I,visibleColumns:A,showSummary:q,setShowSummary:O,summaryColumns:K,grouping:Q,setGrouping:ne,expandedGroups:ie,groupAnchorEl:Y,setGroupAnchorEl:Ae,summaryAnchorEl:Ze,setSummaryAnchorEl:ht,columnWidths:fe,anchorEl:We,setAnchorEl:Ee,contextMenu:Tt,sensors:_e,sortedAndFilteredRows:ze,summaryRow:Ue,visibleRows:tt,isAllExpanded:_,page:le,setPage:Re,rowsPerPage:Ne,setRowsPerPage:G,totalDisplayCount:j,setSelected:Te,handleColumnResize:Ce,handleRequestSort:De,handleSelectAllClick:ot,handleClick:je,toggleSummaryColumn:eo,handleDragEnd:Zt,handleExport:It,handleContextMenu:po,handleCloseContextMenu:Et,toggleColumnVisibility:Fe,toggleGroupExpand:Se,toggleGroupField:bt,handleToggleAll:Ke,handleExpandGroupRecursively:Ft,handleCollapseGroupRecursively:mo,isGroupFullyExpanded:go,handleLayoutLoad:Xt,handleVariantLoad:yt,handleLayoutSave:fo,effectiveAppId:ho,currentLayoutData:bo,currentLayoutId:Uo,layoutIdToLoad:ut,graphReportOpen:to,handleOpenGraphReport:xt,handleCloseGraphReport:z}=nn(e),V=f?.enabled??false,H=V&&(f?.interaction?.enabled??true),ae=nl(),se=!!y?.enabled,ke=!!k?.enabled,T=!!E?.enabled,N=y?.fields,U=y?.excludeFields||[],J=y?.initialValues||{},[ue,he]=Dt__default.useState(false),[ye,me]=Dt__default.useState(false),[Be,Ve]=Dt__default.useState({}),[it,Ge]=Dt__default.useState(false),[Le,Lt]=Dt__default.useState(false),[Ot,pt]=Dt__default.useState({}),[oo,mt]=Dt__default.useState(false),[ro,Ko]=Dt__default.useState(false),ao=m||ye||Le||ro,gr=Dt__default.useMemo(()=>{let W=[...P];if(Array.isArray(N)&&N.length>0){let re=new Set(N);W=W.filter(oe=>re.has(oe.id));}if(U.length>0){let re=new Set(U);W=W.filter(oe=>!re.has(oe.id));}return W.filter(re=>!!re?.id)},[P,U,N]),Vr=v||"id",no=Dt__default.useMemo(()=>{let W=new Set(i);return ze.filter(re=>W.has(re?.[Vr]))},[i,ze,Vr]),qo=no.length===1?no[0]:null,fr=k?.fields,zo=k?.excludeFields||[],ar=k?.editableFields||[],sa=k?.nonEditableFields||[],Na=k?.primaryKeys?.length?k.primaryKeys:[Vr],Or=Dt__default.useMemo(()=>{let W=[...P];if(Array.isArray(fr)&&fr.length>0){let re=new Set(fr);W=W.filter(oe=>re.has(oe.id));}if(zo.length>0){let re=new Set(zo);W=W.filter(oe=>!re.has(oe.id));}return W.filter(re=>!!re?.id)},[P,zo,fr]),ca=Dt__default.useMemo(()=>new Set(Na),[Na]),hr=Dt__default.useMemo(()=>new Set(ar),[ar]),yo=Dt__default.useMemo(()=>new Set(sa),[sa]),_o=Dt__default.useCallback(W=>hr.size>0?hr.has(W):!(yo.has(W)||ca.has(W)),[hr,yo,ca]);Dt__default.useEffect(()=>{!to&&ae.hasActiveFilters&&ae.clearAll();},[to,ae.hasActiveFilters,ae.clearAll]);let Va=()=>{let W={};gr.forEach(re=>{W[re.id]=J[re.id]??"";}),Ve(W),he(true);},da=()=>{ye||he(false);},Oa=(W,re)=>{Ve(oe=>({...oe,[W]:re}));},Ha=async()=>{if(!y?.onSubmit){he(false);return}try{me(!0),await y.onSubmit(Be),he(!1);}finally{me(false);}},Wa=()=>{if(!qo)return;let W={};Or.forEach(oe=>{W[oe.id]=qo[oe.id]??"";});let re=k?.getInitialValues?{...W,...k.getInitialValues(qo)}:W;pt(re),Ge(true);},wo=()=>{Le||Ge(false);},$a=(W,re)=>{pt(oe=>({...oe,[W]:re}));},Ga=async()=>{if(qo){if(!k?.onSubmit){Ge(false);return}try{Lt(!0),await k.onSubmit(Ot,qo),Ge(!1);}finally{Lt(false);}}},ua=()=>{no.length!==0&&mt(true);},br=()=>{ro||mt(false);},Hr=async()=>{if(no.length===0){mt(false);return}if(!E?.onConfirm){mt(false),Te([]),s?.([]);return}try{Ko(!0),await E.onConfirm(no),mt(!1),Te([]),s?.([]);}finally{Ko(false);}},Wr=ze,{fieldMapping:x}=tn({rows:Wr,config:{...f,title:f?.title||`${S} ${t("graph.reportTitle")}`}}),F=Dt__default.useMemo(()=>H?ae.applyRows(Wr,x):Wr,[H,ae.applyRows,Wr,x]),{model:L}=tn({rows:F,config:{...f,title:f?.title||`${S} ${t("graph.reportTitle")}`,fieldMapping:x}}),Z=L.table.columns.map(W=>({id:W.id,label:W.label,align:W.align||"left",minWidth:120,numeric:W.align==="right"})),de=ho?jsx(fl,{appId:ho,tableKey:p,currentLayoutData:bo,onLayoutLoad:Xt,targetLayoutId:ut,activeLayoutId:Uo,serviceUrl:M??u?.serviceUrl}):null,Pe=jsxs(Fragment,{children:[jsx(Ua,{groupAnchorEl:Y,setGroupAnchorEl:Ae,grouping:Q,setGrouping:ne,columns:P,toggleGroupField:bt}),jsx(Ka,{anchorEl:We,setAnchorEl:Ee,columns:P,visibleColumns:A,toggleColumnVisibility:Fe}),jsx(Hi,{anchorEl:Ze,setAnchorEl:ht,showSummary:q,setShowSummary:O,columns:P,summaryColumns:K,toggleSummaryColumn:eo}),jsx(Wi,{contextMenu:Tt,handleCloseContextMenu:Et,columns:P,visibleColumns:A,toggleColumnVisibility:Fe})]});return D?jsxs(ei,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[u&&jsx(vr,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:u.onVariantLoad,onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:bo}],variantService:u.variantService,serviceUrl:M??u.serviceUrl}),jsx(su,{title:S,loading:m,showSummary:q,setShowSummary:O,setAnchorEl:Ee,setSummaryAnchorEl:ht,filterText:R,setFilterText:I,sortedAndFilteredRows:ze,selected:i,columns:P,visibleColumns:A,summaryRow:Ue,handleClick:je,selectionMode:n}),Pe]}):jsxs(ei,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u&&jsx(ei,{sx:{mb:2},children:jsx(vr,{fields:u.fields,filters:u.filters,onFilterChange:u.onFilterChange,onSearch:u.onSearch,variants:u.variants||[],currentVariantId:u.currentVariantId,onVariantLoad:W=>{yt(W),u.onVariantLoad&&u.onVariantLoad(W);},onVariantSave:u.onVariantSave,onVariantDelete:u.onVariantDelete,onVariantSetDefault:u.onVariantSetDefault,loading:m,appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:bo}],currentLayoutId:Uo,layoutRefs:[{tableKey:p,layoutId:Uo}],variantService:u.variantService,serviceUrl:M??u.serviceUrl})}),jsxs(Mx,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":ao?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...h?{height:h}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[a&&jsx(Li,{filterText:R,setFilterText:I,onRowsPerPageChange:G,rowsPerPage:Ne,rowsPerPageOptions:b,page:le,count:j,onPageChange:Re,actions:d,extraTools:l,grouping:Q,setGroupAnchorEl:Ae,showSummary:q,setShowSummary:O,setAnchorEl:Ee,setSummaryAnchorEl:ht,handleExport:It,showCreateButton:se,onOpenCreateDialog:Va,showEditButton:ke,onOpenEditDialog:Wa,editDisabled:no.length!==1,showDeleteButton:T,onOpenDeleteConfirm:ua,deleteDisabled:no.length===0,onLayoutSave:C||u?.variantService&&u?.appId?fo:void 0,loading:m,layoutManager:de,onOpenGraphReport:V?xt:void 0}),jsx(Cp,{sx:{flex:1,...h?{maxHeight:h,height:h}:c?{height:0,maxHeight:"none"}:{maxHeight:"calc(100vh - 320px)"},overflowY:"auto",overflowX:"auto",position:"relative",minHeight:0},children:jsx(DndContext,{sensors:_e,collisionDetection:closestCenter,onDragEnd:Zt,modifiers:[restrictToHorizontalAxis],children:jsxs(Ax,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(fe).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(Ni,{columns:P,visibleColumns:A,order:w,orderBy:B,onRequestSort:De,onContextMenu:po,selectionMode:n,grouping:Q,isAllExpanded:_,handleToggleAll:Ke,rowCount:ze.length,numSelected:i.length,onSelectAllClick:ot,columnWidths:fe,onColumnResize:Ce}),jsx(nu,{visibleRows:tt,columns:P,visibleColumns:A,selectionMode:n,selected:i,orderBy:B,loading:m,expandedGroups:ie,toggleGroupExpand:Se,handleExpandGroupRecursively:Ft,handleCollapseGroupRecursively:mo,isGroupFullyExpanded:go,handleClick:je,onSelectionChange:s,grouping:Q,rowKeyProp:v,page:le,rowsPerPage:Ne}),q&&jsx(iu,{showSummary:q,columns:P,visibleColumns:A,summaryRow:Ue,selectionMode:n?.toString(),grouping:Q,orderBy:B,zIndex:3})]})})})]}),se&&jsxs(fp,{open:ue,onClose:da,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:W=>`1px solid ${W.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(hp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:y?.title||t("quickCreate.createWithTitle",{title:S})}),jsx(bp,{sx:{pt:"8px !important"},children:jsxs(ei,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[gr.map(W=>{let re=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text",oe=W.label||W.id;return jsx(xp,{label:oe,value:Be[W.id]??"",onChange:rt=>Oa(W.id,rt.target.value),type:re,size:"small",fullWidth:true,InputLabelProps:{shrink:re==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${W.id}`)}),y?.description&&jsx(vp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:y.description})]})}),jsxs(yp,{sx:{px:3,pb:2},children:[jsx(yl,{onClick:da,sx:{fontSize:"0.85rem"},disabled:ye,children:y?.cancelLabel||t("common.cancel")}),jsx(yl,{onClick:Ha,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:ye,children:y?.submitLabel||t("common.save")})]})]}),ke&&jsxs(fp,{open:it,onClose:wo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:W=>`1px solid ${W.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(hp,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:k?.title||t("quickEdit.editWithTitle",{title:S})}),jsx(bp,{sx:{pt:"8px !important"},children:jsxs(ei,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Or.map(W=>{let re=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text",oe=W.label||W.id,rt=_o(W.id);return jsx(xp,{label:oe,value:Ot[W.id]??"",onChange:$=>$a(W.id,$.target.value),type:re,size:"small",fullWidth:true,disabled:!rt,InputLabelProps:{shrink:re==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${W.id}`)}),k?.description&&jsx(vp,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:k.description})]})}),jsxs(yp,{sx:{px:3,pb:2},children:[jsx(yl,{onClick:wo,sx:{fontSize:"0.85rem"},disabled:Le,children:k?.cancelLabel||t("common.cancel")}),jsx(yl,{onClick:Ga,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:Le||!qo,children:k?.submitLabel||t("common.save")})]})]}),T&&jsx(En,{open:oo,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(no.length>1?t("quickDelete.confirmMessageMultiple",{count:no.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:br,onConfirm:Hr}),Pe,V&&jsx(rl,{open:to,onClose:z,model:L,aiAssistant:f?.aiAssistant,interaction:H?{enabled:true,filters:ae.filters,fieldMapping:x,onPrimaryDimensionClick:W=>ae.setFilter("primaryDimension",W),onSecondaryDimensionClick:W=>ae.setFilter("secondaryDimension",W),onStatusClick:W=>ae.setFilter("status",W),onClearFilter:ae.clearFilter,onClearAll:ae.clearAll}:void 0,tableContent:jsx(Xr,{appId:ho||"graph-report-internal",title:t("graph.dataBody"),columns:Z,rows:L.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},AA=Xr;var VA=({id:e,title:t,hideHeader:o=true,filterConfig:r,tableProps:a,children:n,spacing:i=1,mode:s="separated"})=>{let d=r?{...r,appId:r.appId||e}:void 0,l={...a,appId:a.appId||e};return jsxs(tu,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[s==="separated"&&d&&jsx(Box,{sx:{flexShrink:0},children:jsx(vr,{...d})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(Xr,{...l,fitContainer:true,filterConfig:s==="integrated"?d:void 0})})]}),n]})};var UA=({metadata:e,fetchData:t,initialRowsPerPage:o=20,rowsPerPageOptions:r=[20,50,100,-1],tableKey:a="default",mode:n="integrated",serviceUrl:i,variantService:s})=>{let{t:d}=ee(),[l,c]=useState(false),[g,h]=useState([]),[m,b]=useState({}),[C,u]=useState(e.variants||[]),[v,p]=useState(e.layout||null),[f,y]=useState(""),[k,E]=useState(0),[M,S]=useState(0),[D,P]=useState(o),[w,B]=useState([]),[R,I]=useState("asc"),[A,q]=useState("");useEffect(()=>{let fe={};e.filters.forEach(We=>{We.defaultValue!==void 0&&(fe[We.id]=We.defaultValue);}),b(fe);},[e.filters]);let O=useCallback(async(fe,We,Ee,Tt,_e)=>{c(true);try{let ze={...fe,page:We+1,limit:Ee,sort:_e,order:Tt},Ue;t?Ue=await t(ze):typeof e.api=="function"?Ue=await e.api(ze):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,ze),Ue={rows:[],total:0}):(console.warn("No API configured for report"),Ue={rows:[],total:0}),Ue&&(h(Ue.rows||[]),E(Ue.total||0));}catch(ze){console.error("Failed to fetch report data",ze);}finally{c(false);}},[e.api,t]);useEffect(()=>{O(m,M,D,R,A);},[O,M,D,R,A]);let K=()=>{S(0),O(m,0,D,R,A);},Q=fe=>{S(0),P(fe);},ne=(fe,We)=>{I(We),q(fe);},ie=fe=>{b(fe);},Y=fe=>{y(fe?.id||"");let We=mp(fe,a);if(We){let Tt=We.values??We;b(Tt),O(Tt,0,D,R,A),S(0);}let{layout:Ee}=hl(fe,a);Ee&&p(Ee);},Ae=fe=>{let We={...fe,id:Date.now().toString(),createdAt:new Date().toISOString()};u(Ee=>[...Ee,We]);},Ze=fe=>{p(fe);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:a,fields:e.filters,filters:m,onFilterChange:ie,onSearch:K,onVariantLoad:Y,onVariantSave:Ae,onVariantDelete:fe=>u(We=>We.filter(Ee=>Ee.id!==fe)),onVariantSetDefault:fe=>{u(We=>We.map(Ee=>({...Ee,isDefault:Ee.id===fe})));},variants:C,currentVariantId:f,variantService:s,serviceUrl:i},tableProps:{appId:e.id,tableKey:a,columns:e.columns,rows:g,loading:l,rowKey:"id",count:k,page:M,rowsPerPage:D,rowsPerPageOptions:r,onPageChange:S,onRowsPerPageChange:Q,selectionMode:"multiple",selected:w,onSelectionChange:B,onLayoutSave:Ze,layout:v,title:e.title,showSummary:true,order:R,orderBy:A,serviceUrl:i,onSortChange:ne,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${d("graph.reportTitle")}`}}},filters:m,rows:g,loading:l,refresh:K}};var $x=e=>[...e].sort((t,o)=>o.value-t.value),_A=({bars:e=[],lines:t=[],combos:o=[],heatmap:r=[],pies:a=[],waterfalls:n=[]})=>{let i=useMemo(()=>$x(e),[e]),s=useMemo(()=>[...t],[t]),d=useMemo(()=>[...o],[o]),l=useMemo(()=>[...r],[r]),c=useMemo(()=>{let h=a.reduce((m,b)=>m+b.value,0);return a.map(m=>({...m,percent:h>0?m.value/h*100:m.percent}))},[a]),g=useMemo(()=>[...n],[n]);return {bars:i,lines:s,combos:d,heatmap:l,pies:c,waterfalls:g}};var QA=({apiKey:e,query:t,zoom:o=14,mapType:r="roadmap"})=>useMemo(()=>!e||!t?"":qn({apiKey:e,query:t,zoom:o,mapType:r}),[e,t,o,r]),JA=({keyword:e,location:t})=>useMemo(()=>Qi({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var ti=({code:e,language:t="text",copyable:o=true,showLineNumbers:r=false,wrapLongLines:a=false,maxHeight:n})=>{let[i,s]=useState(false),d=useMemo(()=>e.replace(/\n$/,"").split(`
4
+ `),[e]);return jsxs(Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",bgcolor:"background.paper"},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1,py:.6,bgcolor:"action.hover",borderBottom:"1px solid",borderColor:"divider"},children:[jsx(Typography,{variant:"caption",sx:{textTransform:"uppercase",letterSpacing:.5,color:"text.secondary",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:t}),o&&jsx(Tooltip,{title:i?"Copied":"Copy",children:jsx(IconButton,{size:"small",onClick:async()=>{try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400);}catch{s(false);}},children:i?jsx(Zx,{fontSize:"inherit"}):jsx(jx,{fontSize:"inherit"})})})]}),jsx(Box,{component:"pre",sx:{m:0,p:1.25,fontSize:"0.82rem",lineHeight:1.55,overflow:"auto",maxHeight:n,bgcolor:"background.default",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r?d.map((c,g)=>jsxs(Box,{sx:{display:"flex"},children:[jsx(Box,{component:"span",sx:{width:34,flexShrink:0,textAlign:"right",pr:1,color:"text.disabled",userSelect:"none"},children:g+1}),jsx(Box,{component:"span",sx:{whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:c})]},`${g}-${c}`)):jsx(Box,{component:"code",sx:{display:"block",whiteSpace:a?"pre-wrap":"pre",wordBreak:a?"break-word":"normal"},children:e})})]})};var e0=e=>{let t=e.trim();return t.startsWith("$$")&&t.endsWith("$$")&&t.length>=4&&(t=t.slice(2,-2).trim()),t.startsWith("$")&&t.endsWith("$")&&t.length>=2&&(t=t.slice(1,-1).trim()),t},t0=async e=>new Function("m","return import(m)")(e),oi=({expression:e,inline:t=false,allowKatex:o=false})=>{let r=useMemo(()=>e0(e),[e]),[a,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!r){n("");return}try{let d=await t0("katex"),c=(d?.default||d)?.renderToString?.(r,{displayMode:!t,throwOnError:!1,strict:"warn"});i&&typeof c=="string"&&n(c);}catch{i&&n("");}})(),()=>{i=false;}},[o,r,t]),r?a?jsx(Box,{component:t?"span":"div",sx:{display:t?"inline-flex":"block",my:t?0:.5,overflowX:"auto"},dangerouslySetInnerHTML:{__html:a}}):t?jsx(Box,{component:"code",sx:{px:.4,py:.05,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r}):jsx(Box,{sx:{my:1,p:1,borderRadius:1.2,border:"1px dashed",borderColor:"divider",bgcolor:"background.paper"},children:jsx(Typography,{component:"pre",sx:{m:0,whiteSpace:"pre-wrap",fontSize:"0.9rem",lineHeight:1.5,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:r})}):null};var s0=async e=>new Function("m","return import(m)")(e),yc=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:r=true})=>{let[a,n]=useState(""),[i,s]=useState(""),[d,l]=useState(false),c=useMemo(()=>e.trim(),[e]);return useEffect(()=>{let g=true;return (async()=>{if(!r||!c){n(""),s("");return}l(true),s(""),n("");try{let m=await s0("mermaid"),b=m?.default||m;if(!b||typeof b.render!="function")throw new Error("Mermaid runtime is not available");b.initialize?.({startOnLoad:!1,securityLevel:"loose",theme:"default"});let C=await b.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),u=typeof C=="string"?C:C?.svg;g&&typeof u=="string"&&n(u);}catch(m){if(g){let b=m instanceof Error?m.message:"Failed to render Mermaid diagram";s(b);}}finally{g&&l(false);}})(),()=>{g=false;}},[r,c]),jsxs(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:[jsx(Box,{sx:{px:1,py:.6,borderBottom:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{variant:"caption",color:"text.secondary",sx:{letterSpacing:.4,textTransform:"uppercase"},children:t})}),jsxs(Box,{sx:{p:1},children:[d&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!d&&a&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:a}}),!d&&!a&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(ti,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var xc=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),h0=e=>/^:?-{3,}:?$/.test(e.trim()),b0=e=>{let t=e.trim(),o=t.startsWith(":"),r=t.endsWith(":");return o&&r?"center":r?"right":"left"},Cl=e=>{let t=e.split(`
5
+ `).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=xc(t[0]),r=xc(t[1]);if(o.length===0||r.length!==o.length||!r.every(h0))return null;let a=r.map(b0),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let s=xc(i);return s.length<o.length?[...s,...Array.from({length:o.length-s.length},()=>"")]:s.slice(0,o.length)});return {headers:o,aligns:a,rows:n}},vc=({markdown:e,table:t,maxHeight:o=360})=>{let r=useMemo(()=>t||(e?Cl(e):null),[t,e]);return !r||r.headers.length===0?jsx(Paper,{variant:"outlined",sx:{p:1.2,borderRadius:1.5},children:jsx(Typography,{variant:"body2",color:"text.secondary",children:"Invalid table block"})}):jsx(Paper,{variant:"outlined",sx:{borderRadius:1.5,overflow:"hidden",my:1},children:jsx(TableContainer,{sx:{maxHeight:o},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:jsx(TableRow,{children:r.headers.map((a,n)=>jsx(TableCell,{align:r.aligns[n],sx:{fontWeight:700,bgcolor:"background.paper"},children:a},`${a}-${n}`))})}),jsx(TableBody,{children:r.rows.map((a,n)=>jsx(TableRow,{hover:true,children:a.map((i,s)=>jsx(TableCell,{align:r.aligns[s],sx:{whiteSpace:"pre-wrap",wordBreak:"break-word"},children:i||jsx(Box,{component:"span",sx:{color:"text.disabled"},children:"-"})},`cell-${n}-${s}`))},`row-${n}`))})]})})})};var Sl=({content:e,title:t="Thinking",defaultExpanded:o=false,isStreaming:r=false})=>{let[a,n]=useState(o);return jsxs(Box,{sx:{borderLeft:"2px solid",borderColor:"divider",pl:1,my:.8},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:.6,children:[jsx(IconButton,{size:"small",onClick:()=>n(i=>!i),sx:{transform:a?"rotate(180deg)":"rotate(0deg)",transition:"transform .15s ease"},children:jsx(w0,{fontSize:"inherit"})}),jsxs(Typography,{variant:"caption",color:"text.secondary",sx:{fontStyle:"italic"},children:[t,r?" ...":""]})]}),jsx(Collapse,{in:a,children:jsx(Typography,{variant:"body2",sx:{pl:4,pt:.4,whiteSpace:"pre-wrap",color:"text.secondary",fontStyle:"italic",lineHeight:1.55},children:e})})]})};var kc=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,wl=e=>e.trim().startsWith("```"),Ap=e=>/^#{1,6}\s+/.test(e.trim()),Sc=e=>/^[-*+]\s+/.test(e.trim()),wc=e=>/^\d+\.\s+/.test(e.trim()),Bp=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),Tc=e=>e.trim().startsWith(">"),Ep=(e,t)=>{if(t+1>=e.length)return false;let o=e[t],r=e[t+1];return !o.includes("|")||!r.includes("|")?false:/^\s*\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(r.trim())},Fp=e=>e.trim().startsWith("<think>")||e.trim()===":::think",ni=(e,t,o)=>{let r=[],a=0,n=0;kc.lastIndex=0;let i=kc.exec(e);for(;i;){i.index>a&&r.push(e.slice(a,i.index));let s=i[0],d=`${o}-${n}`;if(s.startsWith("**")&&s.endsWith("**"))r.push(jsx("strong",{children:s.slice(2,-2)},d));else if(s.startsWith("*")&&s.endsWith("*"))r.push(jsx("em",{children:s.slice(1,-1)},d));else if(s.startsWith("`")&&s.endsWith("`"))r.push(jsx(Box,{component:"code",sx:{px:.45,py:.08,borderRadius:.8,bgcolor:"action.hover",fontSize:"0.82em",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},children:s.slice(1,-1)},d));else if(s.startsWith("[")&&s.includes("](")&&s.endsWith(")")){let l=s.match(/^\[([^\]]+)\]\(([^)]+)\)$/);l?r.push(jsx(Link,{href:l[2],target:"_blank",rel:"noreferrer",underline:"hover",children:l[1]},d)):r.push(s);}else s.startsWith("$")&&s.endsWith("$")&&t.enableMath?r.push(jsx(oi,{expression:s,inline:true,allowKatex:true},d)):r.push(s);a=i.index+s.length,n+=1,i=kc.exec(e);}return a<e.length&&r.push(e.slice(a)),r.length>0?r:[e]},ii=({markdown:e,content:t,className:o,enableMath:r=true,enableMermaid:a=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:s=false})=>{let d=e??t??"",l=useMemo(()=>{let c=[],g=d.replace(/\r\n/g,`
6
6
  `).split(`
7
- `),f={enableMath:a},u=0;for(;u<g.length;){let h=g[u],w=h.trim();if(!w){u+=1;continue}if(n&&vu(h)){if(w.startsWith("<think>")){let m=[],y=h;for(;;){let b=y.indexOf("<think>"),v=b>=0?y.slice(b+7):y,B=v.indexOf("</think>");if(B>=0){m.push(v.slice(0,B)),u+=1;break}if(m.push(v),u+=1,u>=g.length)break;y=g[u];}c.push(jsx(xl,{content:m.join(`
8
- `).trim()},`think-tag-${u}`));continue}u+=1;let k=[];for(;u<g.length&&g[u].trim()!==":::";)k.push(g[u]),u+=1;u<g.length&&g[u].trim()===":::"&&(u+=1),c.push(jsx(xl,{content:k.join(`
9
- `).trim()},`think-fence-${u}`));continue}if(vl(h)){let k=w.slice(3).trim().toLowerCase(),m=[];for(u+=1;u<g.length&&!vl(g[u]);)m.push(g[u]),u+=1;u<g.length&&vl(g[u])&&(u+=1);let y=m.join(`
10
- `);if(r&&k==="mermaid"){c.push(jsx(pc,{code:y},`mermaid-${u}`));continue}if(a&&["math","latex","katex"].includes(k)){c.push(jsx(Qn,{expression:y,allowKatex:true},`math-fence-${u}`));continue}c.push(jsx(Yn,{code:y,language:k||"text",copyable:i,showLineNumbers:s,wrapLongLines:true},`code-${u}`));continue}if(a&&w.startsWith("$$")){let k=[];if(w.endsWith("$$")&&w!=="$$")k.push(w.slice(2,-2)),u+=1;else {let y=h.slice(h.indexOf("$$")+2);for(y.trim()&&k.push(y),u+=1;u<g.length;){let b=g[u],v=b.indexOf("$$");if(v>=0){k.push(b.slice(0,v)),u+=1;break}k.push(b),u+=1;}}c.push(jsx(Qn,{expression:k.join(`
11
- `).trim(),allowKatex:true},`math-${u}`));continue}if(yu(h)){let k=Math.min(6,h.match(/^#{1,6}/)?.[0]?.length||1),m=h.replace(/^#{1,6}\s+/,""),y=k===1?"h5":k===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:y,sx:{mt:k===1?1.2:.8,mb:.5,fontWeight:700},children:ti(m,f,`h-${u}`)},`heading-${u}`)),u+=1;continue}if(bu(h)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${u}`)),u+=1;continue}if(xu(g,u)){let k=u+2;for(;k<g.length&&g[k].trim()&&g[k].includes("|");)k+=1;let m=g.slice(u,k).join(`
12
- `),y=yl(m);if(y){c.push(jsx(mc,{table:y},`table-${u}`)),u=k;continue}}if(bc(h)){let k=[];for(;u<g.length&&bc(g[u]);)k.push(g[u].replace(/^\s*>\s?/,"")),u+=1;c.push(jsx(Paper,{variant:"outlined",sx:{px:1,py:.8,my:.9,borderLeftWidth:3,borderLeftStyle:"solid",borderLeftColor:"primary.main",bgcolor:"action.hover"},children:jsx(Typography,{variant:"body2",sx:{whiteSpace:"pre-wrap"},children:k.map((m,y)=>jsxs(Fragment$1,{children:[y>0&&jsx("br",{}),ti(m,f,`q-${u}-${y}`)]},`quote-line-${y}`))})},`quote-${u}`));continue}if(hc(h)){let k=[];for(;u<g.length&&hc(g[u]);)k.push(g[u].trim().replace(/^[-*+]\s+/,"")),u+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:k.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:ti(m,f,`ul-${u}-${y}`)})},`ul-item-${y}`))},`ul-${u}`));continue}if(yc(h)){let k=[];for(;u<g.length&&yc(g[u]);)k.push(g[u].trim().replace(/^\d+\.\s+/,"")),u+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:k.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:ti(m,f,`ol-${u}-${y}`)})},`ol-item-${y}`))},`ol-${u}`));continue}let p=[];for(;u<g.length;){let k=g[u],m=k.trim();if(!m||vl(k)||yu(k)||bu(k)||hc(k)||yc(k)||bc(k)||xu(g,u)||n&&vu(k)||a&&m.startsWith("$$"))break;p.push(k),u+=1;}p.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:p.map((k,m)=>jsxs(Fragment$1,{children:[m>0&&jsx("br",{}),ti(k,f,`p-${u}-${m}`)]},`p-line-${m}`))},`p-${u}`)):u+=1;}return c},[d,a,r,n,i,s]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:l})};var NA=(e,t)=>jsx(oi,{markdown:e,...t});var Su=({value:e,onChange:t,onSubmit:o,onVoiceInput:a,onClear:r,placeholder:n,statusText:i,loading:s=false,compact:d=false,showStatusText:l=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(Gd,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(oh,{sx:{fontSize:d?16:18}})}),a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Hy,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:s||!e.trim(),children:jsx($y,{sx:{fontSize:d?16:18}})})]}),l&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var wu=(e,t)=>{let o=t.trim();if(!o)return e;let a=e.toLowerCase(),r=o.toLowerCase(),n=a.indexOf(r);return n<0?e:jsxs(Fragment,{children:[e.slice(0,n),jsx(Box,{component:"mark",sx:{bgcolor:"warning.light",color:"warning.contrastText",px:.15,borderRadius:.4},children:e.slice(n,n+o.length)}),e.slice(n+o.length)]})},Cl=({section:e,highlightQuery:t=""})=>{let o=e.columns||2;return jsxs(Paper,{variant:"outlined",sx:{p:1.8,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",sx:{fontWeight:700,mb:1.4},children:e.title}),jsx(Box,{sx:{display:"grid",gap:1.15,gridTemplateColumns:{xs:"1fr",md:o===3?"repeat(3, minmax(0, 1fr))":o===1?"1fr":"repeat(2, minmax(0, 1fr))"}},children:e.fields.map(a=>{let r=typeof a.value=="string"||typeof a.value=="number"?String(a.value):null;return jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:wu(a.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:r?wu(r,t):a.value})]},a.id)})})]})};var Sc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",Sl=e=>e.trim().toLowerCase(),b0=(e,t)=>{let o=[];return e.forEach(a=>{a.fields.forEach(r=>{let n=r.searchableText||Sc(r.value),i={source:"section",sourceId:a.id,sourceSectionId:a.id,sourceTitle:a.title,fieldId:r.id,fieldLabel:r.label,fieldValue:n};o.push({hit:i,text:Sl(`${a.title} ${r.label} ${n}`)});});}),t.forEach(a=>{(a.fields||[]).forEach(r=>{let n=r.searchableText||Sc(r.value),i={source:"tab",sourceId:a.id,sourceTitle:a.label,fieldId:r.id,fieldLabel:r.label,fieldValue:n};o.push({hit:i,text:Sl(`${a.label} ${r.label} ${n}`)});}),(a.sections||[]).forEach(r=>{r.fields.forEach(n=>{let i=n.searchableText||Sc(n.value),s={source:"tab",sourceId:a.id,sourceSectionId:r.id,sourceTitle:`${a.label} / ${r.title}`,fieldId:n.id,fieldLabel:n.label,fieldValue:i};o.push({hit:s,text:Sl(`${a.label} ${r.title} ${n.label} ${i}`)});});});}),o},Tu=({sections:e,tabs:t=[],defaultTabId:o,ai:a})=>{let{t:r}=ee(),[n,i]=useState(""),[s,d]=useState(o||t[0]?.id),[l,c]=useState("idle"),[g,f]=useState([]),[u,h]=useState(""),[w,p]=useState(""),[k,m]=useState(false),y=useMemo(()=>b0(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(E=>E.id===s)||d(o||t[0]?.id);},[t,s,o]);let b=useCallback(()=>{c("idle"),f([]),h(""),p("");},[]),v=useCallback(S=>{i(S),S.trim()||(c("idle"),f([]),h(""),p(""));},[]),B=useCallback(S=>{let E=Sl(S);return E?y.filter(I=>I.text.includes(E)).map(I=>I.hit):[]},[y]),M=useCallback(async()=>{let S=n.trim();if(!S)return;m(true);let E=B(S);if(f(E),E.length>0){c("search"),p(""),h(r("detail.searchAi.matches",{count:E.length})),m(false);return}if(a?.enabled!==false&&a?.onSubmit){c("ai"),h(r("detail.searchAi.autoAiFallback"));try{let C=await a.onSubmit(S,{query:S,hits:E,activeTabId:s,sections:e,tabs:t});p(typeof C=="string"?C:"");}finally{m(false);}return}c("search"),p(""),h(r("detail.searchAi.noMatch")),m(false);},[n,B,r,a,s,e,t]);return {query:n,setQuery:v,activeTabId:s,setActiveTabId:d,searchMode:l,hits:g,statusText:u,aiResponse:w,searching:k,handleSubmit:M,clearResult:b}};var g2=({title:e,subtitle:t,sections:o,tabs:a=[],defaultTabId:r,table:n,ai:i,rightHeaderSlot:s,searchBarWidth:d=460,onClose:l,closeLabel:c="Close"})=>{let{t:g}=ee(),{query:f,setQuery:u,activeTabId:h,setActiveTabId:w,searchMode:p,hits:k,statusText:m,aiResponse:y,searching:b,handleSubmit:v,clearResult:B}=Tu({sections:o,tabs:a,defaultTabId:r,ai:i}),M=useMemo(()=>a.find(I=>I.id===h)||a[0],[a,h]),S=useCallback(I=>{let C=D=>{let T=document.getElementById(I);if(T){T.scrollIntoView({behavior:"smooth",block:"center"});return}D<4&&setTimeout(()=>C(D+1),60);};requestAnimationFrame(()=>C(0));},[]),E=useCallback((I,C)=>{if(a.some(D=>D.id===I)){w(I),S(C?`detail-tab-${I}-section-${C}`:`detail-tab-${I}`);return}S(`detail-section-${I}`);},[a,w,S]);return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,minHeight:"100%"},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"center"},spacing:1,children:[jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800,color:"text.primary"},children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.35},children:t})]}),jsxs(Stack,{direction:"row",spacing:.6,alignItems:"center",sx:{width:{xs:"100%",md:"auto"},ml:{xs:0,md:"auto"}},children:[jsx(Box,{sx:{width:{xs:"100%",md:d},maxWidth:"100%",minWidth:{md:320}},children:jsx(Su,{value:f,onChange:u,onSubmit:v,onVoiceInput:i?.onVoiceInput,onClear:()=>{u(""),B();},placeholder:i?.placeholder||g("detail.searchAi.placeholder"),statusText:m,loading:b,compact:true,showStatusText:false})}),l&&jsx(Tooltip,{title:c,children:jsx(IconButton,{size:"small",onClick:l,children:jsx(w0,{fontSize:"small"})})}),s]})]}),m&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:m}),p==="search"&&k.length>0&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.6},children:g("detail.searchAi.matches",{count:k.length})}),jsx(Stack,{spacing:.35,children:k.slice(0,8).map(I=>jsx(Box,{component:"button",type:"button",onClick:()=>E(I.sourceId,I.sourceSectionId),sx:{textAlign:"left",border:0,bgcolor:"transparent",p:.2,cursor:"pointer",color:"text.primary",borderRadius:1,"&:hover":{bgcolor:"action.hover"}},children:jsxs(Typography,{variant:"body2",sx:{fontSize:"0.84rem"},children:[jsx(Box,{component:"span",sx:{color:"text.secondary"},children:I.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:I.fieldLabel})," = ",jsx(Box,{component:"span",children:I.fieldValue||"-"})]})},`${I.source}|${I.sourceId}|${I.fieldId}`))})]}),p==="ai"&&y&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"subtitle2",sx:{fontWeight:700,mb:.7},children:g("detail.searchAi.aiResultTitle")}),jsx(Box,{sx:{fontSize:"0.9rem",lineHeight:1.6,"& p":{m:0,mb:.8},"& h1, & h2, & h3, & h4":{mt:1.2,mb:.6,lineHeight:1.3},"& ul, & ol":{mt:.4,mb:.8,pl:2.6},"& code":{px:.5,py:.1,borderRadius:.8,bgcolor:"action.hover",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},"& pre":{m:0,mt:.8,mb:.8,p:1.1,borderRadius:1.2,bgcolor:"action.hover",overflowX:"auto"},"& pre code":{p:0,bgcolor:"transparent"}},children:jsx(oi,{markdown:y})})]}),jsx(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"repeat(2, minmax(0, 1fr))"}},children:o.map(I=>jsx(Box,{id:`detail-section-${I.id}`,children:jsx(Cl,{section:I,highlightQuery:f})},I.id))}),a.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:M?.id||false,onChange:(I,C)=>w(C),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:a.map(I=>jsx(Tab,{value:I.id,label:I.label,sx:{textTransform:"none"}},I.id))}),jsxs(Box,{sx:{p:1.5},children:[jsx(Box,{id:`detail-tab-${M?.id||""}`}),M?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:M.description}),M?.content?M.content:jsxs(Stack,{spacing:1.5,children:[(M?.sections||[]).map(I=>jsx(Box,{id:`detail-tab-${M?.id}-section-${I.id}`,children:jsx(Cl,{section:I,highlightQuery:f})},I.id)),M?.fields&&M.fields.length>0&&jsx(Cl,{section:{id:`${M.id}-fields`,title:M.label,fields:M.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(Ua,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var Du=({bucket:e,cardCount:t,highlighted:o=false,children:a,emptyLabel:r,maxHeight:n,sx:i})=>{let{t:s}=ee();return jsx(Paper,{sx:[d=>{let l=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(l,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(l,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor:l}}},...Array.isArray(i)?i:i?[i]:[]],children:jsxs(Stack,{spacing:1.2,sx:{p:1.5},children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[e.icon,jsx(Typography,{sx:{fontSize:"0.96rem",fontWeight:800},children:e.title})]}),e.description&&jsx(Typography,{sx:{mt:.45,fontSize:"0.76rem",color:"text.secondary",lineHeight:1.45},children:e.description})]}),jsxs(Stack,{direction:"row",spacing:.8,sx:{flexShrink:0},children:[jsx(Chip,{size:"small",label:t,sx:{fontWeight:700}}),typeof e.limit=="number"&&jsx(Chip,{size:"small",label:`${s("kanban.bucket.limit")} ${e.limit}`,color:t>e.limit?"warning":"default",variant:"outlined"})]})]}),o&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700},children:s("kanban.bucket.dropHere")}),jsx(Box,{sx:{minHeight:220,maxHeight:n,overflowY:n?"auto":"visible",pr:n?.4:0},children:t>0?a:jsx(Box,{sx:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:r??e.emptyLabel??s("kanban.empty")})})})]})})};var D0={success:"success",warning:"warning",info:"info",error:"error"},M0={critical:"error",high:"warning",medium:"info",low:"success"},A0=(e,t)=>{switch(e){case "critical":return t("kanban.priority.critical");case "high":return t("kanban.priority.high");case "medium":return t("kanban.priority.medium");case "low":return t("kanban.priority.low");default:return e}},B0=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",Tc=({card:e,bucket:t,dragging:o=false,overlay:a=false,onClick:r,sx:n})=>{let{t:i}=ee(),s=!!(r&&t),d=e.tone??(e.priority?M0[e.priority]:"default"),l=d==="default"?"primary":D0[d],c=t?{card:e,bucket:t}:void 0;return jsx(Paper,{onClick:s?()=>c&&r?.(c):void 0,onKeyDown:s?g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),c&&r?.(c));}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,sx:[g=>{let f=d==="default"?g.palette.primary.main:g.palette[l].main;return {position:"relative",overflow:"hidden",p:1.4,borderRadius:3,border:`1px solid ${alpha(f,g.palette.mode==="dark"?.42:.2)}`,bgcolor:alpha(g.palette.background.paper,g.palette.mode==="dark"?.96:.98),boxShadow:a?`0 20px 45px ${alpha(g.palette.common.black,.24)}`:o?"none":`0 8px 24px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.18:.08)}`,transform:a?"rotate(1deg) scale(1.01)":"none",transition:"transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease",cursor:s?"pointer":"default",opacity:o?.5:1,"&::before":{content:'""',position:"absolute",inset:"0 auto 0 0",width:4,bgcolor:f},"&:hover":s?{transform:"translateY(-1px)",boxShadow:`0 14px 32px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.28:.12)}`}:void 0}},...Array.isArray(n)?n:n?[n]:[]],children:jsxs(Stack,{spacing:1.1,children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[(e.kicker||t?.title)&&jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:.4,color:"text.secondary",textTransform:"uppercase"},children:e.kicker??t?.title}),jsx(Typography,{sx:{mt:.2,fontSize:"0.98rem",fontWeight:800,lineHeight:1.3},children:e.title})]}),e.priority&&jsx(Chip,{size:"small",color:l,label:A0(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:f=>({borderRadius:2,px:1,py:.8,bgcolor:f.palette.mode==="dark"?alpha(f.palette.common.white,.05):alpha(f.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color:l,sx:{height:8,borderRadius:999}})]}),(e.tags?.length||e.assignee||e.dueDate||e.footer||s)&&jsxs(Stack,{spacing:.9,children:[e.tags&&e.tags.length>0&&jsx(Box,{sx:{display:"flex",flexWrap:"wrap",gap:.75},children:e.tags.map(g=>jsx(Chip,{size:"small",label:g.label,color:g.color??"default",variant:"outlined"},g.id))}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8,minWidth:0},children:[e.assignee&&jsxs(Fragment,{children:[jsx(Avatar,{src:e.assignee.avatarSrc,sx:{width:28,height:28,fontSize:"0.75rem"},children:e.assignee.initials??B0(e.assignee.name)}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700,lineHeight:1.2},noWrap:true,children:e.assignee.name}),e.dueDate&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},noWrap:true,children:e.dueDate})]})]}),!e.assignee&&e.dueDate&&jsx(Typography,{sx:{fontSize:"0.76rem",color:"text.secondary"},children:e.dueDate})]}),s&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700,whiteSpace:"nowrap"},children:i("kanban.card.openDetail")})]}),e.footer]})]})})};var F0=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,Bu=({buckets:e,cards:t})=>{let o=new Map;return t.forEach((a,r)=>{let n=o.get(a.bucketId)??[];n.push({card:a,sourceIndex:r}),o.set(a.bucketId,n);}),{buckets:e.map(a=>{let r=[...o.get(a.id)??[]].sort((n,i)=>n.card.position===void 0&&i.card.position===void 0?n.sourceIndex-i.sourceIndex:n.card.position===void 0?1:i.card.position===void 0?-1:n.card.position-i.card.position||n.sourceIndex-i.sourceIndex).map(({card:n},i)=>({...n,bucketId:a.id,position:i}));return {...a,cards:r}})}},Go=(e,t)=>{for(let o=0;o<e.buckets.length;o+=1){let a=e.buckets[o],r=a.cards.findIndex(n=>n.id===t);if(r>=0)return {card:a.cards[r],bucket:a,bucketIndex:o,cardIndex:r}}},Pl=(e,t)=>{let o=Go(e,t.cardId);if(!o)return e;let a=e.buckets.findIndex(l=>l.id===t.toBucketId);if(a<0)return e;let r=e.buckets.map(l=>({...l,cards:l.cards.map(c=>({...c}))})),n=r[o.bucketIndex],[i]=n.cards.splice(o.cardIndex,1);if(!i)return e;let s=r[a],d=F0(t.targetIndex??s.cards.length,s.cards.length);return s.cards.splice(d,0,{...i,bucketId:t.toBucketId}),{buckets:r.map(l=>({...l,cards:l.cards.map((c,g)=>({...c,bucketId:l.id,position:g}))}))}};var Pc="kanban-card|",Ic="kanban-bucket|",zu=e=>`${Pc}${e}`,_0=e=>`${Ic}${e}`,Il=e=>e?.startsWith(Pc)?e.slice(Pc.length):void 0,Lu=e=>e?.startsWith(Ic)?e.slice(Ic.length):void 0,j0=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:a,attributes:r,listeners:n,transform:i,transition:s,isDragging:d}=useSortable({id:zu(e.id)}),l={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:s,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:a,style:l,...r,...n,children:jsx(Tc,{card:e,bucket:t,dragging:d,onClick:o})})},Z0=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:a,onCardClick:r})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:_0(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(Du,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:a,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(s=>zu(s.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(s=>jsx(j0,{card:s,bucket:e,onCardClick:r},s.id))})})})})},L2=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:a=320,bucketMaxHeight:r,emptyBucketLabel:n,sx:i})=>{let[s,d]=useState(null),[l,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>s?Go(e,s):void 0,[s,e]),u=useCallback(()=>{d(null),c(void 0);},[]),h=useCallback(m=>{if(!m)return;let y=Il(m);return y?Go(e,y)?.bucket.id:Lu(m)},[e]),w=useCallback(m=>{d(Il(String(m.active.id))??null);},[]),p=useCallback(m=>{c(h(m.over?String(m.over.id):void 0));},[h]),k=useCallback(m=>{let y=Il(String(m.active.id)),b=m.over?String(m.over.id):void 0;if(!y||!b){u();return}let v=Go(e,y);if(!v){u();return}let B=v.bucket.id,M=v.cardIndex,S=Il(b);if(S){let C=Go(e,S);if(!C){u();return}B=C.bucket.id,M=C.cardIndex;}else {let C=Lu(b),D=e.buckets.find(T=>T.id===C);if(!C||!D){u();return}B=C,M=D.cards.length;}if(v.bucket.id===B&&v.cardIndex===M){u();return}let E=Pl(e,{cardId:y,fromBucketId:v.bucket.id,toBucketId:B,targetIndex:M}),I=Go(E,y);I&&!(I.bucket.id===v.bucket.id&&I.cardIndex===v.cardIndex)&&t?.({cardId:y,fromBucketId:v.bucket.id,toBucketId:I.bucket.id,targetIndex:I.cardIndex,card:I.card,model:E}),u();},[e,t,u]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:w,onDragOver:p,onDragEnd:k,onDragCancel:u,children:[jsx(Box,{sx:[{display:"grid",gridAutoFlow:"column",gridAutoColumns:`minmax(${a}px, 1fr)`,gap:2,alignItems:"start",overflowX:"auto",pb:.5},...Array.isArray(i)?i:i?[i]:[]],children:e.buckets.map(m=>jsx(Z0,{bucket:m,highlighted:m.id===l,bucketMaxHeight:r,emptyBucketLabel:n,onCardClick:o},m.id))}),jsx(DragOverlay,{children:f?jsx(Box,{sx:{width:Math.max(a-24,260)},children:jsx(Tc,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var J0=({initialModel:e,initialBuckets:t,initialCards:o})=>e||Bu({buckets:t??[],cards:o??[]}),H2=e=>{let{onCardMove:t,onCardClick:o}=e,[a,r]=useState(()=>J0(e)),n=useCallback(c=>{r(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>Go(a,c),[a]),s=useCallback((c,g,f)=>{let u=Go(a,c);if(!u)return;let h=Pl(a,{cardId:c,fromBucketId:u.bucket.id,toBucketId:g,targetIndex:f}),w=Go(h,c);if(!w||w.bucket.id===u.bucket.id&&w.cardIndex===u.cardIndex)return;r(h);let p={cardId:c,fromBucketId:u.bucket.id,toBucketId:w.bucket.id,targetIndex:w.cardIndex,card:w.card,model:h};return t?.(p),p},[a,t]),d=useCallback((c,g)=>{r(f=>({buckets:f.buckets.map(u=>({...u,cards:u.cards.map(h=>h.id!==c?h:typeof g=="function"?g(h):{...h,...g})}))}));},[]),l=useMemo(()=>({model:a,onCardMove:c=>{s(c.cardId,c.toBucketId,c.targetIndex);},onCardClick:o}),[a,s,o]);return {model:a,actions:{replaceModel:n,moveCard:s,updateCard:d,getCard:i},boardProps:l}};var Hu=64,gv="#E9EDF2",fv="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",hv=["en","zh","fr","de","ja","ko"],Wu={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Al=({appTitle:e,logo:t,mode:o="dark",onToggleMode:a,locale:r,localeLabel:n,localeOptions:i,onLocaleChange:s,searchPlaceholder:d,onSearch:l,user:c,onUserSetting:g,onUserLogout:f,userMenuItems:u,leftSlot:h,rightSlot:w})=>{let{t:p,locale:k}=ee(),y=useTheme().palette.mode==="dark",[b,v]=useState(""),[B,M]=useState(null),[S,E]=useState(null),I=_=>{_.preventDefault(),l&&l(b.trim());},C=o==="system"?jsx(cv,{fontSize:"small"}):o==="dark"?jsx(dv,{fontSize:"small"}):jsx(pv,{fontSize:"small"}),D=p(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),T=r||k,P=i&&i.length>0?i:hv,A=n||Wu[T]||T.toUpperCase(),W=!!B,z=d||p("header.searchPlaceholder"),Q=!!S,re=[{key:"setting",label:p("header.menu.setting"),icon:jsx(Vb,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:p("header.menu.logout"),icon:jsx(mv,{sx:{fontSize:18}}),onClick:f}],ne=u&&u.length>0?u:re,ae=_=>{E(null),_?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:_=>({top:0,zIndex:_.zIndex.drawer+10,height:Hu,backgroundColor:_.palette.mode==="dark"?"#0D0D0D":gv,backgroundImage:_.palette.mode==="dark"?["radial-gradient(circle at 18% 22%, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0) 45%)","radial-gradient(circle at 78% 32%, rgba(144,202,249,0.14) 0%, rgba(144,202,249,0) 42%)","linear-gradient(90deg, #0A0A0A 0%, #151515 50%, #0A0A0A 100%)","linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px)","linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px)"].join(","):["radial-gradient(circle at 22% 22%, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0) 48%)","radial-gradient(circle at 76% 24%, rgba(203,213,225,0.45) 0%, rgba(203,213,225,0) 42%)",fv,"linear-gradient(rgba(15,23,42,0.05) 1px, transparent 1px)","linear-gradient(90deg, rgba(15,23,42,0.04) 1px, transparent 1px)"].join(","),backgroundSize:"auto, auto, auto, 24px 24px, 24px 24px",borderBottom:"1px solid",borderColor:_.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${Hu}px !important`,px:2,gap:2},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[h,t===null?null:t||jsx(Box,{component:"img",src:"/orbcafe.png",alt:"ORBCAFE Logo",sx:{width:44,height:44,display:"block",objectFit:"contain",flexShrink:0}}),e&&jsx(Typography,{variant:"h6",sx:{fontWeight:700,color:y?"common.white":"#111827"},children:e})]}),jsx(Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:jsx(Box,{component:"form",onSubmit:I,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:b,onChange:_=>v(_.target.value),placeholder:z,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Gd,{sx:{color:y?"rgba(255,255,255,0.7)":"rgba(15,23,42,0.55)",fontSize:18}})}),sx:{color:y?"common.white":"rgba(17,24,39,0.9)",bgcolor:y?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,"& .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:y?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:y?"white":"#111827"}}})})}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[s?jsxs(Fragment,{children:[jsx(IconButton,{size:"small",onClick:_=>M(_.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(Ou,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:A})]})}),jsx(Menu,{anchorEl:B,open:W,onClose:()=>M(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:P.map(_=>jsx(MenuItem,{selected:_===T,onClick:()=>{s(_),M(null);},sx:{fontSize:"0.82rem"},children:Wu[_]},_))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(Ou,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:A})]}),jsx(IconButton,{size:"small",sx:{color:y?"common.white":"#111827"},onClick:a,title:D,children:C}),c&&jsxs(Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxs(Box,{sx:{textAlign:"right",minWidth:0},children:[jsx(Typography,{variant:"body2",sx:{color:y?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:c.name}),c.subtitle&&jsx(Typography,{variant:"caption",sx:{display:"block",mt:.25,color:y?"rgba(255,255,255,0.72)":"rgba(17,24,39,0.62)",fontSize:"0.72rem",lineHeight:1.1,letterSpacing:"0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:220},title:c.subtitle,children:c.subtitle})]}),jsx(IconButton,{size:"small",onClick:_=>E(_.currentTarget),sx:{p:0},children:jsx(Avatar,{src:c.avatarSrc,imgProps:{style:{objectFit:"cover"}},sx:{width:34,height:34,bgcolor:"grey.100",color:"grey.700",fontSize:"0.85rem"},children:c.avatarText||c.name.slice(0,1).toUpperCase()})})]}),w]})]}),c&&jsx(Menu,{anchorEl:S,open:Q,onClose:()=>E(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},slotProps:{paper:{sx:{minWidth:160,"& .MuiMenuItem-root":{minHeight:34,py:.5,px:1.25}}}},children:ne.map(_=>jsxs(MenuItem,{disabled:_.disabled,onClick:()=>ae(_.onClick),children:[_.icon&&jsx(ListItemIcon,{children:_.icon}),jsx(ListItemText,{primary:_.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},_.key))})]})};var $u=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=zd({initialCollapsed:t,content:e}),[a,r]=useState(900);useEffect(()=>{let i=()=>r(window.innerHeight);return i(),window.addEventListener("resize",i),()=>window.removeEventListener("resize",i)},[]);let n=useMemo(()=>Math.max(280,a-100),[a]);return {navigationIslandProps:o,navigationMaxHeight:n}};var dB=({appTitle:e,menuData:t=[],children:o,showNavigation:a=true,locale:r="en",localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,logo:f,onSearch:u,rightHeaderSlot:h,leftHeaderSlot:w,contentSx:p})=>{let k="orbcafe:page-layout-mode",[m,y]=useState("system"),[b,v]=useState("light"),[B,M]=useState(false),S=m==="system"?B?b:"light":m;useEffect(()=>{try{let P=window.localStorage.getItem(k);(P==="light"||P==="dark"||P==="system")&&y(P);}catch{}M(true);let D=window.matchMedia("(prefers-color-scheme: dark)"),T=()=>{v(D.matches?"dark":"light");};return T(),D.addEventListener("change",T),()=>D.removeEventListener("change",T)},[]),useEffect(()=>{if(B)try{window.localStorage.setItem(k,m);}catch{}},[B,m]),useEffect(()=>{S==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[S]);let E=useMemo(()=>createTheme({palette:{mode:S}}),[S]),{navigationIslandProps:I,navigationMaxHeight:C}=$u({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:E,children:jsx(Di,{locale:r,children:jsxs(Box,{sx:D=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:D.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":D.palette.background.default}),children:[jsx(Al,{appTitle:e,logo:f,mode:m,onToggleMode:()=>y(D=>D==="system"?"dark":D==="dark"?"light":"system"),locale:r,localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,onSearch:u,leftSlot:w,rightSlot:h}),jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex"},children:[a&&jsx(Box,{sx:{p:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsx(Fd,{...I,maxHeight:C,colorMode:S})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...p},children:o})]})]})})})};var El="(blank)",Uu="Result",Ku="Grand Total",qu={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},_u=["sum","count","avg","min","max"];var ju=["palette","rows","columns","filters","values"];var Zu=e=>ju.includes(e),Xu=e=>e==="rows"||e==="columns"||e==="filters",Fl=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Zu(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Zu(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},Ca=e=>e==null||e===""?El:e instanceof Date?e.toISOString().slice(0,10):String(e),kr=e=>JSON.stringify(e),Yu=(e,t)=>{let o=e.join(""),a=t.join("");return o.localeCompare(a,void 0,{sensitivity:"base"})},wv=e=>{if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isFinite(t)?t:null}return null},ln=(e,t,o)=>{if(o==="count")return e.length;let a=e.map(r=>wv(r[t])).filter(r=>r!==null);return a.length===0?0:o==="sum"?a.reduce((r,n)=>r+n,0):o==="avg"?a.reduce((r,n)=>r+n,0)/a.length:o==="min"?Math.min(...a):Math.max(...a)},zt=(e,t)=>{if(!e||e.length===0)return [];let o=new Set,a=[];return e.forEach(r=>{!t.has(r)||o.has(r)||(o.add(r),a.push(r));}),a},ka=(e,t)=>e.length!==t.length?false:e.every((o,a)=>o===t[a]),Qu=(e,t)=>{let o=Object.keys(e),a=Object.keys(t);return o.length!==a.length?false:o.every(r=>{let n=e[r]??[],i=t[r]??[];return ka(n,i)})},Ll=(e,t)=>e.length!==t.length?false:e.every((o,a)=>{let r=t[a];return o.tokenId===r.tokenId&&o.fieldId===r.fieldId&&o.aggregation===r.aggregation}),Bc=e=>!e?.aggregations||e.aggregations.length===0?_u:e.aggregations,Jt=(e,t)=>{let o=Bc(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},ci=(e,t,o)=>{let a=o.get(t.fieldId);return a?.formatValue?a.formatValue(e):t.aggregation==="count"?Math.round(e).toLocaleString():e.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2})};var tm=({options:e,selectedValues:t,onChange:o,minWidth:a=96})=>{let{t:r}=ee(),[n,i]=useState(""),s=useMemo(()=>{let l=n.trim().toLowerCase();return l?e.filter(c=>c.toLowerCase().includes(l)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:a},children:jsxs(Select,{multiple:true,value:t,onChange:l=>{let c=l.target.value,g=typeof c=="string"?c.split(","):c;o(g);},onClick:l=>l.stopPropagation(),onMouseDown:l=>l.stopPropagation(),renderValue:l=>{let c=l;return e.length===0?r("pivot.filter.na"):c.length===0?r("common.none"):c.length===e.length?r("common.all"):`${c.length}/${e.length}`},MenuProps:{PaperProps:{sx:{maxHeight:320,bgcolor:"background.paper"}}},sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:[jsx(ListSubheader,{disableSticky:true,sx:l=>({bgcolor:"background.paper",py:.8,lineHeight:"normal",borderBottom:`1px solid ${l.palette.divider}`}),children:jsx(TextField,{size:"small",placeholder:`${r("common.search")}...`,fullWidth:true,value:n,onChange:l=>i(l.target.value),onKeyDown:l=>l.stopPropagation(),onClick:l=>l.stopPropagation(),sx:{m:0,"& .MuiInputBase-input":{fontSize:"0.75rem",py:.7}}})}),jsx(Box,{sx:l=>({px:1.5,py:.5,borderBottom:`1px solid ${l.palette.divider}`,bgcolor:"background.paper"}),onMouseDown:l=>{l.preventDefault(),l.stopPropagation();},onClick:l=>{l.preventDefault(),l.stopPropagation();},children:jsx(Button,{variant:"text",size:"small",onClick:l=>{l.preventDefault(),l.stopPropagation(),o(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:r(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),s.length===0&&jsx(MenuItem,{disabled:true,sx:{fontSize:"0.75rem"},children:r("pivot.filter.noResults")}),s.map(l=>{let c=t.includes(l);return jsxs(MenuItem,{value:l,sx:{fontSize:"0.75rem",py:.25},children:[jsx(Checkbox,{size:"small",checked:c,sx:{p:.5,mr:.5}}),jsx(ListItemText,{primary:l,primaryTypographyProps:{sx:{fontSize:"0.75rem",lineHeight:1.2}}})]},l)})]})})};var Fc=({label:e,subtitle:t,isDragging:o,dragRef:a,listeners:r,attributes:n,style:i})=>jsx(Paper,{ref:a,...r,...n,sx:s=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:s.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none"}),style:{...i,opacity:o?.3:1,cursor:o?"grabbing":"grab"},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{sx:s=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.3,borderRadius:1,bgcolor:s.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)"}),children:jsx(zv,{sx:{fontSize:16,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary",lineHeight:1.2},children:t})]})]})}),rm=({id:e,label:t,subtitle:o})=>{let{setNodeRef:a,listeners:r,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(Fc,{label:t,subtitle:o,isDragging:i,dragRef:a,listeners:r,attributes:n})};var dn=({zone:e,title:t,hint:o,icon:a,children:r,itemCount:n,onClear:i})=>{let s=`container|${e}`,{isOver:d,setNodeRef:l}=useDroppable({id:s}),{t:c}=ee();return jsxs(Paper,{ref:l,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[a,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(Wv,{sx:{fontSize:16}})})})]}),jsx(Typography,{sx:{mt:.5,mb:.9,fontSize:"0.7rem",color:"text.secondary"},children:o}),jsx(Box,{sx:{flex:1},children:r})]})};var im={xs:1.2,md:1.6},un=({title:e,subtitle:t,collapsed:o,onToggleCollapse:a,expandAriaLabel:r,collapseAriaLabel:n,children:i,bodySx:s,unmountOnExit:d=false,headerActions:l})=>jsxs(Paper,{sx:c=>({borderRadius:3,border:`1px solid ${c.palette.divider}`,overflow:"hidden",bgcolor:alpha(c.palette.background.paper,.95)}),children:[jsxs(Box,{sx:c=>({px:im,py:1,display:"flex",alignItems:"center",justifyContent:"space-between",gap:1,borderBottom:o?"none":`1px solid ${c.palette.divider}`}),children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.9rem",fontWeight:800},children:e}),jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.75,flexShrink:0},children:[l,jsx(IconButton,{size:"small","aria-label":o?r:n,onClick:a,sx:c=>({border:`1px solid ${c.palette.divider}`,bgcolor:alpha(c.palette.background.paper,.88),width:28,height:28,borderRadius:999,flexShrink:0,"&:hover":{bgcolor:c.palette.mode==="dark"?alpha(c.palette.primary.main,.18):alpha(c.palette.primary.main,.08)}}),children:jsx(Ob,{sx:{fontSize:16,transition:"transform 220ms cubic-bezier(0.2, 0, 0, 1)",transform:o?"rotate(180deg)":"rotate(0deg)"}})})]})]}),jsx(Collapse,{in:!o,timeout:260,easing:"cubic-bezier(0.2, 0, 0, 1)",unmountOnExit:d,children:jsx(Box,{sx:[{px:im,py:{xs:1.2,md:1.6}},...Array.isArray(s)?s:s?[s]:[]],children:i})})]});var Hl=({label:e,caption:t,onRemove:o,trailing:a,isDragging:r,dragRef:n,listeners:i,attributes:s,style:d})=>jsx(Paper,{ref:n,style:d,sx:l=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:l.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none",opacity:r?0:1}),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{...s,...i,sx:l=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.25,borderRadius:1,bgcolor:l.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)",cursor:"grab"}),children:jsx(zv,{sx:{fontSize:15,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.8rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},children:t})]}),a,o&&jsx(IconButton,{size:"small",onClick:l=>{l.stopPropagation(),o();},sx:{p:.2},children:jsx(oh,{sx:{fontSize:16}})})]})}),di=({id:e,label:t,caption:o,onRemove:a,trailing:r})=>{let{setNodeRef:n,attributes:i,listeners:s,transform:d,transition:l,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:l,zIndex:c?999:"auto"};return jsx(Hl,{label:t,caption:o,onRemove:a,trailing:r,isDragging:c,dragRef:n,listeners:s,attributes:i,style:g})};var Gl={rows:jsx(tC,{fontSize:"small"}),columns:jsx(yh,{fontSize:"small"}),filters:jsx(eC,{fontSize:"small"}),values:jsx(Ch,{fontSize:"small"})},cm=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:a,filterFields:r,columnFields:n,rowFields:i,valueFields:s,clearZone:d,removeFieldFromZone:l,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:u})=>{let{t:h}=ee(),w=[`${h("pivot.zone.rows")} ${i.length}`,`${h("pivot.zone.columns")} ${n.length}`,`${h("pivot.zone.filters")} ${r.length}`,`${h("pivot.zone.values")} ${s.length}`].join(" \xB7 ");return jsx(un,{title:h("pivot.config.title"),subtitle:w,collapsed:e,onToggleCollapse:t,expandAriaLabel:h("pivot.collapse.ariaExpand"),collapseAriaLabel:h("pivot.collapse.ariaCollapse"),unmountOnExit:true,children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",lg:"260px 1fr"},gap:2},children:[jsx(dn,{zone:"palette",title:h("pivot.fieldList"),hint:h("pivot.availableDimensions"),itemCount:o.length,icon:jsx(zv,{sx:{fontSize:16,color:"text.secondary"}}),children:jsxs(Stack,{spacing:.8,sx:{maxHeight:400,overflowY:"auto",pr:.5},children:[o.length===0&&jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",py:1},children:h("pivot.allFieldsInUse")}),o.map(p=>jsx(rm,{id:`item|palette|${p.id}`,label:p.label,subtitle:p.type??"string"},p.id))]})}),jsxs(Stack,{spacing:2,children:[jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(dn,{zone:"filters",title:h("pivot.zone.filters"),hint:h("pivot.hint.filters"),icon:Gl.filters,itemCount:r.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:r.map(p=>`item|filters|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:r.map(p=>jsx(di,{id:`item|filters|${p}`,label:a.get(p)?.label??p,caption:c(p),trailing:g(p),onRemove:()=>l("filters",p)},p))})})}),jsx(dn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:Gl.columns,itemCount:n.length,onClear:()=>d("columns"),children:jsx(SortableContext,{items:n.map(p=>`item|columns|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(p=>jsx(di,{id:`item|columns|${p}`,label:a.get(p)?.label??p,caption:`${a.get(p)?.type??"dimension"} \u2022 ${c(p)}`,trailing:g(p),onRemove:()=>l("columns",p)},p))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(dn,{zone:"rows",title:h("pivot.zone.rows"),hint:h("pivot.hint.rows"),icon:Gl.rows,itemCount:i.length,onClear:()=>d("rows"),children:jsx(SortableContext,{items:i.map(p=>`item|rows|${p}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(p=>jsx(di,{id:`item|rows|${p}`,label:a.get(p)?.label??p,caption:`${a.get(p)?.type??"dimension"} \u2022 ${c(p)}`,trailing:g(p),onRemove:()=>l("rows",p)},p))})})}),jsx(dn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:Gl.values,itemCount:s.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:s.map(p=>`item|values|${p.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:s.map(p=>{let k=a.get(p.fieldId)?.label??p.fieldId,m=`${u(p.aggregation)}(${k})`;return jsx(di,{id:`item|values|${p.tokenId}`,label:k,caption:m,trailing:f(p),onRemove:()=>l("values",p.tokenId)},p.tokenId)})})})})]})]})]})})};var dm=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),pm=({data:e,primaryLabel:t,secondaryLabel:o,formatPrimaryValue:a,formatSecondaryValue:r})=>{let n=useTheme$1();if(e.length===0)return null;let i=720,s=250,d={top:20,right:24,bottom:40,left:52},l=o?e.map(p=>p.primaryValue):e.map((p,k)=>k+1),c=o?e.map(p=>p.secondaryValue??0):e.map(p=>p.primaryValue),g=Math.max(...l,1),f=Math.max(...c,1),u=i-d.left-d.right,h=s-d.top-d.bottom,w=e.map((p,k)=>{let m=o?p.primaryValue:k+1,y=o?p.secondaryValue??0:p.primaryValue,b=d.left+m/g*u,v=s-d.bottom-y/f*h;return {...p,x:b,y:v,rawX:m,rawY:y}});return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${i} ${s}`,sx:{width:"100%",minWidth:i,height:s},children:[jsx("line",{x1:d.left,y1:s-d.bottom,x2:i-d.right,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),w.map(p=>jsxs("g",{children:[jsx("circle",{cx:p.x,cy:p.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:p.x,cy:p.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[p.name,`
13
- `,o?`${t}: ${a(p.primaryValue)}`:`${t}: ${a(p.primaryValue)}`,o?`
14
- ${o}: ${(r??a)(p.secondaryValue??0)}`:""]})}),jsx("text",{x:p.x,y:Math.max(p.y-12,d.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:p.name})]},p.name)),jsx("text",{x:i/2,y:s-10,textAnchor:"middle",fontSize:"11",fill:n.palette.text.secondary,children:o?t:"Index"}),jsx("text",{x:16,y:s/2,textAnchor:"middle",transform:`rotate(-90 16 ${s/2})`,fontSize:"11",fill:n.palette.text.secondary,children:o??t}),jsx("text",{x:d.left,y:d.top-4,fontSize:"10",fill:n.palette.text.secondary,children:dm(f)}),jsx("text",{x:i-d.right,y:s-d.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:dm(g)})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(3, minmax(0, 1fr))"},gap:1},children:e.map(p=>jsxs(Box,{sx:k=>({borderRadius:2,px:1.25,py:1,border:`1px solid ${alpha(k.palette.divider,.7)}`,bgcolor:alpha(k.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:p.name,children:p.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",a(p.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(r??a)(p.secondaryValue??0)]})]},p.name))})]})};var Hc=e=>Math.max(...e,1),mm=({data:e,chartType:t,primaryLabel:o,secondaryLabel:a,formatPrimaryValue:r,formatSecondaryValue:n})=>{let i=useTheme$1(),s=i.palette.primary.main,d=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let m=Hc(e.flatMap(y=>[y.primaryValue,y.secondaryValue??0]));return jsx(Stack,{spacing:1.1,children:e.map(y=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",md:"160px 1fr 128px"},gap:1.25,alignItems:"center"},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:y.name,children:y.name}),jsxs(Stack,{spacing:.65,children:[jsx(Box,{sx:{height:10,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${y.primaryValue/m*100}%`,height:"100%",bgcolor:s}})}),a&&jsx(Box,{sx:{height:8,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${(y.secondaryValue??0)/m*100}%`,height:"100%",bgcolor:d}})})]}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},fontWeight:700},children:r(y.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},color:"text.secondary"},children:(n??r)(y.secondaryValue??0)})]})]},y.name))})}if(t==="bar-vertical"){let m=Hc(e.flatMap(b=>[b.primaryValue,b.secondaryValue??0])),y=a?92:76;return jsx(Box,{sx:{overflowX:"auto",pb:.5},children:jsx(Box,{sx:{minWidth:Math.max(620,e.length*y),display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(56px, 1fr))`,gap:1,alignItems:"end"},children:e.map(b=>jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{height:210,display:"flex",alignItems:"flex-end",justifyContent:"center",gap:.8},children:[jsx(Box,{sx:{width:a?16:26,minHeight:8,height:`${Math.max(b.primaryValue/m*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:s},title:`${o}: ${r(b.primaryValue)}`}),a&&jsx(Box,{sx:{width:16,minHeight:8,height:`${Math.max((b.secondaryValue??0)/m*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:d},title:`${a}: ${(n??r)(b.secondaryValue??0)}`})]}),jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:b.name,children:b.name}),jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:r(b.primaryValue),children:r(b.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:(n??r)(b.secondaryValue??0),children:(n??r)(b.secondaryValue??0)})]},b.name))})})}let l=Math.max(680,e.length*74),c=240,g={top:20,right:18,bottom:36,left:18},f=Hc(e.flatMap(m=>[m.primaryValue,m.secondaryValue??0])),u=l-g.left-g.right,h=c-g.top-g.bottom,w=m=>e.map((y,b)=>{let v=g.left+b*u/Math.max(e.length-1,1),B=c-g.bottom-m(y)/f*h;return {x:v,y:B,item:y}}),p=w(m=>m.primaryValue),k=a?w(m=>m.secondaryValue??0):[];return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.1},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${c}`,sx:{width:"100%",minWidth:l,height:c},children:[jsx("line",{x1:g.left,y1:c-g.bottom,x2:l-g.right,y2:c-g.bottom,stroke:alpha(i.palette.text.secondary,.35)}),jsx("polyline",{fill:"none",stroke:s,strokeWidth:3,points:p.map(m=>`${m.x},${m.y}`).join(" ")}),p.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:4,fill:s,children:jsxs("title",{children:[m.item.name,`
15
- `,o,": ",r(m.item.primaryValue)]})},`primary-${m.item.name}`)),a&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:k.map(m=>`${m.x},${m.y}`).join(" ")}),k.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:3.5,fill:d,children:jsxs("title",{children:[m.item.name,`
16
- `,a,": ",(n??r)(m.item.secondaryValue??0)]})},`secondary-${m.item.name}`))]})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1},children:e.map(m=>jsxs(Box,{sx:y=>({borderRadius:2,px:1.1,py:.9,border:`1px solid ${alpha(y.palette.divider,.7)}`,bgcolor:alpha(y.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:m.name,children:m.name}),jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:r(m.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:(n??r)(m.secondaryValue??0)})]},m.name))})]})};var gm=(e,t,o)=>{let a=new Set,r=[];return e.forEach(n=>{a.has(n)||(a.add(n),r.push({fieldId:n,label:o.get(n)?.label??n,zone:"rows"}));}),t.forEach(n=>{a.has(n)||(a.add(n),r.push({fieldId:n,label:o.get(n)?.label??n,zone:"columns"}));}),r},fm=(e,t,o)=>e.map(a=>{let r=t.get(a.fieldId),n=r?.label??a.fieldId;return {fieldId:a.fieldId,label:`${o(a.aggregation)} \xB7 ${n}`,item:a,field:r}}),hm=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:a})=>{if(!t)return [];let r=new Map;return e.forEach(n=>{let i=Ca(n[t]),s=r.get(i);if(s){s.push(n);return}r.set(i,[n]);}),Array.from(r.entries()).sort((n,i)=>n[0].localeCompare(i[0],void 0,{sensitivity:"base"})).map(([n,i])=>({name:n,primaryValue:ln(i,o.fieldId,o.aggregation),secondaryValue:a?ln(i,a.fieldId,a.aggregation):void 0}))};var ym=({rows:e,fieldMap:t,rowFields:o,columnFields:a,valueFields:r,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:s,chartType:d,isCollapsed:l,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:u,onToggleCollapse:h,getAggregationLabel:w})=>{let{t:p}=ee(),k=useMemo(()=>gm(o,a,t),[a,t,o]),m=useMemo(()=>fm(r,t,w),[t,w,r]),y=m.find(C=>C.fieldId===i)??m[0],b=m.find(C=>C.fieldId===s&&C.fieldId!==y?.fieldId)??null,v=k.find(C=>C.fieldId===n)??k[0],B=v&&y?p("pivot.chart.subtitleReady",{dimension:v.label,measure:b?`${y.label} / ${b.label}`:y.label}):p("pivot.chart.subtitle"),M=useMemo(()=>!v||!y?[]:hm({rows:e,dimensionFieldId:v.fieldId,primaryValue:y.item,secondaryValue:b?.item}),[y,e,b,v]),S=C=>y?ci(C,y.item,t):C.toLocaleString(),E=C=>b?ci(C,b.item,t):C.toLocaleString(),I=k.length>1||m.length>1;return jsxs(un,{title:p("pivot.chart.title"),subtitle:B,collapsed:l,onToggleCollapse:h,expandAriaLabel:p("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:p("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[I&&jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1,alignItems:"start"},children:[jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.dimension")}),jsx(Select,{value:v?.fieldId??"",onChange:C=>c(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:k.map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.primaryMeasure")}),jsx(Select,{value:y?.fieldId??"",onChange:C=>g(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:m.map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:b?.fieldId??"",onChange:C=>f(String(C.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:p("common.none")}),m.filter(C=>C.fieldId!==y?.fieldId).map(C=>jsx(MenuItem,{value:C.fieldId,sx:{fontSize:"0.75rem"},children:C.label},C.fieldId))]})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:p("pivot.chart.chartType")}),jsxs(Select,{value:d,onChange:C=>u(C.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:p("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:v?y?M.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoData")})}):d==="scatter"?jsx(pm,{data:M,primaryLabel:y.label,secondaryLabel:b?.label,formatPrimaryValue:S,formatSecondaryValue:E}):jsx(mm,{data:M,chartType:d,primaryLabel:y.label,secondaryLabel:b?.label,formatPrimaryValue:S,formatSecondaryValue:E}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:p("pivot.chart.emptyNoDimension")})})})]})};var ql=({node:e,dataColumns:t,fieldMap:o,level:a,expandedKeys:r,onToggle:n,getValue:i})=>{let s=r.has(e.key),d=e.children.length>0,l=e.isGrandTotal;return jsxs(Fragment,{children:[jsxs(TableRow,{sx:c=>({bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.22)":"rgba(47, 91, 255, 0.08)":c.palette.mode==="dark"?"#111111":"background.paper","&:hover":{bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.28)":"rgba(47, 91, 255, 0.12)":c.palette.mode==="dark"?"#181818":"rgba(0, 0, 0, 0.02)"}}),children:[jsxs(TableCell,{sx:c=>({fontSize:"0.76rem",fontWeight:l?800:600,borderBottom:`1px solid ${c.palette.divider}`,whiteSpace:"nowrap",pl:a*2+1,display:"flex",alignItems:"center",height:40}),children:[d&&!l&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:s?jsx(Uh,{sx:{fontSize:16}}):jsx(Zg,{sx:{fontSize:16}})}),!d&&!l&&a>0&&jsx(Box,{sx:{width:20}}),e.value]}),t.map(c=>jsx(TableCell,{align:"right",sx:{fontSize:"0.76rem",fontWeight:l?800:500,borderBottom:g=>`1px solid ${g.palette.divider}`,whiteSpace:"nowrap"},children:ci(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),s&&e.children.map(c=>jsx(ql,{node:c,dataColumns:t,fieldMap:o,level:a+1,expandedKeys:r,onToggle:n,getValue:i},c.key))]})};var Kc=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},Zl=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",qc=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",wm=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children.length>0&&(t.add(r.key),o(r.children));});};return o(e),t},Pm=(e,t,o=0)=>e.length===0?o:e.reduce((a,r)=>r.children.length===0||!t.has(r.key)?Math.max(a,o+1):Math.max(a,Pm(r.children,t,o+1)),o),NC=(e,t)=>{let o=[],a=r=>{r.forEach(n=>{if(n.children.length>0&&t.has(n.key)){a(n.children);return}o.push(n);});};return a(e),o},Q5=({title:e,rows:t,fields:o,initialLayout:a,initialChart:r,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:s=false,initialTableCollapsed:d=false,model:l,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:u,initialPresetId:h,onPresetApplied:w})=>{let{t:p}=ee(),k=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),m=useRef(0),y=useRef(false),b=e??p("pivot.title.default"),v=n??p("pivot.empty"),B=useMemo(()=>({sum:p("pivot.agg.sum"),count:p("pivot.agg.count"),avg:p("pivot.agg.avg"),min:p("pivot.agg.min"),max:p("pivot.agg.max")}),[p]),M=useCallback(x=>B[x]??qu[x],[B]),S=useMemo(()=>new Set(o.map(x=>x.id)),[o]),E=useMemo(()=>new Map(o.map(x=>[x.id,x])),[o]),[I,C]=useState(()=>zt(a?.rows,S)),[D,T]=useState(()=>zt(a?.columns,S)),[P,A]=useState(()=>zt(a?.filters,S)),[W,z]=useState(()=>{let x=a?.values??[],F=new Set,L=[];return x.forEach(q=>{if(!S.has(q.fieldId)||F.has(q.fieldId))return;F.add(q.fieldId),m.current+=1;let ce=E.get(q.fieldId);L.push({tokenId:`v${m.current}`,fieldId:q.fieldId,aggregation:Jt(q.aggregation,ce)});}),L}),[Q,re]=useState({}),[ne,ae]=useState(true),[_,Ue]=useState(false),[Ze,Oe]=useState(()=>Kc(zt(a?.rows,S),zt(a?.columns,S),r?.dimensionFieldId)),[ie,we]=useState(()=>{let x=(a?.values??[]).filter((F,L,q)=>S.has(F.fieldId)&&q.findIndex(ce=>ce.fieldId===F.fieldId)===L).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:Jt(F.aggregation,E.get(F.fieldId))}));return Zl(x,r?.primaryValueFieldId)}),[Ae,Ye]=useState(()=>{let x=(a?.values??[]).filter((L,q,ce)=>S.has(L.fieldId)&&ce.findIndex(Se=>Se.fieldId===L.fieldId)===q).map(L=>({tokenId:L.fieldId,fieldId:L.fieldId,aggregation:Jt(L.aggregation,E.get(L.fieldId))})),F=Zl(x,r?.primaryValueFieldId);return qc(x,F,r?.secondaryValueFieldId)}),[st,Z]=useState(r?.chartType??"bar-vertical"),[Ke,xt]=useState(s),[X,pe]=useState(d),[Be,Ee]=useState(()=>f??[]),[qe,K]=useState(""),[ye,be]=useState(false),[xe,Qe]=useState(""),[He,qt]=useState(null),[ao,ro]=useState(new Set(["__grand_total__"])),[uo,Et]=useState(new Set),De=l?.rowFields??I,he=l?.columnFields??D,Tt=l?.filterFields??P,_e=l?.valueFields??W,Pt=l?.filterSelections??Q,mo=l?.showGrandTotal??ne,ia=l?.isConfiguratorCollapsed??_,H=l?.chartDimensionFieldId??Ze,$=l?.chartPrimaryValueFieldId??ie,Y=l?.chartSecondaryValueFieldId??Ae,Pe=l?.chartType??st,Te=l?.isChartCollapsed??Ke,Ve=l?.isTableCollapsed??X,Ce=g??Be,$e=c||Ce.length>0||!!u,R=useCallback(x=>{if(l?.setRowFields){l.setRowFields(x);return}C(x);},[l]),O=useCallback(x=>{if(l?.setColumnFields){l.setColumnFields(x);return}T(x);},[l]),U=useCallback(x=>{if(l?.setFilterFields){l.setFilterFields(x);return}A(x);},[l]),G=useCallback(x=>{if(l?.setValueFields){l.setValueFields(x);return}z(x);},[l]),te=useCallback(x=>{if(l?.setFilterSelections){l.setFilterSelections(x);return}re(x);},[l]),Re=useCallback(x=>{if(l?.setShowGrandTotal){l.setShowGrandTotal(x);return}ae(x);},[l]),ze=useCallback(x=>{if(l?.setIsConfiguratorCollapsed){l.setIsConfiguratorCollapsed(x);return}Ue(x);},[l]),le=useCallback(x=>{if(l?.setChartDimensionFieldId){l.setChartDimensionFieldId(x);return}Oe(x);},[l]),Ie=useCallback(x=>{if(l?.setChartPrimaryValueFieldId){l.setChartPrimaryValueFieldId(x);return}we(x);},[l]),We=useCallback(x=>{if(l?.setChartSecondaryValueFieldId){l.setChartSecondaryValueFieldId(x);return}Ye(x);},[l]),vt=useCallback(x=>{if(l?.setChartType){l.setChartType(x);return}Z(x);},[l]),je=useCallback(x=>{if(l?.setIsChartCollapsed){l.setIsChartCollapsed(x);return}xt(x);},[l]),gt=useCallback(x=>{if(l?.setIsTableCollapsed){l.setIsTableCollapsed(x);return}pe(x);},[l]),It=useCallback(x=>{let F=typeof x=="function"?x(Ce):x;g||Ee(F),u?.(F);},[u,Ce,g]),no=useMemo(()=>new Set([...De,...he,...Tt]),[De,he,Tt]),Rt=useMemo(()=>o.filter(x=>!no.has(x.id)),[o,no]),Ft=useMemo(()=>{let x=[...De,...he,...Tt],F=new Set,L=[];return x.forEach(q=>{F.has(q)||(F.add(q),L.push(q));}),L},[he,Tt,De]);useEffect(()=>{R(x=>{let F=x.filter(L=>S.has(L));return ka(x,F)?x:F}),O(x=>{let F=x.filter(L=>S.has(L));return ka(x,F)?x:F}),U(x=>{let F=x.filter(L=>S.has(L));return ka(x,F)?x:F}),G(x=>{let F=x.filter(L=>S.has(L.fieldId)).map(L=>({...L,aggregation:Jt(L.aggregation,E.get(L.fieldId))}));return Ll(x,F)?x:F});},[E,S]);let Xt=useMemo(()=>{let x={};return Ft.forEach(F=>{let L=new Set;t.forEach(q=>{L.add(Ca(q[F]));}),x[F]=Array.from(L).sort((q,ce)=>q.localeCompare(ce));}),x},[Ft,t]);useEffect(()=>{te(x=>{let F={};return Ft.forEach(L=>{let q=Xt[L]??[],Se=(x[L]??[]).filter(oe=>q.includes(oe)),N=Object.prototype.hasOwnProperty.call(x,L);F[L]=N?Se:q;}),Qu(x,F)?x:F});},[Ft,Xt]),useEffect(()=>{le(x=>Kc(De,he,x));},[he,De,le]),useEffect(()=>{Ie(x=>Zl(_e,x));},[Ie,_e]),useEffect(()=>{We(x=>qc(_e,$,x));},[$,We,_e]);let Dt=useMemo(()=>t.filter(x=>Ft.every(F=>{let L=Pt[F]??[],q=Xt[F]??[];if(L.length===q.length)return true;if(L.length===0)return false;let ce=Ca(x[F]);return L.includes(ce)})),[Ft,Xt,Pt,t]),Xe=useMemo(()=>{if(_e.length===0)return null;let x=new Map;if(Dt.forEach(N=>{let oe=he.length>0?he.map(nt=>Ca(N[nt])):[p("pivot.valueLabel")],J=kr(oe);x.set(J,oe);}),x.size===0){let N=he.length>0?he.map(()=>El):[p("pivot.valueLabel")];x.set(kr(N),N);}let F=Array.from(x.entries()).sort((N,oe)=>Yu(N[1],oe[1])),L=F.flatMap(([N,oe])=>_e.map(J=>{let nt=E.get(J.fieldId),V=`${M(J.aggregation)} ${nt?.label??J.fieldId}`,se=he.length===0||_e.length>1?`${oe.join(" / ")} \u2022 ${V}`:oe.join(" / ");return {id:`${N}::${J.tokenId}`,colKey:N,valueItem:J,label:se}})),q=[];he.length>0&&F.forEach(([N,oe])=>{let J=L.filter(se=>se.colKey===N),nt=q,V=[];oe.forEach((se,j)=>{V.push(`d${j}:${se}`);let ge=`col::${kr(V)}`,Je=nt.find(Yo=>Yo.key===ge);Je||(Je={key:ge,label:se,children:[],leafColumnIds:[],path:oe.slice(0,j+1),depth:j},nt.push(Je)),J.forEach(Yo=>{Je.leafColumnIds.includes(Yo.id)||Je.leafColumnIds.push(Yo.id);}),nt=Je.children;});});let ce=N=>{let oe={};return L.forEach(J=>{let nt=N.filter(V=>{let se=he.length>0?he.map(j=>Ca(V[j])):[p("pivot.valueLabel")];return kr(se)===J.colKey});oe[J.id]=ln(nt,J.valueItem.fieldId,J.valueItem.aggregation);}),oe},Se=[];if(De.length===0)Se.push({key:"root",value:p("pivot.resultLabel")||Uu,children:[],isLeaf:true,aggregatedValues:ce(Dt),path:[],depth:0});else {let N=(oe,J,nt)=>{if(J>=De.length)return [];let V=De[J],se=new Map;return oe.forEach(j=>{let ge=Ca(j[V]);se.has(ge)||se.set(ge,[]),se.get(ge).push(j);}),Array.from(se.keys()).sort().map(j=>{let ge=se.get(j),Je=[...nt,j];return {key:kr(Je),value:j,fieldId:V,aggregatedValues:ce(ge),children:N(ge,J+1,Je),isLeaf:J===De.length-1,path:Je,depth:J}})};Se.push(...N(Dt,0,[]));}return {dataColumns:L,columnTree:q,rowTree:Se}},[he,E,Dt,M,De,p,_e]),Eo=useCallback((x,F)=>(m.current+=1,{tokenId:`v${m.current}`,fieldId:x,aggregation:Jt(F,E.get(x))}),[E]),_o=useCallback(x=>{if(x==="rows")return R([]);if(x==="columns")return O([]);if(x==="filters")return U([]);G([]);},[]),la=useCallback((x,F)=>{if(x==="rows")return R(L=>L.filter(q=>q!==F));if(x==="columns")return O(L=>L.filter(q=>q!==F));if(x==="filters")return U(L=>L.filter(q=>q!==F));G(L=>L.filter(q=>q.tokenId!==F));},[]),or=useCallback((x,F)=>{G(L=>L.map(q=>q.tokenId===x?{...q,aggregation:Jt(F,E.get(q.fieldId))}:q));},[E]),jo=useCallback(x=>{qt(String(x.active.id));},[]),ar=useCallback(x=>{if(qt(null),!x.over)return;let F=Fl(String(x.active.id)),L=Fl(String(x.over.id));if(!F||!L||F.kind!=="item"||!F.key)return;if(F.zone===L.zone&&L.kind==="item"){if(F.zone==="rows"){let j=De.indexOf(F.key),ge=De.indexOf(L.key??"");j!==-1&&ge!==-1&&j!==ge&&R(Je=>arrayMove(Je,j,ge));return}if(F.zone==="columns"){let j=he.indexOf(F.key),ge=he.indexOf(L.key??"");j!==-1&&ge!==-1&&j!==ge&&O(Je=>arrayMove(Je,j,ge));return}if(F.zone==="filters"){let j=Tt.indexOf(F.key),ge=Tt.indexOf(L.key??"");j!==-1&&ge!==-1&&j!==ge&&U(Je=>arrayMove(Je,j,ge));return}if(F.zone==="values"){let j=_e.findIndex(Je=>Je.tokenId===F.key),ge=_e.findIndex(Je=>Je.tokenId===(L.key??""));j!==-1&&ge!==-1&&j!==ge&&G(Je=>arrayMove(Je,j,ge));}return}let q=L.zone,ce=[...De],Se=[...he],N=[...Tt],oe=[..._e],J="",nt=null;if(F.zone==="palette")J=F.key;else if(F.zone==="values"){let j=oe.find(ge=>ge.tokenId===F.key);if(!j)return;J=j.fieldId,nt=j,oe=oe.filter(ge=>ge.tokenId!==F.key);}else F.zone==="rows"?(J=F.key,ce=ce.filter(j=>j!==J)):F.zone==="columns"?(J=F.key,Se=Se.filter(j=>j!==J)):F.zone==="filters"&&(J=F.key,N=N.filter(j=>j!==J));if(!J)return;let V=()=>{ce=ce.filter(j=>j!==J),Se=Se.filter(j=>j!==J),N=N.filter(j=>j!==J);},se=j=>{if(L.kind!=="item"||!L.key)return j==="rows"?ce.length:j==="columns"?Se.length:j==="filters"?N.length:j==="values"?oe.length:0;if(j==="rows"){let ge=ce.indexOf(L.key);return ge>=0?ge:ce.length}if(j==="columns"){let ge=Se.indexOf(L.key);return ge>=0?ge:Se.length}if(j==="filters"){let ge=N.indexOf(L.key);return ge>=0?ge:N.length}if(j==="values"){let ge=oe.findIndex(Je=>Je.tokenId===L.key);return ge>=0?ge:oe.length}return 0};if(q==="palette"){R(ce),O(Se),U(N),G(oe);return}if(q==="values"){let j=se("values"),ge=nt??Eo(J);oe.splice(j,0,ge),R(ce),O(Se),U(N),G(oe);return}if(Xu(q)){V();let j=se(q);q==="rows"?ce.splice(j,0,J):q==="columns"?Se.splice(j,0,J):N.splice(j,0,J),R(ce),O(Se),U(N),G(oe);}},[he,Eo,Tt,De,_e]),rr=useCallback((x,F)=>{te(L=>({...L,[x]:F}));},[]),Zo=useCallback(x=>{ro(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),sa=useCallback(x=>{Et(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),Aa=useCallback(x=>{let F=E.get(x.fieldId),L=Bc(F);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:x.aggregation,onChange:q=>or(x.tokenId,q.target.value),onClick:q=>q.stopPropagation(),onMouseDown:q=>q.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:L.map(q=>jsx(MenuItem,{value:q,sx:{fontSize:"0.75rem"},children:M(q)},q))})})},[E,M,or]),Yt=useCallback(x=>{let F=Xt[x]??[],L=Pt[x]??F;return F.length===0?p("pivot.filter.noValues"):L.length===0?p("pivot.filter.noneSelected"):L.length===F.length?p("pivot.filter.allValues"):p("pivot.filter.selectedCount",{selected:L.length,total:F.length})},[Xt,Pt,p]),Fo=useCallback(x=>{let F=Xt[x]??[],L=Pt[x]??F;return jsx(tm,{options:F,selectedValues:L,onChange:q=>rr(x,q)})},[Xt,Pt,rr]),ca=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),To=useCallback(()=>{let x={};return new Set([...Ft,...Object.keys(Pt)]).forEach(L=>{if(!S.has(L))return;let q=Pt[L]??[];x[L]=[...q];}),{layout:{rows:[...De],columns:[...he],filters:[...Tt],values:_e.map(L=>({fieldId:L.fieldId,aggregation:L.aggregation}))},filterSelections:x,showGrandTotal:mo,chart:{dimensionFieldId:H,primaryValueFieldId:$,secondaryValueFieldId:Y,chartType:Pe}}},[Ft,H,$,Y,Pe,he,Tt,Pt,De,mo,S,_e]),Xo=useCallback(x=>{let F=zt(x.layout.rows,S),L=zt(x.layout.columns,S),q=zt(x.layout.filters,S),ce=new Set,Se=(x.layout.values??[]).filter(J=>!S.has(J.fieldId)||ce.has(J.fieldId)?false:(ce.add(J.fieldId),true)).map(J=>Eo(J.fieldId,J.aggregation)),N={};Object.entries(x.filterSelections??{}).forEach(([J,nt])=>{!S.has(J)||!Array.isArray(nt)||(N[J]=Array.from(new Set(nt.map(V=>String(V)))));}),R(F),O(L),U(q),G(Se),te(N),typeof x.showGrandTotal=="boolean"&&Re(x.showGrandTotal),le(Kc(F,L,x.chart?.dimensionFieldId));let oe=Zl(Se,x.chart?.primaryValueFieldId);Ie(oe),We(qc(Se,oe,x.chart?.secondaryValueFieldId)),vt(x.chart?.chartType??"bar-vertical"),K(x.id),w?.(x);},[Eo,w,le,Ie,We,vt,O,U,te,R,Re,G,S]),nr=useCallback(x=>{if(!x){K("");return}let F=Ce.find(L=>L.id===x);if(!F){K("");return}Xo(F);},[Xo,Ce]),Er=useCallback(()=>{let x=p("pivot.preset.defaultName",{index:Ce.length+1});Qe(x),be(true);},[Ce.length,p]),Ba=useCallback(()=>{let x=xe.trim();if(!x)return;let F={id:ca(),name:x,...To()};It(L=>[...L,F]),K(F.id),be(false);},[To,ca,xe,It]),ir=useCallback(()=>{qe&&(It(x=>x.filter(F=>F.id!==qe)),K(""));},[qe,It]);useEffect(()=>{if(!h||y.current)return;let x=Ce.find(F=>F.id===h);x&&(y.current=true,Xo(x));},[Xo,h,Ce]),useEffect(()=>{qe&&(Ce.some(x=>x.id===qe)||K(""));},[qe,Ce]);let da=useMemo(()=>{if(!mo||!Xe||!De.length)return null;let x={};return Xe.dataColumns.forEach(F=>{let L=Dt.filter(q=>{let ce=he.length>0?he.map(Se=>Ca(q[Se])):[p("pivot.valueLabel")];return kr(ce)===F.colKey});x[F.id]=ln(L,F.valueItem.fieldId,F.valueItem.aggregation);}),{key:"__grand_total__",value:p("pivot.grandTotal")||Ku,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:x,path:[],depth:-1}},[mo,Xe,Dt,he,De.length,p]),io=useMemo(()=>wm(Xe?.rowTree??[]),[Xe]),Lo=useMemo(()=>wm(Xe?.columnTree??[]),[Xe]);useEffect(()=>{ro(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),io.forEach(L=>{x.has(L)&&F.add(L);}),F});},[io]),useEffect(()=>{Et(x=>{let F=new Set;return Lo.forEach(L=>{x.has(L)&&F.add(L);}),F});},[Lo]);let Fr=useCallback(()=>{ro(x=>{let F=new Set(x);return io.forEach(L=>F.add(L)),F});},[io]),lr=useCallback(()=>{ro(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),F});},[]),Lr=useCallback(()=>{Et(new Set(Lo));},[Lo]),zr=useCallback(()=>{Et(new Set);},[]),Nr=useMemo(()=>!Xe||he.length===0?[]:NC(Xe.columnTree,uo),[he.length,uo,Xe]),go=useMemo(()=>{if(!Xe)return [];if(he.length===0)return Xe.dataColumns.map(F=>({id:F.id,label:F.label,leafColumnIds:[F.id],valueItem:F.valueItem}));let x=new Map(Xe.dataColumns.map(F=>[F.id,F]));return Nr.flatMap(F=>{let L=new Map;return F.leafColumnIds.forEach(q=>{let ce=x.get(q);if(!ce)return;let Se=ce.valueItem.tokenId,N=`${M(ce.valueItem.aggregation)} ${E.get(ce.valueItem.fieldId)?.label??ce.valueItem.fieldId}`,oe=L.get(Se);if(oe){oe.leafColumnIds.push(q);return}L.set(Se,{id:`${F.key}::${Se}`,label:_e.length>1?N:F.label,leafColumnIds:[q],valueItem:ce.valueItem});}),Array.from(L.values())})},[he.length,E,M,Xe,_e.length,Nr]),Vr=useMemo(()=>new Map(go.map(x=>[x.id,x])),[go]),Or=useMemo(()=>go.map(x=>({id:x.id,colKey:x.id,valueItem:x.valueItem,label:x.label})),[go]),sr=useMemo(()=>{if(!Xe||he.length===0)return [];let x=[],F=Pm(Xe.columnTree,uo),L=F+(_e.length>1?1:0),q=(ce,Se)=>{x[Se]??(x[Se]=[]),ce.forEach(N=>{let oe=N.children.length>0&&uo.has(N.key),J=go.filter(V=>N.leafColumnIds.some(se=>V.leafColumnIds.includes(se))).length,nt=oe||_e.length>1?1:L-Se;x[Se].push({key:N.key,label:N.label,colSpan:J,rowSpan:nt,expandable:N.children.length>0,expanded:oe}),oe&&q(N.children,Se+1);});};return q(Xe.columnTree,0),_e.length>1&&(x[F]=go.map(ce=>({key:ce.id,label:ce.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),x},[he.length,uo,Xe,_e.length,go]),pa=useCallback((x,F)=>F.leafColumnIds.reduce((L,q)=>L+(x.aggregatedValues[q]??0),0),[]),Ea=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Fr,disabled:io.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:lr,disabled:io.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Lr,disabled:Lo.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:zr,disabled:he.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:p("pivot.table.collapseColumnsAll")})]}),[he.length,Lo.size,io.size,zr,lr,Lr,Fr,p]),Fa=()=>{if(!He)return null;let x=Fl(He);if(!x||x.kind!=="item"||!x.key)return null;if(x.zone==="palette"){let ce=E.get(x.key);return ce?jsx(Fc,{label:ce.label,subtitle:ce.type}):null}if(x.zone==="values"){let ce=_e.find(J=>J.tokenId===x.key);if(!ce)return null;let N=E.get(ce.fieldId)?.label??ce.fieldId,oe=`${M(ce.aggregation)}(${N})`;return jsx(Hl,{label:N,caption:oe})}let L=E.get(x.key)?.label??x.key,q=Yt(x.key);return jsx(Hl,{label:L,caption:q})};return jsxs(Paper,{sx:x=>({p:{xs:1.2,md:2},borderRadius:4,border:`1px solid ${x.palette.divider}`,bgcolor:"background.paper",boxShadow:x.palette.mode==="dark"?"none":"0 12px 28px rgba(15, 23, 42, 0.08)",display:"flex",flexDirection:"column",gap:2}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1.5,flexWrap:"wrap"},children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800},children:b}),jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:p("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[$e&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:qe,displayEmpty:true,onChange:x=>nr(String(x.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:p("pivot.preset.selectPlaceholder")}),Ce.map(x=>jsx(MenuItem,{value:x.id,sx:{fontSize:"0.75rem"},children:x.name},x.id))]})}),jsx(Tooltip,{title:p("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Er,"aria-label":p("pivot.preset.save"),children:jsx(Xp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:p("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:ir,disabled:!qe,"aria-label":p("pivot.preset.delete"),children:jsx(RC,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[p("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",p("pivot.afterFilter"),":"," ",jsx("strong",{children:Dt.length.toLocaleString()})]}),jsx(Divider,{flexItem:true,orientation:"vertical"}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.6},children:[jsx(Typography,{sx:{fontSize:"0.74rem"},children:p("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:mo,onChange:x=>Re(x.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:k,collisionDetection:closestCenter,onDragStart:jo,onDragEnd:ar,children:[jsx(cm,{isConfiguratorCollapsed:ia,onToggleCollapse:()=>ze(x=>!x),availableFields:Rt,fieldMap:E,filterFields:Tt,columnFields:he,rowFields:De,valueFields:_e,clearZone:_o,removeFieldFromZone:la,getFilterSelectionSummary:Yt,renderDimensionFilterSelect:Fo,renderAggregationSelect:Aa,getAggregationLabel:M}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Fa()})})]}),jsx(ym,{rows:Dt,fieldMap:E,rowFields:De,columnFields:he,valueFields:_e,chartDimensionFieldId:H,chartPrimaryValueFieldId:$,chartSecondaryValueFieldId:Y,chartType:Pe,isCollapsed:Te,onChartDimensionFieldIdChange:x=>le(x),onChartPrimaryValueFieldIdChange:x=>Ie(x),onChartSecondaryValueFieldIdChange:x=>We(x),onChartTypeChange:x=>vt(x),onToggleCollapse:()=>je(x=>!x),getAggregationLabel:M}),jsx(un,{title:p("pivot.table.sectionTitle"),subtitle:De.length>0?De.map(x=>E.get(x)?.label??x).join(" > "):p("pivot.table.dimensions"),collapsed:Ve,onToggleCollapse:()=>gt(x=>!x),expandAriaLabel:p("pivot.table.collapse.ariaExpand"),collapseAriaLabel:p("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Ea,children:Xe===null?jsx(Box,{sx:{py:5,px:{xs:1.2,md:1.6},textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:v})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(sr.length>0?sr:[[]]).map((x,F)=>jsxs(TableRow,{children:[F===0&&jsx(TableCell,{rowSpan:Math.max(sr.length,1),sx:L=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:L.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${L.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:De.length>0?De.map(L=>E.get(L)?.label).join(" > "):p("pivot.table.dimensions")}),(x.length>0?x:go.map(L=>({key:L.id,label:L.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(L=>jsx(TableCell,{align:"center",colSpan:L.colSpan,rowSpan:L.rowSpan,sx:q=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:q.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${q.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[L.expandable&&jsx(IconButton,{size:"small",onClick:()=>sa(L.key),sx:{p:.1,ml:-0.3},children:L.expanded?jsx(Uh,{sx:{fontSize:16}}):jsx(Zg,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:L.label})]})},L.key))]},`pivot-header-row-${F}`))}),jsxs(TableBody,{children:[Xe.rowTree.map(x=>jsx(ql,{node:x,dataColumns:Or,fieldMap:E,level:0,expandedKeys:ao,onToggle:Zo,getValue:(F,L)=>{let q=Vr.get(L);return q?pa(F,q):0}},x.key)),da&&jsx(ql,{node:da,dataColumns:Or,fieldMap:E,level:0,expandedKeys:ao,onToggle:Zo,getValue:(x,F)=>{let L=Vr.get(F);return L?pa(x,L):0}})]})]})})}),jsxs(Dialog,{open:ye,onClose:()=>be(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:p("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:p("pivot.preset.nameLabel"),value:xe,onChange:x=>Qe(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),Ba());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>be(false),children:p("common.cancel")}),jsx(Button,{variant:"contained",onClick:Ba,disabled:!xe.trim(),children:p("common.save")})]})]})]})};var Im=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},jc=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Rm=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",aE=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:a=true,initialConfiguratorCollapsed:r=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:s=false})=>{let d=useRef(0),l=useMemo(()=>new Set(e.map(K=>K.id)),[e]),c=useMemo(()=>new Map(e.map(K=>[K.id,K])),[e]),[g,f]=useState(()=>zt(t?.rows,l)),[u,h]=useState(()=>zt(t?.columns,l)),[w,p]=useState(()=>zt(t?.filters,l)),[k,m]=useState(()=>{let K=t?.values??[],ye=new Set,be=[];return K.forEach(xe=>{!l.has(xe.fieldId)||ye.has(xe.fieldId)||(ye.add(xe.fieldId),d.current+=1,be.push({tokenId:`v${d.current}`,fieldId:xe.fieldId,aggregation:Jt(xe.aggregation,c.get(xe.fieldId))}));}),be}),[y,b]=useState(o),[v,B]=useState(a),[M,S]=useState(r),[E,I]=useState(()=>Im(zt(t?.rows,l),zt(t?.columns,l),n?.dimensionFieldId)),[C,D]=useState(()=>{let K=(()=>{let ye=t?.values??[],be=new Set,xe=[];return ye.forEach(Qe=>{!l.has(Qe.fieldId)||be.has(Qe.fieldId)||(be.add(Qe.fieldId),xe.push({tokenId:Qe.fieldId,fieldId:Qe.fieldId,aggregation:Jt(Qe.aggregation,c.get(Qe.fieldId))}));}),xe})();return jc(K,n?.primaryValueFieldId)}),[T,P]=useState(()=>{let K=(()=>{let be=t?.values??[],xe=new Set,Qe=[];return be.forEach(He=>{!l.has(He.fieldId)||xe.has(He.fieldId)||(xe.add(He.fieldId),Qe.push({tokenId:He.fieldId,fieldId:He.fieldId,aggregation:Jt(He.aggregation,c.get(He.fieldId))}));}),Qe})(),ye=jc(K,n?.primaryValueFieldId);return Rm(K,ye,n?.secondaryValueFieldId)}),[A,W]=useState(n?.chartType??"bar-vertical"),[z,Q]=useState(i),[re,ne]=useState(s);useEffect(()=>{f(K=>{let ye=K.filter(be=>l.has(be));return ka(K,ye)?K:ye}),h(K=>{let ye=K.filter(be=>l.has(be));return ka(K,ye)?K:ye}),p(K=>{let ye=K.filter(be=>l.has(be));return ka(K,ye)?K:ye}),m(K=>{let ye=K.filter(be=>l.has(be.fieldId)).map(be=>({...be,aggregation:Jt(be.aggregation,c.get(be.fieldId))}));return Ll(K,ye)?K:ye});},[c,l]),useEffect(()=>{I(K=>Im(g,u,K));},[u,g]),useEffect(()=>{D(K=>jc(k,K));},[k]),useEffect(()=>{P(K=>Rm(k,C,K));},[C,k]);let ae=useCallback(K=>{f(zt(K,l));},[l]),_=useCallback(K=>{h(zt(K,l));},[l]),Ue=useCallback(K=>{p(zt(K,l));},[l]),Ze=useCallback(K=>{m(ye=>{let be=K??[],xe=new Set,Qe=[];return be.forEach(He=>{if(!l.has(He.fieldId)||xe.has(He.fieldId))return;xe.add(He.fieldId);let qt=ye.find(ao=>ao.fieldId===He.fieldId);if(qt){Qe.push({...qt,aggregation:Jt(He.aggregation??qt.aggregation,c.get(He.fieldId))});return}d.current+=1,Qe.push({tokenId:`v${d.current}`,fieldId:He.fieldId,aggregation:Jt(He.aggregation,c.get(He.fieldId))});}),Qe});},[c,l]),Oe=useCallback(K=>{ae(K.rows??[]),_(K.columns??[]),Ue(K.filters??[]),Ze(K.values??[]);},[_,Ue,ae,Ze]),ie=useCallback(K=>{if(K==="rows")return f([]);if(K==="columns")return h([]);if(K==="filters")return p([]);m([]);},[]),we=useCallback((K,ye)=>{if(K==="rows")return f(be=>be.filter(xe=>xe!==ye));if(K==="columns")return h(be=>be.filter(xe=>xe!==ye));if(K==="filters")return p(be=>be.filter(xe=>xe!==ye));m(be=>be.filter(xe=>xe.tokenId!==ye));},[]),Ae=useCallback((K,ye)=>{m(be=>be.map(xe=>xe.tokenId===K?{...xe,aggregation:Jt(ye,c.get(xe.fieldId))}:xe));},[c]),Ye=useCallback((K,ye)=>{b(be=>({...be,[K]:ye}));},[]),st=useCallback(()=>{b({});},[]),Z=useCallback(()=>{B(K=>!K);},[]),Ke=useCallback(()=>{S(K=>!K);},[]),xt=useCallback(K=>{I(K);},[]),X=useCallback(K=>{D(K);},[]),pe=useCallback(K=>{P(K);},[]),Be=useCallback(()=>{Q(K=>!K);},[]),Ee=useCallback(()=>{ne(K=>!K);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:u,setColumnFields:h,filterFields:w,setFilterFields:p,valueFields:k,setValueFields:m,filterSelections:y,setFilterSelections:b,showGrandTotal:v,setShowGrandTotal:B,isConfiguratorCollapsed:M,setIsConfiguratorCollapsed:S,chartDimensionFieldId:E,setChartDimensionFieldId:I,chartPrimaryValueFieldId:C,setChartPrimaryValueFieldId:D,chartSecondaryValueFieldId:T,setChartSecondaryValueFieldId:P,chartType:A,setChartType:W,isChartCollapsed:z,setIsChartCollapsed:Q,isTableCollapsed:re,setIsTableCollapsed:ne}),[E,C,T,A,u,w,y,z,M,re,g,v,k]),actions:{setRows:ae,setColumns:_,setFilters:Ue,setValues:Ze,setLayout:Oe,clearZone:ie,removeFieldFromZone:we,setAggregationForValue:Ae,setFilterSelection:Ye,resetFilterSelections:st,toggleGrandTotal:Z,toggleConfigurator:Ke,setChartDimension:xt,setChartPrimaryValue:X,setChartSecondaryValue:pe,setChartType:W,toggleChart:Be,toggleTable:Ee}}};var sE=({orientation:e="auto",defaultNavigationOpen:t,onNavOpenChange:o}={})=>{let a=useTheme$1(),r=useMediaQuery("(orientation: portrait)",{noSsr:true}),n=useMediaQuery(a.breakpoints.down("md"),{noSsr:true}),i=useMemo(()=>e==="auto"?r||n?"portrait":"landscape":e,[n,r,e]),[s,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let l=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:r,isCompactViewport:n,navigationOpen:s,setNavigationOpen:l,toggleNavigationOpen:()=>l(!s)}};var UC=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},pE=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:a})=>{let n=e[0]?.[t],[i,s]=useState(a??n),d=useMemo(()=>e.find(u=>u[t]===i)||e[0],[t,e,i]),[l,c]=useState(()=>{let u=d?.[o];return u==null?"0":String(u)});return {selectedId:i,selectedRecord:d,editorValue:l,setEditorValue:c,selectRecord:u=>{let h=u[t];s(h);let w=u[o];c(w==null?"0":String(w));},applyEditorValue:u=>{if(i===void 0)return;let h=UC(l),w=e.map(p=>p[t]===i?{...p,[o]:h}:p);u(w);}}};var tk=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],Fm=(e,t,o,a)=>{t?.(e),a&&o?.();},yE=({open:e,onClose:t,title:o="Scan barcode",subtitle:a="Use the rear camera on the device. If scanning is unavailable, enter the code manually.",formats:r=tk,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:s=true,scanIntervalMs:d=600,confirmLabel:l="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:u,sx:h})=>{let w=St__default.useRef(null),p=St__default.useRef(null),k=St__default.useRef(null),m=St__default.useRef(null),[y,b]=St__default.useState("idle"),[v,B]=St__default.useState(""),[M,S]=St__default.useState(null),[E,I]=St__default.useState(null),C=St__default.useCallback(()=>{k.current!==null&&(window.clearInterval(k.current),k.current=null),p.current&&(p.current.getTracks().forEach(P=>P.stop()),p.current=null),w.current&&(w.current.srcObject=null);},[]),D=St__default.useCallback(P=>{I(P),b("error"),u?.(P);},[u]);St__default.useEffect(()=>{if(!e){C(),b("idle"),I(null),B("");return}let P=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){b("unsupported"),I("Camera access is not supported in this browser.");return}b("starting"),I(null);try{let W=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(P){W.getTracks().forEach(z=>z.stop());return}if(p.current=W,w.current&&(w.current.srcObject=W,await w.current.play()),!window.BarcodeDetector){b("unsupported"),I("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}m.current=new window.BarcodeDetector({formats:r}),b("ready"),k.current=window.setInterval(async()=>{if(!(!w.current||!m.current)&&!(w.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let Q=(await m.current.detect(w.current)).find(ne=>ne.rawValue);if(!Q?.rawValue)return;let re={rawValue:Q.rawValue,format:Q.format};S(re),C(),Fm(re,f,t,s);}catch(z){D(z instanceof Error?z.message:"Failed to detect barcode.");}},d);}catch(W){D(W instanceof Error?W.message:"Unable to start camera.");}}})(),()=>{P=true,C();}},[s,n,r,t,f,e,D,d,C]);let T=()=>{let P=v.trim();if(!P)return;let A={rawValue:P,format:"manual"};S(A),Fm(A,f,t,s);};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:900},children:o}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Stack,{spacing:2,sx:h,children:[jsx(Typography,{sx:{fontSize:"0.88rem",color:"text.secondary",lineHeight:1.55},children:a}),jsxs(Paper,{elevation:0,sx:P=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:P.palette.mode==="dark"?"linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.96))":"linear-gradient(180deg, rgba(241,245,249,1), rgba(226,232,240,0.92))"}),children:[jsx("video",{ref:w,muted:true,playsInline:true,autoPlay:true,style:{width:"100%",height:280,objectFit:"cover",display:"block"}}),jsx(Box,{sx:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Box,{sx:{width:"72%",maxWidth:320,aspectRatio:"1.7 / 1",borderRadius:3,border:"2px solid rgba(255,255,255,0.95)",boxShadow:"0 0 0 999px rgba(15,23,42,0.24)",position:"relative"},children:jsx(Box,{sx:{position:"absolute",top:"50%",left:0,right:0,height:2,bgcolor:"#38bdf8",boxShadow:"0 0 18px rgba(56,189,248,0.85)"}})})}),jsxs(Box,{sx:{position:"absolute",top:12,left:12,display:"flex",gap:1,flexWrap:"wrap"},children:[jsx(Chip,{icon:jsx(JC,{}),label:y==="ready"?"Camera ready":y==="starting"?"Starting camera":y==="unsupported"?"Preview only":y==="error"?"Scanner error":"Idle",size:"small",color:y==="error"?"error":"primary",variant:"filled"}),M?jsx(Chip,{icon:jsx(ek,{}),label:`${M.format||"barcode"}: ${M.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),E?jsx(Alert,{severity:y==="unsupported"?"info":"warning",children:E}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:v,onChange:P=>B(P.target.value)}),jsx(Button,{variant:"contained",onClick:T,sx:{minHeight:56,px:2.5},children:l})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var nk={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},SE=({title:e,description:t,kicker:o,icon:a,badges:r=[],metrics:n=[],footer:i,children:s,selected:d=false,draggable:l=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:u,dragHandleProps:h,onClick:w,onSwipe:p,sx:k})=>{let[m,y]=useState(0),[b,v]=useState(false),B=useRef(null),M=useRef(0),S=useRef(0),E=!!(f||u),I=132,C=()=>{y(0),v(false),B.current=null,M.current=0,S.current=0;},D=z=>{(z==="start"?f:u)?.onTrigger?.(),p?.(z),C();},T=z=>{!E||z.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(B.current=z.pointerId,M.current=z.clientX,S.current=z.clientX,v(true),z.currentTarget.setPointerCapture(z.pointerId));},P=z=>{if(!b||B.current!==z.pointerId)return;S.current=z.clientX;let Q=S.current-M.current,re=Math.max(-I,Math.min(I,Q));y(re);},A=z=>{if(!b||B.current!==z.pointerId)return;let Q=S.current-M.current;if(Q>=g&&f){D("start");return}if(Q<=-g&&u){D("end");return}Math.abs(Q)<12&&w?.(),C();},W=(z,Q)=>{if(!z)return null;let re=z.backgroundColor||nk[z.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[Q]:0,width:I,px:2,display:"flex",alignItems:"center",justifyContent:Q==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${re}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[z.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:z.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...k},children:[W(f,"left"),W(u,"right"),jsx(Paper,{elevation:0,onPointerDown:T,onPointerMove:P,onPointerUp:A,onPointerCancel:C,sx:z=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:d?"primary.main":"divider",background:z.palette.mode==="dark"?"linear-gradient(180deg, rgba(30,41,59,0.96), rgba(15,23,42,0.92))":"linear-gradient(180deg, #ffffff, #f8fafc)",color:"text.primary",boxShadow:d?"0 18px 42px rgba(37, 99, 235, 0.18)":"0 12px 28px rgba(15, 23, 42, 0.08)",transform:`translate3d(${m}px, 0, 0) scale(${c?.985:1})`,transition:b?"none":"transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease",touchAction:"pan-y",cursor:w?"pointer":"default",opacity:c?.9:1}),children:jsxs(Stack,{spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"flex-start",children:[a?jsx(Box,{sx:{mt:.25},children:a}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:"0.08em",color:"text.secondary"},children:o}):null,jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:e}),t?jsx(Typography,{sx:{mt:.5,fontSize:"0.9rem",color:"text.secondary",lineHeight:1.45},children:t}):null]}),l?jsx(Box,{"data-no-swipe":"true",...h,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(rk,{})})}):null]}),r.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:r.map((z,Q)=>jsx(Chip,{label:z,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},Q))}):null,n.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(110px, 1fr))",gap:1},children:n.map(z=>jsxs(Paper,{elevation:0,sx:{p:1.25,borderRadius:3,bgcolor:"action.hover",border:"1px solid",borderColor:"divider",color:"text.primary"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:z.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:z.value})]},z.id))}):null,s,i]})})]})};var xi=({label:e,onPress:t,emphasis:o="default"})=>jsx(Box,{component:"button",type:"button",onClick:t,sx:a=>({minHeight:72,borderRadius:3,border:"1px solid",borderColor:o==="primary"?"primary.main":"divider",background:o==="primary"?a.palette.primary.main:o==="danger"?a.palette.mode==="dark"?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.10)":a.palette.mode==="dark"?"rgba(255,255,255,0.04)":"#fff",color:o==="primary"?"#fff":"text.primary",fontSize:"1.25rem",fontWeight:800,transition:"transform 120ms ease, box-shadow 160ms ease, background-color 160ms ease",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent","&:active":{transform:"scale(0.98)"}}),children:e}),BE=({value:e,defaultValue:t="",title:o,subtitle:a,placeholder:r="0",allowDecimal:n=false,allowNegative:i=false,maxLength:s,confirmLabel:d,clearLabel:l,backspaceLabel:c,onChange:g,onSubmit:f,onClose:u,sx:h})=>{let{t:w}=ee(),[p,k]=useState(t),m=e??p,y=C=>{e===void 0&&k(C),g?.(C);},b=C=>{s&&m.length>=s||y(`${m}${C}`);},v=C=>{if(C==="00"){if(!m){y("0");return}b("00");return}b(C);},B=()=>{!n||m.includes(".")||y(m?`${m}.`:"0.");},M=()=>{if(i){if(m.startsWith("-")){y(m.slice(1));return}y(m?`-${m}`:"-");}},S=()=>{y(m.slice(0,-1));},E=()=>{y("");},I=()=>{f?.(m);};return jsx(Paper,{elevation:0,sx:{p:2,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",...h},children:jsxs(Stack,{spacing:2,children:[jsxs(Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[jsxs(Box,{sx:{minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800},children:o}):null,a?jsx(Typography,{sx:{mt:.5,fontSize:"0.86rem",color:"text.secondary"},children:a}):null]}),u?jsx(IconButton,{onClick:u,size:"small",children:jsx(ck,{})}):null]}),jsx(Paper,{elevation:0,sx:{p:2,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{sx:{minHeight:38,fontSize:m?"1.9rem":"1.25rem",fontWeight:900,letterSpacing:"0.06em",color:m?"text.primary":"text.disabled"},children:m||r})}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[["1","2","3","4","5","6","7","8","9"].map(C=>jsx(xi,{label:C,onPress:()=>v(C)},C)),jsx(xi,{label:i?"+/-":"00",onPress:i?M:()=>v("00")}),jsx(xi,{label:"0",onPress:()=>v("0")}),jsx(xi,{label:n?".":c?String(c):"DEL",onPress:n?B:S})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:S,sx:{minHeight:64,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(sk,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(xi,{label:String(l||"CLR"),onPress:E,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:I,sx:C=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:C.palette.primary.main,color:"#fff",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"}),children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(dk,{}),jsx(Typography,{sx:{fontWeight:800},children:d||w("common.ok")})]})})]})]})})};var Om=({touchMode:e="comfortable",sx:t,...o})=>{let a=e==="expanded";return jsx(Box,{sx:{"& .MuiPaper-root":{borderRadius:4},"& .MuiAutocomplete-root":{minWidth:{xs:"100%",md:260}},"& .MuiAutocomplete-root .MuiInputBase-root":{backgroundColor:"transparent !important"},"& .MuiInputBase-root":{minHeight:a?56:50,borderRadius:3,fontSize:a?"0.98rem":"0.92rem"},"& .MuiInputBase-input":{py:a?1.6:1.25,fontSize:a?"0.98rem":"0.92rem"},"& .MuiInputLabel-root":{fontSize:a?"0.95rem":"0.88rem"},"& .MuiButton-root":{minHeight:a?48:44,px:a?2.25:1.75,borderRadius:3,fontSize:a?"0.95rem":"0.88rem",fontWeight:700},"& .MuiIconButton-root":{width:a?40:36,height:a?40:36},"& .MuiMenuItem-root":{minHeight:a?44:38,fontSize:a?"0.95rem":"0.88rem"},"& .MuiListSubheader-root":{py:1},"& .MuiCheckbox-root":{p:a?1:.75},"& .MuiFormControlLabel-label":{fontSize:a?"0.95rem":"0.88rem"},"& .MuiDialog-paper":{borderRadius:4},"& .MuiDialogTitle-root":{fontSize:a?"1.05rem":"0.98rem",fontWeight:800},"& .MuiDialogContent-root .MuiInputBase-root":{minHeight:52},'& .MuiGrid-root > .MuiGrid-item, & .MuiGrid-root > .MuiGrid-sizeXs-1, & .MuiGrid-root > [class*="MuiGrid-grid-"]':{minWidth:0},...t},children:jsx(ha,{...o})})};var yk=(e,t,o)=>{if(o?.(t),!!t.href){if(t.href.startsWith("http://")||t.href.startsWith("https://")){window.open(t.href,"_blank");return}e.push(t.href);}},$m=({items:e,selectedId:t,orientation:o="auto",onItemSelect:a,sx:r})=>{let n=useTheme$1(),[i,s]=useState(false);useEffect(()=>{s(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),l=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||l?"portrait":"landscape":o,g=useRouter();return jsx(Box,{sx:{display:"grid",gridTemplateColumns:!i||c==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(180px, 1fr))",gap:1.5,...r},children:e.map(f=>{let u=f.id===t,h=f.color||(u?n.palette.primary.main:n.palette.divider);return jsx(Paper,{elevation:0,sx:{overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:u?"primary.main":"divider",boxShadow:u?"0 18px 40px rgba(37, 99, 235, 0.16)":"none",bgcolor:n.palette.mode==="dark"?"rgba(30,41,59,0.6)":"background.paper"},children:jsx(Box,{component:"button",type:"button",disabled:f.disabled,onClick:()=>yk(g,f,a),sx:{width:"100%",p:2,minHeight:c==="portrait"?156:148,display:"block",border:0,background:"transparent",textAlign:"left",cursor:f.disabled?"not-allowed":"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent",color:"text.primary"},children:jsxs(Stack,{spacing:1.5,sx:{height:"100%"},children:[jsxs(Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[jsx(Box,{sx:{width:44,height:44,borderRadius:3,display:"grid",placeItems:"center",color:u?"#fff":"text.primary",background:u?h:"action.hover"},children:f.icon||jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900},children:f.title.slice(0,1).toUpperCase()})}),f.badge!==void 0?jsx(Box,{sx:{minWidth:34,px:1,py:.4,borderRadius:999,bgcolor:u?"primary.main":"action.hover",color:u?"#fff":"text.secondary",textAlign:"center",fontWeight:800,fontSize:"0.8rem"},children:f.badge}):null]}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.25},children:f.title}),f.caption?jsx(Typography,{sx:{mt:.5,fontSize:"0.74rem",fontWeight:700,color:"text.secondary"},children:f.caption}):null,f.description?jsx(Typography,{sx:{mt:.75,fontSize:"0.84rem",lineHeight:1.45,color:"text.secondary"},children:f.description}):null]})]})})},f.id)})})};var qm=(e,t)=>t.trim()?e.reduce((o,a)=>{let r=a.title?.toLowerCase().includes(t.toLowerCase())||a.label?.toLowerCase().includes(t.toLowerCase())||a.description?.toLowerCase().includes(t.toLowerCase()),n=a.children?qm(a.children,t):[];return (r||n.length>0)&&o.push({...a,children:n.length>0?n:a.children}),o},[]):e,Mk=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children?.length&&(t.add(r.id),o(r.children));});};return o(e),t},_m=({collapsed:e=false,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light",orientation:i="auto",headerSlot:s,footerSlot:d,activeHref:l,onItemSelect:c})=>{let{t:g}=ee(),f=useTheme$1(),u=useMediaQuery("(orientation: portrait)"),h=useMediaQuery(f.breakpoints.down("md")),w=i==="auto"?u||h?"portrait":"landscape":i,p=n==="dark",k=useRouter(),m=usePathname(),[y,b]=useState(""),[v,B]=useState(new Set),M=useMemo(()=>qm(r,y),[r,y]),S=useMemo(()=>y.trim()?Mk(M):v,[v,M,y]);useEffect(()=>{e&&B(new Set);},[e]);let E=P=>P.appurl||P.href||"",I=P=>{c?.(P);let A=E(P);if(A){if(A.startsWith("http://")||A.startsWith("https://")){window.open(A,"_blank");return}k.push(A);}},C=P=>{let A=!!P.children?.length;if(e&&A){t?.();return}if(A){B(W=>{let z=new Set(W);return z.has(P.id)?z.delete(P.id):z.add(P.id),z});return}I(P);},D=P=>{let A=l||m,W=E(P);return !!(W&&A===W)},T=(P,A=0)=>{let W=!!P.children?.length,z=S.has(P.id),Q=D(P);return jsx(Box,{sx:{pl:A===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:Q?"primary.main":"divider",bgcolor:Q?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>C(P),sx:{width:"100%",px:1.5,py:1.4,display:"flex",alignItems:"center",gap:1.25,border:0,background:"transparent",textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:[jsx(Avatar,{variant:"rounded",sx:{width:40,height:40,bgcolor:Q?"primary.main":"action.hover",color:Q?"#fff":"text.primary"},children:P.icon||(P.title||P.label||"?").slice(0,1).toUpperCase()}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.95rem",fontWeight:800,lineHeight:1.2},children:P.title||P.label}),P.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:P.description}):null]}),W?jsx(Rk,{sx:{transform:z?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(Dk,{color:"action"})]}),W?jsx(Collapse,{in:z,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:P.children?.map(re=>T(re,A+1))})}):null]})},P.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:w==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:p?"#101828":"rgba(255,255,255,0.88)",maxHeight:a?`${a}px`:void 0,overflowY:"auto"},children:jsxs(Stack,{spacing:1,children:[jsx(IconButton,{onClick:t,sx:{width:48,height:48,alignSelf:"center",bgcolor:"action.hover"},title:g("navigation.expand"),children:jsx(Ik,{})}),r.map(P=>jsx(IconButton,{onClick:()=>C(P),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:D(P)?"primary.main":"action.hover",color:D(P)?"#fff":"text.primary"},children:P.icon||(P.title||P.label||"?").slice(0,1).toUpperCase()},P.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:w==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:p?"#101828":"rgba(255,255,255,0.88)",maxHeight:a?`${a}px`:void 0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxs(Stack,{spacing:1.25,sx:{flex:1,minHeight:0},children:[jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsx(TextField,{value:y,onChange:P=>b(P.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(Tk,{fontSize:"small",color:"action"})}}),w==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(Pk,{})}):null]}),s,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:M.length>0?M.map(P=>T(P)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var tg=(e,t)=>{let o=t[e.id];if(e.render)return e.render(o,t);if(o==null||o==="")return "--";if(e.numeric){if(typeof o=="number")return o.toLocaleString();if(typeof o=="string"&&o.trim()!==""&&!Number.isNaN(Number(o)))return Number(o).toLocaleString()}return String(o)},zk=e=>St__default.isValidElement(e)?jsx(Box,{sx:{display:"inline-flex",alignItems:"center"},children:e}):jsx(Typography,{sx:{mt:.2,fontSize:"0.88rem",fontWeight:800},children:e}),Nk=(e,t)=>{let o=t[e.id];if(o==null||o==="")return "--";if(e.numeric){if(typeof o=="number")return o.toLocaleString();if(typeof o=="string"&&o.trim()!==""&&!Number.isNaN(Number(o)))return Number(o).toLocaleString()}return String(o)},Vk=({summaryRow:e,visibleColumns:t,columns:o})=>{let a=o.filter(r=>t.includes(r.id)&&e[r.id]!=="");return a.length===0?null:jsx(Paper,{elevation:0,sx:{p:1.5,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Stack,{spacing:1,children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:800,color:"text.secondary"},children:"Summary"}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(132px, 1fr))",gap:1},children:a.map(r=>jsxs(Paper,{elevation:0,sx:{p:1.1,borderRadius:3,border:"1px solid",borderColor:"divider"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:r.label}),jsx(Typography,{sx:{mt:.25,fontSize:"0.96rem",fontWeight:800},children:e[r.id]})]},`summary-${r.id}`))})]})})},Ok=e=>{let{t}=ee(),o=useTheme$1(),{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:p,rowKey:k,tableKey:m="default",graphReport:y,quickCreate:b,quickEdit:v,quickDelete:B,serviceUrl:M,orientation:S="auto",cardTitleField:E,cardSubtitleFields:I,toolbarSlot:C,emptyState:D,rowHeight:T="comfortable",cardActionSlot:P,renderCardFooter:A,onRowClick:W}=e,z=a||t("table.title.default"),Q=useMediaQuery("(orientation: portrait)"),re=useMediaQuery(o.breakpoints.down("md")),ne=S==="auto"?Q||re?"portrait":"landscape":S,{columns:ae,filterText:_,setFilterText:Ue,visibleColumns:Ze,showSummary:Oe,setShowSummary:ie,summaryColumns:we,grouping:Ae,setGrouping:Ye,expandedGroups:st,groupAnchorEl:Z,setGroupAnchorEl:Ke,summaryAnchorEl:xt,setSummaryAnchorEl:X,anchorEl:pe,setAnchorEl:Be,contextMenu:Ee,sortedAndFilteredRows:qe,summaryRow:K,visibleRows:ye,page:be,setPage:xe,rowsPerPage:Qe,setRowsPerPage:He,totalDisplayCount:qt,setSelected:ao,handleClick:ro,toggleSummaryColumn:uo,handleExport:Et,handleCloseContextMenu:De,toggleColumnVisibility:he,toggleGroupExpand:Tt,toggleGroupField:_e,handleExpandGroupRecursively:Pt,handleCollapseGroupRecursively:mo,handleLayoutLoad:ia,handleVariantLoad:H,handleLayoutSave:$,effectiveAppId:Y,currentLayoutData:Pe,currentLayoutId:Te,layoutIdToLoad:Ve,graphReportOpen:Ce,handleOpenGraphReport:$e,handleCloseGraphReport:R}=on(e),O=y?.enabled??false,U=O&&(y?.interaction?.enabled??true),G=tl(),te=k||"id",Re=St__default.useMemo(()=>({borderRadius:999,fontWeight:700,borderColor:alpha(o.palette.divider,o.palette.mode==="dark"?.55:.3),bgcolor:o.palette.mode==="dark"?alpha(o.palette.common.white,.06):alpha(o.palette.background.paper,.92),color:o.palette.text.primary,"& .MuiChip-label":{px:1.05}}),[o]),ze=St__default.useMemo(()=>({...Re,borderColor:alpha(o.palette.primary.main,o.palette.mode==="dark"?.42:.24),bgcolor:o.palette.mode==="dark"?alpha(o.palette.primary.main,.16):alpha(o.palette.primary.main,.08)}),[Re,o]),le=St__default.useMemo(()=>{let V=new Set(i);return qe.filter(se=>V.has(se?.[te]))},[te,i,qe]),Ie=le.length===1?le[0]:null,We=!!b?.enabled,vt=!!v?.enabled,je=!!B?.enabled,gt=b?.fields,It=b?.excludeFields||[],no=b?.initialValues||{},Rt=v?.fields,Ft=v?.excludeFields||[],Xt=v?.editableFields||[],Dt=v?.nonEditableFields||[],Xe=v?.primaryKeys?.length?v.primaryKeys:[te],[Eo,_o]=St__default.useState(false),[la,or]=St__default.useState(false),[jo,ar]=St__default.useState({}),[rr,Zo]=St__default.useState(false),[sa,Aa]=St__default.useState(false),[Yt,Fo]=St__default.useState({}),[ca,To]=St__default.useState(false),[Xo,nr]=St__default.useState(false),Er=u||la||sa||Xo,Ba=St__default.useMemo(()=>{let V=[...ae];if(Array.isArray(gt)&&gt.length>0){let se=new Set(gt);V=V.filter(j=>se.has(j.id));}if(It.length>0){let se=new Set(It);V=V.filter(j=>!se.has(j.id));}return V.filter(se=>!!se?.id)},[ae,It,gt]),ir=St__default.useMemo(()=>{let V=[...ae];if(Array.isArray(Rt)&&Rt.length>0){let se=new Set(Rt);V=V.filter(j=>se.has(j.id));}if(Ft.length>0){let se=new Set(Ft);V=V.filter(j=>!se.has(j.id));}return V.filter(se=>!!se?.id)},[ae,Ft,Rt]),da=St__default.useMemo(()=>new Set(Xe),[Xe]),io=St__default.useMemo(()=>new Set(Xt),[Xt]),Lo=St__default.useMemo(()=>new Set(Dt),[Dt]),Fr=St__default.useCallback(V=>io.size>0?io.has(V):!(Lo.has(V)||da.has(V)),[io,Lo,da]);St__default.useEffect(()=>{!Ce&&G.hasActiveFilters&&G.clearAll();},[G,Ce]);let lr=()=>{let V={};Ba.forEach(se=>{V[se.id]=no[se.id]??"";}),ar(V),_o(true);},Lr=(V,se)=>{ar(j=>({...j,[V]:se}));},zr=async()=>{if(!b?.onSubmit){_o(false);return}try{or(!0),await b.onSubmit(jo),_o(!1);}finally{or(false);}},Nr=()=>{if(!Ie)return;let V={};ir.forEach(j=>{V[j.id]=Ie[j.id]??"";});let se=v?.getInitialValues?{...V,...v.getInitialValues(Ie)}:V;Fo(se),Zo(true);},go=(V,se)=>{Fo(j=>({...j,[V]:se}));},Vr=async()=>{if(Ie){if(!v?.onSubmit){Zo(false);return}try{Aa(!0),await v.onSubmit(Yt,Ie),Zo(!1);}finally{Aa(false);}}},Or=()=>{le.length!==0&&To(true);},sr=async()=>{if(le.length===0){To(false);return}if(!B?.onConfirm){To(false),ao([]),s?.([]);return}try{nr(!0),await B.onConfirm(le),To(!1),ao([]),s?.([]);}finally{nr(false);}},pa=qe,{fieldMapping:Ea}=Qr({rows:pa,config:{...y,title:y?.title||`${z} ${t("graph.reportTitle")}`}}),Fa=St__default.useMemo(()=>U?G.applyRows(pa,Ea):pa,[Ea,G,U,pa]),{model:x}=Qr({rows:Fa,config:{...y,title:y?.title||`${z} ${t("graph.reportTitle")}`,fieldMapping:Ea}}),F=x.table.columns.map(V=>({id:V.id,label:V.label,align:V.align||"left",minWidth:120,numeric:V.align==="right"})),L=Y?jsx(pl,{appId:Y,tableKey:m,currentLayoutData:Pe,onLayoutLoad:ia,targetLayoutId:Ve,activeLayoutId:Te,serviceUrl:M??p?.serviceUrl}):null,q=ae.filter(V=>Ze.includes(V.id)),ce=q.find(V=>V.id===E)||q[0],Se=I?.map(V=>q.find(se=>se.id===V)).filter(Boolean)||q.filter(V=>V.id!==ce?.id).slice(0,ne==="portrait"?2:3),N=q.filter(V=>V.id!==ce?.id&&!Se.some(se=>se.id===V.id)),oe=[C,l].filter(Boolean),J=jsxs(Fragment,{children:[jsx(Wr,{groupAnchorEl:Z,setGroupAnchorEl:Ke,grouping:Ae,setGrouping:Ye,columns:ae,toggleGroupField:_e}),jsx($r,{anchorEl:pe,setAnchorEl:Be,columns:ae,visibleColumns:Ze,toggleColumnVisibility:he}),jsx(zi,{anchorEl:xt,setAnchorEl:X,showSummary:Oe,setShowSummary:ie,columns:ae,summaryColumns:we,toggleSummaryColumn:uo}),jsx(Ni,{contextMenu:Ee,handleCloseContextMenu:De,columns:ae,visibleColumns:Ze,toggleColumnVisibility:he})]}),nt=(V,se,j)=>{let ge=i.includes(se),Je=ne==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",Yo=j%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),af=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{ro({},V),W?.(V);},sx:{p:T==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:ge?alpha(o.palette.primary.main,.38):af,background:ge?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${Yo}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:ge?`0 12px 30px ${alpha(o.palette.primary.main,.2)}`:`0 3px 10px ${alpha(o.palette.common.black,.045)}`,cursor:"pointer",position:"relative",overflow:"hidden",transition:"border-color 160ms ease, box-shadow 160ms ease, transform 120ms ease, background 160ms ease","&::before":{content:'""',position:"absolute",left:0,top:0,bottom:0,width:4,background:ge?o.palette.primary.main:j%2===0?alpha(o.palette.primary.main,.26):alpha(o.palette.text.primary,.16)},"&:hover":{boxShadow:`0 10px 20px ${alpha(o.palette.primary.main,.12)}`,transform:"translateY(-1px)"},"&:active":{transform:"scale(0.995)"}},children:jsxs(Stack,{spacing:1.25,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"flex-start",children:[n?jsx(Checkbox,{checked:ge,onClick:fo=>fo.stopPropagation(),onChange:()=>ro({},V),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[ce?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:tg(ce,V)}):null,Se.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:Se.map(fo=>jsx(Chip,{label:`${fo.label}: ${Nk(fo,V)}`,size:"small",variant:"outlined",sx:Re},`${se}-${fo.id}`))}):null]}),P?jsx(Box,{onClick:fo=>fo.stopPropagation(),children:P(V)}):null]}),N.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:Je,gap:1},children:N.map(fo=>jsxs(Paper,{elevation:0,sx:{p:1,borderRadius:3,bgcolor:o.palette.mode==="dark"?alpha(o.palette.background.default,.7):alpha(o.palette.background.paper,.92),border:"0.1px solid",borderColor:alpha(o.palette.divider,.24)},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:fo.label}),zk(tg(fo,V))]},`${se}-${fo.id}-detail`))}):null,A?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:fo=>fo.stopPropagation(),children:A(V)})]}):null]})},se)};return jsxs(Box,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[p?jsx(Box,{sx:{mb:2},children:jsx(Om,{...p,onVariantLoad:V=>{H(V),p.onVariantLoad?.(V);},appId:p.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:Pe}],currentLayoutId:Te,layoutRefs:[{tableKey:m,layoutId:Te}],variantService:p.variantService,serviceUrl:M??p.serviceUrl,touchMode:ne==="portrait"?"expanded":"comfortable"})}):null,jsxs(Paper,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative",bgcolor:"transparent",backgroundImage:"none",boxShadow:"none","&::before":Er?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...f?{height:f}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[r?jsx(Box,{sx:{"& .MuiToolbar-root":{minHeight:60,alignItems:{xs:"flex-start",md:"center"},flexWrap:"wrap",rowGap:1,columnGap:1},"& .MuiToolbar-root > :nth-of-type(1)":{width:{xs:"100%",md:"auto"},"& .MuiTextField-root":{width:{xs:"100%",md:300}}},"& .MuiToolbar-root > :nth-of-type(2)":{flexShrink:0},"& .MuiToolbar-root > :nth-of-type(3)":{display:{xs:"none",md:"block"}},"& .MuiToolbar-root > :nth-of-type(4)":{ml:"auto",justifyContent:"flex-end",flexWrap:"wrap"},"& .MuiInputBase-root":{minHeight:46},"& .MuiIconButton-root":{width:40,height:40},"& .MuiTypography-root":{fontSize:"0.9rem"},"& .MuiButtonBase-root":{borderRadius:2.5}},children:jsx(Ai,{filterText:_,setFilterText:Ue,onRowsPerPageChange:He,rowsPerPage:Qe,rowsPerPageOptions:h,page:be,count:qt,onPageChange:xe,actions:d,extraTools:oe,grouping:Ae,setGroupAnchorEl:Ke,showSummary:Oe,setShowSummary:ie,setAnchorEl:Be,setSummaryAnchorEl:X,handleExport:Et,showCreateButton:We,onOpenCreateDialog:lr,showEditButton:vt,onOpenEditDialog:Nr,editDisabled:le.length!==1,showDeleteButton:je,onOpenDeleteConfirm:Or,deleteDisabled:le.length===0,onLayoutSave:w||p?.variantService&&p?.appId?$:void 0,loading:u,layoutManager:L,onOpenGraphReport:O?$e:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[ye.length===0&&!u?D||jsx(Paper,{elevation:0,sx:{p:4,borderRadius:4,border:"1px dashed",borderColor:"divider",textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.92rem",color:"text.secondary"},children:t("common.noData")})}):null,ye.map((V,se)=>{if(V.type==="group"){let Je=st.has(V.id);return jsx(Paper,{elevation:0,sx:{borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Box,{component:"button",type:"button",onClick:()=>Tt(V.id),sx:{width:"100%",px:1.5,py:1.3,border:0,background:"transparent",display:"flex",alignItems:"center",gap:1,textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",color:"text.primary"},children:[Je?jsx(Rk,{}):jsx(Dk,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[V.field,": ",V.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[V.count," records"]})]}),Ae.length>1&&V.level<Ae.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:Yo=>{Yo.stopPropagation(),Pt(V.id);},sx:ze}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:Yo=>{Yo.stopPropagation(),mo(V.id);},sx:ze})]}):null]})},V.id)}let j=V.data||V,ge=V.id||j[te]||se;return nt(j,ge,se)}),Oe?jsx(Vk,{summaryRow:K,visibleColumns:Ze,columns:ae}):null,u?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),We?jsxs(Dialog,{open:Eo,onClose:()=>!la&&_o(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:b?.title||t("quickCreate.createWithTitle",{title:z})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ba.map(V=>{let se=V.type==="number"||V.numeric?"number":V.type==="date"?"date":"text";return jsx(TextField,{label:V.label||V.id,value:jo[V.id]??"",onChange:j=>Lr(V.id,j.target.value),type:se,fullWidth:true,InputLabelProps:{shrink:se==="date"?true:void 0}},`quick-create-${V.id}`)}),b?.description?jsx(Alert,{severity:"info",children:b.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>_o(false),disabled:la,children:b?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:zr,variant:"contained",disabled:la,children:b?.submitLabel||t("common.save")})]})]}):null,vt?jsxs(Dialog,{open:rr,onClose:()=>!sa&&Zo(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:v?.title||t("quickEdit.editWithTitle",{title:z})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ir.map(V=>{let se=V.type==="number"||V.numeric?"number":V.type==="date"?"date":"text";return jsx(TextField,{label:V.label||V.id,value:Yt[V.id]??"",onChange:j=>go(V.id,j.target.value),type:se,disabled:!Fr(V.id),fullWidth:true,InputLabelProps:{shrink:se==="date"?true:void 0}},`quick-edit-${V.id}`)}),v?.description?jsx(Alert,{severity:"info",children:v.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Zo(false),disabled:sa,children:v?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Vr,variant:"contained",disabled:sa||!Ie,children:v?.submitLabel||t("common.save")})]})]}):null,je?jsx(An,{open:ca,type:"warning",title:B?.title||t("quickDelete.confirmTitle"),message:B?.message||(le.length>1?t("quickDelete.confirmMessageMultiple",{count:le.length}):t("quickDelete.confirmMessageSingle")),confirmText:B?.confirmText||t("common.delete"),cancelText:B?.cancelText||t("common.cancel"),onClose:()=>!Xo&&To(false),onConfirm:sr}):null,J,O?jsx(Ji,{open:Ce,onClose:R,model:x,aiAssistant:y?.aiAssistant,interaction:U?{enabled:true,filters:G.filters,fieldMapping:Ea,onPrimaryDimensionClick:V=>G.setFilter("primaryDimension",V),onSecondaryDimensionClick:V=>G.setFilter("secondaryDimension",V),onStatusClick:V=>G.setFilter("status",V),onClearFilter:G.clearFilter,onClearAll:G.clearAll}:void 0,tableContent:jsx(Ok,{appId:Y||"graph-report-internal",title:t("graph.dataBody"),columns:F,rows:x.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var RF=({appTitle:e,children:t,menuData:o=[],workloadItems:a=[],workloadSelectedId:r,showNavigation:n=true,showWorkloadNav:i=true,orientation:s="auto",logo:d,headerSlot:l,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:u,user:h,onSearch:w,defaultNavigationOpen:p,navOpen:k,onNavOpenChange:m,onWorkloadSelect:y,locale:b="en",localeLabel:v,localeOptions:B,onLocaleChange:M,onUserSetting:S,onUserLogout:E,userMenuItems:I,leftHeaderSlot:C,rightHeaderSlot:D})=>{let T="orbcafe:page-layout-mode",[P,A]=useState("system"),[W,z]=useState("light"),[Q,re]=useState(false),[ne,ae]=useState(false),_=P==="system"?ne?W:"light":P;useEffect(()=>{re(true);},[]),useEffect(()=>{try{let Ee=window.localStorage.getItem(T);(Ee==="light"||Ee==="dark"||Ee==="system")&&A(Ee);}catch{}ae(true);let pe=window.matchMedia("(prefers-color-scheme: dark)"),Be=()=>{z(pe.matches?"dark":"light");};return Be(),pe.addEventListener("change",Be),()=>pe.removeEventListener("change",Be)},[]),useEffect(()=>{if(ne)try{window.localStorage.setItem(T,P);}catch{}},[ne,P]),useEffect(()=>{_==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[_]);let Ue=useMemo(()=>createTheme$1({palette:_==="dark"?{mode:"dark",primary:{main:"#93c5fd"},background:{default:"#060913",paper:"#101826"},text:{primary:"#f8fafc",secondary:"rgba(226,232,240,0.74)"},divider:"rgba(148,163,184,0.18)",action:{hover:"rgba(148,163,184,0.10)",selected:"rgba(59,130,246,0.18)"}}:{mode:"light",background:{default:"#eef3f8",paper:"#ffffff"}},components:{MuiCssBaseline:{styleOverrides:{body:{backgroundColor:_==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[_]),Ze=useMediaQuery("(orientation: portrait)"),Oe=useMediaQuery(Ue.breakpoints.down("md")),ie=s==="auto"?!Q||Ze||Oe?"portrait":"landscape":s,[we,Ae]=useState({landscape:p??true,portrait:false}),Ye=we[ie],st=k??Ye,Z=pe=>{k===void 0&&Ae(Be=>({...Be,[ie]:pe})),m?.(pe);},Ke=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!Q||n&&ie==="portrait"?jsx(IconButton,{onClick:()=>Z(!st),sx:{bgcolor:"action.hover"},children:jsx(Ik,{})}):null,C]}),xt=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,D]}),X=jsx(_m,{collapsed:ie==="landscape"?!st:false,onToggle:()=>Z(!st),menuData:o,orientation:ie,colorMode:_,maxHeight:ie==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:Ue,children:jsx(Di,{locale:b,children:jsxs(Box,{sx:[pe=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:pe.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":pe.palette.background.default}),...Array.isArray(u)?u:[u]],children:[jsx(Al,{appTitle:e,logo:d===void 0?null:d,mode:P,onToggleMode:()=>A(pe=>pe==="system"?"dark":pe==="dark"?"light":"system"),locale:b,localeLabel:v,localeOptions:B,onLocaleChange:M,user:h,onUserSetting:S,onUserLogout:E,userMenuItems:I,onSearch:w,leftSlot:Ke,rightSlot:xt}),l?jsx(Box,{sx:{px:{xs:2,md:3},py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:l}):null,jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex",position:"relative"},children:[Q&&n&&ie==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:X}):null,!Q||n&&ie==="portrait"?jsx(Drawer,{open:st,onClose:()=>Z(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:X}):null,jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...f},children:jsxs(Stack,{spacing:1.5,children:[i&&a.length>0?jsx($m,{items:a,selectedId:r,orientation:ie,onItemSelect:y}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:ie==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:Ue.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),ie==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var rg=Zk(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function ad({isRecording:e}){return jsx(AnimatePresence,{children:e&&jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.5},className:"pointer-events-none absolute inset-0 z-0 overflow-hidden",children:jsxs("div",{className:"relative flex h-full w-full items-center justify-center",children:[jsx("div",{className:"absolute inset-0",children:jsx(rg,{hue:0,hoverIntensity:.5,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})}),jsx("div",{className:"relative z-10 h-full w-1/3 mix-blend-overlay opacity-80",children:jsx(rg,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var EF=ad;function as({onTextUpdate:e,onComplete:t,onError:o,wsUrl:a="ws://localhost:8765",silenceThresholdMs:r=2e3,minVolumeRms:n=.015}){let[i,s]=useState(false),d=useRef(null),l=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),u=useRef(0),h=useRef(false),w=useRef(false),p=useCallback(()=>{d.current&&(d.current.close(),d.current=null),g.current&&(g.current.disconnect(),g.current=null),f.current&&(f.current.disconnect(),f.current=null),l.current&&(l.current.getTracks().forEach(y=>y.stop()),l.current=null),c.current&&(c.current.close(),c.current=null),w.current=false,s(false);},[]),k=useCallback(()=>{h.current||(h.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(p,500));},[p]),m=useCallback(async()=>{if(!(i||w.current)){w.current=true,h.current=false,u.current=Date.now();try{let y=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0}});l.current=y;let b=new WebSocket(a);d.current=b,b.onopen=()=>{s(!0),w.current=!1;},b.onmessage=E=>{try{let I=JSON.parse(E.data);if(I.type==="recognition")I.is_final?t(I.text):e?.(I.text);else if(I.type==="error"){let C=I.message||"Voice recognition error";o?.(C),k();}}catch{o?.("Failed to parse voice message");}},b.onerror=()=>{o?.("Voice service connection failed"),p();},b.onclose=()=>{p();};let v=window.AudioContext||window.webkitAudioContext;if(!v)throw new Error("AudioContext is not supported in this browser");let B=new v({sampleRate:16e3});c.current=B;let M=B.createMediaStreamSource(y);f.current=M;let S=B.createScriptProcessor(4096,1,1);g.current=S,S.onaudioprocess=E=>{if(d.current?.readyState!==WebSocket.OPEN)return;let I=E.inputBuffer.getChannelData(0),C=0;for(let P=0;P<I.length;P+=1)C+=I[P]*I[P];if(Math.sqrt(C/I.length)>n)u.current=Date.now();else if(Date.now()-u.current>r&&!h.current){k();return}let T=new Int16Array(I.length);for(let P=0;P<I.length;P+=1){let A=Math.max(-1,Math.min(1,I[P]));T[P]=A<0?A*32768:A*32767;}d.current.send(T.buffer);},M.connect(S),S.connect(B.destination);}catch{o?.("Cannot access microphone"),p();}}},[p,i,n,t,o,e,r,k,a]);return useEffect(()=>p,[p]),{isRecording:i,startRecording:m,stopRecording:k}}var ig=createContext(null);function nS(e){if(!e||!(e instanceof HTMLElement))return false;let t=e.tagName;return !!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable||e.closest('[data-voice-hotkey-ignore="true"]'))}function iS({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:a,longPressMs:r=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:s=true,wsUrl:d,silenceThresholdMs:l,minVolumeRms:c}){let[g,f]=useState(false),[u,h]=useState(false),w=useRef(null),p=useRef(false),k=useRef(false),m=useCallback(()=>{k.current=false,f(false);},[]),{isRecording:y,startRecording:b,stopRecording:v}=as({wsUrl:d,silenceThresholdMs:l,minVolumeRms:c,onTextUpdate:E=>{o?.(E);},onComplete:async E=>{try{E.trim()&&(h(!0),await t(E.trim()));}catch(I){let C=I instanceof Error?I.message:"Failed to process voice command";a?.(C);}finally{h(!1),m();}},onError:E=>{a?.(E),h(!1),p.current||m();}}),B=useCallback(async()=>{k.current=false,await b();},[b]),M=useCallback(()=>{v();},[v]);useEffect(()=>{if(n)return;let E=C=>{C.isComposing||(C.code==="Space"||C.key===" ")&&(p.current||C.repeat||i&&nS(document.activeElement)||(p.current=true,C.preventDefault(),w.current=setTimeout(()=>{k.current=true,f(true),b();},r)));},I=C=>{(C.code==="Space"||C.key===" ")&&(w.current&&(clearTimeout(w.current),w.current=null),p.current=false,k.current&&(C.preventDefault(),f(false),v()));};return window.addEventListener("keydown",E),window.addEventListener("keyup",I),()=>{window.removeEventListener("keydown",E),window.removeEventListener("keyup",I),w.current&&(clearTimeout(w.current),w.current=null);}},[n,i,r,b,v]);let S=useMemo(()=>({isRecording:y,isHotkeyRecording:g,isSubmitting:u,startRecording:B,stopRecording:M}),[g,y,u,B,M]);return jsxs(ig.Provider,{value:S,children:[s?jsx(ad,{isRecording:g}):null,e]})}function lS(){let e=useContext(ig);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var WF=iS,$F=lS;function Le(...e){return twMerge(clsx(e))}var gS=({content:e,theme:t="light",size:o="base",defaultExpanded:a=false})=>{let[r,n]=useState(a),i=useMemo(()=>`${(o==="sm"?14:o==="lg"?18:16)-2}px`,[o]);return jsxs("div",{className:`my-6 rounded-lg overflow-hidden transition-all duration-200 ${t==="dark"?"bg-gray-800":"bg-white"}`,style:{border:`0.5px solid ${t==="dark"?"#4b5563":"#d1d5db"}`},children:[jsxs("div",{className:`px-4 py-3 cursor-pointer flex items-center justify-between transition-colors duration-200 ${t==="dark"?"bg-gray-700 hover:bg-gray-650":"bg-gray-50 hover:bg-gray-100"}`,style:{borderBottom:`0.5px solid ${t==="dark"?"#4b5563":"#e5e7eb"}`},onClick:()=>n(!r),children:[jsxs("span",{className:"flex items-center",children:[jsx("span",{className:"mr-2",children:"\u{1F914}"}),jsx("span",{className:`font-medium ${t==="dark"?"text-gray-300":"text-gray-700"}`,style:{fontSize:o==="sm"?"14px":o==="lg"?"18px":"16px"},children:"\u601D\u8003\u8FC7\u7A0B"})]}),jsx("svg",{className:`w-4 h-4 transition-transform duration-200 ${r?"rotate-180":""} ${t==="dark"?"text-gray-400":"text-gray-500"}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),r&&jsx("div",{className:`p-4 whitespace-pre-wrap italic font-light ${t==="dark"?"text-gray-400":"text-gray-600"}`,style:{fontSize:i,lineHeight:"1.3 !important"},children:e})]})},lg=gS;var kS=({content:e,language:t="text",isStreaming:o=false,className:a=""})=>{let{theme:r}=useTheme$2(),[n,i]=useState(false),s=async()=>{try{await navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3);}catch(l){console.error("\u590D\u5236\u5931\u8D25:",l);}},d=r==="dark"?oneDark:oneLight;return jsxs("div",{className:Le("rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 my-4",a),children:[jsxs("div",{className:"flex items-center justify-between px-4 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700",children:[jsx("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 uppercase",children:t}),jsx("button",{onClick:s,className:"p-1 hover:bg-gray-200 dark:hover:bg-gray-700 rounded transition-colors",disabled:o,title:n?"Copied":"Copy code",children:n?jsx(Check,{size:14,className:"text-green-500"}):jsx(Clipboard,{size:14,className:"text-gray-500 dark:text-gray-400"})})]}),jsx("div",{className:"text-sm",children:jsx(Prism,{language:t,style:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:r==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},cg=kS;var PS=({content:e,isLoading:t,className:o="",style:a})=>{let r=useRef(null),[n,i]=useState(false),[s,d]=useState(null),{theme:l}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!r.current)){i(true),d(null);try{pg.initialize({startOnLoad:!1,theme:l==="dark"?"dark":"default",securityLevel:"loose",fontFamily:"inherit"});let f=`mermaid-${Math.random().toString(36).substr(2,9)}`,u=e.replace(/```mermaid\n?|\n?```/g,"").trim(),{svg:h}=await pg.render(f,u);r.current&&(r.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),d(f instanceof Error?f.message:"Render failed"),r.current&&(r.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,l]),t||n?jsx("div",{className:`mermaid-block loading ${o}`,style:a,children:jsxs("div",{className:"flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700",children:[jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-500 mr-2"}),jsx("span",{className:"text-sm text-gray-500",children:"Generating Diagram..."})]})}):s?jsxs("div",{className:"p-4 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded text-red-600 dark:text-red-400 text-sm overflow-auto",children:[jsx("p",{className:"font-semibold mb-2",children:"Mermaid Error:"}),jsx("pre",{children:s}),jsx("pre",{className:"mt-4 text-xs text-gray-500",children:e})]}):jsx("div",{className:`mermaid-block overflow-x-auto ${o}`,style:a,ref:r})},mg=PS;var BS=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:a,icon:r,closable:n=true,onClose:i,onRetry:s,className:d="",...l})=>{let[c,g]=useState(false),[f,u]=useState(false),h=async()=>{if(s){u(true);try{await s();}catch(w){console.error("\u91CD\u8BD5\u5931\u8D25:",w);}finally{u(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex p-4 border-l-4 border-l-red-500 bg-red-50 dark:bg-red-900/10",children:[jsx("div",{className:"flex-shrink-0 mr-3 text-red-500 mt-0.5",children:r||jsx(AlertCircle,{className:"w-5 h-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center space-x-2 mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-mono px-1.5 py-0.5 rounded bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-3 leading-relaxed",children:typeof t=="string"?jsx("p",{className:"whitespace-pre-wrap",children:t}):t}),(s||a)&&jsxs("div",{className:"flex items-center space-x-4 mt-2",children:[s&&jsxs("button",{onClick:h,disabled:f,className:"flex items-center text-xs font-medium text-red-600 dark:text-red-400 hover:text-red-700 dark:hover:text-red-300 transition-colors disabled:opacity-50",children:[jsx(RotateCw,{className:`w-3.5 h-3.5 mr-1.5 ${f?"animate-spin":""}`}),f?"\u91CD\u8BD5\u4E2D...":"\u91CD\u8BD5"]}),a&&jsxs("button",{onClick:()=>g(!c),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 transition-colors",children:[c?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),c?"\u9690\u85CF\u8BE6\u60C5":"\u67E5\u770B\u8BE6\u60C5"]})]})]}),n&&i&&jsx("button",{onClick:i,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors self-start",children:jsx(X,{className:"w-4 h-4"})})]}),a&&c&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 border-t border-gray-100 dark:border-gray-800",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto whitespace-pre-wrap p-2 bg-white dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-800",children:a})})]})},rs=BS;var VS=({title:e="\u8B66\u544A",content:t,warningType:o,severity:a="warning",warnings:r=[],icon:n,closable:i=true,onClose:s,onConfirm:d,actionText:l,className:c="",...g})=>{let f=()=>{switch(a){case "info":return {borderLeftColor:"border-l-blue-500",iconColor:"text-blue-500",bgColor:"bg-blue-50 dark:bg-blue-900/10"};case "error":return {borderLeftColor:"border-l-red-500",iconColor:"text-red-500",bgColor:"bg-red-50 dark:bg-red-900/10"};case "success":return {borderLeftColor:"border-l-green-500",iconColor:"text-green-500",bgColor:"bg-green-50 dark:bg-green-900/10"};default:return {borderLeftColor:"border-l-yellow-500",iconColor:"text-yellow-500",bgColor:"bg-yellow-50 dark:bg-yellow-900/10"}}},u=()=>{switch(a){case "info":return jsx(Info,{className:"w-5 h-5"});case "error":return jsx(XCircle,{className:"w-5 h-5"});case "success":return jsx(CheckCircle,{className:"w-5 h-5"});default:return jsx(AlertTriangle,{className:"w-5 h-5"})}},h=f();return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${c}`,...g,children:[jsxs("div",{className:`flex p-4 border-l-4 ${h.borderLeftColor} ${h.bgColor}`,children:[jsx("div",{className:`flex-shrink-0 mr-3 ${h.iconColor}`,children:n||u()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-2",children:t}),r&&r.length>0&&jsx("ul",{className:"mt-2 space-y-1",children:r.map((w,p)=>jsxs("li",{className:"flex items-start text-sm text-gray-600 dark:text-gray-300",children:[jsx("span",{className:"mr-2 mt-1.5 w-1 h-1 rounded-full bg-gray-400 dark:bg-gray-500 flex-shrink-0"}),jsx("span",{children:w})]},p))})]}),i&&s&&jsx("button",{onClick:s,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",children:jsx(X,{className:"w-4 h-4"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:l||"\u786E\u8BA4"})})]})},ns=VS;var $S=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:a,maxDisplay:r=5,icon:n,closable:i=false,onClose:s,className:d="",...l})=>{let[c,g]=useState(false),[f,u]=useState(""),[h,w]=useState(false),p=useMemo(()=>f.trim()?o.filter(y=>y.toLowerCase().includes(f.toLowerCase())):o,[o,f]),k=useMemo(()=>c?p:p.slice(0,r),[p,c,r]),m=y=>{a?.(y);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/30 dark:bg-blue-900/10",children:[jsxs("div",{className:"flex items-center space-x-2.5",children:[jsx("div",{className:"text-blue-500 flex-shrink-0",children:n||jsx(Lightbulb,{className:"w-5 h-5"})}),jsxs("div",{className:"flex flex-col",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 leading-tight",children:e}),t&&jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]})]}),jsxs("div",{className:"flex items-center space-x-1",children:[o.length>3&&jsx("button",{onClick:()=>w(!h),className:`p-1.5 rounded-md transition-colors ${h?"bg-blue-100 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400":"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800"}`,title:h?"\u5173\u95ED\u641C\u7D22":"\u641C\u7D22\u95EE\u9898",children:jsx(Search,{className:"w-4 h-4"})}),i&&s&&jsx("button",{onClick:s,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"\u5173\u95ED",children:jsx(X,{className:"w-4 h-4"})})]})]}),h&&jsx("div",{className:"px-4 py-2 border-b border-gray-100 dark:border-gray-800 bg-gray-50 dark:bg-gray-900/50",children:jsxs("div",{className:"relative",children:[jsx("input",{type:"text",placeholder:"\u641C\u7D22\u76F8\u5173\u95EE\u9898...",value:f,onChange:y=>u(y.target.value),className:"w-full text-sm px-3 py-1.5 pl-8 rounded border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 focus:ring-1 focus:ring-blue-500 focus:border-blue-500 outline-none transition-shadow",autoFocus:true}),jsx(Search,{className:"absolute left-2.5 top-2 w-3.5 h-3.5 text-gray-400"})]})}),jsxs("div",{className:"p-2",children:[jsx("ul",{className:"space-y-1",children:k.map((y,b)=>jsx("li",{children:jsxs("button",{onClick:()=>m(y),className:"w-full text-left px-3 py-2 rounded-md text-sm text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800 hover:text-blue-600 dark:hover:text-blue-400 transition-colors group flex items-start justify-between",children:[jsx("span",{children:y}),jsx(ChevronRight,{className:"w-4 h-4 text-gray-300 group-hover:text-blue-400 opacity-0 group-hover:opacity-100 transition-all transform group-hover:translate-x-0.5"})]})},b))}),p.length>r&&jsx("button",{onClick:()=>g(!c),className:"w-full text-center py-2 text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors border-t border-gray-50 dark:border-gray-800/50 mt-1",children:c?"\u6536\u8D77":`\u67E5\u770B\u5168\u90E8 (${p.length})`}),p.length===0&&f&&jsx("div",{className:"text-center py-4 text-sm text-gray-500 dark:text-gray-400",children:"\u6CA1\u6709\u627E\u5230\u5339\u914D\u7684\u5EFA\u8BAE"})]})]})},is=$S;var ZS=({title:e,content:t,toolName:o,parameters:a,result:r,status:n,duration:i,icon:s,closable:d=false,onClose:l,onAction:c,actionText:g,className:f="",...u})=>{let[h,w]=useState(false),[p,k]=useState(true),m=()=>{switch(n){case "pending":return {iconColor:"text-blue-500",badgeBg:"bg-blue-50 dark:bg-blue-900/30",badgeText:"text-blue-600 dark:text-blue-400",label:"\u6267\u884C\u4E2D"};case "error":return {iconColor:"text-red-500",badgeBg:"bg-red-50 dark:bg-red-900/30",badgeText:"text-red-600 dark:text-red-400",label:"\u5931\u8D25"};default:return {iconColor:"text-green-500",badgeBg:"bg-green-50 dark:bg-green-900/30",badgeText:"text-green-600 dark:text-green-400",label:"\u6210\u529F"}}},y=()=>{switch(n){case "pending":return jsx(Loader2,{className:"w-5 h-5 animate-spin"});case "error":return jsx(XCircle,{className:"w-5 h-5"});default:return jsx(CheckCircle,{className:"w-5 h-5"})}},b=M=>M?M<1e3?`${M}ms`:`${(M/1e3).toFixed(2)}s`:"",v=m(),B=e||o||"\u5DE5\u5177\u8C03\u7528";return jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${f}`,...u,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsxs("div",{className:"flex items-center space-x-3",children:[jsx("div",{className:`flex-shrink-0 ${v.iconColor}`,children:s||y()}),jsxs("div",{children:[jsxs("div",{className:"flex items-center space-x-2",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:B}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${v.badgeBg} ${v.badgeText}`,children:v.label})]}),o&&e&&jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400 flex items-center mt-0.5",children:[jsx(Terminal,{className:"w-3 h-3 mr-1"}),o]})]})]}),jsxs("div",{className:"flex items-center space-x-2 text-xs text-gray-500 dark:text-gray-400",children:[i&&jsxs("div",{className:"flex items-center bg-gray-100 dark:bg-gray-800 px-2 py-1 rounded",children:[jsx(Clock,{className:"w-3 h-3 mr-1"}),b(i)]}),d&&l&&jsx("button",{onClick:l,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors p-1 rounded",children:jsx(X,{className:"w-4 h-4"})})]})]}),jsxs("div",{className:"p-4",children:[t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-4 leading-relaxed",children:t}),a&&jsxs("div",{className:"mb-3",children:[jsxs("button",{onClick:()=>w(!h),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[h?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Box$1,{className:"w-3.5 h-3.5 mr-1.5"}),"\u8F93\u5165\u53C2\u6570"]}),h&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:JSON.stringify(a,null,2)})})]}),r&&jsxs("div",{children:[jsxs("button",{onClick:()=>k(!p),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[p?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Terminal,{className:"w-3.5 h-3.5 mr-1.5"}),"\u6267\u884C\u7ED3\u679C"]}),p&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:typeof r=="string"?r:JSON.stringify(r,null,2)})})]}),c&&jsx("div",{className:"mt-3 pt-3 border-t border-gray-100 dark:border-gray-800 flex justify-end",children:jsx("button",{onClick:c,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:g||"\u6267\u884C\u64CD\u4F5C"})})]})]})},ls=ZS;var YS=({data:e})=>{if(!e)return null;let t=useMemo(()=>{let o=[],a=[],r="\u6570\u636E\u8868\u683C";return Array.isArray(e)?(o=e,o.length>0&&(a=Object.keys(o[0]).map(n=>({id:n,label:n.charAt(0).toUpperCase()+n.slice(1),numeric:typeof o[0][n]=="number"})))):typeof e=="object"&&(r=e.title||r,o=Array.isArray(e.rows)?e.rows:Array.isArray(e.data)?e.data:[],Array.isArray(e.columns)?a=e.columns.map(i=>({id:i.key||i.id,label:i.title||i.label,numeric:i.dataType==="number"||i.numeric})):o.length>0&&(a=Object.keys(o[0]).map(i=>({id:i,label:i,numeric:typeof o[0][i]=="number"})))),o=o.map((n,i)=>({...n,id:n.id||`row_${i}`})),{title:r,columns:a,rows:o}},[e]);return t.rows.length===0?jsx("div",{className:"w-full my-4 p-4 border border-dashed border-gray-300 rounded text-center text-gray-500",children:"\u6682\u65E0\u8868\u683C\u6570\u636E"}):jsx("div",{className:"w-full my-4",children:jsx(Ua,{appId:"agent-ui-table-card",title:t.title,columns:t.columns,rows:t.rows,count:t.rows.length,rowKey:"id",fitContainer:false,maxHeight:"500px",rowsPerPage:10,rowsPerPageOptions:[5,10,20,50]})})},ss=YS;var iw=({title:e,subtitle:t,data:o,type:a,config:r={}})=>{let n=()=>{switch(a){case "bar-chart-card":return jsx(BarChart,{className:"w-4 h-4 text-blue-500"});case "line-chart-card":return jsx(LineChart,{className:"w-4 h-4 text-green-500"});case "pie-chart-card":return jsx(PieChart,{className:"w-4 h-4 text-purple-500"});case "combo-chart-card":return jsx(Activity,{className:"w-4 h-4 text-orange-500"});case "heatmap-chart-card":return jsx(Grid$1,{className:"w-4 h-4 text-red-500"});case "fishbone-chart-card":return jsx(GitBranch,{className:"w-4 h-4 text-indigo-500"});case "waterfall-chart-card":return jsx(TrendingDown,{className:"w-4 h-4 text-teal-500"});case "google-map-card":return jsx(Globe,{className:"w-4 h-4 text-blue-600"});case "amap-card":return jsx(MapPin,{className:"w-4 h-4 text-blue-600"});default:return jsx(BarChart,{className:"w-4 h-4"})}},i=()=>{if(!o&&a!=="google-map-card"&&a!=="amap-card")return jsx("div",{className:"text-gray-500 text-sm p-4 text-center",children:"No data available"});try{switch(a){case "bar-chart-card":return jsx(On,{data:o,orientation:r.orientation||"horizontal",valueSuffix:r.valueSuffix||"",minHeight:r.minHeight});case "line-chart-card":return jsx(cp,{data:o,color:r.color,valueSuffix:r.valueSuffix||"",height:r.height});case "pie-chart-card":let s=o.reduce((l,c)=>l+(Number(c.value)||0),0),d=o.map(l=>({name:l.name,value:Number(l.value)||0,percent:typeof l.percent=="number"?l.percent:s>0?(Number(l.value)||0)/s*100:0}));return jsx(Ki,{data:d,variant:r.variant||"donut",size:r.size,colors:r.colors});case "combo-chart-card":return jsx(dp,{data:o,barColor:r.barColor,lineColor:r.lineColor});case "heatmap-chart-card":return jsx(up,{data:o});case "fishbone-chart-card":return jsx(gp,{branches:o,effect:r.effect||e||"Problem"});case "waterfall-chart-card":return jsx(hp,{data:o,height:r.height});case "google-map-card":return jsx(xp,{embedUrl:r.embedUrl||o&&o[0]?.embedUrl,apiKey:r.apiKey,query:r.query||o&&o[0]?.query||e,height:r.height});case "amap-card":return jsx(Sp,{embedUrl:r.embedUrl||o&&o[0]?.embedUrl,keyword:r.keyword||o&&o[0]?.keyword||e,height:r.height});default:return jsxs("div",{className:"text-gray-500 text-sm p-4 text-center",children:["Unsupported chart type: ",a]})}}catch(s){return console.error("Error rendering chart:",s),jsx("div",{className:"text-red-500 text-sm p-4 text-center",children:"Error rendering chart"})}};return jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsx("div",{className:"mr-2 flex-shrink-0",children:n()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 truncate",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5 truncate",children:t})]})]}),jsxs("div",{className:"p-4",children:[jsx("div",{className:"overflow-x-auto",children:i()}),jsx("div",{className:"mt-3",children:jsxs("details",{className:"text-xs text-gray-500 dark:text-gray-400",children:[jsx("summary",{className:"cursor-pointer hover:text-gray-700 dark:hover:text-gray-300 transition-colors select-none font-medium opacity-60 hover:opacity-100",children:"View Raw Data"}),jsx("pre",{className:"mt-2 p-2 bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto max-h-40",children:JSON.stringify(o,null,2)})]})})]})]})},cs=iw;var sw=({type:e,manifest:t})=>jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/50 dark:bg-blue-900/10",children:[jsx(Box$1,{className:"w-4 h-4 mr-2 text-blue-600 dark:text-blue-400"}),jsxs("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:["SAP Card: ",e]})]}),jsx("div",{className:"p-4",children:jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 whitespace-pre-wrap",children:JSON.stringify(t,null,2)})})})]}),ps=sw;var us=e=>{let t;try{t=JSON.parse(e);}catch{return null}return t&&typeof t=="object"&&((t.type==="bar-chart-card"||t.type==="line-chart-card"||t.type==="pie-chart-card"||t.type==="combo-chart-card"||t.type==="heatmap-chart-card"||t.type==="fishbone-chart-card"||t.type==="waterfall-chart-card"||t.type==="google-map-card"||t.type==="amap-card")&&t.title||(t.type==="sap-analytical-card"||t.type==="sap-list-card"||t.type==="sap-object-card"||t.type==="sap-component-card")&&t.manifest||t.type==="error-card"||t.type==="warning-card"||t.type==="suggestions-card"||t.type==="tool-result-card"||t.type==="table"&&t.data)?t:null};var gw=({content:e,theme:t,size:o="base",className:a,enableCodeHighlight:r=true,enableMermaid:n=true,messageId:i,cardHooks:s})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,u)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(u.trim())}"></div>`):"",[e]),l=(f,u,h,w,p)=>{s?.onCardEvent?.({messageId:i,cardType:f,action:u,title:h,payload:w,rawData:p});},c=(f,u,h,w,p,k)=>{if(!(!p&&!s?.onCardEvent))return (...m)=>{let y=p?.(...m),b=k?k(...m):void 0;return l(f,u,h,b,w),y}},g=useMemo(()=>({div(f){let{"data-component":u,"data-think-content":h,...w}=f;return u==="thinkbox"&&h?jsx(lg,{content:decodeURIComponent(h),theme:t,size:o,defaultExpanded:false}):jsx("div",{...w})},table({children:f}){return jsx("div",{className:"my-4 w-full overflow-x-auto rounded-lg border border-gray-200 dark:border-gray-800",children:jsx("table",{className:"w-full min-w-[520px] border-collapse text-sm",children:f})})},thead({children:f}){return jsx("thead",{className:"bg-gray-50 dark:bg-gray-900/60",children:f})},tbody({children:f}){return jsx("tbody",{className:"bg-white dark:bg-gray-950",children:f})},tr({children:f}){return jsx("tr",{className:"border-b border-gray-200 dark:border-gray-800 last:border-b-0",children:f})},th({children:f,align:u}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${u==="center"?"text-center":u==="right"?"text-right":"text-left"}`,children:f})},td({children:f,align:u}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${u==="center"?"text-center":u==="right"?"text-right":"text-left"}`,children:f})},code({inline:f,className:u,children:h,...w}){let p=/language-([\w-]+)/.exec(u||""),k=p?p[1]:"";if(f)return jsx("code",{className:"font-mono text-sm bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded text-red-600 dark:text-red-400",...w,children:h});let m=String(h).replace(/\n$/,"");if(n&&k==="mermaid")return jsx(mg,{content:m});if(k==="json"){let y=us(m);if(y)switch(y.type){case "table":return jsx(ss,{data:y.data});case "bar-chart-card":case "line-chart-card":case "pie-chart-card":case "combo-chart-card":case "heatmap-chart-card":case "fishbone-chart-card":case "waterfall-chart-card":case "google-map-card":case "amap-card":return jsx(cs,{...y});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ps,{...y});case "error-card":{let b=y;return jsx(rs,{...b,onClose:c("error-card","close",b.title,b,b.onClose),onRetry:c("error-card","retry",b.title,b,b.onRetry)})}case "warning-card":{let b=y,v=b.onConfirm?c("warning-card","confirm",b.title,b,b.onConfirm):b.actionText&&s?.onCardEvent?c("warning-card","confirm",b.title,b):void 0;return jsx(ns,{...b,onClose:c("warning-card","close",b.title,b,b.onClose),onConfirm:v})}case "suggestions-card":{let b=y;return jsx(is,{...b,onClose:c("suggestions-card","close",b.title,b,b.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",b.title,b,b.onSuggestionClick,v=>({suggestion:v}))})}case "tool-result-card":{let b=y;return jsx(ls,{...b,onClose:c("tool-result-card","close",b.title,b,b.onClose),onAction:c("tool-result-card","action",b.title,b,b.onAction)})}}}return r?jsx(cg,{content:m,language:k,className:"not-prose"}):jsx("code",{className:u,...w,children:h})}}),[t,o,n,r,s,i]);return jsx("div",{className:Le("markdown-body prose dark:prose-invert max-w-none",a),children:jsx(cw,{remarkPlugins:[dw,pw],rehypePlugins:[uw,mw],components:g,children:d})})},ms=gw;var fw=({content:e,messageId:t,cardHooks:o})=>{let a=(i,s,d,l,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:s,title:d,payload:l,rawData:c});},r=(i,s,d,l,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let u=c?.(...f),h=g?g(...f):void 0;return a(i,s,d,h,l),u}},n=us(e);if(n)switch(n.type){case "table":return jsx(ss,{data:n.data});case "bar-chart-card":case "line-chart-card":case "pie-chart-card":case "combo-chart-card":case "heatmap-chart-card":case "fishbone-chart-card":case "waterfall-chart-card":case "google-map-card":case "amap-card":return jsx(cs,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(ps,{...n});case "error-card":{let i=n;return jsx(rs,{...i,onClose:r("error-card","close",i.title,i,i.onClose),onRetry:r("error-card","retry",i.title,i,i.onRetry)})}case "warning-card":{let i=n,s=i.onConfirm?r("warning-card","confirm",i.title,i,i.onConfirm):i.actionText&&o?.onCardEvent?r("warning-card","confirm",i.title,i):void 0;return jsx(ns,{...i,onClose:r("warning-card","close",i.title,i,i.onClose),onConfirm:s})}case "suggestions-card":{let i=n;return jsx(is,{...i,onClose:r("suggestions-card","close",i.title,i,i.onClose),onSuggestionClick:r("suggestions-card","suggestion-click",i.title,i,i.onSuggestionClick,s=>({suggestion:s}))})}case "tool-result-card":{let i=n;return jsx(ls,{...i,onClose:r("tool-result-card","close",i.title,i,i.onClose),onAction:r("tool-result-card","action",i.title,i,i.onAction)})}}return jsx("div",{className:"dynamic-card-fallback",children:jsx(ms,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},Sg=fw;var ud=class{static analyze(t){if(!t.trim())return {blocks:[],hasComplexContent:false,overallType:"simple"};let a=/```json\s*\{\s*"type":\s*"[^"]+"/g.test(t),r=/<[^>]+>[\s\S]*?<\/[^>]+>/.test(t),n=t.includes("NQ#")||t.includes("data-component");return a||r||n?{blocks:[{type:"mixed",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:true,overallType:"complex"}:{blocks:[{type:"markdown",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:false,overallType:"simple"}}},yw=({content:e,className:t="",messageId:o,cardHooks:a})=>{let r=St__default.useMemo(()=>ud.analyze(e),[e]);return jsx("div",{className:`universal-content-renderer ${t}`,children:r.blocks.map((n,i)=>n.type==="mixed"||n.type==="json-card"?jsx(Sg,{content:n.content,messageId:o,cardHooks:a},`block-${i}`):jsx(ms,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:a},`block-${i}`))})},wg=yw;var bw=({content:e,isStreaming:t=true,onComplete:o,className:a="",streamIntervalMs:r=24,streamChunkSize:n=3,messageId:i,cardHooks:s})=>{let[d,l]=useState(t?0:e.length),[c,g]=useState(!t);useEffect(()=>{if(t){l(0),g(false);return}l(e.length),g(true);},[e,t]),useEffect(()=>{if(!t||c)return;if(d>=e.length){g(true),o?.();return}let p=window.setTimeout(()=>{l(k=>Math.min(k+n,e.length));},r);return ()=>{window.clearTimeout(p);}},[e.length,c,t,o,n,r,d]);let f=()=>{t&&!c&&(l(e.length),g(true),o?.());},u=t?e.slice(0,d):e,h=t&&!c,w=t&&!c;return jsxs("div",{className:`streaming-markdown ${a}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(wg,{content:u,messageId:i,cardHooks:s}),h&&jsx("span",{className:"inline-block w-0.5 h-5 bg-blue-500 ml-1 animate-pulse",style:{verticalAlign:"text-bottom"}})]}),w&&jsx("div",{className:"streaming-hint",style:{fontSize:"9px",color:"#999",marginTop:"8px",fontStyle:"italic",opacity:.7},children:"\u70B9\u51FB\u6B64\u5904\u663E\u793A\u5B8C\u6574\u5185\u5BB9"})]})},Rg=bw;var Dg=({buttons:e,className:t})=>{let o=a=>{switch(a){case "copy":return jsx(Copy,{size:14});case "refresh":return jsx(RefreshCw,{size:14});case "volume":return jsx(Volume2,{size:14});case "like":return jsx(ThumbsUp,{size:14});case "dislike":return jsx(ThumbsDown,{size:14});default:return null}};return jsx("div",{className:Le("flex items-center gap-1",t),children:e.map((a,r)=>jsx("button",{onClick:a.onClick,disabled:a.disabled,className:Le("p-1.5 rounded-md transition-colors","text-gray-500 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100","hover:bg-gray-100 dark:hover:bg-gray-800","disabled:opacity-50 disabled:cursor-not-allowed",a.active&&"text-blue-600 bg-blue-50 dark:text-blue-400 dark:bg-blue-900/20",a.type==="refresh"&&a.disabled&&"animate-spin"),title:a.type,type:"button",children:o(a.type)},`${a.type}-${r}`))})};var gs=({message:e,onStreamingComplete:t,assistantActions:o,streamIntervalMs:a,streamChunkSize:r,cardHooks:n})=>e.type==="assistant"?jsx("div",{className:"flex justify-start mb-4",children:jsxs("div",{className:"w-full bg-transparent text-black dark:text-gray-100 rounded-2xl px-4 py-3 mr-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx(Rg,{content:e.content,isStreaming:e.isStreaming??false,onComplete:t,streamIntervalMs:a,streamChunkSize:r,messageId:e.id,cardHooks:n}),e.content&&o?.isLatestAssistant&&jsx("div",{className:"flex flex-row justify-start gap-2 mt-3 pt-2 border-t border-gray-100 dark:border-gray-700",children:jsx(Dg,{buttons:[{type:"refresh",onClick:()=>o?.onRegenerate?.(),disabled:!o?.onRegenerate},{type:"copy",onClick:()=>navigator.clipboard.writeText(e.content),disabled:false},{type:"volume",onClick:()=>console.log("\u8BED\u97F3\u64AD\u653E"),disabled:false},{type:"like",onClick:()=>console.log("\u70B9\u8D5E"),disabled:false},{type:"dislike",onClick:()=>console.log("\u70B9\u8E29"),disabled:false}],size:"sm",variant:"default"})}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})}):jsx("div",{className:"flex justify-end",children:jsxs("div",{className:"max-w-[80%] bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-100 rounded-2xl px-4 py-3 ml-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx("div",{className:"whitespace-pre-wrap",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:e.content}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})});var Ag=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:a,className:r})=>{let{isRecording:n,startRecording:i,stopRecording:s}=as({onTextUpdate:e,onComplete:l=>{t?.(l);},onError:l=>{console.error("Voice input error:",l),o?.();}});return jsx("button",{onClick:async()=>{n?s():await i();},disabled:a,className:Le("transition-all duration-200 flex items-center justify-center rounded-full",n?"bg-red-100 text-red-600 hover:bg-red-200 animate-pulse":"bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 active:scale-95",a&&"opacity-50 cursor-not-allowed",r),title:n?"Stop recording":"Start recording",type:"button",children:n?jsx(Tw,{sx:{fontSize:24}}):jsx(ww,{sx:{fontSize:24}})})};var wt={container:"w-full max-w-4xl mx-auto",inputContainer:Le("w-full border backdrop-blur-xl transition-all duration-300 shadow-2xl flex flex-col","bg-white/80 dark:bg-gray-900/80","border-gray-200/60 dark:border-gray-600/40","shadow-gray-900/5","hover:border-blue-300/80 hover:shadow-blue-500/10 hover:shadow-2xl","focus-within:border-blue-400/90 focus-within:shadow-blue-500/20 focus-within:shadow-3xl focus-within:scale-[1.005] transform-gpu"),dragActive:"border-blue-500 bg-blue-50/50 dark:bg-blue-900/20",textareaWrapper:"flex-1 relative flex items-center",textarea:Le("w-full outline-none appearance-none resize-none bg-transparent border-none text-sm font-normal py-3 px-2","placeholder:text-gray-400/70 dark:placeholder:text-gray-500/60 placeholder:font-normal","text-gray-800 dark:text-gray-100 selection:bg-blue-200/50 dark:selection:bg-blue-500/30","focus:ring-0 focus:outline-none focus:border-none focus:shadow-none","min-h-[44px] max-h-[12em] overflow-y-auto scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600"),filePreviewArea:"px-6 pt-3 pb-1 flex flex-wrap gap-2",fileTag:Le("flex items-center gap-2 px-3 py-1.5 rounded-lg text-xs font-medium","bg-gray-100 dark:bg-gray-800 text-gray-700 dark:text-gray-300","border border-gray-200 dark:border-gray-700","transition-all hover:bg-gray-200 dark:hover:bg-gray-700"),buttonBase:"flex items-center justify-center transition-all duration-200 rounded-full",buttonSmall:"w-10 h-10",buttonNormal:Le("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:Le("cursor-pointer bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 shadow-none active:scale-95"),sendButtonDisabled:Le("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:Le("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},Ew={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},Fw=({enabled:e,onClick:t})=>jsx("button",{className:Le(wt.buttonBase,wt.buttonSmall,wt.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(Aw,{sx:{fontSize:24}})}),Lw=()=>jsxs("button",{className:Le(wt.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",wt.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(Bw,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),zw=({canSend:e,isResponding:t,onSend:o,onStop:a})=>t?jsx("button",{className:Le(wt.buttonBase,wt.buttonSmall,wt.stopButton),onClick:a,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:Le(wt.buttonBase,wt.buttonSmall,e?wt.sendButton:wt.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(Mw,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),Bg=({onSend:e,onStop:t,isResponding:o=false,placeholder:a,getText:r})=>{let[n,i]=useState(""),[s,d]=useState([]),[l,c]=useState(false),[g,f]=useState(false),u=useRef(null),h=a||(r?r("00019","Type a message..."):"Type a message..."),w=(n.trim().length>0||s.length>0)&&!o,p={enabled:true},k=useCallback(A=>{i(A.target.value),A.target.style.height="auto",A.target.style.height=`${Math.min(A.target.scrollHeight,200)}px`;},[]),m=useCallback(A=>{if(A.target.files&&A.target.files.length>0){let W=Array.from(A.target.files);d(z=>{let Q=W.filter(ne=>z.some(ae=>ae.name===ne.name&&ae.size===ne.size));Q.length>0&&console.warn("Duplicate files ignored:",Q.map(ne=>ne.name));let re=W.filter(ne=>!z.some(ae=>ae.name===ne.name&&ae.size===ne.size));return [...z,...re]}),u.current&&(u.current.value="");}},[]),y=useCallback(A=>{d(W=>W.filter((z,Q)=>Q!==A));},[]),b=useCallback(()=>{u.current?.click();},[]),v=useCallback(async()=>{if(!w)return;let A=n,W=[...s];i(""),d([]),u.current&&(u.current.value="");try{await e(A,W);}catch(z){console.error("Failed to send message:",z),i(A),d(W);}},[n,w,e,s]),B=useCallback(A=>{A.key==="Enter"&&!A.shiftKey&&!l&&(A.preventDefault(),v());},[v,l]),M=useCallback(()=>{c(true);},[]),S=useCallback(()=>{c(false);},[]),E=useCallback(A=>{i(A);},[]),I=useCallback(A=>{i(A);},[]),C=useCallback(()=>{},[]),D=useCallback(A=>{A.preventDefault(),f(true);},[]),T=useCallback(A=>{A.preventDefault(),f(false);},[]),P=useCallback(A=>{if(A.preventDefault(),f(false),A.dataTransfer.files&&A.dataTransfer.files.length>0){let W=Array.from(A.dataTransfer.files);d(z=>[...z,...W]);}},[]);return jsx("div",{className:wt.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:u,onChange:m}),jsxs("div",{className:Le(wt.inputContainer,g&&wt.dragActive),style:{borderRadius:"32px"},onDragOver:D,onDragLeave:T,onDrop:P,children:[s.length>0&&jsx("div",{className:wt.filePreviewArea,children:s.map((A,W)=>jsxs("div",{className:wt.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:A.name}),jsx("button",{onClick:()=>y(W),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${A.name}-${W}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:Le(wt.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:Le(wt.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:k,onKeyDown:B,onCompositionStart:M,onCompositionEnd:S,style:Ew,"aria-label":"Message input",spellCheck:false,rows:1})}),jsxs("div",{className:"flex items-center justify-between px-1 pb-1",children:[jsxs("div",{className:"flex items-center gap-1",role:"toolbar","aria-label":"Input tools",children:[jsx(Fw,{enabled:p.enabled,onClick:b}),jsx(Lw,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(Ag,{onTextUpdate:E,onComplete:I,onCancel:C,disabled:o,className:wt.buttonSmall}),jsx(zw,{canSend:w,isResponding:o,onSend:v,onStop:t})]})]})]})]})]})})};var Lg=({messages:e,onSend:t,onStop:o,onRegenerate:a,isResponding:r=false,className:n,placeholder:i,streamIntervalMs:s,streamChunkSize:d,onMessageStreamingComplete:l,cardHooks:c,showInput:g=true})=>{let f=useRef(null),u=useRef(e.length);return useEffect(()=>{e.length>u.current&&f.current?.scrollIntoView({behavior:"smooth"}),u.current=e.length;},[e]),jsxs("div",{className:Le("flex flex-col h-full w-full relative",n),children:[jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 space-y-6 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((h,w)=>{let p=h.type==="assistant"&&w===e.length-1,k=h.type==="assistant"?{isLatestAssistant:p,onRegenerate:a?()=>a(h.id):void 0}:void 0;return jsx(gs,{message:h,assistantActions:k,onStreamingComplete:()=>l?.(h.id),streamIntervalMs:s,streamChunkSize:d,cardHooks:c},h.id)}),jsx("div",{ref:f})]}),g&&jsx("div",{className:"p-4 bg-gradient-to-t from-white via-white to-transparent dark:from-gray-900 dark:via-gray-900 pb-8 z-10",children:jsx(Bg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:r,placeholder:i})})]})};var So={};var Ow={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},mN=({title:e="AI Agent",description:t,headerActions:o,className:a,agentStatus:r,showInput:n=false,...i})=>{let s=r??(i.isResponding?"running":"idle");return jsxs("div",{className:Le("relative flex h-full w-full",So.agentPanel,a),"data-status":s,children:[jsx("div",{className:So.colorHalo,"data-status":s,"aria-hidden":"true"}),jsxs("div",{className:So.marqueeBorder,"data-status":s,"aria-hidden":"true",children:[jsx("span",{className:Le(So.edge,So.top)}),jsx("span",{className:Le(So.edge,So.right)}),jsx("span",{className:Le(So.edge,So.bottom)}),jsx("span",{className:Le(So.edge,So.left)})]}),jsxs("div",{className:"relative z-10 flex h-full w-full flex-col rounded-xl border border-slate-200/70 bg-white shadow-sm overflow-hidden dark:border-slate-800 dark:bg-gray-950",children:[jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-gray-100 dark:border-gray-800 bg-white/50 dark:bg-gray-900/50 backdrop-blur-sm z-20",children:[jsxs("div",{children:[jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsxs("div",{className:"inline-flex items-center gap-1.5 px-2 py-1 rounded-full bg-gray-100/80 dark:bg-gray-800/70",children:[jsx("span",{className:So.statusDot,"data-status":s}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:Ow[s]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(Lg,{...i,showInput:n})})]})]})};var Uw={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},CN=({messages:e,onSend:t,onRegenerate:o,isResponding:a=false,className:r,placeholder:n,title:i="Copilot",corner:s="bottom-right",onCollapse:d,onHeaderPointerDown:l,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:u,onMessageStreamingComplete:h,cardHooks:w})=>{let[p,k]=useState(""),[m,y]=useState(false),b=useRef(null),v=Uw[s];useEffect(()=>{b.current?.scrollIntoView({behavior:"smooth"});},[e,a]);let B=useCallback(async()=>{let S=p.trim();!S||a||(k(""),await t(S));},[a,t,p]),M=useCallback(async S=>{S.key==="Enter"&&!m&&(S.preventDefault(),await B());},[B,m]);return jsxs("div",{className:Le("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",r),children:[d&&jsx("button",{onClick:d,className:Le("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",v==="top-left"&&"-left-2 -top-2",v==="top-right"&&"-right-2 -top-2",v==="bottom-left"&&"-bottom-2 -left-2",v==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:Le("block h-4 w-4 border-[#21BCFF]",v==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",v==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",v==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",v==="bottom-right"&&"rounded-br-full border-b-[3px] border-r-[3px]")})}),jsxs("div",{className:"flex items-center justify-between border-b border-gray-100 px-4 py-3 dark:border-gray-800",onPointerDown:l,children:[jsx("div",{className:"flex items-center",children:jsx("h3",{className:"text-base font-semibold tracking-tight text-gray-900 dark:text-gray-100",children:i})}),jsx("div",{})]}),jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-3 space-y-5 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((S,E)=>{let I=S.type==="assistant"&&E===e.length-1,C=S.type==="assistant"?{isLatestAssistant:I,onRegenerate:o?()=>o(S.id):void 0}:void 0;return jsx(gs,{message:S,assistantActions:C,onStreamingComplete:()=>h?.(S.id),streamIntervalMs:f,streamChunkSize:u,cardHooks:w},S.id)}),jsx("div",{ref:b})]}),jsx("div",{className:"border-t border-gray-100 px-3 py-3 dark:border-gray-800",children:jsxs("div",{className:"flex items-center gap-2 rounded-xl border border-blue-300/80 bg-white px-2 py-1.5 dark:bg-gray-900",children:[jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:c,type:"button","aria-label":"Add",children:jsx(Plus,{className:"h-4 w-4"})}),jsx("input",{className:"h-7 flex-1 border-none bg-transparent text-sm text-gray-800 outline-none placeholder:text-gray-400 dark:text-gray-100 dark:placeholder:text-gray-500",placeholder:n||"Ask Copilot...",value:p,onChange:S=>k(S.target.value),onCompositionStart:()=>y(true),onCompositionEnd:()=>y(false),onKeyDown:M,"aria-label":"Copilot input",spellCheck:false}),jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:g,type:"button","aria-label":"Microphone",children:jsx(Mic,{className:"h-4 w-4"})})]})})]})};var TN=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:a}={})=>{let[r,n]=useState(e),[i,s]=useState(false),d=useCallback(async u=>{s(true);try{await u?.();}finally{s(false);}},[]),l=useCallback(u=>d(()=>t?.(u)),[t,d]),c=useCallback(u=>d(()=>o?.(u)),[o,d]),g=useCallback(u=>d(()=>a?.(u)),[a,d]),f=useMemo(()=>({mode:r,loading:i,onModeChange:n,onLogin:l,onRegister:c,onForgotPassword:g}),[g,l,c,i,r]);return {mode:r,loading:i,setMode:n,authPageProps:f}};var fd=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var Ti=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));Ti.displayName="CPaper";var a1={productName:"ORBCAFE",headline:"Operational workbench",subheadline:"A focused entry point for reports, planning, agent workflows, and enterprise operations.",loginTitle:"Sign in",loginSubtitle:"Use your workspace account to continue.",registerTitle:"Create account",registerSubtitle:"Request a demo workspace user for evaluation.",forgotTitle:"Reset password",forgotSubtitle:"Send a password reset request to your email address."},KN=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:a,onRegister:r,onForgotPassword:n,loading:i=false,logo:s,copy:d,sx:l})=>{let c=useTheme(),g=e!==void 0,[f,u]=useState(t),h=e??f,w=useMemo(()=>({...a1,...d}),[d]),[p,k]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[m,y]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[b,v]=useState({email:""}),[B,M]=useState(""),S=P=>{g||u(P),M(""),o?.(P);},E=async P=>{P.preventDefault(),await a?.(p),M("Demo login accepted. No real authentication request was sent.");},I=async P=>{P.preventDefault(),await r?.(m),M("Demo registration saved locally for this screen.");},C=async P=>{P.preventDefault(),await n?.(b),M("Demo reset link request created. No email was sent.");},D=h==="login"?w.loginTitle:h==="register"?w.registerTitle:w.forgotTitle,T=h==="login"?w.loginSubtitle:h==="register"?w.registerSubtitle:w.forgotSubtitle;return jsxs(Box,{sx:{minHeight:"100vh",display:"grid",gridTemplateColumns:{xs:"1fr",md:"minmax(320px, 0.9fr) minmax(420px, 1.1fr)"},background:c.palette.mode==="dark"?"linear-gradient(135deg, #071018 0%, #151515 48%, #101827 100%)":"linear-gradient(135deg, #eef3f8 0%, #ffffff 52%, #e8f2f0 100%)",...l},children:[jsxs(Box,{sx:{display:{xs:"none",md:"flex"},flexDirection:"column",justifyContent:"space-between",p:{md:6,lg:8},borderRight:`1px solid ${c.palette.divider}`},children:[jsxs(Stack,{spacing:4,children:[jsx(Box,{children:s}),jsxs(Stack,{spacing:2,children:[jsx(Typography,{sx:{fontSize:14,fontWeight:700,color:"primary.main",textTransform:"uppercase"},children:w.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:w.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:w.subheadline})]})]}),jsxs(Stack,{direction:"row",spacing:2,sx:{color:"text.secondary",fontSize:13},children:[jsx(Typography,{variant:"caption",children:"Reports"}),jsx(Typography,{variant:"caption",children:"Planning"}),jsx(Typography,{variant:"caption",children:"Agent UI"})]})]}),jsx(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"center",p:{xs:2,sm:4,md:6}},children:jsx(Ti,{elevation:0,sx:{width:"100%",maxWidth:460,m:0,p:{xs:2.5,sm:4},borderRadius:3,border:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.mode==="dark"?"rgba(15, 23, 42, 0.86)":"rgba(255, 255, 255, 0.88)",backdropFilter:"blur(18px)",boxShadow:c.palette.mode==="dark"?"0 24px 80px rgba(0,0,0,0.34)":"0 24px 80px rgba(15,23,42,0.10)"},children:jsxs(Stack,{spacing:3,children:[jsxs(Stack,{spacing:1,children:[jsx(Box,{sx:{display:{xs:"block",md:"none"},mb:1},children:s}),jsx(Typography,{sx:{fontSize:28,fontWeight:800},children:D}),jsx(Typography,{sx:{color:"text.secondary"},children:T})]}),B&&jsx(Alert,{severity:"success",children:B}),h==="login"&&jsx(Box,{component:"form",onSubmit:E,children:jsxs(Stack,{spacing:2,children:[jsx(Qt,{label:"Email or user ID",value:p.username,onChange:P=>k(A=>({...A,username:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Wg,{fontSize:"small"})})}}),jsx(Qt,{label:"Password",type:"password",value:p.password,onChange:P=>k(A=>({...A,password:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(t1,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(fd,{label:"Remember me",checked:p.remember,onChange:P=>k(A=>({...A,remember:P.target.checked}))}),jsx(zo,{type:"button",variant:"text",size:"small",onClick:()=>S("forgot"),children:"Forgot?"})]}),jsx(zo,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(zo,{type:"button",variant:"text",size:"small",onClick:()=>S("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:I,children:jsxs(Stack,{spacing:2,children:[jsx(Qt,{label:"Full name",value:m.name,onChange:P=>y(A=>({...A,name:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Wg,{fontSize:"small"})})}}),jsx(Qt,{label:"Work email",type:"email",value:m.email,onChange:P=>y(A=>({...A,email:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Hg,{fontSize:"small"})})}}),jsx(Qt,{label:"Password",type:"password",value:m.password,onChange:P=>y(A=>({...A,password:P.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(o1,{fontSize:"small"})})}}),jsx(Qt,{label:"Confirm password",type:"password",value:m.confirmPassword,onChange:P=>y(A=>({...A,confirmPassword:P.target.value}))}),jsx(fd,{label:"I accept the demo workspace terms",checked:m.acceptedTerms,onChange:P=>y(A=>({...A,acceptedTerms:P.target.checked}))}),jsx(zo,{type:"submit",size:"large",disabled:i,children:"Create demo account"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["Already have an account?"," ",jsx(zo,{type:"button",variant:"text",size:"small",onClick:()=>S("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:C,children:jsxs(Stack,{spacing:2,children:[jsx(Qt,{label:"Work email",type:"email",value:b.email,onChange:P=>v({email:P.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Hg,{fontSize:"small"})})}}),jsx(zo,{type:"submit",size:"large",disabled:i,children:"Send reset request"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["Remember your password?"," ",jsx(zo,{type:"button",variant:"text",size:"small",onClick:()=>S("login"),sx:{minWidth:0,p:0},children:"Back to sign in"})]})]})}),jsx(Divider,{}),jsx(Typography,{variant:"caption",sx:{color:"text.secondary"},children:"Demo credentials: demo@orbcafe.local / orbcafe-demo"})]})})})]})};var i1={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},l1=[{id:"keyword",label:"Keyword",type:"text",placeholder:"Task/ID/Project",hasSearchIcon:true},{id:"status",label:"Status",type:"select",options:[{label:"In progress",value:"in-progress"},{label:"Blocked",value:"blocked"},{label:"Planned",value:"planned"},{label:"Not started",value:"not-started"}]},{id:"owner",label:"Owner",type:"text",placeholder:"Owner name"},{id:"workCenter",label:"Work Center",type:"text",placeholder:"CNC-02 / WH-A / ..."},{id:"dateRange",label:"Date Range",type:"date"}],$g=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:a,filterFields:r,filterAppId:n="planning-gantt-filter",filterTableKey:i="planning",columns:s,page:d,rowsPerPage:l,rowsPerPageOptions:c,count:g,onPageChange:f,onRowsPerPageChange:u,onFilterSearch:h,onFilterVariantLoad:w,enableRowReorder:p,onTaskReorder:k})=>{let[m,y]=useState(t),[b,v]=useState(o??e[0]?.id??""),[B,M]=useState({...i1,...a}),S=useMemo(()=>{let D=String(B.keyword?.value??"").trim().toLowerCase(),T=String(B.status?.value??"").trim(),P=String(B.owner?.value??"").trim().toLowerCase(),A=String(B.workCenter?.value??"").trim().toLowerCase(),W=B.dateRange?.value,z=W?.[0]?na(W[0]):null,Q=W?.[1]?na(W[1]):null;return e.filter(re=>{if(D&&![re.id,re.code,re.title,re.project,re.workCenter,re.owner?.name].join(" ").toLowerCase().includes(D)||T&&re.status!==T||P&&!String(re.owner?.name??"").toLowerCase().includes(P)||A&&!String(re.workCenter??"").toLowerCase().includes(A))return false;if(z||Q){let ne=na(re.startDate),ae=na(re.endDate),_=z?ae.isAfter(z)||ae.isSame(z,"day"):true,Ue=Q?ne.isBefore(Q)||ne.isSame(Q,"day"):true;if(!_||!Ue)return false}return true})},[B,e]);useEffect(()=>{S.length!==0&&(S.some(D=>D.id===b)||v(S[0].id));},[S,b]);let E=useCallback(D=>{v(D.id);},[]),I=useMemo(()=>({appId:n,tableKey:i,fields:r??l1,filters:B,onFilterChange:M,onVariantLoad:w??(()=>{}),onSearch:h??(()=>{})}),[n,r,i,B,h,w]),C=useMemo(()=>({tasks:S,columns:s,scale:m,onScaleChange:y,page:d,rowsPerPage:l,rowsPerPageOptions:c,count:g,onPageChange:f,onRowsPerPageChange:u,selectedTaskId:b,onTaskSelect:E,enableRowReorder:p,onTaskReorder:k}),[s,g,p,S,f,u,k,E,d,l,c,m,b]);return {scale:m,setScale:y,selectedTaskId:b,setSelectedTaskId:v,filters:B,setFilters:M,filteredTasks:S,smartFilterProps:I,planningGanttProps:C}};var JN=e=>{let t=$g(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var Gg=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var er=forwardRef(({tooltip:e,...t},o)=>{let a=jsx(IconButton,{ref:o,...t,size:t.size||"small"});return e?jsx(Tooltip,{title:e,children:a}):a});er.displayName="CIconButton";var Kg=({label:e,options:t,minWidth:o=120,...a})=>jsxs(FormControl,{fullWidth:true,size:"small",sx:{minWidth:o},children:[e&&jsx(InputLabel,{children:e}),jsx(Select,{label:e,...a,children:t.map(r=>jsx(MenuItem,{value:r.value,children:r.label},r.value))})]});na.extend(x1);var vd=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],Cd=56,Br=58,Cs=8,kd=260,z1=320,ks="0.85rem",tr="220ms cubic-bezier(0.2, 0, 0, 1)",Xg={"not-started":{label:"Not started",color:"default"},planned:{label:"Planned",color:"info"},"in-progress":{label:"In progress",color:"primary"},blocked:{label:"Blocked",color:"error"},done:{label:"Done",color:"success"}},N1=e=>e?Xg[e]?.label??e:"Planned",V1=e=>e?Xg[e]?.color??"default":"info",Yg=e=>Math.min(100,Math.max(0,e??0)),Qg=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...Qg(o.children??[],t+1)]),O1=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",project:e.project??"",workCenter:e.workCenter??"",owner:e.owner?.name??"Unassigned",status:N1(e.status),statusTone:e.status??"planned",progress:Yg(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),Jg=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),ef=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),H1=(e,t,o)=>{let a=[],r=Jg(e,o),n=ef(t,o);for(;r.isBefore(n)||r.isSame(n);){let i=o==="month"?r.add(1,"month"):o==="week"?r.add(1,"week"):o==="day"?r.add(1,"day"):r.add(1,"hour");a.push({key:`${o}-${r.valueOf()}`,label:o==="month"?r.format("MMM YYYY"):o==="week"?r.format("MMM D"):o==="day"?r.format("D"):r.format("HH:mm"),contextLabel:o==="hour"?r.format("MMM D"):o==="day"?r.format("MMM"):o==="week"?`W${r.isoWeek()}`:void 0,title:o==="hour"?r.format("MMM D, YYYY HH:mm"):o==="day"?r.format("MMM D, YYYY"):o==="week"?`${r.format("MMM D, YYYY")} - Week ${r.isoWeek()}`:void 0,start:r,end:i}),r=i;}return a},Sd=(e,t,o)=>{let a=0;for(let r of t){if(e.isBefore(r.start))return a;if(e.isBefore(r.end)){let n=Math.max(1,r.end.valueOf()-r.start.valueOf()),i=Math.max(0,e.valueOf()-r.start.valueOf());return a+i/n*o}a+=o;}return a},tf=({title:e="Project Plan",extraTools:t,bodyHeight:o=560,tasks:a,columns:r,scale:n="week",onScaleChange:i,page:s,rowsPerPage:d=20,rowsPerPageOptions:l=[20,50,100,-1],count:c,onPageChange:g,onRowsPerPageChange:f,timelineStart:u,timelineEnd:h,selectedTaskId:w,onTaskSelect:p,enableRowReorder:k=true,onTaskReorder:m,emptyLabel:y="No planning tasks available.",sx:b})=>{let v=useTheme(),{t:B}=ee(),M=useRef(null),S=useRef(null),E=useRef(null),I=useRef(false),[C,D]=useState(null),[T,P]=useState(null),[A,W]=useState({}),[z,Q]=useState(Cd),[re,ne]=useState([]),[ae,_]=useState({activeId:null,overId:null}),Ue=useRef(null),Ze=useMemo(()=>Qg(a),[a]),Oe=useMemo(()=>{if(re.length===0)return Ze;let R=new Map(Ze.map(G=>[G.id,G])),O=re.map(G=>R.get(G)).filter(G=>!!G),U=new Set(O.map(G=>G.id));return [...O,...Ze.filter(G=>!U.has(G.id))]},[Ze,re]),ie=useMemo(()=>new Map(Oe.map(R=>[R.id,R])),[Oe]),we=useMemo(()=>Oe.map(R=>O1(R)),[Oe]),Ae=useMemo(()=>new Map(we.map(R=>[R.id,R])),[we]),Ye=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(R,O)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:O.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:O.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(R,O)=>jsx(Gg,{label:O.status,color:V1(O.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:R=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[R,"%"]}),jsx(LinearProgress,{variant:"determinate",value:R,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),st=useMemo(()=>{if(!r||r.length===0)return Ye;let R=new Map(Ye.map(O=>[O.id,O]));return r.map(O=>{let U=R.get(O.id),G=O.width??U?.minWidth??120,te={id:O.id,label:O.label,minWidth:G};if(U?.numeric&&(te.numeric=true),O.render){let Re=O.render;return te.render=(ze,le)=>{let Ie=ie.get(le.id);return Re(Ie||le)},te}return U?.render?(te.render=U.render,te):(te.render=(Re,ze)=>{let le=ze[O.id];if(le!=null&&String(le).length>0)return String(le);let We=ie.get(ze.id)?.[O.id];return We!=null&&String(We).length>0?String(We):"-"},te)})},[r,Ye,ie]),Z=on({appId:"planning-gantt",title:e,columns:st,rows:we,rowKey:"id",page:s,rowsPerPage:d,rowsPerPageOptions:l,count:c??we.length,onPageChange:g,onRowsPerPageChange:f,showSummary:false}),Ke=Z.visibleRows,xt=Z.rowsPerPage===-1?1:Math.max(1,Math.ceil(Z.totalDisplayCount/Z.rowsPerPage)),X=Math.max(0,Math.min(Z.page,xt-1)),pe=Math.min(X+1,xt),Be=X>0,Ee=X<xt-1&&Z.rowsPerPage!==-1;useEffect(()=>{let R=Ze.map(O=>O.id);ne(O=>{let U=new Set(R),G=O.filter(le=>U.has(le)),te=new Set(G),Re=R.filter(le=>!te.has(le)),ze=[...G,...Re];return ze.length===O.length&&ze.every((le,Ie)=>le===O[Ie])?O:ze});},[Ze]);let qe=R=>R.type==="group"?`group-${R.id}`:`row-${(R.data||R)?.id}`,K=useMemo(()=>{let R=we.map(Ie=>na(Ie.startDate)),O=we.map(Ie=>na(Ie.endDate)),U=u?na(u):R.reduce((Ie,We)=>We.isBefore(Ie)?We:Ie,R[0]??na()),G=h?na(h):O.reduce((Ie,We)=>We.isAfter(Ie)?We:Ie,O[0]??na().add(30,"day")),te=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",Re=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",ze=n==="hour"?12:1,le=n==="hour"?12:1;return {start:Jg(U.subtract(ze,te),n),end:ef(G.add(le,Re),n)}},[we,n,h,u]),ye=vd.find(R=>R.value===n)??vd[1],be=Array.isArray(t)?t:t?[t]:[],xe=useMemo(()=>H1(K.start,K.end,n),[K.end,K.start,n]),Qe=xe.length*ye.width,He=(Z.columns||[]).filter(R=>Z.visibleColumns.includes(R.id)).reduce((R,O)=>R+(Z.columnWidths?.[O.id]||O.minWidth||100),0),qt=C??He,ao=T==="table",ro=T==="timeline",uo=ro?0:ao?"100%":qt,Et=T==="timeline",De=T==="table",he=!Et&&!De,Tt=ao?"minmax(0, 1fr) 0px 0px":ro?"0px 0px minmax(0, 1fr)":`${qt}px ${Cs}px minmax(0, 1fr)`,_e=()=>{let R=M.current?.clientWidth??0;return R>0?Math.max(kd,R-Cs-z1):Math.max(kd,He)},Pt=R=>Math.min(Math.max(R,kd),_e());useEffect(()=>{D(R=>R===null?null:Pt(R));},[He]);let mo=R=>{R.preventDefault(),R.currentTarget.setPointerCapture(R.pointerId),P(null),Ue.current={startX:R.clientX,startWidth:qt};let O=G=>{let te=Ue.current;if(!te)return;let Re=Pt(te.startWidth+G.clientX-te.startX);D(Re);},U=()=>{Ue.current=null,window.removeEventListener("pointermove",O),window.removeEventListener("pointerup",U),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",O),window.addEventListener("pointerup",U);},ia=()=>{let R=M.current?.clientWidth??0;if(P(null),R<=0){D(null);return}D(Pt((R-Cs)/2));},H=R=>!k||!R?false:Ae.get(R)?.reorderable!==false,$=(R,O)=>{if(!R||!O||R===O||!H(R)||!H(O))return false;if(Z.grouping.length===0)return true;let U=Ae.get(R),G=Ae.get(O);return !U||!G?false:Z.grouping.every(te=>U[te]===G[te])},Y=(R,O)=>{if(!$(R,O))return;let U=Ke.filter(je=>je.type!=="group").map(je=>String((je.data||je)?.id)),G=U.indexOf(R),te=U.indexOf(O);if(G<0||te<0)return;let Re=[...U];[Re[G],Re[te]]=[Re[te],Re[G]];let ze=new Set(U),le=Oe.map(je=>je.id),Ie=[...Re,...le.filter(je=>!ze.has(je))],We=ie.get(R),vt=ie.get(O);if(Z.setOrder("asc"),Z.setOrderBy(""),ne(Ie),We&&vt){let{level:je,...gt}=We,{level:It,...no}=vt,Rt=Ie.reduce((Ft,Xt)=>{let Dt=ie.get(Xt);if(Dt){let{level:Xe,...Eo}=Dt;Ft.push(Eo);}return Ft},[]);m?.(Rt,{activeTask:gt,targetTask:no});}},Pe=(R,O)=>{if(!H(O.id)){R.preventDefault();return}R.stopPropagation(),R.dataTransfer.effectAllowed="move",R.dataTransfer.setData("text/plain",O.id),_({activeId:O.id,overId:null}),p?.(ie.get(O.id)||O);},Te=(R,O)=>{if(!$(ae.activeId,O)){_(U=>U.overId===null?U:{...U,overId:null});return}R.preventDefault(),R.stopPropagation(),R.dataTransfer.dropEffect="move",_(U=>U.overId===O?U:{...U,overId:O});},Ve=(R,O)=>{let U=ae.activeId||R.dataTransfer.getData("text/plain");if(!$(U,O)){_({activeId:null,overId:null});return}R.preventDefault(),R.stopPropagation(),Y(U,O),_({activeId:null,overId:null});},Ce=()=>{_({activeId:null,overId:null});},$e=R=>{if(I.current)return;let O=R==="table"?S.current:E.current,U=R==="table"?E.current:S.current;!O||!U||(I.current=true,U.scrollTop=O.scrollTop,window.requestAnimationFrame(()=>{I.current=false;}));};return useLayoutEffect(()=>{if(!w||De)return;let R=E.current,O=S.current;if(!R)return;let U=`row-${w}`,G=Array.from(R.querySelectorAll("[data-planning-timeline-row-key]")).find(ze=>ze.dataset.planningTimelineRowKey===U),te=Ae.get(w);if(!G||!te)return;let Re=window.requestAnimationFrame(()=>{let ze=R.getBoundingClientRect(),le=G.getBoundingClientRect(),Ie=Math.max(1,R.clientHeight-z),We=R.scrollTop+le.top-ze.top-z-(Ie-le.height)/2;I.current=true,R.scrollTop=Math.max(0,We),O&&!Et&&(O.scrollTop=R.scrollTop);let vt=Sd(na(te.startDate),xe,ye.width),je=Math.max(0,vt-ye.width);R.scrollLeft=Math.min(je,Math.max(0,Qe-R.clientWidth)),window.requestAnimationFrame(()=>{I.current=false;});});return ()=>window.cancelAnimationFrame(Re)},[ye.width,z,w,Et,Ae,De,Ke,Qe,xe]),useLayoutEffect(()=>{let R=S.current;if(!R)return;let O=0,U=()=>{let le=R.querySelector("thead"),Ie=Array.from(R.querySelectorAll("tbody tr[data-planning-row-key]"));if(Ie.length===0)return;let We=le?.getBoundingClientRect().height||Cd,vt={};Ie.forEach(je=>{let gt=je.dataset.planningRowKey;gt&&(vt[gt]=je.getBoundingClientRect().height);}),Q(je=>Math.abs(je-We)<.01?je:We),W(je=>{let gt=Object.keys(je),It=Object.keys(vt);return gt.length===It.length&&It.every(no=>Math.abs((je[no]??0)-vt[no])<.01)?je:vt});},G=()=>{window.cancelAnimationFrame(O),O=window.requestAnimationFrame(U);};if(U(),typeof ResizeObserver>"u")return window.addEventListener("resize",G),()=>{window.cancelAnimationFrame(O),window.removeEventListener("resize",G);};let te=new ResizeObserver(G),Re=R.querySelector("table"),ze=R.querySelector("thead");return Re&&te.observe(Re),ze&&te.observe(ze),R.querySelectorAll("tbody tr[data-planning-row-key]").forEach(le=>te.observe(le)),window.addEventListener("resize",G),()=>{window.cancelAnimationFrame(O),te.disconnect(),window.removeEventListener("resize",G);}},[Ke,Z.visibleColumns,Z.grouping,Z.columnWidths]),jsxs(Ti,{elevation:0,sx:{m:0,p:0,display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden",borderRadius:3,border:`1px solid ${v.palette.divider}`,backgroundColor:v.palette.background.paper,...b},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"stretch",md:"center"},spacing:2,sx:{px:2,py:1.75,borderBottom:`1px solid ${v.palette.divider}`},children:[jsxs(Stack,{direction:"row",spacing:.75,alignItems:"center",sx:{p:.5,borderRadius:2,backgroundColor:"action.hover",minHeight:38},children:[jsx(Typography,{sx:{fontSize:ks,color:"text.secondary",whiteSpace:"nowrap"},children:B("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:Z.rowsPerPage,disableUnderline:true,onChange:R=>Z.setRowsPerPage(Number(R.target.value)),sx:{fontSize:ks,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:l.map(R=>jsx(MenuItem,{value:R,sx:{fontSize:ks},children:R===-1?B("common.all"):R},`planning-rows-per-page-${R}`))}),jsx(IconButton,{size:"small",onClick:()=>Z.setPage(Math.max(X-1,0)),disabled:!Be,sx:{p:.35,color:"text.primary"},children:jsx(Ph,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:ks,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:B("table.toolbar.pageOf",{current:pe,total:xt})}),jsx(IconButton,{size:"small",onClick:()=>Z.setPage(Math.min(X+1,xt-1)),disabled:!Ee,sx:{p:.35,color:"text.primary"},children:jsx(Zg,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[be.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:be.map((R,O)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:R},`planning-extra-tool-${O}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(er,{tooltip:"Column visibility",onClick:R=>Z.setAnchorEl(R.currentTarget),color:"default",children:jsx(yh,{fontSize:"small"})}),jsx(er,{tooltip:"Group by",onClick:R=>Z.setGroupAnchorEl(R.currentTarget),color:"default",children:jsx(vh,{fontSize:"small"})}),jsx(er,{tooltip:"Sort by first visible column",onClick:()=>{let R=(Z.columns||[]).find(O=>Z.visibleColumns.includes(O.id));R&&Z.handleRequestSort(R.id);},color:Z.orderBy?"primary":"default",children:jsx(F1,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(er,{tooltip:"Expand task table",onClick:()=>P("table"),color:T==="table"?"primary":"default",children:jsx(B1,{fontSize:"small"})}),jsx(er,{tooltip:"Split evenly",onClick:ia,color:T===null?"primary":"default",children:jsx(E1,{fontSize:"small"})}),jsx(er,{tooltip:"Expand timeline",onClick:()=>P("timeline"),color:T==="timeline"?"primary":"default",children:jsx(A1,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(Kg,{label:"",value:n,options:vd.map(R=>({value:R.value,label:R.label})),onChange:R=>i?.(R.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),we.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:y}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:M,sx:{height:"100%",display:"grid",gridTemplateColumns:Tt,transition:`grid-template-columns ${tr}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:S,onScroll:()=>$e("table"),sx:{width:uo,height:o,overflowX:"auto",overflowY:"auto",opacity:Et?0:1,transform:Et?"translateX(-10px)":"translateX(0)",pointerEvents:Et?"none":"auto",transition:`opacity ${tr}, transform ${tr}, width ${tr}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:He,"& thead .MuiTableCell-root":{height:Cd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(Bi,{columns:Z.columns,visibleColumns:Z.visibleColumns,order:Z.order,orderBy:Z.orderBy,onRequestSort:Z.handleRequestSort,grouping:Z.grouping,isAllExpanded:Z.isAllExpanded,handleToggleAll:Z.handleToggleAll,columnWidths:Z.columnWidths,onColumnResize:Z.handleColumnResize}),jsx(TableBody,{children:Ke.map(R=>{let O=qe(R);if(R.type==="group")return jsxs(TableRow,{"data-planning-row-key":O,sx:{height:Br,backgroundColor:v.palette.action.hover},children:[Z.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Br,py:0,borderBottom:`1px solid ${v.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>Z.toggleGroupExpand(R.id),children:R.isExpanded?jsx(Uh,{fontSize:"small"}):jsx(Zg,{fontSize:"small"})})}),jsx(TableCell,{colSpan:Z.visibleColumns.length,sx:{height:Br,py:0,borderBottom:`1px solid ${v.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[R.field,": ",R.value," (",R.count,")"]})})]},R.id);let U=R.data||R,G=U.id===w,te=H(U.id),Re=ae.activeId===U.id,ze=ae.overId===U.id&&$(ae.activeId,U.id);return jsxs(TableRow,{"data-planning-row-key":O,draggable:te,hover:true,selected:G,onDragStart:le=>Pe(le,U),onDragOver:le=>Te(le,U.id),onDragEnter:le=>Te(le,U.id),onDrop:le=>Ve(le,U.id),onDragEnd:Ce,onClick:()=>p?.(ie.get(U.id)||U),sx:{cursor:Re?"grabbing":te?"grab":p?"pointer":"default",height:Br,opacity:Re?.56:1,"& .MuiTableCell-root":ze?{borderTop:`2px solid ${v.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[Z.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Br,py:0,borderBottom:`1px solid ${v.palette.divider}`}}),(Z.columns||[]).filter(le=>Z.visibleColumns.includes(le.id)).map(le=>jsx(TableCell,{sx:{width:Z.columnWidths?.[le.id]||le.minWidth||100,height:Br,py:0,overflow:"hidden",borderBottom:`1px solid ${v.palette.divider}`},children:le.render?le.render(U[le.id],U):String(U[le.id]??"-")},`${U.id}-${le.id}`))]},U.id)})})]})}),jsx(Box,{onPointerDown:he?mo:void 0,role:"separator","aria-orientation":"vertical",sx:{width:he?Cs:0,cursor:he?"col-resize":"default",opacity:he?1:0,pointerEvents:he?"auto":"none",borderLeft:he?`1px solid ${v.palette.divider}`:"0 solid transparent",borderRight:he?`1px solid ${v.palette.divider}`:"0 solid transparent",backgroundColor:v.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${tr}, opacity ${tr}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:v.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:he?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:De?0:1,transform:De?"translateX(10px)":"translateX(0)",pointerEvents:De?"none":"auto",transition:`opacity ${tr}, transform ${tr}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:E,onScroll:()=>$e("timeline"),sx:{width:"100%",height:o,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:Qe},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${xe.length}, ${ye.width}px)`,height:z,boxSizing:"border-box",borderBottom:`1px solid ${v.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:v.palette.background.paper},children:xe.map(R=>jsxs(Box,{title:R.title,sx:{px:.75,display:"flex",flexDirection:R.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:R.contextLabel?.15:0,borderRight:`1px solid ${v.palette.divider}`,color:R.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[R.contextLabel&&jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"text.secondary",fontSize:11,fontWeight:700,lineHeight:1.1},children:R.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:R.label})]},R.key))}),jsx(Stack,{sx:{position:"relative"},children:Ke.map(R=>{let O=qe(R),U=A[O]??Br;if(R.type==="group")return jsx(Box,{"data-planning-timeline-row-key":O,sx:{position:"relative",height:U,boxSizing:"border-box",borderBottom:`1px solid ${v.palette.divider}`,backgroundColor:v.palette.action.hover}},R.id);let G=R.data||R,te=na(G.startDate),Re=na(G.endDate),ze=Sd(te,xe,ye.width),le=Sd(Re,xe,ye.width),Ie=Math.max(18,le-ze),We=Yg(G.progress),vt=G.id===w,je=H(G.id),gt=ae.activeId===G.id,It=ae.overId===G.id&&$(ae.activeId,G.id),no=G.color??(G.statusTone==="blocked"?v.palette.error.main:v.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":O,draggable:je,onDragStart:Rt=>Pe(Rt,G),onDragOver:Rt=>Te(Rt,G.id),onDragEnter:Rt=>Te(Rt,G.id),onDrop:Rt=>Ve(Rt,G.id),onDragEnd:Ce,onClick:()=>p?.(ie.get(G.id)||G),sx:{position:"relative",height:U,boxSizing:"border-box",borderBottom:`1px solid ${v.palette.divider}`,opacity:gt?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:v.palette.primary.main,opacity:It?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},backgroundImage:v.palette.mode==="dark"?"linear-gradient(90deg, rgba(148,163,184,0.08) 1px, transparent 1px)":"linear-gradient(90deg, rgba(15,23,42,0.06) 1px, transparent 1px)",backgroundSize:`${ye.width}px 100%`,cursor:gt?"grabbing":je?"grab":p?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${G.title}: ${te.format("MMM D HH:mm")} - ${Re.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:ze,top:Math.max(8,(U-24)/2),width:Ie,height:24,borderRadius:999,overflow:"hidden",backgroundColor:v.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:vt?`2px solid ${v.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${We}%`,backgroundColor:no}}),jsx(Typography,{sx:{position:"absolute",inset:0,px:1,display:"flex",alignItems:"center",color:"#fff",fontSize:11,fontWeight:800,textShadow:"0 1px 4px rgba(0,0,0,0.45)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:G.code})]})})},G.id)})})]})})})]})}),jsx(Wr,{groupAnchorEl:Z.groupAnchorEl,setGroupAnchorEl:Z.setGroupAnchorEl,grouping:Z.grouping,setGrouping:Z.setGrouping,columns:Z.columns,toggleGroupField:Z.toggleGroupField}),jsx($r,{anchorEl:Z.anchorEl,setAnchorEl:Z.setAnchorEl,columns:Z.columns,visibleColumns:Z.visibleColumns,toggleColumnVisibility:Z.toggleColumnVisibility})]})};var VV=({filterProps:e,ganttProps:t,spacing:o=2,sx:a,children:r})=>{let n=a?[{height:"100%",overflow:"hidden"},a]:{height:"100%",overflow:"hidden"},i=t.sx?[{height:"100%"},t.sx]:{height:"100%"};return jsxs(Stack,{spacing:o,sx:n,children:[jsx(Box,{sx:{flexShrink:0},children:jsx(ha,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(tf,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),r]})};var j1={none:{from:{},to:{}},fade:{from:{opacity:0},to:{opacity:1}},"slide-up":{from:{opacity:0,transform:"translate3d(0, 12px, 0)"},to:{opacity:1,transform:"translate3d(0, 0, 0)"}},"slide-left":{from:{opacity:0,transform:"translate3d(12px, 0, 0)"},to:{opacity:1,transform:"translate3d(0, 0, 0)"}},scale:{from:{opacity:0,transform:"scale(0.985)"},to:{opacity:1,transform:"scale(1)"}}},GV=({children:e,transitionKey:t,variant:o="fade",durationMs:a=220,delayMs:r=0,easing:n="cubic-bezier(0.22, 1, 0.36, 1)",disabled:i=false,sx:s})=>{let d=useMediaQuery("(prefers-reduced-motion: reduce)"),[l,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=j1[o],u=useMemo(()=>g?l==="from"?f.from:f.to:{opacity:1,transform:"none"},[g,l,f.from,f.to]);return jsx(Box,{sx:{willChange:g?"opacity, transform":"auto",transition:g?`opacity ${a}ms ${n} ${r}ms, transform ${a}ms ${n} ${r}ms`:"none",backfaceVisibility:"hidden",...u,...s},children:e})},UV={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};
17
- export{mN as AgentPanel,Ts as Button,iS as CAINavProvider,Sp as CAmapChart,Al as CAppHeader,dB as CAppPageLayout,KN as CAuthPage,On as CBarChart,Vi as CChartCard,dp as CComboChart,Ip as CCustomizeAgent,g2 as CDetailInfoPage,Su as CDetailSearchAiBar,Cl as CDetailSectionCard,gp as CFishboneChart,xp as CGoogleMapChart,wp as CGraphCharts,ip as CGraphKpiCards,Ji as CGraphReport,up as CHeatmapChart,L2 as CKanbanBoard,Du as CKanbanBucket,Tc as CKanbanCard,Yp as CLayoutManagement,pl as CLayoutManager,cp as CLineChart,An as CMessageBox,jd as CPageLayout,GV as CPageTransition,Ki as CPieChart,Q5 as CPivotTable,tf as CPlanningGantt,VV as CPlanningLayout,ha as CSmartFilter,EM as CSmartTable,HM as CStandardPage,Ua as CTable,RM as CTableBody,DM as CTableCell,MM as CTableContainer,AM as CTableHead,BM as CTableRow,_d as CValueHelp,al as CVariantManagement,Np as CVariantManager,ad as CVoiceWaveOverlay,hp as CWaterfallChart,Yn as CodeBlock,CN as CopilotChat,JT as GlobalMessage,oi as MarkdownRenderer,Qn as MathBlock,pc as MermaidBlock,Fd as NavigationIsland,Mn as ORBCAFE_I18N_MESSAGES,Di as OrbcafeI18nProvider,UV as PAGE_TRANSITION_PRESETS,RF as PAppPageLayout,yE as PBarcodeScanner,_m as PNavIsland,BE as PNumericKeypad,Om as PSmartFilter,Ok as PTable,SE as PTouchCard,$m as PWorkloadNav,ym as PivotChartPanel,Lg as StdChat,mc as TableBlock,xl as ThinkBlock,Is as TreeMenu,WF as VoiceNavigatorProvider,EF as VoiceWaveOverlay,ji as buildAmapEmbedUrl,$n as buildGoogleMapEmbedUrl,HI as buildGoogleMapIframe,cf as buttonVariants,Bu as createKanbanBoardModel,Go as findKanbanCard,zT as message,ua as messageManager,Pl as moveKanbanCard,yl as parseMarkdownTable,NA as renderMarkdown,Jp as resolveVariantFilters,ul as resolveVariantLayout,lS as useAINav,tA as useAmapEmbedUrl,TN as useAuthPage,Tu as useDetailInfo,eA as useGoogleMapEmbedUrl,ZM as useGraphChartData,tl as useGraphInteraction,Qr as useGraphReport,H2 as useKanbanBoard,zd as useNavigationIsland,ee as useOrbcafeI18n,sE as usePadLayout,pE as usePadRecordEditor,$u as usePageLayout,aE as usePivotTable,$g as usePlanningGantt,JN as usePlanningLayout,qM as useStandardReport,as as useVoiceInput,$F as useVoiceNavigator};
7
+ `),h={enableMath:r},m=0;for(;m<g.length;){let b=g[m],C=b.trim();if(!C){m+=1;continue}if(n&&Fp(b)){if(C.startsWith("<think>")){let p=[],f=b;for(;;){let y=f.indexOf("<think>"),k=y>=0?f.slice(y+7):f,E=k.indexOf("</think>");if(E>=0){p.push(k.slice(0,E)),m+=1;break}if(p.push(k),m+=1,m>=g.length)break;f=g[m];}c.push(jsx(Sl,{content:p.join(`
8
+ `).trim()},`think-tag-${m}`));continue}m+=1;let v=[];for(;m<g.length&&g[m].trim()!==":::";)v.push(g[m]),m+=1;m<g.length&&g[m].trim()===":::"&&(m+=1),c.push(jsx(Sl,{content:v.join(`
9
+ `).trim()},`think-fence-${m}`));continue}if(wl(b)){let v=C.slice(3).trim().toLowerCase(),p=[];for(m+=1;m<g.length&&!wl(g[m]);)p.push(g[m]),m+=1;m<g.length&&wl(g[m])&&(m+=1);let f=p.join(`
10
+ `);if(a&&v==="mermaid"){c.push(jsx(yc,{code:f},`mermaid-${m}`));continue}if(r&&["math","latex","katex"].includes(v)){c.push(jsx(oi,{expression:f,allowKatex:true},`math-fence-${m}`));continue}c.push(jsx(ti,{code:f,language:v||"text",copyable:i,showLineNumbers:s,wrapLongLines:true},`code-${m}`));continue}if(r&&C.startsWith("$$")){let v=[];if(C.endsWith("$$")&&C!=="$$")v.push(C.slice(2,-2)),m+=1;else {let f=b.slice(b.indexOf("$$")+2);for(f.trim()&&v.push(f),m+=1;m<g.length;){let y=g[m],k=y.indexOf("$$");if(k>=0){v.push(y.slice(0,k)),m+=1;break}v.push(y),m+=1;}}c.push(jsx(oi,{expression:v.join(`
11
+ `).trim(),allowKatex:true},`math-${m}`));continue}if(Ap(b)){let v=Math.min(6,b.match(/^#{1,6}/)?.[0]?.length||1),p=b.replace(/^#{1,6}\s+/,""),f=v===1?"h5":v===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:f,sx:{mt:v===1?1.2:.8,mb:.5,fontWeight:700},children:ni(p,h,`h-${m}`)},`heading-${m}`)),m+=1;continue}if(Bp(b)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${m}`)),m+=1;continue}if(Ep(g,m)){let v=m+2;for(;v<g.length&&g[v].trim()&&g[v].includes("|");)v+=1;let p=g.slice(m,v).join(`
12
+ `),f=Cl(p);if(f){c.push(jsx(vc,{table:f},`table-${m}`)),m=v;continue}}if(Tc(b)){let v=[];for(;m<g.length&&Tc(g[m]);)v.push(g[m].replace(/^\s*>\s?/,"")),m+=1;c.push(jsx(Paper,{variant:"outlined",sx:{px:1,py:.8,my:.9,borderLeftWidth:3,borderLeftStyle:"solid",borderLeftColor:"primary.main",bgcolor:"action.hover"},children:jsx(Typography,{variant:"body2",sx:{whiteSpace:"pre-wrap"},children:v.map((p,f)=>jsxs(Fragment$1,{children:[f>0&&jsx("br",{}),ni(p,h,`q-${m}-${f}`)]},`quote-line-${f}`))})},`quote-${m}`));continue}if(Sc(b)){let v=[];for(;m<g.length&&Sc(g[m]);)v.push(g[m].trim().replace(/^[-*+]\s+/,"")),m+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:v.map((p,f)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:ni(p,h,`ul-${m}-${f}`)})},`ul-item-${f}`))},`ul-${m}`));continue}if(wc(b)){let v=[];for(;m<g.length&&wc(g[m]);)v.push(g[m].trim().replace(/^\d+\.\s+/,"")),m+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:v.map((p,f)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:ni(p,h,`ol-${m}-${f}`)})},`ol-item-${f}`))},`ol-${m}`));continue}let u=[];for(;m<g.length;){let v=g[m],p=v.trim();if(!p||wl(v)||Ap(v)||Bp(v)||Sc(v)||wc(v)||Tc(v)||Ep(g,m)||n&&Fp(v)||r&&p.startsWith("$$"))break;u.push(v),m+=1;}u.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:u.map((v,p)=>jsxs(Fragment$1,{children:[p>0&&jsx("br",{}),ni(v,h,`p-${m}-${p}`)]},`p-line-${p}`))},`p-${m}`)):m+=1;}return c},[d,r,a,n,i,s]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:l})};var L2=(e,t)=>jsx(ii,{markdown:e,...t});var Np=({value:e,onChange:t,onSubmit:o,onVoiceInput:r,onClear:a,placeholder:n,statusText:i,loading:s=false,compact:d=false,showStatusText:l=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:d?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:d?38:44},children:[jsx(Xd,{sx:{fontSize:d?16:18,color:"text.secondary"}}),jsx(InputBase,{fullWidth:true,value:e,onChange:c=>t(c.target.value),onKeyDown:c=>{c.key==="Enter"&&(c.preventDefault(),o());},placeholder:n,sx:{fontSize:d?"0.84rem":"0.9rem"}}),e&&a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(bh,{sx:{fontSize:d?16:18}})}),r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(dy,{sx:{fontSize:d?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:s||!e.trim(),children:jsx(py,{sx:{fontSize:d?16:18}})})]}),l&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var Vp=(e,t)=>{let o=t.trim();if(!o)return e;let r=e.toLowerCase(),a=o.toLowerCase(),n=r.indexOf(a);return n<0?e:jsxs(Fragment,{children:[e.slice(0,n),jsx(Box,{component:"mark",sx:{bgcolor:"warning.light",color:"warning.contrastText",px:.15,borderRadius:.4},children:e.slice(n,n+o.length)}),e.slice(n+o.length)]})},Tl=({section:e,highlightQuery:t=""})=>{let o=e.columns||2;return jsxs(Paper,{variant:"outlined",sx:{p:1.8,borderRadius:2},children:[jsx(Typography,{variant:"subtitle1",sx:{fontWeight:700,mb:1.4},children:e.title}),jsx(Box,{sx:{display:"grid",gap:1.15,gridTemplateColumns:{xs:"1fr",md:o===3?"repeat(3, minmax(0, 1fr))":o===1?"1fr":"repeat(2, minmax(0, 1fr))"}},children:e.fields.map(r=>{let a=typeof r.value=="string"||typeof r.value=="number"?String(r.value):null;return jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block"},children:Vp(r.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:a?Vp(a,t):r.value})]},r.id)})})]})};var Mc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",Pl=e=>e.trim().toLowerCase(),$0=(e,t)=>{let o=[];return e.forEach(r=>{r.fields.forEach(a=>{let n=a.searchableText||Mc(a.value),i={source:"section",sourceId:r.id,sourceSectionId:r.id,sourceTitle:r.title,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:Pl(`${r.title} ${a.label} ${n}`)});});}),t.forEach(r=>{(r.fields||[]).forEach(a=>{let n=a.searchableText||Mc(a.value),i={source:"tab",sourceId:r.id,sourceTitle:r.label,fieldId:a.id,fieldLabel:a.label,fieldValue:n};o.push({hit:i,text:Pl(`${r.label} ${a.label} ${n}`)});}),(r.sections||[]).forEach(a=>{a.fields.forEach(n=>{let i=n.searchableText||Mc(n.value),s={source:"tab",sourceId:r.id,sourceSectionId:a.id,sourceTitle:`${r.label} / ${a.title}`,fieldId:n.id,fieldLabel:n.label,fieldValue:i};o.push({hit:s,text:Pl(`${r.label} ${a.title} ${n.label} ${i}`)});});});}),o},Op=({sections:e,tabs:t=[],defaultTabId:o,ai:r})=>{let{t:a}=ee(),[n,i]=useState(""),[s,d]=useState(o||t[0]?.id),[l,c]=useState("idle"),[g,h]=useState([]),[m,b]=useState(""),[C,u]=useState(""),[v,p]=useState(false),f=useMemo(()=>$0(e,t),[e,t]);useEffect(()=>{if(t.length===0){d(void 0);return}t.some(D=>D.id===s)||d(o||t[0]?.id);},[t,s,o]);let y=useCallback(()=>{c("idle"),h([]),b(""),u("");},[]),k=useCallback(S=>{i(S),S.trim()||(c("idle"),h([]),b(""),u(""));},[]),E=useCallback(S=>{let D=Pl(S);return D?f.filter(P=>P.text.includes(D)).map(P=>P.hit):[]},[f]),M=useCallback(async()=>{let S=n.trim();if(!S)return;p(true);let D=E(S);if(h(D),D.length>0){c("search"),u(""),b(a("detail.searchAi.matches",{count:D.length})),p(false);return}if(r?.enabled!==false&&r?.onSubmit){c("ai"),b(a("detail.searchAi.autoAiFallback"));try{let w=await r.onSubmit(S,{query:S,hits:D,activeTabId:s,sections:e,tabs:t});u(typeof w=="string"?w:"");}finally{p(false);}return}c("search"),u(""),b(a("detail.searchAi.noMatch")),p(false);},[n,E,a,r,s,e,t]);return {query:n,setQuery:k,activeTabId:s,setActiveTabId:d,searchMode:l,hits:g,statusText:m,aiResponse:C,searching:v,handleSubmit:M,clearResult:y}};var pB=({title:e,subtitle:t,sections:o,tabs:r=[],defaultTabId:a,table:n,ai:i,rightHeaderSlot:s,searchBarWidth:d=460,onClose:l,closeLabel:c="Close"})=>{let{t:g}=ee(),{query:h,setQuery:m,activeTabId:b,setActiveTabId:C,searchMode:u,hits:v,statusText:p,aiResponse:f,searching:y,handleSubmit:k,clearResult:E}=Op({sections:o,tabs:r,defaultTabId:a,ai:i}),M=useMemo(()=>r.find(P=>P.id===b)||r[0],[r,b]),S=useCallback(P=>{let w=B=>{let R=document.getElementById(P);if(R){R.scrollIntoView({behavior:"smooth",block:"center"});return}B<4&&setTimeout(()=>w(B+1),60);};requestAnimationFrame(()=>w(0));},[]),D=useCallback((P,w)=>{if(r.some(B=>B.id===P)){C(P),S(w?`detail-tab-${P}-section-${w}`:`detail-tab-${P}`);return}S(`detail-section-${P}`);},[r,C,S]);return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,minHeight:"100%"},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",md:"center"},spacing:1,children:[jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{variant:"h5",sx:{fontWeight:800,color:"text.primary"},children:e}),t&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mt:.35},children:t})]}),jsxs(Stack,{direction:"row",spacing:.6,alignItems:"center",sx:{width:{xs:"100%",md:"auto"},ml:{xs:0,md:"auto"}},children:[jsx(Box,{sx:{width:{xs:"100%",md:d},maxWidth:"100%",minWidth:{md:320}},children:jsx(Np,{value:h,onChange:m,onSubmit:k,onVoiceInput:i?.onVoiceInput,onClear:()=>{m(""),E();},placeholder:i?.placeholder||g("detail.searchAi.placeholder"),statusText:p,loading:y,compact:true,showStatusText:false})}),l&&jsx(Tooltip,{title:c,children:jsx(IconButton,{size:"small",onClick:l,children:jsx(j0,{fontSize:"small"})})}),s]})]}),p&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:p}),u==="search"&&v.length>0&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.6},children:g("detail.searchAi.matches",{count:v.length})}),jsx(Stack,{spacing:.35,children:v.slice(0,8).map(P=>jsx(Box,{component:"button",type:"button",onClick:()=>D(P.sourceId,P.sourceSectionId),sx:{textAlign:"left",border:0,bgcolor:"transparent",p:.2,cursor:"pointer",color:"text.primary",borderRadius:1,"&:hover":{bgcolor:"action.hover"}},children:jsxs(Typography,{variant:"body2",sx:{fontSize:"0.84rem"},children:[jsx(Box,{component:"span",sx:{color:"text.secondary"},children:P.sourceTitle})," \xB7 ",jsx(Box,{component:"span",sx:{fontWeight:700},children:P.fieldLabel})," = ",jsx(Box,{component:"span",children:P.fieldValue||"-"})]})},`${P.source}|${P.sourceId}|${P.fieldId}`))})]}),u==="ai"&&f&&jsxs(Paper,{variant:"outlined",sx:{p:1.5,borderRadius:2},children:[jsx(Typography,{variant:"subtitle2",sx:{fontWeight:700,mb:.7},children:g("detail.searchAi.aiResultTitle")}),jsx(Box,{sx:{fontSize:"0.9rem",lineHeight:1.6,"& p":{m:0,mb:.8},"& h1, & h2, & h3, & h4":{mt:1.2,mb:.6,lineHeight:1.3},"& ul, & ol":{mt:.4,mb:.8,pl:2.6},"& code":{px:.5,py:.1,borderRadius:.8,bgcolor:"action.hover",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},"& pre":{m:0,mt:.8,mb:.8,p:1.1,borderRadius:1.2,bgcolor:"action.hover",overflowX:"auto"},"& pre code":{p:0,bgcolor:"transparent"}},children:jsx(ii,{markdown:f})})]}),jsx(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"repeat(2, minmax(0, 1fr))"}},children:o.map(P=>jsx(Box,{id:`detail-section-${P.id}`,children:jsx(Tl,{section:P,highlightQuery:h})},P.id))}),r.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:M?.id||false,onChange:(P,w)=>C(w),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:r.map(P=>jsx(Tab,{value:P.id,label:P.label,sx:{textTransform:"none"}},P.id))}),jsxs(Box,{sx:{p:1.5},children:[jsx(Box,{id:`detail-tab-${M?.id||""}`}),M?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:M.description}),M?.content?M.content:jsxs(Stack,{spacing:1.5,children:[(M?.sections||[]).map(P=>jsx(Box,{id:`detail-tab-${M?.id}-section-${P.id}`,children:jsx(Tl,{section:P,highlightQuery:h})},P.id)),M?.fields&&M.fields.length>0&&jsx(Tl,{section:{id:`${M.id}-fields`,title:M.label,fields:M.fields,columns:2},highlightQuery:h})]})]})]}),n&&jsx(Xr,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var Gp=({bucket:e,cardCount:t,highlighted:o=false,children:r,emptyLabel:a,maxHeight:n,sx:i})=>{let{t:s}=ee();return jsx(Paper,{sx:[d=>{let l=e.accentColor??d.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(l,o?.58:d.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(d.palette.background.paper,d.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(l,.22)}`:`0 10px 28px ${alpha(d.palette.common.black,d.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor:l}}},...Array.isArray(i)?i:i?[i]:[]],children:jsxs(Stack,{spacing:1.2,sx:{p:1.5},children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[e.icon,jsx(Typography,{sx:{fontSize:"0.96rem",fontWeight:800},children:e.title})]}),e.description&&jsx(Typography,{sx:{mt:.45,fontSize:"0.76rem",color:"text.secondary",lineHeight:1.45},children:e.description})]}),jsxs(Stack,{direction:"row",spacing:.8,sx:{flexShrink:0},children:[jsx(Chip,{size:"small",label:t,sx:{fontWeight:700}}),typeof e.limit=="number"&&jsx(Chip,{size:"small",label:`${s("kanban.bucket.limit")} ${e.limit}`,color:t>e.limit?"warning":"default",variant:"outlined"})]})]}),o&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700},children:s("kanban.bucket.dropHere")}),jsx(Box,{sx:{minHeight:220,maxHeight:n,overflowY:n?"auto":"visible",pr:n?.4:0},children:t>0?r:jsx(Box,{sx:d=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(d.palette.divider,.9)}`,bgcolor:d.palette.mode==="dark"?alpha(d.palette.common.white,.02):alpha(d.palette.primary.main,.03),display:"grid",placeItems:"center",px:2,textAlign:"center"}),children:jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:a??e.emptyLabel??s("kanban.empty")})})})]})})};var J0={success:"success",warning:"warning",info:"info",error:"error"},ev={critical:"error",high:"warning",medium:"info",low:"success"},tv=(e,t)=>{switch(e){case "critical":return t("kanban.priority.critical");case "high":return t("kanban.priority.high");case "medium":return t("kanban.priority.medium");case "low":return t("kanban.priority.low");default:return e}},ov=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",Bc=({card:e,bucket:t,dragging:o=false,overlay:r=false,onClick:a,sx:n})=>{let{t:i}=ee(),s=!!(a&&t),d=e.tone??(e.priority?ev[e.priority]:"default"),l=d==="default"?"primary":J0[d],c=t?{card:e,bucket:t}:void 0;return jsx(Paper,{onClick:s?()=>c&&a?.(c):void 0,onKeyDown:s?g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),c&&a?.(c));}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,sx:[g=>{let h=d==="default"?g.palette.primary.main:g.palette[l].main;return {position:"relative",overflow:"hidden",p:1.4,borderRadius:3,border:`1px solid ${alpha(h,g.palette.mode==="dark"?.42:.2)}`,bgcolor:alpha(g.palette.background.paper,g.palette.mode==="dark"?.96:.98),boxShadow:r?`0 20px 45px ${alpha(g.palette.common.black,.24)}`:o?"none":`0 8px 24px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.18:.08)}`,transform:r?"rotate(1deg) scale(1.01)":"none",transition:"transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease",cursor:s?"pointer":"default",opacity:o?.5:1,"&::before":{content:'""',position:"absolute",inset:"0 auto 0 0",width:4,bgcolor:h},"&:hover":s?{transform:"translateY(-1px)",boxShadow:`0 14px 32px ${alpha(g.palette.common.black,g.palette.mode==="dark"?.28:.12)}`}:void 0}},...Array.isArray(n)?n:n?[n]:[]],children:jsxs(Stack,{spacing:1.1,children:[jsxs(Box,{sx:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[(e.kicker||t?.title)&&jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:.4,color:"text.secondary",textTransform:"uppercase"},children:e.kicker??t?.title}),jsx(Typography,{sx:{mt:.2,fontSize:"0.98rem",fontWeight:800,lineHeight:1.3},children:e.title})]}),e.priority&&jsx(Chip,{size:"small",color:l,label:tv(e.priority,i),variant:d==="default"?"outlined":"filled",sx:{height:22,fontWeight:700}})]}),e.summary&&jsx(Typography,{sx:{fontSize:"0.82rem",color:"text.secondary",lineHeight:1.5},children:e.summary}),e.metrics&&e.metrics.length>0&&jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Math.min(e.metrics.length,3)}, minmax(0, 1fr))`,gap:.9},children:e.metrics.slice(0,3).map(g=>jsxs(Box,{sx:h=>({borderRadius:2,px:1,py:.8,bgcolor:h.palette.mode==="dark"?alpha(h.palette.common.white,.05):alpha(h.palette.primary.main,.05)}),children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",textTransform:"uppercase",letterSpacing:.35},children:g.label}),jsx(Typography,{sx:{fontSize:"0.86rem",fontWeight:700},children:g.value})]},g.id))}),typeof e.progress=="number"&&jsxs(Box,{children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:.5},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:i("kanban.card.progress")}),jsxs(Typography,{sx:{fontSize:"0.72rem",fontWeight:700},children:[Math.round(e.progress),"%"]})]}),jsx(LinearProgress,{variant:"determinate",value:Math.max(0,Math.min(100,e.progress)),color:l,sx:{height:8,borderRadius:999}})]}),(e.tags?.length||e.assignee||e.dueDate||e.footer||s)&&jsxs(Stack,{spacing:.9,children:[e.tags&&e.tags.length>0&&jsx(Box,{sx:{display:"flex",flexWrap:"wrap",gap:.75},children:e.tags.map(g=>jsx(Chip,{size:"small",label:g.label,color:g.color??"default",variant:"outlined"},g.id))}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8,minWidth:0},children:[e.assignee&&jsxs(Fragment,{children:[jsx(Avatar,{src:e.assignee.avatarSrc,sx:{width:28,height:28,fontSize:"0.75rem"},children:e.assignee.initials??ov(e.assignee.name)}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700,lineHeight:1.2},noWrap:true,children:e.assignee.name}),e.dueDate&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},noWrap:true,children:e.dueDate})]})]}),!e.assignee&&e.dueDate&&jsx(Typography,{sx:{fontSize:"0.76rem",color:"text.secondary"},children:e.dueDate})]}),s&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700,whiteSpace:"nowrap"},children:i("kanban.card.openDetail")})]}),e.footer]})]})})};var av=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,qp=({buckets:e,cards:t})=>{let o=new Map;return t.forEach((r,a)=>{let n=o.get(r.bucketId)??[];n.push({card:r,sourceIndex:a}),o.set(r.bucketId,n);}),{buckets:e.map(r=>{let a=[...o.get(r.id)??[]].sort((n,i)=>n.card.position===void 0&&i.card.position===void 0?n.sourceIndex-i.sourceIndex:n.card.position===void 0?1:i.card.position===void 0?-1:n.card.position-i.card.position||n.sourceIndex-i.sourceIndex).map(({card:n},i)=>({...n,bucketId:r.id,position:i}));return {...r,cards:a}})}},er=(e,t)=>{for(let o=0;o<e.buckets.length;o+=1){let r=e.buckets[o],a=r.cards.findIndex(n=>n.id===t);if(a>=0)return {card:r.cards[a],bucket:r,bucketIndex:o,cardIndex:a}}},Ml=(e,t)=>{let o=er(e,t.cardId);if(!o)return e;let r=e.buckets.findIndex(l=>l.id===t.toBucketId);if(r<0)return e;let a=e.buckets.map(l=>({...l,cards:l.cards.map(c=>({...c}))})),n=a[o.bucketIndex],[i]=n.cards.splice(o.cardIndex,1);if(!i)return e;let s=a[r],d=av(t.targetIndex??s.cards.length,s.cards.length);return s.cards.splice(d,0,{...i,bucketId:t.toBucketId}),{buckets:a.map(l=>({...l,cards:l.cards.map((c,g)=>({...c,bucketId:l.id,position:g}))}))}};var Ec="kanban-card|",Fc="kanban-bucket|",Xp=e=>`${Ec}${e}`,bv=e=>`${Fc}${e}`,Al=e=>e?.startsWith(Ec)?e.slice(Ec.length):void 0,Zp=e=>e?.startsWith(Fc)?e.slice(Fc.length):void 0,yv=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:r,attributes:a,listeners:n,transform:i,transition:s,isDragging:d}=useSortable({id:Xp(e.id)}),l={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:s,zIndex:d?2:1,touchAction:"none",cursor:d?"grabbing":"grab"};return jsx(Box,{ref:r,style:l,...a,...n,children:jsx(Bc,{card:e,bucket:t,dragging:d,onClick:o})})},xv=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:r,onCardClick:a})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:bv(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(Gp,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:r,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(s=>Xp(s.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(s=>jsx(yv,{card:s,bucket:e,onCardClick:a},s.id))})})})})},EB=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:r=320,bucketMaxHeight:a,emptyBucketLabel:n,sx:i})=>{let[s,d]=useState(null),[l,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),h=useMemo(()=>s?er(e,s):void 0,[s,e]),m=useCallback(()=>{d(null),c(void 0);},[]),b=useCallback(p=>{if(!p)return;let f=Al(p);return f?er(e,f)?.bucket.id:Zp(p)},[e]),C=useCallback(p=>{d(Al(String(p.active.id))??null);},[]),u=useCallback(p=>{c(b(p.over?String(p.over.id):void 0));},[b]),v=useCallback(p=>{let f=Al(String(p.active.id)),y=p.over?String(p.over.id):void 0;if(!f||!y){m();return}let k=er(e,f);if(!k){m();return}let E=k.bucket.id,M=k.cardIndex,S=Al(y);if(S){let w=er(e,S);if(!w){m();return}E=w.bucket.id,M=w.cardIndex;}else {let w=Zp(y),B=e.buckets.find(R=>R.id===w);if(!w||!B){m();return}E=w,M=B.cards.length;}if(k.bucket.id===E&&k.cardIndex===M){m();return}let D=Ml(e,{cardId:f,fromBucketId:k.bucket.id,toBucketId:E,targetIndex:M}),P=er(D,f);P&&!(P.bucket.id===k.bucket.id&&P.cardIndex===k.cardIndex)&&t?.({cardId:f,fromBucketId:k.bucket.id,toBucketId:P.bucket.id,targetIndex:P.cardIndex,card:P.card,model:D}),m();},[e,t,m]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:C,onDragOver:u,onDragEnd:v,onDragCancel:m,children:[jsx(Box,{sx:[{display:"grid",gridAutoFlow:"column",gridAutoColumns:`minmax(${r}px, 1fr)`,gap:2,alignItems:"start",overflowX:"auto",pb:.5},...Array.isArray(i)?i:i?[i]:[]],children:e.buckets.map(p=>jsx(xv,{bucket:p,highlighted:p.id===l,bucketMaxHeight:a,emptyBucketLabel:n,onCardClick:o},p.id))}),jsx(DragOverlay,{children:h?jsx(Box,{sx:{width:Math.max(r-24,260)},children:jsx(Bc,{card:h.card,bucket:h.bucket,overlay:true})}):null})]})};var Sv=({initialModel:e,initialBuckets:t,initialCards:o})=>e||qp({buckets:t??[],cards:o??[]}),VB=e=>{let{onCardMove:t,onCardClick:o}=e,[r,a]=useState(()=>Sv(e)),n=useCallback(c=>{a(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>er(r,c),[r]),s=useCallback((c,g,h)=>{let m=er(r,c);if(!m)return;let b=Ml(r,{cardId:c,fromBucketId:m.bucket.id,toBucketId:g,targetIndex:h}),C=er(b,c);if(!C||C.bucket.id===m.bucket.id&&C.cardIndex===m.cardIndex)return;a(b);let u={cardId:c,fromBucketId:m.bucket.id,toBucketId:C.bucket.id,targetIndex:C.cardIndex,card:C.card,model:b};return t?.(u),u},[r,t]),d=useCallback((c,g)=>{a(h=>({buckets:h.buckets.map(m=>({...m,cards:m.cards.map(b=>b.id!==c?b:typeof g=="function"?g(b):{...b,...g})}))}));},[]),l=useMemo(()=>({model:r,onCardMove:c=>{s(c.cardId,c.toBucketId,c.targetIndex);},onCardClick:o}),[r,s,o]);return {model:r,actions:{replaceModel:n,moveCard:s,updateCard:d,getCard:i},boardProps:l}};var em=64,Vv="#E9EDF2",Ov="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",Hv=["en","zh","fr","de","ja","ko"],tm={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Ll=({appTitle:e,logo:t,mode:o="dark",onToggleMode:r,locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,searchPlaceholder:d,onSearch:l,user:c,onUserSetting:g,onUserLogout:h,userMenuItems:m,leftSlot:b,rightSlot:C})=>{let{t:u,locale:v}=ee(),f=useTheme().palette.mode==="dark",[y,k]=useState(""),[E,M]=useState(null),[S,D]=useState(null),P=Y=>{Y.preventDefault(),l&&l(y.trim());},w=o==="system"?jsx(Ev,{fontSize:"small"}):o==="dark"?jsx(Fv,{fontSize:"small"}):jsx(Lv,{fontSize:"small"}),B=u(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),R=a||v,I=i&&i.length>0?i:Hv,A=n||tm[R]||R.toUpperCase(),q=!!E,O=d||u("header.searchPlaceholder"),K=!!S,Q=[{key:"setting",label:u("header.menu.setting"),icon:jsx(sx,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:u("header.menu.logout"),icon:jsx(Nv,{sx:{fontSize:18}}),onClick:h}],ne=m&&m.length>0?m:Q,ie=Y=>{D(null),Y?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:Y=>({top:0,zIndex:Y.zIndex.drawer+10,height:em,backgroundColor:Y.palette.mode==="dark"?"#0D0D0D":Vv,backgroundImage:Y.palette.mode==="dark"?["radial-gradient(circle at 18% 22%, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0) 45%)","radial-gradient(circle at 78% 32%, rgba(144,202,249,0.14) 0%, rgba(144,202,249,0) 42%)","linear-gradient(90deg, #0A0A0A 0%, #151515 50%, #0A0A0A 100%)","linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px)","linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px)"].join(","):["radial-gradient(circle at 22% 22%, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0) 48%)","radial-gradient(circle at 76% 24%, rgba(203,213,225,0.45) 0%, rgba(203,213,225,0) 42%)",Ov,"linear-gradient(rgba(15,23,42,0.05) 1px, transparent 1px)","linear-gradient(90deg, rgba(15,23,42,0.04) 1px, transparent 1px)"].join(","),backgroundSize:"auto, auto, auto, 24px 24px, 24px 24px",borderBottom:"1px solid",borderColor:Y.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${em}px !important`,px:2,gap:2},children:[jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,sx:{minWidth:220},children:[b,t===null?null:t||jsx(Box,{component:"img",src:"/orbcafe.png",alt:"ORBCAFE Logo",sx:{width:44,height:44,display:"block",objectFit:"contain",flexShrink:0}}),e&&jsx(Typography,{variant:"h6",sx:{fontWeight:700,color:f?"common.white":"#111827"},children:e})]}),jsx(Box,{sx:{flex:1,display:"flex",justifyContent:"center",minWidth:0},children:jsx(Box,{component:"form",onSubmit:P,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:y,onChange:Y=>k(Y.target.value),placeholder:O,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Xd,{sx:{color:f?"rgba(255,255,255,0.7)":"rgba(15,23,42,0.55)",fontSize:18}})}),sx:{color:f?"common.white":"rgba(17,24,39,0.9)",bgcolor:f?"rgba(255,255,255,0.08)":"#ffffff",borderRadius:999,"& .MuiOutlinedInput-notchedOutline":{borderColor:f?"rgba(255,255,255,0.15)":"rgba(15,23,42,0.2)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:f?"rgba(255,255,255,0.35)":"rgba(15,23,42,0.35)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:f?"rgba(255,255,255,0.5)":"rgba(15,23,42,0.55)"}}},inputProps:{style:{color:f?"white":"#111827"}}})})}),jsxs(Stack,{direction:"row",alignItems:"center",spacing:1.5,children:[s?jsxs(Fragment,{children:[jsx(IconButton,{size:"small",onClick:Y=>M(Y.currentTarget),sx:{color:f?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(Jp,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:A})]})}),jsx(Menu,{anchorEl:E,open:q,onClose:()=>M(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:I.map(Y=>jsx(MenuItem,{selected:Y===R,onClick:()=>{s(Y),M(null);},sx:{fontSize:"0.82rem"},children:tm[Y]},Y))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(Jp,{sx:{color:f?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:f?"common.white":"#111827",fontWeight:500},children:A})]}),jsx(IconButton,{size:"small",sx:{color:f?"common.white":"#111827"},onClick:r,title:B,children:w}),c&&jsxs(Stack,{direction:"row",alignItems:"center",spacing:1,children:[jsxs(Box,{sx:{textAlign:"right",minWidth:0},children:[jsx(Typography,{variant:"body2",sx:{color:f?"common.white":"#111827",fontWeight:700,lineHeight:1.15},children:c.name}),c.subtitle&&jsx(Typography,{variant:"caption",sx:{display:"block",mt:.25,color:f?"rgba(255,255,255,0.72)":"rgba(17,24,39,0.62)",fontSize:"0.72rem",lineHeight:1.1,letterSpacing:"0.01em",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:220},title:c.subtitle,children:c.subtitle})]}),jsx(IconButton,{size:"small",onClick:Y=>D(Y.currentTarget),sx:{p:0},children:jsx(Avatar,{src:c.avatarSrc,imgProps:{style:{objectFit:"cover"}},sx:{width:34,height:34,bgcolor:"grey.100",color:"grey.700",fontSize:"0.85rem"},children:c.avatarText||c.name.slice(0,1).toUpperCase()})})]}),C]})]}),c&&jsx(Menu,{anchorEl:S,open:K,onClose:()=>D(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},slotProps:{paper:{sx:{minWidth:160,"& .MuiMenuItem-root":{minHeight:34,py:.5,px:1.25}}}},children:ne.map(Y=>jsxs(MenuItem,{disabled:Y.disabled,onClick:()=>ie(Y.onClick),children:[Y.icon&&jsx(ListItemIcon,{children:Y.icon}),jsx(ListItemText,{primary:Y.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},Y.key))})]})};var om=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=Gd({initialCollapsed:t,content:e}),[r,a]=useState(900);useEffect(()=>{let i=()=>a(window.innerHeight);return i(),window.addEventListener("resize",i),()=>window.removeEventListener("resize",i)},[]);let n=useMemo(()=>Math.max(280,r-100),[r]);return {navigationIslandProps:o,navigationMaxHeight:n}};var sE=({appTitle:e,menuData:t=[],children:o,showNavigation:r=true,locale:a="en",localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,logo:h,onSearch:m,rightHeaderSlot:b,leftHeaderSlot:C,contentSx:u})=>{let v="orbcafe:page-layout-mode",[p,f]=useState("system"),[y,k]=useState("light"),[E,M]=useState(false),S=p==="system"?E?y:"light":p;useEffect(()=>{try{let I=window.localStorage.getItem(v);(I==="light"||I==="dark"||I==="system")&&f(I);}catch{}M(true);let B=window.matchMedia("(prefers-color-scheme: dark)"),R=()=>{k(B.matches?"dark":"light");};return R(),B.addEventListener("change",R),()=>B.removeEventListener("change",R)},[]),useEffect(()=>{if(E)try{window.localStorage.setItem(v,p);}catch{}},[E,p]),useEffect(()=>{S==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[S]);let D=useMemo(()=>createTheme({palette:{mode:S}}),[S]),{navigationIslandProps:P,navigationMaxHeight:w}=om({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:D,children:jsx(Ei,{locale:a,children:jsxs(Box,{sx:B=>({minHeight:"100vh",width:"100%",display:"flex",flexDirection:"column",overflowX:"hidden",background:B.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":B.palette.background.default}),children:[jsx(Ll,{appTitle:e,logo:h,mode:p,onToggleMode:()=>f(B=>B==="system"?"dark":B==="dark"?"light":"system"),locale:a,localeLabel:n,localeOptions:i,onLocaleChange:s,user:d,onUserSetting:l,onUserLogout:c,userMenuItems:g,onSearch:m,leftSlot:C,rightSlot:b}),jsxs(Box,{sx:{flex:1,minHeight:0,minWidth:0,display:"flex",overflowX:"hidden"},children:[r&&jsx(Box,{sx:{p:1.5,display:"flex",alignItems:"flex-start",flexShrink:0},children:jsx(Wd,{...P,maxHeight:w,colorMode:S})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...u},children:o})]})]})})})};var Nl="(blank)",am="Result",nm="Grand Total",im={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},lm=["sum","count","avg","min","max"];var sm=["palette","rows","columns","filters","values"];var cm=e=>sm.includes(e),dm=e=>e==="rows"||e==="columns"||e==="filters",Vl=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&cm(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&cm(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},Pr=e=>e==null||e===""?Nl:e instanceof Date?e.toISOString().slice(0,10):String(e),Ia=e=>JSON.stringify(e),um=(e,t)=>{let o=e.join(""),r=t.join("");return o.localeCompare(r,void 0,{sensitivity:"base"})},jv=e=>{if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isFinite(t)?t:null}return null},dn=(e,t,o)=>{if(o==="count")return e.length;let r=e.map(a=>jv(a[t])).filter(a=>a!==null);return r.length===0?0:o==="sum"?r.reduce((a,n)=>a+n,0):o==="avg"?r.reduce((a,n)=>a+n,0)/r.length:o==="min"?Math.min(...r):Math.max(...r)},Nt=(e,t)=>{if(!e||e.length===0)return [];let o=new Set,r=[];return e.forEach(a=>{!t.has(a)||o.has(a)||(o.add(a),r.push(a));}),r},Rr=(e,t)=>e.length!==t.length?false:e.every((o,r)=>o===t[r]),pm=(e,t)=>{let o=Object.keys(e),r=Object.keys(t);return o.length!==r.length?false:o.every(a=>{let n=e[a]??[],i=t[a]??[];return Rr(n,i)})},Ol=(e,t)=>e.length!==t.length?false:e.every((o,r)=>{let a=t[r];return o.tokenId===a.tokenId&&o.fieldId===a.fieldId&&o.aggregation===a.aggregation}),Oc=e=>!e?.aggregations||e.aggregations.length===0?lm:e.aggregations,lo=(e,t)=>{let o=Oc(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},mi=(e,t,o)=>{let r=o.get(t.fieldId);return r?.formatValue?r.formatValue(e):t.aggregation==="count"?Math.round(e).toLocaleString():e.toLocaleString(void 0,{minimumFractionDigits:0,maximumFractionDigits:2})};var fm=({options:e,selectedValues:t,onChange:o,minWidth:r=96})=>{let{t:a}=ee(),[n,i]=useState(""),s=useMemo(()=>{let l=n.trim().toLowerCase();return l?e.filter(c=>c.toLowerCase().includes(l)):e},[e,n]),d=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:r},children:jsxs(Select,{multiple:true,value:t,onChange:l=>{let c=l.target.value,g=typeof c=="string"?c.split(","):c;o(g);},onClick:l=>l.stopPropagation(),onMouseDown:l=>l.stopPropagation(),renderValue:l=>{let c=l;return e.length===0?a("pivot.filter.na"):c.length===0?a("common.none"):c.length===e.length?a("common.all"):`${c.length}/${e.length}`},MenuProps:{PaperProps:{sx:{maxHeight:320,bgcolor:"background.paper"}}},sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:[jsx(ListSubheader,{disableSticky:true,sx:l=>({bgcolor:"background.paper",py:.8,lineHeight:"normal",borderBottom:`1px solid ${l.palette.divider}`}),children:jsx(TextField,{size:"small",placeholder:`${a("common.search")}...`,fullWidth:true,value:n,onChange:l=>i(l.target.value),onKeyDown:l=>l.stopPropagation(),onClick:l=>l.stopPropagation(),sx:{m:0,"& .MuiInputBase-input":{fontSize:"0.75rem",py:.7}}})}),jsx(Box,{sx:l=>({px:1.5,py:.5,borderBottom:`1px solid ${l.palette.divider}`,bgcolor:"background.paper"}),onMouseDown:l=>{l.preventDefault(),l.stopPropagation();},onClick:l=>{l.preventDefault(),l.stopPropagation();},children:jsx(Button,{variant:"text",size:"small",onClick:l=>{l.preventDefault(),l.stopPropagation(),o(d?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:a(d?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),s.length===0&&jsx(MenuItem,{disabled:true,sx:{fontSize:"0.75rem"},children:a("pivot.filter.noResults")}),s.map(l=>{let c=t.includes(l);return jsxs(MenuItem,{value:l,sx:{fontSize:"0.75rem",py:.25},children:[jsx(Checkbox,{size:"small",checked:c,sx:{p:.5,mr:.5}}),jsx(ListItemText,{primary:l,primaryTypographyProps:{sx:{fontSize:"0.75rem",lineHeight:1.2}}})]},l)})]})})};var Wc=({label:e,subtitle:t,isDragging:o,dragRef:r,listeners:a,attributes:n,style:i})=>jsx(Paper,{ref:r,...a,...n,sx:s=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:s.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none"}),style:{...i,opacity:o?.3:1,cursor:o?"grabbing":"grab"},children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{sx:s=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.3,borderRadius:1,bgcolor:s.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)"}),children:jsx(iC,{sx:{fontSize:16,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary",lineHeight:1.2},children:t})]})]})}),ym=({id:e,label:t,subtitle:o})=>{let{setNodeRef:r,listeners:a,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(Wc,{label:t,subtitle:o,isDragging:i,dragRef:r,listeners:a,attributes:n})};var mn=({zone:e,title:t,hint:o,icon:r,children:a,itemCount:n,onClear:i})=>{let s=`container|${e}`,{isOver:d,setNodeRef:l}=useDroppable({id:s}),{t:c}=ee();return jsxs(Paper,{ref:l,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:d?"primary.main":g.palette.divider,bgcolor:d?g.palette.mode==="dark"?"rgba(25, 118, 210, 0.16)":"rgba(47, 91, 255, 0.06)":g.palette.mode==="dark"?"rgba(255,255,255,0.02)":"rgba(245, 248, 255, 0.86)",transition:"all 120ms ease",minHeight:120,display:"flex",flexDirection:"column"}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1},children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[r,jsx(Typography,{sx:{fontSize:"0.79rem",fontWeight:800,letterSpacing:.2},children:t}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:["(",n,")"]})]}),n>0&&i&&jsx(Tooltip,{title:c("pivot.clearArea"),children:jsx(IconButton,{size:"small",onClick:i,sx:{p:.25},children:jsx(uC,{sx:{fontSize:16}})})})]}),jsx(Typography,{sx:{mt:.5,mb:.9,fontSize:"0.7rem",color:"text.secondary"},children:o}),jsx(Box,{sx:{flex:1},children:a})]})};var vm={xs:1.2,md:1.6},fn=({title:e,subtitle:t,collapsed:o,onToggleCollapse:r,expandAriaLabel:a,collapseAriaLabel:n,children:i,bodySx:s,unmountOnExit:d=false,headerActions:l})=>jsxs(Paper,{sx:c=>({borderRadius:3,border:`1px solid ${c.palette.divider}`,overflow:"hidden",bgcolor:alpha(c.palette.background.paper,.95)}),children:[jsxs(Box,{sx:c=>({px:vm,py:1,display:"flex",alignItems:"center",justifyContent:"space-between",gap:1,borderBottom:o?"none":`1px solid ${c.palette.divider}`}),children:[jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.9rem",fontWeight:800},children:e}),jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.75,flexShrink:0},children:[l,jsx(IconButton,{size:"small","aria-label":o?a:n,onClick:r,sx:c=>({border:`1px solid ${c.palette.divider}`,bgcolor:alpha(c.palette.background.paper,.88),width:28,height:28,borderRadius:999,flexShrink:0,"&:hover":{bgcolor:c.palette.mode==="dark"?alpha(c.palette.primary.main,.18):alpha(c.palette.primary.main,.08)}}),children:jsx(cx,{sx:{fontSize:16,transition:"transform 220ms cubic-bezier(0.2, 0, 0, 1)",transform:o?"rotate(180deg)":"rotate(0deg)"}})})]})]}),jsx(Collapse,{in:!o,timeout:260,easing:"cubic-bezier(0.2, 0, 0, 1)",unmountOnExit:d,children:jsx(Box,{sx:[{px:vm,py:{xs:1.2,md:1.6}},...Array.isArray(s)?s:s?[s]:[]],children:i})})]});var Ul=({label:e,caption:t,onRemove:o,trailing:r,isDragging:a,dragRef:n,listeners:i,attributes:s,style:d})=>jsx(Paper,{ref:n,style:d,sx:l=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:l.palette.mode==="dark"?"#111111":"background.paper",touchAction:"none",opacity:a?0:1}),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.8},children:[jsx(Box,{...s,...i,sx:l=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.25,borderRadius:1,bgcolor:l.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)",cursor:"grab"}),children:jsx(iC,{sx:{fontSize:15,color:"text.secondary"}})}),jsxs(Box,{sx:{minWidth:0,flex:1},children:[jsx(Typography,{sx:{fontSize:"0.8rem",fontWeight:700,lineHeight:1.2},children:e}),t&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary",lineHeight:1.2},children:t})]}),r,o&&jsx(IconButton,{size:"small",onClick:l=>{l.stopPropagation(),o();},sx:{p:.2},children:jsx(bh,{sx:{fontSize:16}})})]})}),gi=({id:e,label:t,caption:o,onRemove:r,trailing:a})=>{let{setNodeRef:n,attributes:i,listeners:s,transform:d,transition:l,isDragging:c}=useSortable({id:e}),g={transform:d?`translate3d(${d.x}px, ${d.y}px, 0)`:void 0,transition:l,zIndex:c?999:"auto"};return jsx(Ul,{label:t,caption:o,onRemove:r,trailing:a,isDragging:c,dragRef:n,listeners:s,attributes:i,style:g})};var _l={rows:jsx(TC,{fontSize:"small"}),columns:jsx(Bh,{fontSize:"small"}),filters:jsx(wC,{fontSize:"small"}),values:jsx(zh,{fontSize:"small"})},Sm=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:r,filterFields:a,columnFields:n,rowFields:i,valueFields:s,clearZone:d,removeFieldFromZone:l,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:h,getAggregationLabel:m})=>{let{t:b}=ee(),C=[`${b("pivot.zone.rows")} ${i.length}`,`${b("pivot.zone.columns")} ${n.length}`,`${b("pivot.zone.filters")} ${a.length}`,`${b("pivot.zone.values")} ${s.length}`].join(" \xB7 ");return jsx(fn,{title:b("pivot.config.title"),subtitle:C,collapsed:e,onToggleCollapse:t,expandAriaLabel:b("pivot.collapse.ariaExpand"),collapseAriaLabel:b("pivot.collapse.ariaCollapse"),unmountOnExit:true,children:jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",lg:"260px 1fr"},gap:2},children:[jsx(mn,{zone:"palette",title:b("pivot.fieldList"),hint:b("pivot.availableDimensions"),itemCount:o.length,icon:jsx(iC,{sx:{fontSize:16,color:"text.secondary"}}),children:jsxs(Stack,{spacing:.8,sx:{maxHeight:400,overflowY:"auto",pr:.5},children:[o.length===0&&jsx(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary",py:1},children:b("pivot.allFieldsInUse")}),o.map(u=>jsx(ym,{id:`item|palette|${u.id}`,label:u.label,subtitle:u.type??"string"},u.id))]})}),jsxs(Stack,{spacing:2,children:[jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(mn,{zone:"filters",title:b("pivot.zone.filters"),hint:b("pivot.hint.filters"),icon:_l.filters,itemCount:a.length,onClear:()=>d("filters"),children:jsx(SortableContext,{items:a.map(u=>`item|filters|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:a.map(u=>jsx(gi,{id:`item|filters|${u}`,label:r.get(u)?.label??u,caption:c(u),trailing:g(u),onRemove:()=>l("filters",u)},u))})})}),jsx(mn,{zone:"columns",title:b("pivot.zone.columns"),hint:b("pivot.hint.columns"),icon:_l.columns,itemCount:n.length,onClear:()=>d("columns"),children:jsx(SortableContext,{items:n.map(u=>`item|columns|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(u=>jsx(gi,{id:`item|columns|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("columns",u)},u))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(mn,{zone:"rows",title:b("pivot.zone.rows"),hint:b("pivot.hint.rows"),icon:_l.rows,itemCount:i.length,onClear:()=>d("rows"),children:jsx(SortableContext,{items:i.map(u=>`item|rows|${u}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(u=>jsx(gi,{id:`item|rows|${u}`,label:r.get(u)?.label??u,caption:`${r.get(u)?.type??"dimension"} \u2022 ${c(u)}`,trailing:g(u),onRemove:()=>l("rows",u)},u))})})}),jsx(mn,{zone:"values",title:b("pivot.zone.values"),hint:b("pivot.hint.values"),icon:_l.values,itemCount:s.length,onClear:()=>d("values"),children:jsx(SortableContext,{items:s.map(u=>`item|values|${u.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:s.map(u=>{let v=r.get(u.fieldId)?.label??u.fieldId,p=`${m(u.aggregation)}(${v})`;return jsx(gi,{id:`item|values|${u.tokenId}`,label:v,caption:p,trailing:h(u),onRemove:()=>l("values",u.tokenId)},u.tokenId)})})})})]})]})]})})};var wm=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),Tm=({data:e,primaryLabel:t,secondaryLabel:o,formatPrimaryValue:r,formatSecondaryValue:a})=>{let n=useTheme$1();if(e.length===0)return null;let i=720,s=250,d={top:20,right:24,bottom:40,left:52},l=o?e.map(u=>u.primaryValue):e.map((u,v)=>v+1),c=o?e.map(u=>u.secondaryValue??0):e.map(u=>u.primaryValue),g=Math.max(...l,1),h=Math.max(...c,1),m=i-d.left-d.right,b=s-d.top-d.bottom,C=e.map((u,v)=>{let p=o?u.primaryValue:v+1,f=o?u.secondaryValue??0:u.primaryValue,y=d.left+p/g*m,k=s-d.bottom-f/h*b;return {...u,x:y,y:k,rawX:p,rawY:f}});return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${i} ${s}`,sx:{width:"100%",minWidth:i,height:s},children:[jsx("line",{x1:d.left,y1:s-d.bottom,x2:i-d.right,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:d.left,y1:d.top,x2:d.left,y2:s-d.bottom,stroke:alpha(n.palette.text.secondary,.35)}),C.map(u=>jsxs("g",{children:[jsx("circle",{cx:u.x,cy:u.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:u.x,cy:u.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[u.name,`
13
+ `,o?`${t}: ${r(u.primaryValue)}`:`${t}: ${r(u.primaryValue)}`,o?`
14
+ ${o}: ${(a??r)(u.secondaryValue??0)}`:""]})}),jsx("text",{x:u.x,y:Math.max(u.y-12,d.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:u.name})]},u.name)),jsx("text",{x:i/2,y:s-10,textAnchor:"middle",fontSize:"11",fill:n.palette.text.secondary,children:o?t:"Index"}),jsx("text",{x:16,y:s/2,textAnchor:"middle",transform:`rotate(-90 16 ${s/2})`,fontSize:"11",fill:n.palette.text.secondary,children:o??t}),jsx("text",{x:d.left,y:d.top-4,fontSize:"10",fill:n.palette.text.secondary,children:wm(h)}),jsx("text",{x:i-d.right,y:s-d.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:wm(g)})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",lg:"repeat(3, minmax(0, 1fr))"},gap:1},children:e.map(u=>jsxs(Box,{sx:v=>({borderRadius:2,px:1.25,py:1,border:`1px solid ${alpha(v.palette.divider,.7)}`,bgcolor:alpha(v.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:u.name,children:u.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",r(u.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(a??r)(u.secondaryValue??0)]})]},u.name))})]})};var _c=e=>Math.max(...e,1),Pm=({data:e,chartType:t,primaryLabel:o,secondaryLabel:r,formatPrimaryValue:a,formatSecondaryValue:n})=>{let i=useTheme$1(),s=i.palette.primary.main,d=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let p=_c(e.flatMap(f=>[f.primaryValue,f.secondaryValue??0]));return jsx(Stack,{spacing:1.1,children:e.map(f=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",md:"160px 1fr 128px"},gap:1.25,alignItems:"center"},children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:f.name,children:f.name}),jsxs(Stack,{spacing:.65,children:[jsx(Box,{sx:{height:10,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${f.primaryValue/p*100}%`,height:"100%",bgcolor:s}})}),r&&jsx(Box,{sx:{height:8,borderRadius:999,overflow:"hidden",bgcolor:alpha(i.palette.action.active,.08)},children:jsx(Box,{sx:{width:`${(f.secondaryValue??0)/p*100}%`,height:"100%",bgcolor:d}})})]}),jsxs(Box,{sx:{minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},fontWeight:700},children:a(f.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.72rem",textAlign:{xs:"left",md:"right"},color:"text.secondary"},children:(n??a)(f.secondaryValue??0)})]})]},f.name))})}if(t==="bar-vertical"){let p=_c(e.flatMap(y=>[y.primaryValue,y.secondaryValue??0])),f=r?92:76;return jsx(Box,{sx:{overflowX:"auto",pb:.5},children:jsx(Box,{sx:{minWidth:Math.max(620,e.length*f),display:"grid",gridTemplateColumns:`repeat(${e.length}, minmax(56px, 1fr))`,gap:1,alignItems:"end"},children:e.map(y=>jsxs(Box,{sx:{minWidth:0},children:[jsxs(Box,{sx:{height:210,display:"flex",alignItems:"flex-end",justifyContent:"center",gap:.8},children:[jsx(Box,{sx:{width:r?16:26,minHeight:8,height:`${Math.max(y.primaryValue/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:s},title:`${o}: ${a(y.primaryValue)}`}),r&&jsx(Box,{sx:{width:16,minHeight:8,height:`${Math.max((y.secondaryValue??0)/p*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:d},title:`${r}: ${(n??a)(y.secondaryValue??0)}`})]}),jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:y.name,children:y.name}),jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:a(y.primaryValue),children:a(y.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:(n??a)(y.secondaryValue??0),children:(n??a)(y.secondaryValue??0)})]},y.name))})})}let l=Math.max(680,e.length*74),c=240,g={top:20,right:18,bottom:36,left:18},h=_c(e.flatMap(p=>[p.primaryValue,p.secondaryValue??0])),m=l-g.left-g.right,b=c-g.top-g.bottom,C=p=>e.map((f,y)=>{let k=g.left+y*m/Math.max(e.length-1,1),E=c-g.bottom-p(f)/h*b;return {x:k,y:E,item:f}}),u=C(p=>p.primaryValue),v=r?C(p=>p.secondaryValue??0):[];return jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.1},children:[jsx(Box,{sx:{overflowX:"auto"},children:jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${c}`,sx:{width:"100%",minWidth:l,height:c},children:[jsx("line",{x1:g.left,y1:c-g.bottom,x2:l-g.right,y2:c-g.bottom,stroke:alpha(i.palette.text.secondary,.35)}),jsx("polyline",{fill:"none",stroke:s,strokeWidth:3,points:u.map(p=>`${p.x},${p.y}`).join(" ")}),u.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:4,fill:s,children:jsxs("title",{children:[p.item.name,`
15
+ `,o,": ",a(p.item.primaryValue)]})},`primary-${p.item.name}`)),r&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:d,strokeWidth:2.5,strokeDasharray:"5 5",points:v.map(p=>`${p.x},${p.y}`).join(" ")}),v.map(p=>jsx("circle",{cx:p.x,cy:p.y,r:3.5,fill:d,children:jsxs("title",{children:[p.item.name,`
16
+ `,r,": ",(n??a)(p.item.secondaryValue??0)]})},`secondary-${p.item.name}`))]})]})}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1},children:e.map(p=>jsxs(Box,{sx:f=>({borderRadius:2,px:1.1,py:.9,border:`1px solid ${alpha(f.palette.divider,.7)}`,bgcolor:alpha(f.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:p.name,children:p.name}),jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:a(p.primaryValue)}),r&&jsx(Typography,{sx:{fontSize:"0.71rem",color:"text.secondary"},children:(n??a)(p.secondaryValue??0)})]},p.name))})]})};var Rm=(e,t,o)=>{let r=new Set,a=[];return e.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"rows"}));}),t.forEach(n=>{r.has(n)||(r.add(n),a.push({fieldId:n,label:o.get(n)?.label??n,zone:"columns"}));}),a},Dm=(e,t,o)=>e.map(r=>{let a=t.get(r.fieldId),n=a?.label??r.fieldId;return {fieldId:r.fieldId,label:`${o(r.aggregation)} \xB7 ${n}`,item:r,field:a}}),Mm=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:r})=>{if(!t)return [];let a=new Map;return e.forEach(n=>{let i=Pr(n[t]),s=a.get(i);if(s){s.push(n);return}a.set(i,[n]);}),Array.from(a.entries()).sort((n,i)=>n[0].localeCompare(i[0],void 0,{sensitivity:"base"})).map(([n,i])=>({name:n,primaryValue:dn(i,o.fieldId,o.aggregation),secondaryValue:r?dn(i,r.fieldId,r.aggregation):void 0}))};var Am=({rows:e,fieldMap:t,rowFields:o,columnFields:r,valueFields:a,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:s,chartType:d,isCollapsed:l,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:h,onChartTypeChange:m,onToggleCollapse:b,getAggregationLabel:C})=>{let{t:u}=ee(),v=useMemo(()=>Rm(o,r,t),[r,t,o]),p=useMemo(()=>Dm(a,t,C),[t,C,a]),f=p.find(w=>w.fieldId===i)??p[0],y=p.find(w=>w.fieldId===s&&w.fieldId!==f?.fieldId)??null,k=v.find(w=>w.fieldId===n)??v[0],E=k&&f?u("pivot.chart.subtitleReady",{dimension:k.label,measure:y?`${f.label} / ${y.label}`:f.label}):u("pivot.chart.subtitle"),M=useMemo(()=>!k||!f?[]:Mm({rows:e,dimensionFieldId:k.fieldId,primaryValue:f.item,secondaryValue:y?.item}),[f,e,y,k]),S=w=>f?mi(w,f.item,t):w.toLocaleString(),D=w=>y?mi(w,y.item,t):w.toLocaleString(),P=v.length>1||p.length>1;return jsxs(fn,{title:u("pivot.chart.title"),subtitle:E,collapsed:l,onToggleCollapse:b,expandAriaLabel:u("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:u("pivot.chart.collapse.ariaCollapse"),bodySx:{display:"flex",flexDirection:"column",gap:1.1},children:[P&&jsxs(Box,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(2, minmax(0, 1fr))",xl:"repeat(4, minmax(0, 1fr))"},gap:1,alignItems:"start"},children:[jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.dimension")}),jsx(Select,{value:k?.fieldId??"",onChange:w=>c(String(w.target.value)),sx:{fontSize:"0.75rem",height:32},children:v.map(w=>jsx(MenuItem,{value:w.fieldId,sx:{fontSize:"0.75rem"},children:w.label},w.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.primaryMeasure")}),jsx(Select,{value:f?.fieldId??"",onChange:w=>g(String(w.target.value)),sx:{fontSize:"0.75rem",height:32},children:p.map(w=>jsx(MenuItem,{value:w.fieldId,sx:{fontSize:"0.75rem"},children:w.label},w.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:y?.fieldId??"",onChange:w=>h(String(w.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("common.none")}),p.filter(w=>w.fieldId!==f?.fieldId).map(w=>jsx(MenuItem,{value:w.fieldId,sx:{fontSize:"0.75rem"},children:w.label},w.fieldId))]})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:u("pivot.chart.chartType")}),jsxs(Select,{value:d,onChange:w=>m(w.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:u("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:k?f?M.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoData")})}):d==="scatter"?jsx(Tm,{data:M,primaryLabel:f.label,secondaryLabel:y?.label,formatPrimaryValue:S,formatSecondaryValue:D}):jsx(Pm,{data:M,chartType:d,primaryLabel:f.label,secondaryLabel:y?.label,formatPrimaryValue:S,formatSecondaryValue:D}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:u("pivot.chart.emptyNoDimension")})})})]})};var Xl=({node:e,dataColumns:t,fieldMap:o,level:r,expandedKeys:a,onToggle:n,getValue:i})=>{let s=a.has(e.key),d=e.children.length>0,l=e.isGrandTotal;return jsxs(Fragment,{children:[jsxs(TableRow,{sx:c=>({bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.22)":"rgba(47, 91, 255, 0.08)":c.palette.mode==="dark"?"#111111":"background.paper","&:hover":{bgcolor:l?c.palette.mode==="dark"?"rgba(25, 118, 210, 0.28)":"rgba(47, 91, 255, 0.12)":c.palette.mode==="dark"?"#181818":"rgba(0, 0, 0, 0.02)"}}),children:[jsxs(TableCell,{sx:c=>({fontSize:"0.76rem",fontWeight:l?800:600,borderBottom:`1px solid ${c.palette.divider}`,whiteSpace:"nowrap",pl:r*2+1,display:"flex",alignItems:"center",height:40}),children:[d&&!l&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:s?jsx(cb,{sx:{fontSize:16}}):jsx(uf,{sx:{fontSize:16}})}),!d&&!l&&r>0&&jsx(Box,{sx:{width:20}}),e.value]}),t.map(c=>jsx(TableCell,{align:"right",sx:{fontSize:"0.76rem",fontWeight:l?800:500,borderBottom:g=>`1px solid ${g.palette.divider}`,whiteSpace:"nowrap"},children:mi(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),s&&e.children.map(c=>jsx(Xl,{node:c,dataColumns:t,fieldMap:o,level:r+1,expandedKeys:a,onToggle:n,getValue:i},c.key))]})};var Qc=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},Jl=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Jc=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",Vm=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children.length>0&&(t.add(a.key),o(a.children));});};return o(e),t},Hm=(e,t,o=0)=>e.length===0?o:e.reduce((r,a)=>a.children.length===0||!t.has(a.key)?Math.max(r,o+1):Math.max(r,Hm(a.children,t,o+1)),o),lk=(e,t)=>{let o=[],r=a=>{a.forEach(n=>{if(n.children.length>0&&t.has(n.key)){r(n.children);return}o.push(n);});};return r(e),o},X5=({title:e,rows:t,fields:o,initialLayout:r,initialChart:a,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:s=false,initialTableCollapsed:d=false,model:l,enablePresetManagement:c=false,presets:g,defaultPresets:h,onPresetsChange:m,initialPresetId:b,onPresetApplied:C})=>{let{t:u}=ee(),v=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),p=useRef(0),f=useRef(false),y=e??u("pivot.title.default"),k=n??u("pivot.empty"),E=useMemo(()=>({sum:u("pivot.agg.sum"),count:u("pivot.agg.count"),avg:u("pivot.agg.avg"),min:u("pivot.agg.min"),max:u("pivot.agg.max")}),[u]),M=useCallback(x=>E[x]??im[x],[E]),S=useMemo(()=>new Set(o.map(x=>x.id)),[o]),D=useMemo(()=>new Map(o.map(x=>[x.id,x])),[o]),[P,w]=useState(()=>Nt(r?.rows,S)),[B,R]=useState(()=>Nt(r?.columns,S)),[I,A]=useState(()=>Nt(r?.filters,S)),[q,O]=useState(()=>{let x=r?.values??[],F=new Set,L=[];return x.forEach(Z=>{if(!S.has(Z.fieldId)||F.has(Z.fieldId))return;F.add(Z.fieldId),p.current+=1;let de=D.get(Z.fieldId);L.push({tokenId:`v${p.current}`,fieldId:Z.fieldId,aggregation:lo(Z.aggregation,de)});}),L}),[K,Q]=useState({}),[ne,ie]=useState(true),[Y,Ae]=useState(false),[Ze,ht]=useState(()=>Qc(Nt(r?.rows,S),Nt(r?.columns,S),a?.dimensionFieldId)),[fe,We]=useState(()=>{let x=(r?.values??[]).filter((F,L,Z)=>S.has(F.fieldId)&&Z.findIndex(de=>de.fieldId===F.fieldId)===L).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:lo(F.aggregation,D.get(F.fieldId))}));return Jl(x,a?.primaryValueFieldId)}),[Ee,Tt]=useState(()=>{let x=(r?.values??[]).filter((L,Z,de)=>S.has(L.fieldId)&&de.findIndex(Pe=>Pe.fieldId===L.fieldId)===Z).map(L=>({tokenId:L.fieldId,fieldId:L.fieldId,aggregation:lo(L.aggregation,D.get(L.fieldId))})),F=Jl(x,a?.primaryValueFieldId);return Jc(x,F,a?.secondaryValueFieldId)}),[_e,ze]=useState(a?.chartType??"bar-vertical"),[Ue,tt]=useState(s),[_,le]=useState(d),[Re,Ne]=useState(()=>h??[]),[G,j]=useState(""),[Te,Ce]=useState(false),[De,ot]=useState(""),[je,eo]=useState(null),[Zt,It]=useState(new Set(["__grand_total__"])),[po,Et]=useState(new Set),Fe=l?.rowFields??P,Se=l?.columnFields??B,bt=l?.filterFields??I,Ke=l?.valueFields??q,Ft=l?.filterSelections??K,mo=l?.showGrandTotal??ne,go=l?.isConfiguratorCollapsed??Y,Xt=l?.chartDimensionFieldId??Ze,yt=l?.chartPrimaryValueFieldId??fe,fo=l?.chartSecondaryValueFieldId??Ee,ho=l?.chartType??_e,bo=l?.isChartCollapsed??Ue,Uo=l?.isTableCollapsed??_,ut=g??Re,to=c||ut.length>0||!!m,xt=useCallback(x=>{if(l?.setRowFields){l.setRowFields(x);return}w(x);},[l]),z=useCallback(x=>{if(l?.setColumnFields){l.setColumnFields(x);return}R(x);},[l]),V=useCallback(x=>{if(l?.setFilterFields){l.setFilterFields(x);return}A(x);},[l]),H=useCallback(x=>{if(l?.setValueFields){l.setValueFields(x);return}O(x);},[l]),ae=useCallback(x=>{if(l?.setFilterSelections){l.setFilterSelections(x);return}Q(x);},[l]),se=useCallback(x=>{if(l?.setShowGrandTotal){l.setShowGrandTotal(x);return}ie(x);},[l]),ke=useCallback(x=>{if(l?.setIsConfiguratorCollapsed){l.setIsConfiguratorCollapsed(x);return}Ae(x);},[l]),T=useCallback(x=>{if(l?.setChartDimensionFieldId){l.setChartDimensionFieldId(x);return}ht(x);},[l]),N=useCallback(x=>{if(l?.setChartPrimaryValueFieldId){l.setChartPrimaryValueFieldId(x);return}We(x);},[l]),U=useCallback(x=>{if(l?.setChartSecondaryValueFieldId){l.setChartSecondaryValueFieldId(x);return}Tt(x);},[l]),J=useCallback(x=>{if(l?.setChartType){l.setChartType(x);return}ze(x);},[l]),ue=useCallback(x=>{if(l?.setIsChartCollapsed){l.setIsChartCollapsed(x);return}tt(x);},[l]),he=useCallback(x=>{if(l?.setIsTableCollapsed){l.setIsTableCollapsed(x);return}le(x);},[l]),ye=useCallback(x=>{let F=typeof x=="function"?x(ut):x;g||Ne(F),m?.(F);},[m,ut,g]),me=useMemo(()=>new Set([...Fe,...Se,...bt]),[Fe,Se,bt]),Be=useMemo(()=>o.filter(x=>!me.has(x.id)),[o,me]),Ve=useMemo(()=>{let x=[...Fe,...Se,...bt],F=new Set,L=[];return x.forEach(Z=>{F.has(Z)||(F.add(Z),L.push(Z));}),L},[Se,bt,Fe]);useEffect(()=>{xt(x=>{let F=x.filter(L=>S.has(L));return Rr(x,F)?x:F}),z(x=>{let F=x.filter(L=>S.has(L));return Rr(x,F)?x:F}),V(x=>{let F=x.filter(L=>S.has(L));return Rr(x,F)?x:F}),H(x=>{let F=x.filter(L=>S.has(L.fieldId)).map(L=>({...L,aggregation:lo(L.aggregation,D.get(L.fieldId))}));return Ol(x,F)?x:F});},[D,S]);let it=useMemo(()=>{let x={};return Ve.forEach(F=>{let L=new Set;t.forEach(Z=>{L.add(Pr(Z[F]));}),x[F]=Array.from(L).sort((Z,de)=>Z.localeCompare(de));}),x},[Ve,t]);useEffect(()=>{ae(x=>{let F={};return Ve.forEach(L=>{let Z=it[L]??[],Pe=(x[L]??[]).filter(re=>Z.includes(re)),W=Object.prototype.hasOwnProperty.call(x,L);F[L]=W?Pe:Z;}),pm(x,F)?x:F});},[Ve,it]),useEffect(()=>{T(x=>Qc(Fe,Se,x));},[Se,Fe,T]),useEffect(()=>{N(x=>Jl(Ke,x));},[N,Ke]),useEffect(()=>{U(x=>Jc(Ke,yt,x));},[yt,U,Ke]);let Ge=useMemo(()=>t.filter(x=>Ve.every(F=>{let L=Ft[F]??[],Z=it[F]??[];if(L.length===Z.length)return true;if(L.length===0)return false;let de=Pr(x[F]);return L.includes(de)})),[Ve,it,Ft,t]),Le=useMemo(()=>{if(Ke.length===0)return null;let x=new Map;if(Ge.forEach(W=>{let re=Se.length>0?Se.map(rt=>Pr(W[rt])):[u("pivot.valueLabel")],oe=Ia(re);x.set(oe,re);}),x.size===0){let W=Se.length>0?Se.map(()=>Nl):[u("pivot.valueLabel")];x.set(Ia(W),W);}let F=Array.from(x.entries()).sort((W,re)=>um(W[1],re[1])),L=F.flatMap(([W,re])=>Ke.map(oe=>{let rt=D.get(oe.fieldId),$=`${M(oe.aggregation)} ${rt?.label??oe.fieldId}`,ce=Se.length===0||Ke.length>1?`${re.join(" / ")} \u2022 ${$}`:re.join(" / ");return {id:`${W}::${oe.tokenId}`,colKey:W,valueItem:oe,label:ce}})),Z=[];Se.length>0&&F.forEach(([W,re])=>{let oe=L.filter(ce=>ce.colKey===W),rt=Z,$=[];re.forEach((ce,X)=>{$.push(`d${X}:${ce}`);let xe=`col::${Ia($)}`,Xe=rt.find(nr=>nr.key===xe);Xe||(Xe={key:xe,label:ce,children:[],leafColumnIds:[],path:re.slice(0,X+1),depth:X},rt.push(Xe)),oe.forEach(nr=>{Xe.leafColumnIds.includes(nr.id)||Xe.leafColumnIds.push(nr.id);}),rt=Xe.children;});});let de=W=>{let re={};return L.forEach(oe=>{let rt=W.filter($=>{let ce=Se.length>0?Se.map(X=>Pr($[X])):[u("pivot.valueLabel")];return Ia(ce)===oe.colKey});re[oe.id]=dn(rt,oe.valueItem.fieldId,oe.valueItem.aggregation);}),re},Pe=[];if(Fe.length===0)Pe.push({key:"root",value:u("pivot.resultLabel")||am,children:[],isLeaf:true,aggregatedValues:de(Ge),path:[],depth:0});else {let W=(re,oe,rt)=>{if(oe>=Fe.length)return [];let $=Fe[oe],ce=new Map;return re.forEach(X=>{let xe=Pr(X[$]);ce.has(xe)||ce.set(xe,[]),ce.get(xe).push(X);}),Array.from(ce.keys()).sort().map(X=>{let xe=ce.get(X),Xe=[...rt,X];return {key:Ia(Xe),value:X,fieldId:$,aggregatedValues:de(xe),children:W(xe,oe+1,Xe),isLeaf:oe===Fe.length-1,path:Xe,depth:oe}})};Pe.push(...W(Ge,0,[]));}return {dataColumns:L,columnTree:Z,rowTree:Pe}},[Se,D,Ge,M,Fe,u,Ke]),Lt=useCallback((x,F)=>(p.current+=1,{tokenId:`v${p.current}`,fieldId:x,aggregation:lo(F,D.get(x))}),[D]),Ot=useCallback(x=>{if(x==="rows")return xt([]);if(x==="columns")return z([]);if(x==="filters")return V([]);H([]);},[]),pt=useCallback((x,F)=>{if(x==="rows")return xt(L=>L.filter(Z=>Z!==F));if(x==="columns")return z(L=>L.filter(Z=>Z!==F));if(x==="filters")return V(L=>L.filter(Z=>Z!==F));H(L=>L.filter(Z=>Z.tokenId!==F));},[]),oo=useCallback((x,F)=>{H(L=>L.map(Z=>Z.tokenId===x?{...Z,aggregation:lo(F,D.get(Z.fieldId))}:Z));},[D]),mt=useCallback(x=>{eo(String(x.active.id));},[]),ro=useCallback(x=>{if(eo(null),!x.over)return;let F=Vl(String(x.active.id)),L=Vl(String(x.over.id));if(!F||!L||F.kind!=="item"||!F.key)return;if(F.zone===L.zone&&L.kind==="item"){if(F.zone==="rows"){let X=Fe.indexOf(F.key),xe=Fe.indexOf(L.key??"");X!==-1&&xe!==-1&&X!==xe&&xt(Xe=>arrayMove(Xe,X,xe));return}if(F.zone==="columns"){let X=Se.indexOf(F.key),xe=Se.indexOf(L.key??"");X!==-1&&xe!==-1&&X!==xe&&z(Xe=>arrayMove(Xe,X,xe));return}if(F.zone==="filters"){let X=bt.indexOf(F.key),xe=bt.indexOf(L.key??"");X!==-1&&xe!==-1&&X!==xe&&V(Xe=>arrayMove(Xe,X,xe));return}if(F.zone==="values"){let X=Ke.findIndex(Xe=>Xe.tokenId===F.key),xe=Ke.findIndex(Xe=>Xe.tokenId===(L.key??""));X!==-1&&xe!==-1&&X!==xe&&H(Xe=>arrayMove(Xe,X,xe));}return}let Z=L.zone,de=[...Fe],Pe=[...Se],W=[...bt],re=[...Ke],oe="",rt=null;if(F.zone==="palette")oe=F.key;else if(F.zone==="values"){let X=re.find(xe=>xe.tokenId===F.key);if(!X)return;oe=X.fieldId,rt=X,re=re.filter(xe=>xe.tokenId!==F.key);}else F.zone==="rows"?(oe=F.key,de=de.filter(X=>X!==oe)):F.zone==="columns"?(oe=F.key,Pe=Pe.filter(X=>X!==oe)):F.zone==="filters"&&(oe=F.key,W=W.filter(X=>X!==oe));if(!oe)return;let $=()=>{de=de.filter(X=>X!==oe),Pe=Pe.filter(X=>X!==oe),W=W.filter(X=>X!==oe);},ce=X=>{if(L.kind!=="item"||!L.key)return X==="rows"?de.length:X==="columns"?Pe.length:X==="filters"?W.length:X==="values"?re.length:0;if(X==="rows"){let xe=de.indexOf(L.key);return xe>=0?xe:de.length}if(X==="columns"){let xe=Pe.indexOf(L.key);return xe>=0?xe:Pe.length}if(X==="filters"){let xe=W.indexOf(L.key);return xe>=0?xe:W.length}if(X==="values"){let xe=re.findIndex(Xe=>Xe.tokenId===L.key);return xe>=0?xe:re.length}return 0};if(Z==="palette"){xt(de),z(Pe),V(W),H(re);return}if(Z==="values"){let X=ce("values"),xe=rt??Lt(oe);re.splice(X,0,xe),xt(de),z(Pe),V(W),H(re);return}if(dm(Z)){$();let X=ce(Z);Z==="rows"?de.splice(X,0,oe):Z==="columns"?Pe.splice(X,0,oe):W.splice(X,0,oe),xt(de),z(Pe),V(W),H(re);}},[Se,Lt,bt,Fe,Ke]),Ko=useCallback((x,F)=>{ae(L=>({...L,[x]:F}));},[]),ao=useCallback(x=>{It(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),gr=useCallback(x=>{Et(F=>{let L=new Set(F);return L.has(x)?L.delete(x):L.add(x),L});},[]),Vr=useCallback(x=>{let F=D.get(x.fieldId),L=Oc(F);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:x.aggregation,onChange:Z=>oo(x.tokenId,Z.target.value),onClick:Z=>Z.stopPropagation(),onMouseDown:Z=>Z.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:L.map(Z=>jsx(MenuItem,{value:Z,sx:{fontSize:"0.75rem"},children:M(Z)},Z))})})},[D,M,oo]),no=useCallback(x=>{let F=it[x]??[],L=Ft[x]??F;return F.length===0?u("pivot.filter.noValues"):L.length===0?u("pivot.filter.noneSelected"):L.length===F.length?u("pivot.filter.allValues"):u("pivot.filter.selectedCount",{selected:L.length,total:F.length})},[it,Ft,u]),qo=useCallback(x=>{let F=it[x]??[],L=Ft[x]??F;return jsx(fm,{options:F,selectedValues:L,onChange:Z=>Ko(x,Z)})},[it,Ft,Ko]),fr=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),zo=useCallback(()=>{let x={};return new Set([...Ve,...Object.keys(Ft)]).forEach(L=>{if(!S.has(L))return;let Z=Ft[L]??[];x[L]=[...Z];}),{layout:{rows:[...Fe],columns:[...Se],filters:[...bt],values:Ke.map(L=>({fieldId:L.fieldId,aggregation:L.aggregation}))},filterSelections:x,showGrandTotal:mo,chart:{dimensionFieldId:Xt,primaryValueFieldId:yt,secondaryValueFieldId:fo,chartType:ho}}},[Ve,Xt,yt,fo,ho,Se,bt,Ft,Fe,mo,S,Ke]),ar=useCallback(x=>{let F=Nt(x.layout.rows,S),L=Nt(x.layout.columns,S),Z=Nt(x.layout.filters,S),de=new Set,Pe=(x.layout.values??[]).filter(oe=>!S.has(oe.fieldId)||de.has(oe.fieldId)?false:(de.add(oe.fieldId),true)).map(oe=>Lt(oe.fieldId,oe.aggregation)),W={};Object.entries(x.filterSelections??{}).forEach(([oe,rt])=>{!S.has(oe)||!Array.isArray(rt)||(W[oe]=Array.from(new Set(rt.map($=>String($)))));}),xt(F),z(L),V(Z),H(Pe),ae(W),typeof x.showGrandTotal=="boolean"&&se(x.showGrandTotal),T(Qc(F,L,x.chart?.dimensionFieldId));let re=Jl(Pe,x.chart?.primaryValueFieldId);N(re),U(Jc(Pe,re,x.chart?.secondaryValueFieldId)),J(x.chart?.chartType??"bar-vertical"),j(x.id),C?.(x);},[Lt,C,T,N,U,J,z,V,ae,xt,se,H,S]),sa=useCallback(x=>{if(!x){j("");return}let F=ut.find(L=>L.id===x);if(!F){j("");return}ar(F);},[ar,ut]),Na=useCallback(()=>{let x=u("pivot.preset.defaultName",{index:ut.length+1});ot(x),Ce(true);},[ut.length,u]),Or=useCallback(()=>{let x=De.trim();if(!x)return;let F={id:fr(),name:x,...zo()};ye(L=>[...L,F]),j(F.id),Ce(false);},[zo,fr,De,ye]),ca=useCallback(()=>{G&&(ye(x=>x.filter(F=>F.id!==G)),j(""));},[G,ye]);useEffect(()=>{if(!b||f.current)return;let x=ut.find(F=>F.id===b);x&&(f.current=true,ar(x));},[ar,b,ut]),useEffect(()=>{G&&(ut.some(x=>x.id===G)||j(""));},[G,ut]);let hr=useMemo(()=>{if(!mo||!Le||!Fe.length)return null;let x={};return Le.dataColumns.forEach(F=>{let L=Ge.filter(Z=>{let de=Se.length>0?Se.map(Pe=>Pr(Z[Pe])):[u("pivot.valueLabel")];return Ia(de)===F.colKey});x[F.id]=dn(L,F.valueItem.fieldId,F.valueItem.aggregation);}),{key:"__grand_total__",value:u("pivot.grandTotal")||nm,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:x,path:[],depth:-1}},[mo,Le,Ge,Se,Fe.length,u]),yo=useMemo(()=>Vm(Le?.rowTree??[]),[Le]),_o=useMemo(()=>Vm(Le?.columnTree??[]),[Le]);useEffect(()=>{It(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),yo.forEach(L=>{x.has(L)&&F.add(L);}),F});},[yo]),useEffect(()=>{Et(x=>{let F=new Set;return _o.forEach(L=>{x.has(L)&&F.add(L);}),F});},[_o]);let Va=useCallback(()=>{It(x=>{let F=new Set(x);return yo.forEach(L=>F.add(L)),F});},[yo]),da=useCallback(()=>{It(x=>{let F=new Set;return x.has("__grand_total__")&&F.add("__grand_total__"),F});},[]),Oa=useCallback(()=>{Et(new Set(_o));},[_o]),Ha=useCallback(()=>{Et(new Set);},[]),Wa=useMemo(()=>!Le||Se.length===0?[]:lk(Le.columnTree,po),[Se.length,po,Le]),wo=useMemo(()=>{if(!Le)return [];if(Se.length===0)return Le.dataColumns.map(F=>({id:F.id,label:F.label,leafColumnIds:[F.id],valueItem:F.valueItem}));let x=new Map(Le.dataColumns.map(F=>[F.id,F]));return Wa.flatMap(F=>{let L=new Map;return F.leafColumnIds.forEach(Z=>{let de=x.get(Z);if(!de)return;let Pe=de.valueItem.tokenId,W=`${M(de.valueItem.aggregation)} ${D.get(de.valueItem.fieldId)?.label??de.valueItem.fieldId}`,re=L.get(Pe);if(re){re.leafColumnIds.push(Z);return}L.set(Pe,{id:`${F.key}::${Pe}`,label:Ke.length>1?W:F.label,leafColumnIds:[Z],valueItem:de.valueItem});}),Array.from(L.values())})},[Se.length,D,M,Le,Ke.length,Wa]),$a=useMemo(()=>new Map(wo.map(x=>[x.id,x])),[wo]),Ga=useMemo(()=>wo.map(x=>({id:x.id,colKey:x.id,valueItem:x.valueItem,label:x.label})),[wo]),ua=useMemo(()=>{if(!Le||Se.length===0)return [];let x=[],F=Hm(Le.columnTree,po),L=F+(Ke.length>1?1:0),Z=(de,Pe)=>{x[Pe]??(x[Pe]=[]),de.forEach(W=>{let re=W.children.length>0&&po.has(W.key),oe=wo.filter($=>W.leafColumnIds.some(ce=>$.leafColumnIds.includes(ce))).length,rt=re||Ke.length>1?1:L-Pe;x[Pe].push({key:W.key,label:W.label,colSpan:oe,rowSpan:rt,expandable:W.children.length>0,expanded:re}),re&&Z(W.children,Pe+1);});};return Z(Le.columnTree,0),Ke.length>1&&(x[F]=wo.map(de=>({key:de.id,label:de.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),x},[Se.length,po,Le,Ke.length,wo]),br=useCallback((x,F)=>F.leafColumnIds.reduce((L,Z)=>L+(x.aggregatedValues[Z]??0),0),[]),Hr=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Va,disabled:yo.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:da,disabled:yo.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Oa,disabled:_o.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Ha,disabled:Se.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:u("pivot.table.collapseColumnsAll")})]}),[Se.length,_o.size,yo.size,Ha,da,Oa,Va,u]),Wr=()=>{if(!je)return null;let x=Vl(je);if(!x||x.kind!=="item"||!x.key)return null;if(x.zone==="palette"){let de=D.get(x.key);return de?jsx(Wc,{label:de.label,subtitle:de.type}):null}if(x.zone==="values"){let de=Ke.find(oe=>oe.tokenId===x.key);if(!de)return null;let W=D.get(de.fieldId)?.label??de.fieldId,re=`${M(de.aggregation)}(${W})`;return jsx(Ul,{label:W,caption:re})}let L=D.get(x.key)?.label??x.key,Z=no(x.key);return jsx(Ul,{label:L,caption:Z})};return jsxs(Paper,{sx:x=>({p:{xs:1.2,md:2},borderRadius:4,border:`1px solid ${x.palette.divider}`,bgcolor:"background.paper",boxShadow:x.palette.mode==="dark"?"none":"0 12px 28px rgba(15, 23, 42, 0.08)",display:"flex",flexDirection:"column",gap:2}),children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:1.5,flexWrap:"wrap"},children:[jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800},children:y}),jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:u("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[to&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:G,displayEmpty:true,onChange:x=>sa(String(x.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:u("pivot.preset.selectPlaceholder")}),ut.map(x=>jsx(MenuItem,{value:x.id,sx:{fontSize:"0.75rem"},children:x.name},x.id))]})}),jsx(Tooltip,{title:u("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Na,"aria-label":u("pivot.preset.save"),children:jsx(dp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:u("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:ca,disabled:!G,"aria-label":u("pivot.preset.delete"),children:jsx(Pb,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[u("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",u("pivot.afterFilter"),":"," ",jsx("strong",{children:Ge.length.toLocaleString()})]}),jsx(Divider,{flexItem:true,orientation:"vertical"}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:.6},children:[jsx(Typography,{sx:{fontSize:"0.74rem"},children:u("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:mo,onChange:x=>se(x.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:v,collisionDetection:closestCenter,onDragStart:mt,onDragEnd:ro,children:[jsx(Sm,{isConfiguratorCollapsed:go,onToggleCollapse:()=>ke(x=>!x),availableFields:Be,fieldMap:D,filterFields:bt,columnFields:Se,rowFields:Fe,valueFields:Ke,clearZone:Ot,removeFieldFromZone:pt,getFilterSelectionSummary:no,renderDimensionFilterSelect:qo,renderAggregationSelect:Vr,getAggregationLabel:M}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Wr()})})]}),jsx(Am,{rows:Ge,fieldMap:D,rowFields:Fe,columnFields:Se,valueFields:Ke,chartDimensionFieldId:Xt,chartPrimaryValueFieldId:yt,chartSecondaryValueFieldId:fo,chartType:ho,isCollapsed:bo,onChartDimensionFieldIdChange:x=>T(x),onChartPrimaryValueFieldIdChange:x=>N(x),onChartSecondaryValueFieldIdChange:x=>U(x),onChartTypeChange:x=>J(x),onToggleCollapse:()=>ue(x=>!x),getAggregationLabel:M}),jsx(fn,{title:u("pivot.table.sectionTitle"),subtitle:Fe.length>0?Fe.map(x=>D.get(x)?.label??x).join(" > "):u("pivot.table.dimensions"),collapsed:Uo,onToggleCollapse:()=>he(x=>!x),expandAriaLabel:u("pivot.table.collapse.ariaExpand"),collapseAriaLabel:u("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Hr,children:Le===null?jsx(Box,{sx:{py:5,px:{xs:1.2,md:1.6},textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:k})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(ua.length>0?ua:[[]]).map((x,F)=>jsxs(TableRow,{children:[F===0&&jsx(TableCell,{rowSpan:Math.max(ua.length,1),sx:L=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:L.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${L.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:Fe.length>0?Fe.map(L=>D.get(L)?.label).join(" > "):u("pivot.table.dimensions")}),(x.length>0?x:wo.map(L=>({key:L.id,label:L.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(L=>jsx(TableCell,{align:"center",colSpan:L.colSpan,rowSpan:L.rowSpan,sx:Z=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:Z.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${Z.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[L.expandable&&jsx(IconButton,{size:"small",onClick:()=>gr(L.key),sx:{p:.1,ml:-0.3},children:L.expanded?jsx(cb,{sx:{fontSize:16}}):jsx(uf,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:L.label})]})},L.key))]},`pivot-header-row-${F}`))}),jsxs(TableBody,{children:[Le.rowTree.map(x=>jsx(Xl,{node:x,dataColumns:Ga,fieldMap:D,level:0,expandedKeys:Zt,onToggle:ao,getValue:(F,L)=>{let Z=$a.get(L);return Z?br(F,Z):0}},x.key)),hr&&jsx(Xl,{node:hr,dataColumns:Ga,fieldMap:D,level:0,expandedKeys:Zt,onToggle:ao,getValue:(x,F)=>{let L=$a.get(F);return L?br(x,L):0}})]})]})})}),jsxs(Dialog,{open:Te,onClose:()=>Ce(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:u("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:u("pivot.preset.nameLabel"),value:De,onChange:x=>ot(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),Or());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>Ce(false),children:u("common.cancel")}),jsx(Button,{variant:"contained",onClick:Or,disabled:!De.trim(),children:u("common.save")})]})]})]})};var Wm=(e,t,o)=>{let r=[...e,...t];return o&&r.includes(o)?o:r[0]??""},td=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",$m=(e,t,o)=>o===""?"":o&&o!==t&&e.some(r=>r.fieldId===o)?o:e.find(r=>r.fieldId!==t)?.fieldId??"",tF=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:r=true,initialConfiguratorCollapsed:a=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:s=false})=>{let d=useRef(0),l=useMemo(()=>new Set(e.map(j=>j.id)),[e]),c=useMemo(()=>new Map(e.map(j=>[j.id,j])),[e]),[g,h]=useState(()=>Nt(t?.rows,l)),[m,b]=useState(()=>Nt(t?.columns,l)),[C,u]=useState(()=>Nt(t?.filters,l)),[v,p]=useState(()=>{let j=t?.values??[],Te=new Set,Ce=[];return j.forEach(De=>{!l.has(De.fieldId)||Te.has(De.fieldId)||(Te.add(De.fieldId),d.current+=1,Ce.push({tokenId:`v${d.current}`,fieldId:De.fieldId,aggregation:lo(De.aggregation,c.get(De.fieldId))}));}),Ce}),[f,y]=useState(o),[k,E]=useState(r),[M,S]=useState(a),[D,P]=useState(()=>Wm(Nt(t?.rows,l),Nt(t?.columns,l),n?.dimensionFieldId)),[w,B]=useState(()=>{let j=(()=>{let Te=t?.values??[],Ce=new Set,De=[];return Te.forEach(ot=>{!l.has(ot.fieldId)||Ce.has(ot.fieldId)||(Ce.add(ot.fieldId),De.push({tokenId:ot.fieldId,fieldId:ot.fieldId,aggregation:lo(ot.aggregation,c.get(ot.fieldId))}));}),De})();return td(j,n?.primaryValueFieldId)}),[R,I]=useState(()=>{let j=(()=>{let Ce=t?.values??[],De=new Set,ot=[];return Ce.forEach(je=>{!l.has(je.fieldId)||De.has(je.fieldId)||(De.add(je.fieldId),ot.push({tokenId:je.fieldId,fieldId:je.fieldId,aggregation:lo(je.aggregation,c.get(je.fieldId))}));}),ot})(),Te=td(j,n?.primaryValueFieldId);return $m(j,Te,n?.secondaryValueFieldId)}),[A,q]=useState(n?.chartType??"bar-vertical"),[O,K]=useState(i),[Q,ne]=useState(s);useEffect(()=>{h(j=>{let Te=j.filter(Ce=>l.has(Ce));return Rr(j,Te)?j:Te}),b(j=>{let Te=j.filter(Ce=>l.has(Ce));return Rr(j,Te)?j:Te}),u(j=>{let Te=j.filter(Ce=>l.has(Ce));return Rr(j,Te)?j:Te}),p(j=>{let Te=j.filter(Ce=>l.has(Ce.fieldId)).map(Ce=>({...Ce,aggregation:lo(Ce.aggregation,c.get(Ce.fieldId))}));return Ol(j,Te)?j:Te});},[c,l]),useEffect(()=>{P(j=>Wm(g,m,j));},[m,g]),useEffect(()=>{B(j=>td(v,j));},[v]),useEffect(()=>{I(j=>$m(v,w,j));},[w,v]);let ie=useCallback(j=>{h(Nt(j,l));},[l]),Y=useCallback(j=>{b(Nt(j,l));},[l]),Ae=useCallback(j=>{u(Nt(j,l));},[l]),Ze=useCallback(j=>{p(Te=>{let Ce=j??[],De=new Set,ot=[];return Ce.forEach(je=>{if(!l.has(je.fieldId)||De.has(je.fieldId))return;De.add(je.fieldId);let eo=Te.find(Zt=>Zt.fieldId===je.fieldId);if(eo){ot.push({...eo,aggregation:lo(je.aggregation??eo.aggregation,c.get(je.fieldId))});return}d.current+=1,ot.push({tokenId:`v${d.current}`,fieldId:je.fieldId,aggregation:lo(je.aggregation,c.get(je.fieldId))});}),ot});},[c,l]),ht=useCallback(j=>{ie(j.rows??[]),Y(j.columns??[]),Ae(j.filters??[]),Ze(j.values??[]);},[Y,Ae,ie,Ze]),fe=useCallback(j=>{if(j==="rows")return h([]);if(j==="columns")return b([]);if(j==="filters")return u([]);p([]);},[]),We=useCallback((j,Te)=>{if(j==="rows")return h(Ce=>Ce.filter(De=>De!==Te));if(j==="columns")return b(Ce=>Ce.filter(De=>De!==Te));if(j==="filters")return u(Ce=>Ce.filter(De=>De!==Te));p(Ce=>Ce.filter(De=>De.tokenId!==Te));},[]),Ee=useCallback((j,Te)=>{p(Ce=>Ce.map(De=>De.tokenId===j?{...De,aggregation:lo(Te,c.get(De.fieldId))}:De));},[c]),Tt=useCallback((j,Te)=>{y(Ce=>({...Ce,[j]:Te}));},[]),_e=useCallback(()=>{y({});},[]),ze=useCallback(()=>{E(j=>!j);},[]),Ue=useCallback(()=>{S(j=>!j);},[]),tt=useCallback(j=>{P(j);},[]),_=useCallback(j=>{B(j);},[]),le=useCallback(j=>{I(j);},[]),Re=useCallback(()=>{K(j=>!j);},[]),Ne=useCallback(()=>{ne(j=>!j);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:h,columnFields:m,setColumnFields:b,filterFields:C,setFilterFields:u,valueFields:v,setValueFields:p,filterSelections:f,setFilterSelections:y,showGrandTotal:k,setShowGrandTotal:E,isConfiguratorCollapsed:M,setIsConfiguratorCollapsed:S,chartDimensionFieldId:D,setChartDimensionFieldId:P,chartPrimaryValueFieldId:w,setChartPrimaryValueFieldId:B,chartSecondaryValueFieldId:R,setChartSecondaryValueFieldId:I,chartType:A,setChartType:q,isChartCollapsed:O,setIsChartCollapsed:K,isTableCollapsed:Q,setIsTableCollapsed:ne}),[D,w,R,A,m,C,f,O,M,Q,g,k,v]),actions:{setRows:ie,setColumns:Y,setFilters:Ae,setValues:Ze,setLayout:ht,clearZone:fe,removeFieldFromZone:We,setAggregationForValue:Ee,setFilterSelection:Tt,resetFilterSelections:_e,toggleGrandTotal:ze,toggleConfigurator:Ue,setChartDimension:tt,setChartPrimaryValue:_,setChartSecondaryValue:le,setChartType:q,toggleChart:Re,toggleTable:Ne}}};var iF=({orientation:e="auto",defaultNavigationOpen:t,onNavOpenChange:o}={})=>{let r=useTheme$1(),a=useMediaQuery("(orientation: portrait)",{noSsr:true}),n=useMediaQuery(r.breakpoints.down("md"),{noSsr:true}),i=useMemo(()=>e==="auto"?a||n?"portrait":"landscape":e,[n,a,e]),[s,d]=useState(t??i==="landscape");useEffect(()=>{d(t??i==="landscape");},[t,i]);let l=g=>{d(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:a,isCompactViewport:n,navigationOpen:s,setNavigationOpen:l,toggleNavigationOpen:()=>l(!s)}};var gk=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},cF=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:r})=>{let n=e[0]?.[t],[i,s]=useState(r??n),d=useMemo(()=>e.find(m=>m[t]===i)||e[0],[t,e,i]),[l,c]=useState(()=>{let m=d?.[o];return m==null?"0":String(m)});return {selectedId:i,selectedRecord:d,editorValue:l,setEditorValue:c,selectRecord:m=>{let b=m[t];s(b);let C=m[o];c(C==null?"0":String(C));},applyEditorValue:m=>{if(i===void 0)return;let b=gk(l),C=e.map(u=>u[t]===i?{...u,[o]:b}:u);m(C);}}};var Tk=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],jm=(e,t,o,r)=>{t?.(e),r&&o?.();},fF=({open:e,onClose:t,title:o="Scan barcode",subtitle:r="Use the rear camera on the device. If scanning is unavailable, enter the code manually.",formats:a=Tk,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:s=true,scanIntervalMs:d=600,confirmLabel:l="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:h,onError:m,sx:b})=>{let C=Dt__default.useRef(null),u=Dt__default.useRef(null),v=Dt__default.useRef(null),p=Dt__default.useRef(null),[f,y]=Dt__default.useState("idle"),[k,E]=Dt__default.useState(""),[M,S]=Dt__default.useState(null),[D,P]=Dt__default.useState(null),w=Dt__default.useCallback(()=>{v.current!==null&&(window.clearInterval(v.current),v.current=null),u.current&&(u.current.getTracks().forEach(I=>I.stop()),u.current=null),C.current&&(C.current.srcObject=null);},[]),B=Dt__default.useCallback(I=>{P(I),y("error"),m?.(I);},[m]);Dt__default.useEffect(()=>{if(!e){w(),y("idle"),P(null),E("");return}let I=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){y("unsupported"),P("Camera access is not supported in this browser.");return}y("starting"),P(null);try{let q=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(I){q.getTracks().forEach(O=>O.stop());return}if(u.current=q,C.current&&(C.current.srcObject=q,await C.current.play()),!window.BarcodeDetector){y("unsupported"),P("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}p.current=new window.BarcodeDetector({formats:a}),y("ready"),v.current=window.setInterval(async()=>{if(!(!C.current||!p.current)&&!(C.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let K=(await p.current.detect(C.current)).find(ne=>ne.rawValue);if(!K?.rawValue)return;let Q={rawValue:K.rawValue,format:K.format};S(Q),w(),jm(Q,h,t,s);}catch(O){B(O instanceof Error?O.message:"Failed to detect barcode.");}},d);}catch(q){B(q instanceof Error?q.message:"Unable to start camera.");}}})(),()=>{I=true,w();}},[s,n,a,t,h,e,B,d,w]);let R=()=>{let I=k.trim();if(!I)return;let A={rawValue:I,format:"manual"};S(A),jm(A,h,t,s);};return jsxs(Dialog,{open:e,onClose:t,fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:900},children:o}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Stack,{spacing:2,sx:b,children:[jsx(Typography,{sx:{fontSize:"0.88rem",color:"text.secondary",lineHeight:1.55},children:r}),jsxs(Paper,{elevation:0,sx:I=>({position:"relative",overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:"divider",minHeight:280,background:I.palette.mode==="dark"?"linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.96))":"linear-gradient(180deg, rgba(241,245,249,1), rgba(226,232,240,0.92))"}),children:[jsx("video",{ref:C,muted:true,playsInline:true,autoPlay:true,style:{width:"100%",height:280,objectFit:"cover",display:"block"}}),jsx(Box,{sx:{pointerEvents:"none",position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Box,{sx:{width:"72%",maxWidth:320,aspectRatio:"1.7 / 1",borderRadius:3,border:"2px solid rgba(255,255,255,0.95)",boxShadow:"0 0 0 999px rgba(15,23,42,0.24)",position:"relative"},children:jsx(Box,{sx:{position:"absolute",top:"50%",left:0,right:0,height:2,bgcolor:"#38bdf8",boxShadow:"0 0 18px rgba(56,189,248,0.85)"}})})}),jsxs(Box,{sx:{position:"absolute",top:12,left:12,display:"flex",gap:1,flexWrap:"wrap"},children:[jsx(Chip,{icon:jsx(Sk,{}),label:f==="ready"?"Camera ready":f==="starting"?"Starting camera":f==="unsupported"?"Preview only":f==="error"?"Scanner error":"Idle",size:"small",color:f==="error"?"error":"primary",variant:"filled"}),M?jsx(Chip,{icon:jsx(wk,{}),label:`${M.format||"barcode"}: ${M.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),D?jsx(Alert,{severity:f==="unsupported"?"info":"warning",children:D}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:k,onChange:I=>E(I.target.value)}),jsx(Button,{variant:"contained",onClick:R,sx:{minHeight:56,px:2.5},children:l})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var Dk={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},CF=({title:e,description:t,kicker:o,icon:r,badges:a=[],metrics:n=[],footer:i,children:s,selected:d=false,draggable:l=false,isDragging:c=false,swipeThreshold:g=88,startAction:h,endAction:m,dragHandleProps:b,onClick:C,onSwipe:u,sx:v})=>{let[p,f]=useState(0),[y,k]=useState(false),E=useRef(null),M=useRef(0),S=useRef(0),D=!!(h||m),P=132,w=()=>{f(0),k(false),E.current=null,M.current=0,S.current=0;},B=O=>{(O==="start"?h:m)?.onTrigger?.(),u?.(O),w();},R=O=>{!D||O.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(E.current=O.pointerId,M.current=O.clientX,S.current=O.clientX,k(true),O.currentTarget.setPointerCapture(O.pointerId));},I=O=>{if(!y||E.current!==O.pointerId)return;S.current=O.clientX;let K=S.current-M.current,Q=Math.max(-P,Math.min(P,K));f(Q);},A=O=>{if(!y||E.current!==O.pointerId)return;let K=S.current-M.current;if(K>=g&&h){B("start");return}if(K<=-g&&m){B("end");return}Math.abs(K)<12&&C?.(),w();},q=(O,K)=>{if(!O)return null;let Q=O.backgroundColor||Dk[O.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[K]:0,width:P,px:2,display:"flex",alignItems:"center",justifyContent:K==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${Q}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[O.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:O.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...v},children:[q(h,"left"),q(m,"right"),jsx(Paper,{elevation:0,onPointerDown:R,onPointerMove:I,onPointerUp:A,onPointerCancel:w,sx:O=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:d?"primary.main":"divider",background:O.palette.mode==="dark"?"linear-gradient(180deg, rgba(30,41,59,0.96), rgba(15,23,42,0.92))":"linear-gradient(180deg, #ffffff, #f8fafc)",color:"text.primary",boxShadow:d?"0 18px 42px rgba(37, 99, 235, 0.18)":"0 12px 28px rgba(15, 23, 42, 0.08)",transform:`translate3d(${p}px, 0, 0) scale(${c?.985:1})`,transition:y?"none":"transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease",touchAction:"pan-y",cursor:C?"pointer":"default",opacity:c?.9:1}),children:jsxs(Stack,{spacing:1.5,children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"flex-start",children:[r?jsx(Box,{sx:{mt:.25},children:r}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"0.72rem",fontWeight:700,letterSpacing:"0.08em",color:"text.secondary"},children:o}):null,jsx(Typography,{sx:{fontSize:"1.05rem",fontWeight:800,lineHeight:1.25},children:e}),t?jsx(Typography,{sx:{mt:.5,fontSize:"0.9rem",color:"text.secondary",lineHeight:1.45},children:t}):null]}),l?jsx(Box,{"data-no-swipe":"true",...b,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(Rk,{})})}):null]}),a.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:a.map((O,K)=>jsx(Chip,{label:O,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},K))}):null,n.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(110px, 1fr))",gap:1},children:n.map(O=>jsxs(Paper,{elevation:0,sx:{p:1.25,borderRadius:3,bgcolor:"action.hover",border:"1px solid",borderColor:"divider",color:"text.primary"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:O.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:O.value})]},O.id))}):null,s,i]})})]})};var Si=({label:e,onPress:t,emphasis:o="default"})=>jsx(Box,{component:"button",type:"button",onClick:t,sx:r=>({minHeight:72,borderRadius:3,border:"1px solid",borderColor:o==="primary"?"primary.main":"divider",background:o==="primary"?r.palette.primary.main:o==="danger"?r.palette.mode==="dark"?"rgba(239,68,68,0.18)":"rgba(239,68,68,0.10)":r.palette.mode==="dark"?"rgba(255,255,255,0.04)":"#fff",color:o==="primary"?"#fff":"text.primary",fontSize:"1.25rem",fontWeight:800,transition:"transform 120ms ease, box-shadow 160ms ease, background-color 160ms ease",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent","&:active":{transform:"scale(0.98)"}}),children:e}),MF=({value:e,defaultValue:t="",title:o,subtitle:r,placeholder:a="0",allowDecimal:n=false,allowNegative:i=false,maxLength:s,confirmLabel:d,clearLabel:l,backspaceLabel:c,onChange:g,onSubmit:h,onClose:m,sx:b})=>{let{t:C}=ee(),[u,v]=useState(t),p=e??u,f=w=>{e===void 0&&v(w),g?.(w);},y=w=>{s&&p.length>=s||f(`${p}${w}`);},k=w=>{if(w==="00"){if(!p){f("0");return}y("00");return}y(w);},E=()=>{!n||p.includes(".")||f(p?`${p}.`:"0.");},M=()=>{if(i){if(p.startsWith("-")){f(p.slice(1));return}f(p?`-${p}`:"-");}},S=()=>{f(p.slice(0,-1));},D=()=>{f("");},P=()=>{h?.(p);};return jsx(Paper,{elevation:0,sx:{p:2,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",...b},children:jsxs(Stack,{spacing:2,children:[jsxs(Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[jsxs(Box,{sx:{minWidth:0},children:[o?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800},children:o}):null,r?jsx(Typography,{sx:{mt:.5,fontSize:"0.86rem",color:"text.secondary"},children:r}):null]}),m?jsx(IconButton,{onClick:m,size:"small",children:jsx(Ek,{})}):null]}),jsx(Paper,{elevation:0,sx:{p:2,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsx(Typography,{sx:{minHeight:38,fontSize:p?"1.9rem":"1.25rem",fontWeight:900,letterSpacing:"0.06em",color:p?"text.primary":"text.disabled"},children:p||a})}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[["1","2","3","4","5","6","7","8","9"].map(w=>jsx(Si,{label:w,onPress:()=>k(w)},w)),jsx(Si,{label:i?"+/-":"00",onPress:i?M:()=>k("00")}),jsx(Si,{label:"0",onPress:()=>k("0")}),jsx(Si,{label:n?".":c?String(c):"DEL",onPress:n?E:S})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:S,sx:{minHeight:64,borderRadius:3,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(Bk,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(Si,{label:String(l||"CLR"),onPress:D,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:P,sx:w=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:w.palette.primary.main,color:"#fff",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"}),children:jsxs(Stack,{direction:"row",spacing:1,justifyContent:"center",alignItems:"center",children:[jsx(Fk,{}),jsx(Typography,{sx:{fontWeight:800},children:d||C("common.ok")})]})})]})]})})};var Jm=({touchMode:e="comfortable",sx:t,...o})=>{let r=e==="expanded";return jsx(Box,{sx:{"& .MuiPaper-root":{borderRadius:4},"& .MuiAutocomplete-root":{minWidth:{xs:"100%",md:260}},"& .MuiAutocomplete-root .MuiInputBase-root":{backgroundColor:"transparent !important"},"& .MuiInputBase-root":{minHeight:r?56:50,borderRadius:3,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputBase-input":{py:r?1.6:1.25,fontSize:r?"0.98rem":"0.92rem"},"& .MuiInputLabel-root":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiButton-root":{minHeight:r?48:44,px:r?2.25:1.75,borderRadius:3,fontSize:r?"0.95rem":"0.88rem",fontWeight:700},"& .MuiIconButton-root":{width:r?40:36,height:r?40:36},"& .MuiMenuItem-root":{minHeight:r?44:38,fontSize:r?"0.95rem":"0.88rem"},"& .MuiListSubheader-root":{py:1},"& .MuiCheckbox-root":{p:r?1:.75},"& .MuiFormControlLabel-label":{fontSize:r?"0.95rem":"0.88rem"},"& .MuiDialog-paper":{borderRadius:4},"& .MuiDialogTitle-root":{fontSize:r?"1.05rem":"0.98rem",fontWeight:800},"& .MuiDialogContent-root .MuiInputBase-root":{minHeight:52},'& .MuiGrid-root > .MuiGrid-item, & .MuiGrid-root > .MuiGrid-sizeXs-1, & .MuiGrid-root > [class*="MuiGrid-grid-"]':{minWidth:0},...t},children:jsx(vr,{...o})})};var Wk=(e,t,o)=>{if(o?.(t),!!t.href){if(t.href.startsWith("http://")||t.href.startsWith("https://")){window.open(t.href,"_blank");return}e.push(t.href);}},og=({items:e,selectedId:t,orientation:o="auto",onItemSelect:r,sx:a})=>{let n=useTheme$1(),[i,s]=useState(false);useEffect(()=>{s(true);},[]);let d=useMediaQuery("(orientation: portrait)",{noSsr:true}),l=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?d||l?"portrait":"landscape":o,g=useRouter();return jsx(Box,{sx:{display:"grid",gridTemplateColumns:!i||c==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(180px, 1fr))",gap:1.5,...a},children:e.map(h=>{let m=h.id===t,b=h.color||(m?n.palette.primary.main:n.palette.divider);return jsx(Paper,{elevation:0,sx:{overflow:"hidden",borderRadius:4,border:"1px solid",borderColor:m?"primary.main":"divider",boxShadow:m?"0 18px 40px rgba(37, 99, 235, 0.16)":"none",bgcolor:n.palette.mode==="dark"?"rgba(30,41,59,0.6)":"background.paper"},children:jsx(Box,{component:"button",type:"button",disabled:h.disabled,onClick:()=>Wk(g,h,r),sx:{width:"100%",p:2,minHeight:c==="portrait"?156:148,display:"block",border:0,background:"transparent",textAlign:"left",cursor:h.disabled?"not-allowed":"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent",color:"text.primary"},children:jsxs(Stack,{spacing:1.5,sx:{height:"100%"},children:[jsxs(Stack,{direction:"row",justifyContent:"space-between",alignItems:"flex-start",children:[jsx(Box,{sx:{width:44,height:44,borderRadius:3,display:"grid",placeItems:"center",color:m?"#fff":"text.primary",background:m?b:"action.hover"},children:h.icon||jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900},children:h.title.slice(0,1).toUpperCase()})}),h.badge!==void 0?jsx(Box,{sx:{minWidth:34,px:1,py:.4,borderRadius:999,bgcolor:m?"primary.main":"action.hover",color:m?"#fff":"text.secondary",textAlign:"center",fontWeight:800,fontSize:"0.8rem"},children:h.badge}):null]}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.25},children:h.title}),h.caption?jsx(Typography,{sx:{mt:.5,fontSize:"0.74rem",fontWeight:700,color:"text.secondary"},children:h.caption}):null,h.description?jsx(Typography,{sx:{mt:.75,fontSize:"0.84rem",lineHeight:1.45,color:"text.secondary"},children:h.description}):null]})]})})},h.id)})})};var ig=(e,t)=>t.trim()?e.reduce((o,r)=>{let a=r.title?.toLowerCase().includes(t.toLowerCase())||r.label?.toLowerCase().includes(t.toLowerCase())||r.description?.toLowerCase().includes(t.toLowerCase()),n=r.children?ig(r.children,t):[];return (a||n.length>0)&&o.push({...r,children:n.length>0?n:r.children}),o},[]):e,eS=e=>{let t=new Set,o=r=>{r.forEach(a=>{a.children?.length&&(t.add(a.id),o(a.children));});};return o(e),t},lg=({collapsed:e=false,onToggle:t,className:o="",maxHeight:r,menuData:a=[],colorMode:n="light",orientation:i="auto",headerSlot:s,footerSlot:d,activeHref:l,onItemSelect:c})=>{let{t:g}=ee(),h=useTheme$1(),m=useMediaQuery("(orientation: portrait)"),b=useMediaQuery(h.breakpoints.down("md")),C=i==="auto"?m||b?"portrait":"landscape":i,u=n==="dark",v=useRouter(),p=usePathname(),[f,y]=useState(""),[k,E]=useState(new Set),M=useMemo(()=>ig(a,f),[a,f]),S=useMemo(()=>f.trim()?eS(M):k,[k,M,f]);useEffect(()=>{e&&E(new Set);},[e]);let D=I=>I.appurl||I.href||"",P=I=>{c?.(I);let A=D(I);if(A){if(A.startsWith("http://")||A.startsWith("https://")){window.open(A,"_blank");return}v.push(A);}},w=I=>{let A=!!I.children?.length;if(e&&A){t?.();return}if(A){E(q=>{let O=new Set(q);return O.has(I.id)?O.delete(I.id):O.add(I.id),O});return}P(I);},B=I=>{let A=l||p,q=D(I);return !!(q&&A===q)},R=(I,A=0)=>{let q=!!I.children?.length,O=S.has(I.id),K=B(I);return jsx(Box,{sx:{pl:A===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:K?"primary.main":"divider",bgcolor:K?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>w(I),sx:{width:"100%",px:1.5,py:1.4,display:"flex",alignItems:"center",gap:1.25,border:0,background:"transparent",textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",WebkitTapHighlightColor:"transparent"},children:[jsx(Avatar,{variant:"rounded",sx:{width:40,height:40,bgcolor:K?"primary.main":"action.hover",color:K?"#fff":"text.primary"},children:I.icon||(I.title||I.label||"?").slice(0,1).toUpperCase()}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Typography,{sx:{fontSize:"0.95rem",fontWeight:800,lineHeight:1.2},children:I.title||I.label}),I.description?jsx(Typography,{sx:{mt:.4,fontSize:"0.78rem",color:"text.secondary",lineHeight:1.35},children:I.description}):null]}),q?jsx(Qk,{sx:{transform:O?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(Jk,{color:"action"})]}),q?jsx(Collapse,{in:O,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:I.children?.map(Q=>R(Q,A+1))})}):null]})},I.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:C==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflowY:"auto"},children:jsxs(Stack,{spacing:1,children:[jsx(IconButton,{onClick:t,sx:{width:48,height:48,alignSelf:"center",bgcolor:"action.hover"},title:g("navigation.expand"),children:jsx(Yk,{})}),a.map(I=>jsx(IconButton,{onClick:()=>w(I),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:B(I)?"primary.main":"action.hover",color:B(I)?"#fff":"text.primary"},children:I.icon||(I.title||I.label||"?").slice(0,1).toUpperCase()},I.id))]})}):jsx(Paper,{elevation:0,className:o,sx:{width:C==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:u?"#101828":"rgba(255,255,255,0.88)",maxHeight:r?`${r}px`:void 0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsxs(Stack,{spacing:1.25,sx:{flex:1,minHeight:0},children:[jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsx(TextField,{value:f,onChange:I=>y(I.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(Zk,{fontSize:"small",color:"action"})}}),C==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(Xk,{})}):null]}),s,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:M.length>0?M.map(I=>R(I)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),d]})})};var fg=(e,t)=>{let o=t[e.id];if(e.render)return e.render(o,t);if(o==null||o==="")return "--";if(e.numeric){if(typeof o=="number")return o.toLocaleString();if(typeof o=="string"&&o.trim()!==""&&!Number.isNaN(Number(o)))return Number(o).toLocaleString()}return String(o)},iS=e=>Dt__default.isValidElement(e)?jsx(Box,{sx:{display:"inline-flex",alignItems:"center"},children:e}):jsx(Typography,{sx:{mt:.2,fontSize:"0.88rem",fontWeight:800},children:e}),lS=(e,t)=>{let o=t[e.id];if(o==null||o==="")return "--";if(e.numeric){if(typeof o=="number")return o.toLocaleString();if(typeof o=="string"&&o.trim()!==""&&!Number.isNaN(Number(o)))return Number(o).toLocaleString()}return String(o)},sS=({summaryRow:e,visibleColumns:t,columns:o})=>{let r=o.filter(a=>t.includes(a.id)&&e[a.id]!=="");return r.length===0?null:jsx(Paper,{elevation:0,sx:{p:1.5,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Stack,{spacing:1,children:[jsx(Typography,{sx:{fontSize:"0.82rem",fontWeight:800,color:"text.secondary"},children:"Summary"}),jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(132px, 1fr))",gap:1},children:r.map(a=>jsxs(Paper,{elevation:0,sx:{p:1.1,borderRadius:3,border:"1px solid",borderColor:"divider"},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:a.label}),jsx(Typography,{sx:{mt:.25,fontSize:"0.96rem",fontWeight:800},children:e[a.id]})]},`summary-${a.id}`))})]})})},cS=e=>{let{t}=ee(),o=useTheme$1(),{title:r,showToolbar:a=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:d,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:h,loading:m=false,rowsPerPageOptions:b=[20,50,100,-1],onLayoutSave:C,filterConfig:u,rowKey:v,tableKey:p="default",graphReport:f,quickCreate:y,quickEdit:k,quickDelete:E,serviceUrl:M,orientation:S="auto",cardTitleField:D,cardSubtitleFields:P,toolbarSlot:w,emptyState:B,rowHeight:R="comfortable",cardActionSlot:I,renderCardFooter:A,onRowClick:q}=e,O=r||t("table.title.default"),K=useMediaQuery("(orientation: portrait)"),Q=useMediaQuery(o.breakpoints.down("md")),ne=S==="auto"?K||Q?"portrait":"landscape":S,{columns:ie,filterText:Y,setFilterText:Ae,visibleColumns:Ze,showSummary:ht,setShowSummary:fe,summaryColumns:We,grouping:Ee,setGrouping:Tt,expandedGroups:_e,groupAnchorEl:ze,setGroupAnchorEl:Ue,summaryAnchorEl:tt,setSummaryAnchorEl:_,anchorEl:le,setAnchorEl:Re,contextMenu:Ne,sortedAndFilteredRows:G,summaryRow:j,visibleRows:Te,page:Ce,setPage:De,rowsPerPage:ot,setRowsPerPage:je,totalDisplayCount:eo,setSelected:Zt,handleClick:It,toggleSummaryColumn:po,handleExport:Et,handleCloseContextMenu:Fe,toggleColumnVisibility:Se,toggleGroupExpand:bt,toggleGroupField:Ke,handleExpandGroupRecursively:Ft,handleCollapseGroupRecursively:mo,handleLayoutLoad:go,handleVariantLoad:Xt,handleLayoutSave:yt,effectiveAppId:fo,currentLayoutData:ho,currentLayoutId:bo,layoutIdToLoad:Uo,graphReportOpen:ut,handleOpenGraphReport:to,handleCloseGraphReport:xt}=nn(e),z=f?.enabled??false,V=z&&(f?.interaction?.enabled??true),H=nl(),ae=v||"id",se=Dt__default.useMemo(()=>({borderRadius:999,fontWeight:700,borderColor:alpha(o.palette.divider,o.palette.mode==="dark"?.55:.3),bgcolor:o.palette.mode==="dark"?alpha(o.palette.common.white,.06):alpha(o.palette.background.paper,.92),color:o.palette.text.primary,"& .MuiChip-label":{px:1.05}}),[o]),ke=Dt__default.useMemo(()=>({...se,borderColor:alpha(o.palette.primary.main,o.palette.mode==="dark"?.42:.24),bgcolor:o.palette.mode==="dark"?alpha(o.palette.primary.main,.16):alpha(o.palette.primary.main,.08)}),[se,o]),T=Dt__default.useMemo(()=>{let $=new Set(i);return G.filter(ce=>$.has(ce?.[ae]))},[ae,i,G]),N=T.length===1?T[0]:null,U=!!y?.enabled,J=!!k?.enabled,ue=!!E?.enabled,he=y?.fields,ye=y?.excludeFields||[],me=y?.initialValues||{},Be=k?.fields,Ve=k?.excludeFields||[],it=k?.editableFields||[],Ge=k?.nonEditableFields||[],Le=k?.primaryKeys?.length?k.primaryKeys:[ae],[Lt,Ot]=Dt__default.useState(false),[pt,oo]=Dt__default.useState(false),[mt,ro]=Dt__default.useState({}),[Ko,ao]=Dt__default.useState(false),[gr,Vr]=Dt__default.useState(false),[no,qo]=Dt__default.useState({}),[fr,zo]=Dt__default.useState(false),[ar,sa]=Dt__default.useState(false),Na=m||pt||gr||ar,Or=Dt__default.useMemo(()=>{let $=[...ie];if(Array.isArray(he)&&he.length>0){let ce=new Set(he);$=$.filter(X=>ce.has(X.id));}if(ye.length>0){let ce=new Set(ye);$=$.filter(X=>!ce.has(X.id));}return $.filter(ce=>!!ce?.id)},[ie,ye,he]),ca=Dt__default.useMemo(()=>{let $=[...ie];if(Array.isArray(Be)&&Be.length>0){let ce=new Set(Be);$=$.filter(X=>ce.has(X.id));}if(Ve.length>0){let ce=new Set(Ve);$=$.filter(X=>!ce.has(X.id));}return $.filter(ce=>!!ce?.id)},[ie,Ve,Be]),hr=Dt__default.useMemo(()=>new Set(Le),[Le]),yo=Dt__default.useMemo(()=>new Set(it),[it]),_o=Dt__default.useMemo(()=>new Set(Ge),[Ge]),Va=Dt__default.useCallback($=>yo.size>0?yo.has($):!(_o.has($)||hr.has($)),[yo,_o,hr]);Dt__default.useEffect(()=>{!ut&&H.hasActiveFilters&&H.clearAll();},[H,ut]);let da=()=>{let $={};Or.forEach(ce=>{$[ce.id]=me[ce.id]??"";}),ro($),Ot(true);},Oa=($,ce)=>{ro(X=>({...X,[$]:ce}));},Ha=async()=>{if(!y?.onSubmit){Ot(false);return}try{oo(!0),await y.onSubmit(mt),Ot(!1);}finally{oo(false);}},Wa=()=>{if(!N)return;let $={};ca.forEach(X=>{$[X.id]=N[X.id]??"";});let ce=k?.getInitialValues?{...$,...k.getInitialValues(N)}:$;qo(ce),ao(true);},wo=($,ce)=>{qo(X=>({...X,[$]:ce}));},$a=async()=>{if(N){if(!k?.onSubmit){ao(false);return}try{Vr(!0),await k.onSubmit(no,N),ao(!1);}finally{Vr(false);}}},Ga=()=>{T.length!==0&&zo(true);},ua=async()=>{if(T.length===0){zo(false);return}if(!E?.onConfirm){zo(false),Zt([]),s?.([]);return}try{sa(!0),await E.onConfirm(T),zo(!1),Zt([]),s?.([]);}finally{sa(false);}},br=G,{fieldMapping:Hr}=tn({rows:br,config:{...f,title:f?.title||`${O} ${t("graph.reportTitle")}`}}),Wr=Dt__default.useMemo(()=>V?H.applyRows(br,Hr):br,[Hr,H,V,br]),{model:x}=tn({rows:Wr,config:{...f,title:f?.title||`${O} ${t("graph.reportTitle")}`,fieldMapping:Hr}}),F=x.table.columns.map($=>({id:$.id,label:$.label,align:$.align||"left",minWidth:120,numeric:$.align==="right"})),L=fo?jsx(fl,{appId:fo,tableKey:p,currentLayoutData:ho,onLayoutLoad:go,targetLayoutId:Uo,activeLayoutId:bo,serviceUrl:M??u?.serviceUrl}):null,Z=ie.filter($=>Ze.includes($.id)),de=Z.find($=>$.id===D)||Z[0],Pe=P?.map($=>Z.find(ce=>ce.id===$)).filter(Boolean)||Z.filter($=>$.id!==de?.id).slice(0,ne==="portrait"?2:3),W=Z.filter($=>$.id!==de?.id&&!Pe.some(ce=>ce.id===$.id)),re=[w,l].filter(Boolean),oe=jsxs(Fragment,{children:[jsx(Ua,{groupAnchorEl:ze,setGroupAnchorEl:Ue,grouping:Ee,setGrouping:Tt,columns:ie,toggleGroupField:Ke}),jsx(Ka,{anchorEl:le,setAnchorEl:Re,columns:ie,visibleColumns:Ze,toggleColumnVisibility:Se}),jsx(Hi,{anchorEl:tt,setAnchorEl:_,showSummary:ht,setShowSummary:fe,columns:ie,summaryColumns:We,toggleSummaryColumn:po}),jsx(Wi,{contextMenu:Ne,handleCloseContextMenu:Fe,columns:ie,visibleColumns:Ze,toggleColumnVisibility:Se})]}),rt=($,ce,X)=>{let xe=i.includes(ce),Xe=ne==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",nr=X%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),xf=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{It({},$),q?.($);},sx:{p:R==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:xe?alpha(o.palette.primary.main,.38):xf,background:xe?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${nr}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:xe?`0 12px 30px ${alpha(o.palette.primary.main,.2)}`:`0 3px 10px ${alpha(o.palette.common.black,.045)}`,cursor:"pointer",position:"relative",overflow:"hidden",transition:"border-color 160ms ease, box-shadow 160ms ease, transform 120ms ease, background 160ms ease","&::before":{content:'""',position:"absolute",left:0,top:0,bottom:0,width:4,background:xe?o.palette.primary.main:X%2===0?alpha(o.palette.primary.main,.26):alpha(o.palette.text.primary,.16)},"&:hover":{boxShadow:`0 10px 20px ${alpha(o.palette.primary.main,.12)}`,transform:"translateY(-1px)"},"&:active":{transform:"scale(0.995)"}},children:jsxs(Stack,{spacing:1.25,children:[jsxs(Stack,{direction:"row",spacing:1.25,alignItems:"flex-start",children:[n?jsx(Checkbox,{checked:xe,onClick:To=>To.stopPropagation(),onChange:()=>It({},$),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[de?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:fg(de,$)}):null,Pe.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:Pe.map(To=>jsx(Chip,{label:`${To.label}: ${lS(To,$)}`,size:"small",variant:"outlined",sx:se},`${ce}-${To.id}`))}):null]}),I?jsx(Box,{onClick:To=>To.stopPropagation(),children:I($)}):null]}),W.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:Xe,gap:1},children:W.map(To=>jsxs(Paper,{elevation:0,sx:{p:1,borderRadius:3,bgcolor:o.palette.mode==="dark"?alpha(o.palette.background.default,.7):alpha(o.palette.background.paper,.92),border:"0.1px solid",borderColor:alpha(o.palette.divider,.24)},children:[jsx(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:To.label}),iS(fg(To,$))]},`${ce}-${To.id}-detail`))}):null,A?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:To=>To.stopPropagation(),children:A($)})]}):null]})},ce)};return jsxs(Box,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[u?jsx(Box,{sx:{mb:2},children:jsx(Jm,{...u,onVariantLoad:$=>{Xt($),u.onVariantLoad?.($);},appId:u.appId,tableKey:p,currentLayout:[{tableKey:p,layoutData:ho}],currentLayoutId:bo,layoutRefs:[{tableKey:p,layoutId:bo}],variantService:u.variantService,serviceUrl:M??u.serviceUrl,touchMode:ne==="portrait"?"expanded":"comfortable"})}):null,jsxs(Paper,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative",bgcolor:"transparent",backgroundImage:"none",boxShadow:"none","&::before":Na?{content:'""',position:"absolute",top:0,left:0,width:"100%",height:"3px",background:"linear-gradient(90deg, rgba(25, 118, 210, 0) 0%, rgba(25, 118, 210, 0.25) 25%, rgba(25, 118, 210, 1) 50%, rgba(25, 118, 210, 0.25) 75%, rgba(25, 118, 210, 0) 100%)",backgroundSize:"220% 100%",animation:"cTableTopMarquee 1.2s linear infinite",zIndex:6,pointerEvents:"none"}:{},"@keyframes cTableTopMarquee":{"0%":{backgroundPosition:"220% 0"},"100%":{backgroundPosition:"-120% 0"}},...h?{height:h}:c?{flex:1,minHeight:0,height:"100%"}:{}},children:[a?jsx(Box,{sx:{"& .MuiToolbar-root":{minHeight:60,alignItems:{xs:"flex-start",md:"center"},flexWrap:"wrap",rowGap:1,columnGap:1},"& .MuiToolbar-root > :nth-of-type(1)":{width:{xs:"100%",md:"auto"},"& .MuiTextField-root":{width:{xs:"100%",md:300}}},"& .MuiToolbar-root > :nth-of-type(2)":{flexShrink:0},"& .MuiToolbar-root > :nth-of-type(3)":{display:{xs:"none",md:"block"}},"& .MuiToolbar-root > :nth-of-type(4)":{ml:"auto",justifyContent:"flex-end",flexWrap:"wrap"},"& .MuiInputBase-root":{minHeight:46},"& .MuiIconButton-root":{width:40,height:40},"& .MuiTypography-root":{fontSize:"0.9rem"},"& .MuiButtonBase-root":{borderRadius:2.5}},children:jsx(Li,{filterText:Y,setFilterText:Ae,onRowsPerPageChange:je,rowsPerPage:ot,rowsPerPageOptions:b,page:Ce,count:eo,onPageChange:De,actions:d,extraTools:re,grouping:Ee,setGroupAnchorEl:Ue,showSummary:ht,setShowSummary:fe,setAnchorEl:Re,setSummaryAnchorEl:_,handleExport:Et,showCreateButton:U,onOpenCreateDialog:da,showEditButton:J,onOpenEditDialog:Wa,editDisabled:T.length!==1,showDeleteButton:ue,onOpenDeleteConfirm:Ga,deleteDisabled:T.length===0,onLayoutSave:C||u?.variantService&&u?.appId?yt:void 0,loading:m,layoutManager:L,onOpenGraphReport:z?to:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[Te.length===0&&!m?B||jsx(Paper,{elevation:0,sx:{p:4,borderRadius:4,border:"1px dashed",borderColor:"divider",textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.92rem",color:"text.secondary"},children:t("common.noData")})}):null,Te.map(($,ce)=>{if($.type==="group"){let Xe=_e.has($.id);return jsx(Paper,{elevation:0,sx:{borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:"action.hover"},children:jsxs(Box,{component:"button",type:"button",onClick:()=>bt($.id),sx:{width:"100%",px:1.5,py:1.3,border:0,background:"transparent",display:"flex",alignItems:"center",gap:1,textAlign:"left",cursor:"pointer",appearance:"none",WebkitAppearance:"none",color:"text.primary"},children:[Xe?jsx(Qk,{}):jsx(Jk,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[$.field,": ",$.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[$.count," records"]})]}),Ee.length>1&&$.level<Ee.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:nr=>{nr.stopPropagation(),Ft($.id);},sx:ke}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:nr=>{nr.stopPropagation(),mo($.id);},sx:ke})]}):null]})},$.id)}let X=$.data||$,xe=$.id||X[ae]||ce;return rt(X,xe,ce)}),ht?jsx(sS,{summaryRow:j,visibleColumns:Ze,columns:ie}):null,m?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),U?jsxs(Dialog,{open:Lt,onClose:()=>!pt&&Ot(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:y?.title||t("quickCreate.createWithTitle",{title:O})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Or.map($=>{let ce=$.type==="number"||$.numeric?"number":$.type==="date"?"date":"text";return jsx(TextField,{label:$.label||$.id,value:mt[$.id]??"",onChange:X=>Oa($.id,X.target.value),type:ce,fullWidth:true,InputLabelProps:{shrink:ce==="date"?true:void 0}},`quick-create-${$.id}`)}),y?.description?jsx(Alert,{severity:"info",children:y.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Ot(false),disabled:pt,children:y?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Ha,variant:"contained",disabled:pt,children:y?.submitLabel||t("common.save")})]})]}):null,J?jsxs(Dialog,{open:Ko,onClose:()=>!gr&&ao(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:k?.title||t("quickEdit.editWithTitle",{title:O})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[ca.map($=>{let ce=$.type==="number"||$.numeric?"number":$.type==="date"?"date":"text";return jsx(TextField,{label:$.label||$.id,value:no[$.id]??"",onChange:X=>wo($.id,X.target.value),type:ce,disabled:!Va($.id),fullWidth:true,InputLabelProps:{shrink:ce==="date"?true:void 0}},`quick-edit-${$.id}`)}),k?.description?jsx(Alert,{severity:"info",children:k.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>ao(false),disabled:gr,children:k?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:$a,variant:"contained",disabled:gr||!N,children:k?.submitLabel||t("common.save")})]})]}):null,ue?jsx(En,{open:fr,type:"warning",title:E?.title||t("quickDelete.confirmTitle"),message:E?.message||(T.length>1?t("quickDelete.confirmMessageMultiple",{count:T.length}):t("quickDelete.confirmMessageSingle")),confirmText:E?.confirmText||t("common.delete"),cancelText:E?.cancelText||t("common.cancel"),onClose:()=>!ar&&zo(false),onConfirm:ua}):null,oe,z?jsx(rl,{open:ut,onClose:xt,model:x,aiAssistant:f?.aiAssistant,interaction:V?{enabled:true,filters:H.filters,fieldMapping:Hr,onPrimaryDimensionClick:$=>H.setFilter("primaryDimension",$),onSecondaryDimensionClick:$=>H.setFilter("secondaryDimension",$),onStatusClick:$=>H.setFilter("status",$),onClearFilter:H.clearFilter,onClearAll:H.clearAll}:void 0,tableContent:jsx(cS,{appId:fo||"graph-report-internal",title:t("graph.dataBody"),columns:F,rows:x.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var IL=({appTitle:e,children:t,menuData:o=[],workloadItems:r=[],workloadSelectedId:a,showNavigation:n=true,showWorkloadNav:i=true,orientation:s="auto",logo:d,headerSlot:l,actionSlot:c,portraitBottomSlot:g,contentSx:h,containerSx:m,user:b,onSearch:C,defaultNavigationOpen:u,navOpen:v,onNavOpenChange:p,onWorkloadSelect:f,locale:y="en",localeLabel:k,localeOptions:E,onLocaleChange:M,onUserSetting:S,onUserLogout:D,userMenuItems:P,leftHeaderSlot:w,rightHeaderSlot:B})=>{let R="orbcafe:page-layout-mode",[I,A]=useState("system"),[q,O]=useState("light"),[K,Q]=useState(false),[ne,ie]=useState(false),Y=I==="system"?ne?q:"light":I;useEffect(()=>{Q(true);},[]),useEffect(()=>{try{let Ne=window.localStorage.getItem(R);(Ne==="light"||Ne==="dark"||Ne==="system")&&A(Ne);}catch{}ie(true);let le=window.matchMedia("(prefers-color-scheme: dark)"),Re=()=>{O(le.matches?"dark":"light");};return Re(),le.addEventListener("change",Re),()=>le.removeEventListener("change",Re)},[]),useEffect(()=>{if(ne)try{window.localStorage.setItem(R,I);}catch{}},[ne,I]),useEffect(()=>{Y==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[Y]);let Ae=useMemo(()=>createTheme$1({palette:Y==="dark"?{mode:"dark",primary:{main:"#93c5fd"},background:{default:"#060913",paper:"#101826"},text:{primary:"#f8fafc",secondary:"rgba(226,232,240,0.74)"},divider:"rgba(148,163,184,0.18)",action:{hover:"rgba(148,163,184,0.10)",selected:"rgba(59,130,246,0.18)"}}:{mode:"light",background:{default:"#eef3f8",paper:"#ffffff"}},components:{MuiCssBaseline:{styleOverrides:{body:{backgroundColor:Y==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[Y]),Ze=useMediaQuery("(orientation: portrait)"),ht=useMediaQuery(Ae.breakpoints.down("md")),fe=s==="auto"?!K||Ze||ht?"portrait":"landscape":s,[We,Ee]=useState({landscape:u??true,portrait:false}),Tt=We[fe],_e=v??Tt,ze=le=>{v===void 0&&Ee(Re=>({...Re,[fe]:le})),p?.(le);},Ue=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!K||n&&fe==="portrait"?jsx(IconButton,{onClick:()=>ze(!_e),sx:{bgcolor:"action.hover"},children:jsx(Yk,{})}):null,w]}),tt=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,B]}),_=jsx(lg,{collapsed:fe==="landscape"?!_e:false,onToggle:()=>ze(!_e),menuData:o,orientation:fe,colorMode:Y,maxHeight:fe==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:Ae,children:jsx(Ei,{locale:y,children:jsxs(Box,{sx:[le=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:le.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":le.palette.background.default}),...Array.isArray(m)?m:[m]],children:[jsx(Ll,{appTitle:e,logo:d===void 0?null:d,mode:I,onToggleMode:()=>A(le=>le==="system"?"dark":le==="dark"?"light":"system"),locale:y,localeLabel:k,localeOptions:E,onLocaleChange:M,user:b,onUserSetting:S,onUserLogout:D,userMenuItems:P,onSearch:C,leftSlot:Ue,rightSlot:tt}),l?jsx(Box,{sx:{px:{xs:2,md:3},py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:l}):null,jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex",position:"relative"},children:[K&&n&&fe==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:_}):null,!K||n&&fe==="portrait"?jsx(Drawer,{open:_e,onClose:()=>ze(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:_}):null,jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...h},children:jsxs(Stack,{spacing:1.5,children:[i&&r.length>0?jsx(og,{items:r,selectedId:a,orientation:fe,onItemSelect:f}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:fe==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:Ae.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),fe==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var yg=xS(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function dd({isRecording:e}){return jsx(AnimatePresence,{children:e&&jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.5},className:"pointer-events-none absolute inset-0 z-0 overflow-hidden",children:jsxs("div",{className:"relative flex h-full w-full items-center justify-center",children:[jsx("div",{className:"absolute inset-0",children:jsx(yg,{hue:0,hoverIntensity:.5,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})}),jsx("div",{className:"relative z-10 h-full w-1/3 mix-blend-overlay opacity-80",children:jsx(yg,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var AL=dd;function ls({onTextUpdate:e,onComplete:t,onError:o,wsUrl:r="ws://localhost:8765",silenceThresholdMs:a=2e3,minVolumeRms:n=.015}){let[i,s]=useState(false),d=useRef(null),l=useRef(null),c=useRef(null),g=useRef(null),h=useRef(null),m=useRef(0),b=useRef(false),C=useRef(false),u=useCallback(()=>{d.current&&(d.current.close(),d.current=null),g.current&&(g.current.disconnect(),g.current=null),h.current&&(h.current.disconnect(),h.current=null),l.current&&(l.current.getTracks().forEach(f=>f.stop()),l.current=null),c.current&&(c.current.close(),c.current=null),C.current=false,s(false);},[]),v=useCallback(()=>{b.current||(b.current=true,d.current?.readyState===WebSocket.OPEN&&d.current.send(JSON.stringify({type:"stop"})),setTimeout(u,500));},[u]),p=useCallback(async()=>{if(!(i||C.current)){C.current=true,b.current=false,m.current=Date.now();try{let f=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,sampleRate:16e3,echoCancellation:!0,noiseSuppression:!0}});l.current=f;let y=new WebSocket(r);d.current=y,y.onopen=()=>{s(!0),C.current=!1;},y.onmessage=D=>{try{let P=JSON.parse(D.data);if(P.type==="recognition")P.is_final?t(P.text):e?.(P.text);else if(P.type==="error"){let w=P.message||"Voice recognition error";o?.(w),v();}}catch{o?.("Failed to parse voice message");}},y.onerror=()=>{o?.("Voice service connection failed"),u();},y.onclose=()=>{u();};let k=window.AudioContext||window.webkitAudioContext;if(!k)throw new Error("AudioContext is not supported in this browser");let E=new k({sampleRate:16e3});c.current=E;let M=E.createMediaStreamSource(f);h.current=M;let S=E.createScriptProcessor(4096,1,1);g.current=S,S.onaudioprocess=D=>{if(d.current?.readyState!==WebSocket.OPEN)return;let P=D.inputBuffer.getChannelData(0),w=0;for(let I=0;I<P.length;I+=1)w+=P[I]*P[I];if(Math.sqrt(w/P.length)>n)m.current=Date.now();else if(Date.now()-m.current>a&&!b.current){v();return}let R=new Int16Array(P.length);for(let I=0;I<P.length;I+=1){let A=Math.max(-1,Math.min(1,P[I]));R[I]=A<0?A*32768:A*32767;}d.current.send(R.buffer);},M.connect(S),S.connect(E.destination);}catch{o?.("Cannot access microphone"),u();}}},[u,i,n,t,o,e,a,v,r]);return useEffect(()=>u,[u]),{isRecording:i,startRecording:p,stopRecording:v}}var vg=createContext(null);function DS(e){if(!e||!(e instanceof HTMLElement))return false;let t=e.tagName;return !!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||e.isContentEditable||e.closest('[data-voice-hotkey-ignore="true"]'))}function MS({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:r,longPressMs:a=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:s=true,wsUrl:d,silenceThresholdMs:l,minVolumeRms:c}){let[g,h]=useState(false),[m,b]=useState(false),C=useRef(null),u=useRef(false),v=useRef(false),p=useCallback(()=>{v.current=false,h(false);},[]),{isRecording:f,startRecording:y,stopRecording:k}=ls({wsUrl:d,silenceThresholdMs:l,minVolumeRms:c,onTextUpdate:D=>{o?.(D);},onComplete:async D=>{try{D.trim()&&(b(!0),await t(D.trim()));}catch(P){let w=P instanceof Error?P.message:"Failed to process voice command";r?.(w);}finally{b(!1),p();}},onError:D=>{r?.(D),b(!1),u.current||p();}}),E=useCallback(async()=>{v.current=false,await y();},[y]),M=useCallback(()=>{k();},[k]);useEffect(()=>{if(n)return;let D=w=>{w.isComposing||(w.code==="Space"||w.key===" ")&&(u.current||w.repeat||i&&DS(document.activeElement)||(u.current=true,w.preventDefault(),C.current=setTimeout(()=>{v.current=true,h(true),y();},a)));},P=w=>{(w.code==="Space"||w.key===" ")&&(C.current&&(clearTimeout(C.current),C.current=null),u.current=false,v.current&&(w.preventDefault(),h(false),k()));};return window.addEventListener("keydown",D),window.addEventListener("keyup",P),()=>{window.removeEventListener("keydown",D),window.removeEventListener("keyup",P),C.current&&(clearTimeout(C.current),C.current=null);}},[n,i,a,y,k]);let S=useMemo(()=>({isRecording:f,isHotkeyRecording:g,isSubmitting:m,startRecording:E,stopRecording:M}),[g,f,m,E,M]);return jsxs(vg.Provider,{value:S,children:[s?jsx(dd,{isRecording:g}):null,e]})}function AS(){let e=useContext(vg);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var OL=MS,HL=AS;function He(...e){return twMerge(clsx(e))}var VS=({content:e,theme:t="light",size:o="base",defaultExpanded:r=false})=>{let[a,n]=useState(r),i=useMemo(()=>`${(o==="sm"?14:o==="lg"?18:16)-2}px`,[o]);return jsxs("div",{className:`my-6 rounded-lg overflow-hidden transition-all duration-200 ${t==="dark"?"bg-gray-800":"bg-white"}`,style:{border:`0.5px solid ${t==="dark"?"#4b5563":"#d1d5db"}`},children:[jsxs("div",{className:`px-4 py-3 cursor-pointer flex items-center justify-between transition-colors duration-200 ${t==="dark"?"bg-gray-700 hover:bg-gray-650":"bg-gray-50 hover:bg-gray-100"}`,style:{borderBottom:`0.5px solid ${t==="dark"?"#4b5563":"#e5e7eb"}`},onClick:()=>n(!a),children:[jsxs("span",{className:"flex items-center",children:[jsx("span",{className:"mr-2",children:"\u{1F914}"}),jsx("span",{className:`font-medium ${t==="dark"?"text-gray-300":"text-gray-700"}`,style:{fontSize:o==="sm"?"14px":o==="lg"?"18px":"16px"},children:"\u601D\u8003\u8FC7\u7A0B"})]}),jsx("svg",{className:`w-4 h-4 transition-transform duration-200 ${a?"rotate-180":""} ${t==="dark"?"text-gray-400":"text-gray-500"}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),a&&jsx("div",{className:`p-4 whitespace-pre-wrap italic font-light ${t==="dark"?"text-gray-400":"text-gray-600"}`,style:{fontSize:i,lineHeight:"1.3 !important"},children:e})]})},Cg=VS;var qS=({content:e,language:t="text",isStreaming:o=false,className:r=""})=>{let{theme:a}=useTheme$2(),[n,i]=useState(false),s=async()=>{try{await navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3);}catch(l){console.error("\u590D\u5236\u5931\u8D25:",l);}},d=a==="dark"?oneDark:oneLight;return jsxs("div",{className:He("rounded-lg overflow-hidden border border-gray-200 dark:border-gray-700 my-4",r),children:[jsxs("div",{className:"flex items-center justify-between px-4 py-2 bg-gray-50 dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700",children:[jsx("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 uppercase",children:t}),jsx("button",{onClick:s,className:"p-1 hover:bg-gray-200 dark:hover:bg-gray-700 rounded transition-colors",disabled:o,title:n?"Copied":"Copy code",children:n?jsx(Check,{size:14,className:"text-green-500"}):jsx(Clipboard,{size:14,className:"text-gray-500 dark:text-gray-400"})})]}),jsx("div",{className:"text-sm",children:jsx(Prism,{language:t,style:d,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:a==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Sg=qS;var XS=({content:e,isLoading:t,className:o="",style:r})=>{let a=useRef(null),[n,i]=useState(false),[s,d]=useState(null),{theme:l}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!a.current)){i(true),d(null);try{Tg.initialize({startOnLoad:!1,theme:l==="dark"?"dark":"default",securityLevel:"loose",fontFamily:"inherit"});let h=`mermaid-${Math.random().toString(36).substr(2,9)}`,m=e.replace(/```mermaid\n?|\n?```/g,"").trim(),{svg:b}=await Tg.render(h,m);a.current&&(a.current.innerHTML=b);}catch(h){console.error("Mermaid render failed:",h),d(h instanceof Error?h.message:"Render failed"),a.current&&(a.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,l]),t||n?jsx("div",{className:`mermaid-block loading ${o}`,style:r,children:jsxs("div",{className:"flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-800 rounded border border-gray-200 dark:border-gray-700",children:[jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-500 mr-2"}),jsx("span",{className:"text-sm text-gray-500",children:"Generating Diagram..."})]})}):s?jsxs("div",{className:"p-4 bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded text-red-600 dark:text-red-400 text-sm overflow-auto",children:[jsx("p",{className:"font-semibold mb-2",children:"Mermaid Error:"}),jsx("pre",{children:s}),jsx("pre",{className:"mt-4 text-xs text-gray-500",children:e})]}):jsx("div",{className:`mermaid-block overflow-x-auto ${o}`,style:r,ref:a})},Pg=XS;var ow=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:r,icon:a,closable:n=true,onClose:i,onRetry:s,className:d="",...l})=>{let[c,g]=useState(false),[h,m]=useState(false),b=async()=>{if(s){m(true);try{await s();}catch(C){console.error("\u91CD\u8BD5\u5931\u8D25:",C);}finally{m(false);}}};return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex p-4 border-l-4 border-l-red-500 bg-red-50 dark:bg-red-900/10",children:[jsx("div",{className:"flex-shrink-0 mr-3 text-red-500 mt-0.5",children:a||jsx(AlertCircle,{className:"w-5 h-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center space-x-2 mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-mono px-1.5 py-0.5 rounded bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-300",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-3 leading-relaxed",children:typeof t=="string"?jsx("p",{className:"whitespace-pre-wrap",children:t}):t}),(s||r)&&jsxs("div",{className:"flex items-center space-x-4 mt-2",children:[s&&jsxs("button",{onClick:b,disabled:h,className:"flex items-center text-xs font-medium text-red-600 dark:text-red-400 hover:text-red-700 dark:hover:text-red-300 transition-colors disabled:opacity-50",children:[jsx(RotateCw,{className:`w-3.5 h-3.5 mr-1.5 ${h?"animate-spin":""}`}),h?"\u91CD\u8BD5\u4E2D...":"\u91CD\u8BD5"]}),r&&jsxs("button",{onClick:()=>g(!c),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 transition-colors",children:[c?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),c?"\u9690\u85CF\u8BE6\u60C5":"\u67E5\u770B\u8BE6\u60C5"]})]})]}),n&&i&&jsx("button",{onClick:i,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors self-start",children:jsx(X,{className:"w-4 h-4"})})]}),r&&c&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 border-t border-gray-100 dark:border-gray-800",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto whitespace-pre-wrap p-2 bg-white dark:bg-gray-900 rounded border border-gray-200 dark:border-gray-800",children:r})})]})},ss=ow;var sw=({title:e="\u8B66\u544A",content:t,warningType:o,severity:r="warning",warnings:a=[],icon:n,closable:i=true,onClose:s,onConfirm:d,actionText:l,className:c="",...g})=>{let h=()=>{switch(r){case "info":return {borderLeftColor:"border-l-blue-500",iconColor:"text-blue-500",bgColor:"bg-blue-50 dark:bg-blue-900/10"};case "error":return {borderLeftColor:"border-l-red-500",iconColor:"text-red-500",bgColor:"bg-red-50 dark:bg-red-900/10"};case "success":return {borderLeftColor:"border-l-green-500",iconColor:"text-green-500",bgColor:"bg-green-50 dark:bg-green-900/10"};default:return {borderLeftColor:"border-l-yellow-500",iconColor:"text-yellow-500",bgColor:"bg-yellow-50 dark:bg-yellow-900/10"}}},m=()=>{switch(r){case "info":return jsx(Info,{className:"w-5 h-5"});case "error":return jsx(XCircle,{className:"w-5 h-5"});case "success":return jsx(CheckCircle,{className:"w-5 h-5"});default:return jsx(AlertTriangle,{className:"w-5 h-5"})}},b=h();return jsxs("div",{className:`relative w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${c}`,...g,children:[jsxs("div",{className:`flex p-4 border-l-4 ${b.borderLeftColor} ${b.bgColor}`,children:[jsx("div",{className:`flex-shrink-0 mr-3 ${b.iconColor}`,children:n||m()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-1",children:[jsx("h4",{className:"text-base font-semibold text-gray-900 dark:text-gray-100",children:e}),o&&jsx("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400",children:o})]}),t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-2",children:t}),a&&a.length>0&&jsx("ul",{className:"mt-2 space-y-1",children:a.map((C,u)=>jsxs("li",{className:"flex items-start text-sm text-gray-600 dark:text-gray-300",children:[jsx("span",{className:"mr-2 mt-1.5 w-1 h-1 rounded-full bg-gray-400 dark:bg-gray-500 flex-shrink-0"}),jsx("span",{children:C})]},u))})]}),i&&s&&jsx("button",{onClick:s,className:"flex-shrink-0 ml-3 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors",children:jsx(X,{className:"w-4 h-4"})})]}),d&&jsx("div",{className:"bg-gray-50 dark:bg-gray-800/50 px-4 py-3 flex justify-end border-t border-gray-100 dark:border-gray-800",children:jsx("button",{onClick:d,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:l||"\u786E\u8BA4"})})]})},cs=sw;var pw=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:r,maxDisplay:a=5,icon:n,closable:i=false,onClose:s,className:d="",...l})=>{let[c,g]=useState(false),[h,m]=useState(""),[b,C]=useState(false),u=useMemo(()=>h.trim()?o.filter(f=>f.toLowerCase().includes(h.toLowerCase())):o,[o,h]),v=useMemo(()=>c?u:u.slice(0,a),[u,c,a]),p=f=>{r?.(f);};return !o||o.length===0?null:jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${d}`,...l,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/30 dark:bg-blue-900/10",children:[jsxs("div",{className:"flex items-center space-x-2.5",children:[jsx("div",{className:"text-blue-500 flex-shrink-0",children:n||jsx(Lightbulb,{className:"w-5 h-5"})}),jsxs("div",{className:"flex flex-col",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 leading-tight",children:e}),t&&jsx("span",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]})]}),jsxs("div",{className:"flex items-center space-x-1",children:[o.length>3&&jsx("button",{onClick:()=>C(!b),className:`p-1.5 rounded-md transition-colors ${b?"bg-blue-100 dark:bg-blue-900/30 text-blue-600 dark:text-blue-400":"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800"}`,title:b?"\u5173\u95ED\u641C\u7D22":"\u641C\u7D22\u95EE\u9898",children:jsx(Search,{className:"w-4 h-4"})}),i&&s&&jsx("button",{onClick:s,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",title:"\u5173\u95ED",children:jsx(X,{className:"w-4 h-4"})})]})]}),b&&jsx("div",{className:"px-4 py-2 border-b border-gray-100 dark:border-gray-800 bg-gray-50 dark:bg-gray-900/50",children:jsxs("div",{className:"relative",children:[jsx("input",{type:"text",placeholder:"\u641C\u7D22\u76F8\u5173\u95EE\u9898...",value:h,onChange:f=>m(f.target.value),className:"w-full text-sm px-3 py-1.5 pl-8 rounded border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 focus:ring-1 focus:ring-blue-500 focus:border-blue-500 outline-none transition-shadow",autoFocus:true}),jsx(Search,{className:"absolute left-2.5 top-2 w-3.5 h-3.5 text-gray-400"})]})}),jsxs("div",{className:"p-2",children:[jsx("ul",{className:"space-y-1",children:v.map((f,y)=>jsx("li",{children:jsxs("button",{onClick:()=>p(f),className:"w-full text-left px-3 py-2 rounded-md text-sm text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-800 hover:text-blue-600 dark:hover:text-blue-400 transition-colors group flex items-start justify-between",children:[jsx("span",{children:f}),jsx(ChevronRight,{className:"w-4 h-4 text-gray-300 group-hover:text-blue-400 opacity-0 group-hover:opacity-100 transition-all transform group-hover:translate-x-0.5"})]})},y))}),u.length>a&&jsx("button",{onClick:()=>g(!c),className:"w-full text-center py-2 text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 transition-colors border-t border-gray-50 dark:border-gray-800/50 mt-1",children:c?"\u6536\u8D77":`\u67E5\u770B\u5168\u90E8 (${u.length})`}),u.length===0&&h&&jsx("div",{className:"text-center py-4 text-sm text-gray-500 dark:text-gray-400",children:"\u6CA1\u6709\u627E\u5230\u5339\u914D\u7684\u5EFA\u8BAE"})]})]})},ds=pw;var xw=({title:e,content:t,toolName:o,parameters:r,result:a,status:n,duration:i,icon:s,closable:d=false,onClose:l,onAction:c,actionText:g,className:h="",...m})=>{let[b,C]=useState(false),[u,v]=useState(true),p=()=>{switch(n){case "pending":return {iconColor:"text-blue-500",badgeBg:"bg-blue-50 dark:bg-blue-900/30",badgeText:"text-blue-600 dark:text-blue-400",label:"\u6267\u884C\u4E2D"};case "error":return {iconColor:"text-red-500",badgeBg:"bg-red-50 dark:bg-red-900/30",badgeText:"text-red-600 dark:text-red-400",label:"\u5931\u8D25"};default:return {iconColor:"text-green-500",badgeBg:"bg-green-50 dark:bg-green-900/30",badgeText:"text-green-600 dark:text-green-400",label:"\u6210\u529F"}}},f=()=>{switch(n){case "pending":return jsx(Loader2,{className:"w-5 h-5 animate-spin"});case "error":return jsx(XCircle,{className:"w-5 h-5"});default:return jsx(CheckCircle,{className:"w-5 h-5"})}},y=M=>M?M<1e3?`${M}ms`:`${(M/1e3).toFixed(2)}s`:"",k=p(),E=e||o||"\u5DE5\u5177\u8C03\u7528";return jsxs("div",{className:`w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md ${h}`,...m,children:[jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsxs("div",{className:"flex items-center space-x-3",children:[jsx("div",{className:`flex-shrink-0 ${k.iconColor}`,children:s||f()}),jsxs("div",{children:[jsxs("div",{className:"flex items-center space-x-2",children:[jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:E}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${k.badgeBg} ${k.badgeText}`,children:k.label})]}),o&&e&&jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400 flex items-center mt-0.5",children:[jsx(Terminal,{className:"w-3 h-3 mr-1"}),o]})]})]}),jsxs("div",{className:"flex items-center space-x-2 text-xs text-gray-500 dark:text-gray-400",children:[i&&jsxs("div",{className:"flex items-center bg-gray-100 dark:bg-gray-800 px-2 py-1 rounded",children:[jsx(Clock,{className:"w-3 h-3 mr-1"}),y(i)]}),d&&l&&jsx("button",{onClick:l,className:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 transition-colors p-1 rounded",children:jsx(X,{className:"w-4 h-4"})})]})]}),jsxs("div",{className:"p-4",children:[t&&jsx("div",{className:"text-sm text-gray-600 dark:text-gray-300 mb-4 leading-relaxed",children:t}),r&&jsxs("div",{className:"mb-3",children:[jsxs("button",{onClick:()=>C(!b),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[b?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Box$1,{className:"w-3.5 h-3.5 mr-1.5"}),"\u8F93\u5165\u53C2\u6570"]}),b&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:JSON.stringify(r,null,2)})})]}),a&&jsxs("div",{children:[jsxs("button",{onClick:()=>v(!u),className:"flex items-center text-xs font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300 mb-2",children:[u?jsx(ChevronDown,{className:"w-3.5 h-3.5 mr-1"}):jsx(ChevronRight,{className:"w-3.5 h-3.5 mr-1"}),jsx(Terminal,{className:"w-3.5 h-3.5 mr-1.5"}),"\u6267\u884C\u7ED3\u679C"]}),u&&jsx("div",{className:"bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-hidden",children:jsx("pre",{className:"p-3 text-xs font-mono text-gray-600 dark:text-gray-400 overflow-x-auto",children:typeof a=="string"?a:JSON.stringify(a,null,2)})})]}),c&&jsx("div",{className:"mt-3 pt-3 border-t border-gray-100 dark:border-gray-800 flex justify-end",children:jsx("button",{onClick:c,className:"px-4 py-1.5 text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 rounded-md transition-colors focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-900",children:g||"\u6267\u884C\u64CD\u4F5C"})})]})]})},us=xw;var Cw=({data:e})=>{if(!e)return null;let t=useMemo(()=>{let o=[],r=[],a="\u6570\u636E\u8868\u683C";return Array.isArray(e)?(o=e,o.length>0&&(r=Object.keys(o[0]).map(n=>({id:n,label:n.charAt(0).toUpperCase()+n.slice(1),numeric:typeof o[0][n]=="number"})))):typeof e=="object"&&(a=e.title||a,o=Array.isArray(e.rows)?e.rows:Array.isArray(e.data)?e.data:[],Array.isArray(e.columns)?r=e.columns.map(i=>({id:i.key||i.id,label:i.title||i.label,numeric:i.dataType==="number"||i.numeric})):o.length>0&&(r=Object.keys(o[0]).map(i=>({id:i,label:i,numeric:typeof o[0][i]=="number"})))),o=o.map((n,i)=>({...n,id:n.id||`row_${i}`})),{title:a,columns:r,rows:o}},[e]);return t.rows.length===0?jsx("div",{className:"w-full my-4 p-4 border border-dashed border-gray-300 rounded text-center text-gray-500",children:"\u6682\u65E0\u8868\u683C\u6570\u636E"}):jsx("div",{className:"w-full my-4",children:jsx(Xr,{appId:"agent-ui-table-card",title:t.title,columns:t.columns,rows:t.rows,count:t.rows.length,rowKey:"id",fitContainer:false,maxHeight:"500px",rowsPerPage:10,rowsPerPageOptions:[5,10,20,50]})})},ps=Cw;var Mw=({title:e,subtitle:t,data:o,type:r,config:a={}})=>{let n=()=>{switch(r){case "bar-chart-card":return jsx(BarChart,{className:"w-4 h-4 text-blue-500"});case "line-chart-card":return jsx(LineChart,{className:"w-4 h-4 text-green-500"});case "pie-chart-card":return jsx(PieChart,{className:"w-4 h-4 text-purple-500"});case "combo-chart-card":return jsx(Activity,{className:"w-4 h-4 text-orange-500"});case "heatmap-chart-card":return jsx(Grid$1,{className:"w-4 h-4 text-red-500"});case "fishbone-chart-card":return jsx(GitBranch,{className:"w-4 h-4 text-indigo-500"});case "waterfall-chart-card":return jsx(TrendingDown,{className:"w-4 h-4 text-teal-500"});case "google-map-card":return jsx(Globe,{className:"w-4 h-4 text-blue-600"});case "amap-card":return jsx(MapPin,{className:"w-4 h-4 text-blue-600"});default:return jsx(BarChart,{className:"w-4 h-4"})}},i=()=>{if(!o&&r!=="google-map-card"&&r!=="amap-card")return jsx("div",{className:"text-gray-500 text-sm p-4 text-center",children:"No data available"});try{switch(r){case "bar-chart-card":return jsx(Gn,{data:o,orientation:a.orientation||"horizontal",valueSuffix:a.valueSuffix||"",minHeight:a.minHeight});case "line-chart-card":return jsx(Su,{data:o,color:a.color,valueSuffix:a.valueSuffix||"",height:a.height});case "pie-chart-card":let s=o.reduce((l,c)=>l+(Number(c.value)||0),0),d=o.map(l=>({name:l.name,value:Number(l.value)||0,percent:typeof l.percent=="number"?l.percent:s>0?(Number(l.value)||0)/s*100:0}));return jsx(Zi,{data:d,variant:a.variant||"donut",size:a.size,colors:a.colors});case "combo-chart-card":return jsx(wu,{data:o,barColor:a.barColor,lineColor:a.lineColor});case "heatmap-chart-card":return jsx(Iu,{data:o});case "fishbone-chart-card":return jsx(Ru,{branches:o,effect:a.effect||e||"Problem"});case "waterfall-chart-card":return jsx(Mu,{data:o,height:a.height});case "google-map-card":return jsx(Eu,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,apiKey:a.apiKey,query:a.query||o&&o[0]?.query||e,height:a.height});case "amap-card":return jsx(Nu,{embedUrl:a.embedUrl||o&&o[0]?.embedUrl,keyword:a.keyword||o&&o[0]?.keyword||e,height:a.height});default:return jsxs("div",{className:"text-gray-500 text-sm p-4 text-center",children:["Unsupported chart type: ",r]})}}catch(s){return console.error("Error rendering chart:",s),jsx("div",{className:"text-red-500 text-sm p-4 text-center",children:"Error rendering chart"})}};return jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-gray-50/50 dark:bg-gray-800/50",children:[jsx("div",{className:"mr-2 flex-shrink-0",children:n()}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100 truncate",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5 truncate",children:t})]})]}),jsxs("div",{className:"p-4",children:[jsx("div",{className:"overflow-x-auto",children:i()}),jsx("div",{className:"mt-3",children:jsxs("details",{className:"text-xs text-gray-500 dark:text-gray-400",children:[jsx("summary",{className:"cursor-pointer hover:text-gray-700 dark:hover:text-gray-300 transition-colors select-none font-medium opacity-60 hover:opacity-100",children:"View Raw Data"}),jsx("pre",{className:"mt-2 p-2 bg-gray-50 dark:bg-gray-950 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto max-h-40",children:JSON.stringify(o,null,2)})]})})]})]})},ms=Mw;var Bw=({type:e,manifest:t})=>jsxs("div",{className:"w-full overflow-hidden rounded-lg border border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-900 shadow-sm transition-all hover:shadow-md",children:[jsxs("div",{className:"flex items-center px-4 py-3 border-b border-gray-100 dark:border-gray-800 bg-blue-50/50 dark:bg-blue-900/10",children:[jsx(Box$1,{className:"w-4 h-4 mr-2 text-blue-600 dark:text-blue-400"}),jsxs("h3",{className:"text-sm font-semibold text-gray-900 dark:text-gray-100",children:["SAP Card: ",e]})]}),jsx("div",{className:"p-4",children:jsx("div",{className:"bg-gray-50 dark:bg-gray-950 p-3 rounded border border-gray-100 dark:border-gray-800 overflow-x-auto",children:jsx("pre",{className:"text-xs font-mono text-gray-600 dark:text-gray-400 whitespace-pre-wrap",children:JSON.stringify(t,null,2)})})})]}),fs=Bw;var hs=e=>{let t;try{t=JSON.parse(e);}catch{return null}return t&&typeof t=="object"&&((t.type==="bar-chart-card"||t.type==="line-chart-card"||t.type==="pie-chart-card"||t.type==="combo-chart-card"||t.type==="heatmap-chart-card"||t.type==="fishbone-chart-card"||t.type==="waterfall-chart-card"||t.type==="google-map-card"||t.type==="amap-card")&&t.title||(t.type==="sap-analytical-card"||t.type==="sap-list-card"||t.type==="sap-object-card"||t.type==="sap-component-card")&&t.manifest||t.type==="error-card"||t.type==="warning-card"||t.type==="suggestions-card"||t.type==="tool-result-card"||t.type==="table"&&t.data)?t:null};var Vw=({content:e,theme:t,size:o="base",className:r,enableCodeHighlight:a=true,enableMermaid:n=true,messageId:i,cardHooks:s})=>{let d=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(h,m)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(m.trim())}"></div>`):"",[e]),l=(h,m,b,C,u)=>{s?.onCardEvent?.({messageId:i,cardType:h,action:m,title:b,payload:C,rawData:u});},c=(h,m,b,C,u,v)=>{if(!(!u&&!s?.onCardEvent))return (...p)=>{let f=u?.(...p),y=v?v(...p):void 0;return l(h,m,b,y,C),f}},g=useMemo(()=>({div(h){let{"data-component":m,"data-think-content":b,...C}=h;return m==="thinkbox"&&b?jsx(Cg,{content:decodeURIComponent(b),theme:t,size:o,defaultExpanded:false}):jsx("div",{...C})},table({children:h}){return jsx("div",{className:"my-4 w-full overflow-x-auto rounded-lg border border-gray-200 dark:border-gray-800",children:jsx("table",{className:"w-full min-w-[520px] border-collapse text-sm",children:h})})},thead({children:h}){return jsx("thead",{className:"bg-gray-50 dark:bg-gray-900/60",children:h})},tbody({children:h}){return jsx("tbody",{className:"bg-white dark:bg-gray-950",children:h})},tr({children:h}){return jsx("tr",{className:"border-b border-gray-200 dark:border-gray-800 last:border-b-0",children:h})},th({children:h,align:m}){return jsx("th",{className:`px-3 py-2 font-semibold text-gray-800 dark:text-gray-100 ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:h})},td({children:h,align:m}){return jsx("td",{className:`px-3 py-2 text-gray-700 dark:text-gray-200 align-top ${m==="center"?"text-center":m==="right"?"text-right":"text-left"}`,children:h})},code({inline:h,className:m,children:b,...C}){let u=/language-([\w-]+)/.exec(m||""),v=u?u[1]:"";if(h)return jsx("code",{className:"font-mono text-sm bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded text-red-600 dark:text-red-400",...C,children:b});let p=String(b).replace(/\n$/,"");if(n&&v==="mermaid")return jsx(Pg,{content:p});if(v==="json"){let f=hs(p);if(f)switch(f.type){case "table":return jsx(ps,{data:f.data});case "bar-chart-card":case "line-chart-card":case "pie-chart-card":case "combo-chart-card":case "heatmap-chart-card":case "fishbone-chart-card":case "waterfall-chart-card":case "google-map-card":case "amap-card":return jsx(ms,{...f});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(fs,{...f});case "error-card":{let y=f;return jsx(ss,{...y,onClose:c("error-card","close",y.title,y,y.onClose),onRetry:c("error-card","retry",y.title,y,y.onRetry)})}case "warning-card":{let y=f,k=y.onConfirm?c("warning-card","confirm",y.title,y,y.onConfirm):y.actionText&&s?.onCardEvent?c("warning-card","confirm",y.title,y):void 0;return jsx(cs,{...y,onClose:c("warning-card","close",y.title,y,y.onClose),onConfirm:k})}case "suggestions-card":{let y=f;return jsx(ds,{...y,onClose:c("suggestions-card","close",y.title,y,y.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",y.title,y,y.onSuggestionClick,k=>({suggestion:k}))})}case "tool-result-card":{let y=f;return jsx(us,{...y,onClose:c("tool-result-card","close",y.title,y,y.onClose),onAction:c("tool-result-card","action",y.title,y,y.onAction)})}}}return a?jsx(Sg,{content:p,language:v,className:"not-prose"}):jsx("code",{className:m,...C,children:b})}}),[t,o,n,a,s,i]);return jsx("div",{className:He("markdown-body prose dark:prose-invert max-w-none",r),children:jsx(Ew,{remarkPlugins:[Fw,Lw],rehypePlugins:[zw,Nw],components:g,children:d})})},bs=Vw;var Ow=({content:e,messageId:t,cardHooks:o})=>{let r=(i,s,d,l,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:s,title:d,payload:l,rawData:c});},a=(i,s,d,l,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...h)=>{let m=c?.(...h),b=g?g(...h):void 0;return r(i,s,d,b,l),m}},n=hs(e);if(n)switch(n.type){case "table":return jsx(ps,{data:n.data});case "bar-chart-card":case "line-chart-card":case "pie-chart-card":case "combo-chart-card":case "heatmap-chart-card":case "fishbone-chart-card":case "waterfall-chart-card":case "google-map-card":case "amap-card":return jsx(ms,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(fs,{...n});case "error-card":{let i=n;return jsx(ss,{...i,onClose:a("error-card","close",i.title,i,i.onClose),onRetry:a("error-card","retry",i.title,i,i.onRetry)})}case "warning-card":{let i=n,s=i.onConfirm?a("warning-card","confirm",i.title,i,i.onConfirm):i.actionText&&o?.onCardEvent?a("warning-card","confirm",i.title,i):void 0;return jsx(cs,{...i,onClose:a("warning-card","close",i.title,i,i.onClose),onConfirm:s})}case "suggestions-card":{let i=n;return jsx(ds,{...i,onClose:a("suggestions-card","close",i.title,i,i.onClose),onSuggestionClick:a("suggestions-card","suggestion-click",i.title,i,i.onSuggestionClick,s=>({suggestion:s}))})}case "tool-result-card":{let i=n;return jsx(us,{...i,onClose:a("tool-result-card","close",i.title,i,i.onClose),onAction:a("tool-result-card","action",i.title,i,i.onAction)})}}return jsx("div",{className:"dynamic-card-fallback",children:jsx(bs,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},Ng=Ow;var xd=class{static analyze(t){if(!t.trim())return {blocks:[],hasComplexContent:false,overallType:"simple"};let r=/```json\s*\{\s*"type":\s*"[^"]+"/g.test(t),a=/<[^>]+>[\s\S]*?<\/[^>]+>/.test(t),n=t.includes("NQ#")||t.includes("data-component");return r||a||n?{blocks:[{type:"mixed",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:true,overallType:"complex"}:{blocks:[{type:"markdown",content:t,startIndex:0,endIndex:t.length}],hasComplexContent:false,overallType:"simple"}}},Ww=({content:e,className:t="",messageId:o,cardHooks:r})=>{let a=Dt__default.useMemo(()=>xd.analyze(e),[e]);return jsx("div",{className:`universal-content-renderer ${t}`,children:a.blocks.map((n,i)=>n.type==="mixed"||n.type==="json-card"?jsx(Ng,{content:n.content,messageId:o,cardHooks:r},`block-${i}`):jsx(bs,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:r},`block-${i}`))})},Vg=Ww;var $w=({content:e,isStreaming:t=true,onComplete:o,className:r="",streamIntervalMs:a=24,streamChunkSize:n=3,messageId:i,cardHooks:s})=>{let[d,l]=useState(t?0:e.length),[c,g]=useState(!t);useEffect(()=>{if(t){l(0),g(false);return}l(e.length),g(true);},[e,t]),useEffect(()=>{if(!t||c)return;if(d>=e.length){g(true),o?.();return}let u=window.setTimeout(()=>{l(v=>Math.min(v+n,e.length));},a);return ()=>{window.clearTimeout(u);}},[e.length,c,t,o,n,a,d]);let h=()=>{t&&!c&&(l(e.length),g(true),o?.());},m=t?e.slice(0,d):e,b=t&&!c,C=t&&!c;return jsxs("div",{className:`streaming-markdown ${r}`,onClick:h,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(Vg,{content:m,messageId:i,cardHooks:s}),b&&jsx("span",{className:"inline-block w-0.5 h-5 bg-blue-500 ml-1 animate-pulse",style:{verticalAlign:"text-bottom"}})]}),C&&jsx("div",{className:"streaming-hint",style:{fontSize:"9px",color:"#999",marginTop:"8px",fontStyle:"italic",opacity:.7},children:"\u70B9\u51FB\u6B64\u5904\u663E\u793A\u5B8C\u6574\u5185\u5BB9"})]})},$g=$w;var Gg=({buttons:e,className:t})=>{let o=r=>{switch(r){case "copy":return jsx(Copy,{size:14});case "refresh":return jsx(RefreshCw,{size:14});case "volume":return jsx(Volume2,{size:14});case "like":return jsx(ThumbsUp,{size:14});case "dislike":return jsx(ThumbsDown,{size:14});default:return null}};return jsx("div",{className:He("flex items-center gap-1",t),children:e.map((r,a)=>jsx("button",{onClick:r.onClick,disabled:r.disabled,className:He("p-1.5 rounded-md transition-colors","text-gray-500 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100","hover:bg-gray-100 dark:hover:bg-gray-800","disabled:opacity-50 disabled:cursor-not-allowed",r.active&&"text-blue-600 bg-blue-50 dark:text-blue-400 dark:bg-blue-900/20",r.type==="refresh"&&r.disabled&&"animate-spin"),title:r.type,type:"button",children:o(r.type)},`${r.type}-${a}`))})};var ys=({message:e,onStreamingComplete:t,assistantActions:o,streamIntervalMs:r,streamChunkSize:a,cardHooks:n})=>e.type==="assistant"?jsx("div",{className:"flex justify-start mb-4",children:jsxs("div",{className:"w-full bg-transparent text-black dark:text-gray-100 rounded-2xl px-4 py-3 mr-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx($g,{content:e.content,isStreaming:e.isStreaming??false,onComplete:t,streamIntervalMs:r,streamChunkSize:a,messageId:e.id,cardHooks:n}),e.content&&o?.isLatestAssistant&&jsx("div",{className:"flex flex-row justify-start gap-2 mt-3 pt-2 border-t border-gray-100 dark:border-gray-700",children:jsx(Gg,{buttons:[{type:"refresh",onClick:()=>o?.onRegenerate?.(),disabled:!o?.onRegenerate},{type:"copy",onClick:()=>navigator.clipboard.writeText(e.content),disabled:false},{type:"volume",onClick:()=>console.log("\u8BED\u97F3\u64AD\u653E"),disabled:false},{type:"like",onClick:()=>console.log("\u70B9\u8D5E"),disabled:false},{type:"dislike",onClick:()=>console.log("\u70B9\u8E29"),disabled:false}],size:"sm",variant:"default"})}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})}):jsx("div",{className:"flex justify-end",children:jsxs("div",{className:"max-w-[80%] bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-100 rounded-2xl px-4 py-3 ml-auto",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[jsx("div",{className:"whitespace-pre-wrap",style:{lineHeight:"1.5",fontSize:"16px",fontWeight:"280",fontFamily:'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:e.content}),jsx("div",{className:"text-xs mt-2 text-gray-500 dark:text-gray-400",children:e.timestamp.toLocaleTimeString()})]})});var Kg=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:r,className:a})=>{let{isRecording:n,startRecording:i,stopRecording:s}=ls({onTextUpdate:e,onComplete:l=>{t?.(l);},onError:l=>{console.error("Voice input error:",l),o?.();}});return jsx("button",{onClick:async()=>{n?s():await i();},disabled:r,className:He("transition-all duration-200 flex items-center justify-center rounded-full",n?"bg-red-100 text-red-600 hover:bg-red-200 animate-pulse":"bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 active:scale-95",r&&"opacity-50 cursor-not-allowed",a),title:n?"Stop recording":"Start recording",type:"button",children:n?jsx(Zw,{sx:{fontSize:24}}):jsx(jw,{sx:{fontSize:24}})})};var Mt={container:"w-full max-w-4xl mx-auto",inputContainer:He("w-full border backdrop-blur-xl transition-all duration-300 shadow-2xl flex flex-col","bg-white/80 dark:bg-gray-900/80","border-gray-200/60 dark:border-gray-600/40","shadow-gray-900/5","hover:border-blue-300/80 hover:shadow-blue-500/10 hover:shadow-2xl","focus-within:border-blue-400/90 focus-within:shadow-blue-500/20 focus-within:shadow-3xl focus-within:scale-[1.005] transform-gpu"),dragActive:"border-blue-500 bg-blue-50/50 dark:bg-blue-900/20",textareaWrapper:"flex-1 relative flex items-center",textarea:He("w-full outline-none appearance-none resize-none bg-transparent border-none text-sm font-normal py-3 px-2","placeholder:text-gray-400/70 dark:placeholder:text-gray-500/60 placeholder:font-normal","text-gray-800 dark:text-gray-100 selection:bg-blue-200/50 dark:selection:bg-blue-500/30","focus:ring-0 focus:outline-none focus:border-none focus:shadow-none","min-h-[44px] max-h-[12em] overflow-y-auto scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600"),filePreviewArea:"px-6 pt-3 pb-1 flex flex-wrap gap-2",fileTag:He("flex items-center gap-2 px-3 py-1.5 rounded-lg text-xs font-medium","bg-gray-100 dark:bg-gray-800 text-gray-700 dark:text-gray-300","border border-gray-200 dark:border-gray-700","transition-all hover:bg-gray-200 dark:hover:bg-gray-700"),buttonBase:"flex items-center justify-center transition-all duration-200 rounded-full",buttonSmall:"w-10 h-10",buttonNormal:He("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:He("cursor-pointer bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 shadow-none active:scale-95"),sendButtonDisabled:He("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:He("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},r1={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},a1=({enabled:e,onClick:t})=>jsx("button",{className:He(Mt.buttonBase,Mt.buttonSmall,Mt.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(t1,{sx:{fontSize:24}})}),n1=()=>jsxs("button",{className:He(Mt.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",Mt.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(o1,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),i1=({canSend:e,isResponding:t,onSend:o,onStop:r})=>t?jsx("button",{className:He(Mt.buttonBase,Mt.buttonSmall,Mt.stopButton),onClick:r,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:He(Mt.buttonBase,Mt.buttonSmall,e?Mt.sendButton:Mt.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(e1,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),qg=({onSend:e,onStop:t,isResponding:o=false,placeholder:r,getText:a})=>{let[n,i]=useState(""),[s,d]=useState([]),[l,c]=useState(false),[g,h]=useState(false),m=useRef(null),b=r||(a?a("00019","Type a message..."):"Type a message..."),C=(n.trim().length>0||s.length>0)&&!o,u={enabled:true},v=useCallback(A=>{i(A.target.value),A.target.style.height="auto",A.target.style.height=`${Math.min(A.target.scrollHeight,200)}px`;},[]),p=useCallback(A=>{if(A.target.files&&A.target.files.length>0){let q=Array.from(A.target.files);d(O=>{let K=q.filter(ne=>O.some(ie=>ie.name===ne.name&&ie.size===ne.size));K.length>0&&console.warn("Duplicate files ignored:",K.map(ne=>ne.name));let Q=q.filter(ne=>!O.some(ie=>ie.name===ne.name&&ie.size===ne.size));return [...O,...Q]}),m.current&&(m.current.value="");}},[]),f=useCallback(A=>{d(q=>q.filter((O,K)=>K!==A));},[]),y=useCallback(()=>{m.current?.click();},[]),k=useCallback(async()=>{if(!C)return;let A=n,q=[...s];i(""),d([]),m.current&&(m.current.value="");try{await e(A,q);}catch(O){console.error("Failed to send message:",O),i(A),d(q);}},[n,C,e,s]),E=useCallback(A=>{A.key==="Enter"&&!A.shiftKey&&!l&&(A.preventDefault(),k());},[k,l]),M=useCallback(()=>{c(true);},[]),S=useCallback(()=>{c(false);},[]),D=useCallback(A=>{i(A);},[]),P=useCallback(A=>{i(A);},[]),w=useCallback(()=>{},[]),B=useCallback(A=>{A.preventDefault(),h(true);},[]),R=useCallback(A=>{A.preventDefault(),h(false);},[]),I=useCallback(A=>{if(A.preventDefault(),h(false),A.dataTransfer.files&&A.dataTransfer.files.length>0){let q=Array.from(A.dataTransfer.files);d(O=>[...O,...q]);}},[]);return jsx("div",{className:Mt.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:m,onChange:p}),jsxs("div",{className:He(Mt.inputContainer,g&&Mt.dragActive),style:{borderRadius:"32px"},onDragOver:B,onDragLeave:R,onDrop:I,children:[s.length>0&&jsx("div",{className:Mt.filePreviewArea,children:s.map((A,q)=>jsxs("div",{className:Mt.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:A.name}),jsx("button",{onClick:()=>f(q),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${A.name}-${q}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:He(Mt.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:He(Mt.textarea,"min-h-[24px] py-0 px-0"),placeholder:b,value:n,onChange:v,onKeyDown:E,onCompositionStart:M,onCompositionEnd:S,style:r1,"aria-label":"Message input",spellCheck:false,rows:1})}),jsxs("div",{className:"flex items-center justify-between px-1 pb-1",children:[jsxs("div",{className:"flex items-center gap-1",role:"toolbar","aria-label":"Input tools",children:[jsx(a1,{enabled:u.enabled,onClick:y}),jsx(n1,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(Kg,{onTextUpdate:D,onComplete:P,onCancel:w,disabled:o,className:Mt.buttonSmall}),jsx(i1,{canSend:C,isResponding:o,onSend:k,onStop:t})]})]})]})]})]})})};var Zg=({messages:e,onSend:t,onStop:o,onRegenerate:r,isResponding:a=false,className:n,placeholder:i,streamIntervalMs:s,streamChunkSize:d,onMessageStreamingComplete:l,cardHooks:c,showInput:g=true})=>{let h=useRef(null),m=useRef(e.length);return useEffect(()=>{e.length>m.current&&h.current?.scrollIntoView({behavior:"smooth"}),m.current=e.length;},[e]),jsxs("div",{className:He("flex flex-col h-full w-full relative",n),children:[jsxs("div",{className:"flex-1 overflow-y-auto px-4 py-4 space-y-6 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((b,C)=>{let u=b.type==="assistant"&&C===e.length-1,v=b.type==="assistant"?{isLatestAssistant:u,onRegenerate:r?()=>r(b.id):void 0}:void 0;return jsx(ys,{message:b,assistantActions:v,onStreamingComplete:()=>l?.(b.id),streamIntervalMs:s,streamChunkSize:d,cardHooks:c},b.id)}),jsx("div",{ref:h})]}),g&&jsx("div",{className:"p-4 bg-gradient-to-t from-white via-white to-transparent dark:from-gray-900 dark:via-gray-900 pb-8 z-10",children:jsx(qg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:a,placeholder:i})})]})};var Fo={};var c1={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},uV=({title:e="AI Agent",description:t,headerActions:o,className:r,agentStatus:a,showInput:n=false,...i})=>{let s=a??(i.isResponding?"running":"idle");return jsxs("div",{className:He("relative flex h-full w-full",Fo.agentPanel,r),"data-status":s,children:[jsx("div",{className:Fo.colorHalo,"data-status":s,"aria-hidden":"true"}),jsxs("div",{className:Fo.marqueeBorder,"data-status":s,"aria-hidden":"true",children:[jsx("span",{className:He(Fo.edge,Fo.top)}),jsx("span",{className:He(Fo.edge,Fo.right)}),jsx("span",{className:He(Fo.edge,Fo.bottom)}),jsx("span",{className:He(Fo.edge,Fo.left)})]}),jsxs("div",{className:"relative z-10 flex h-full w-full flex-col rounded-xl border border-slate-200/70 bg-white shadow-sm overflow-hidden dark:border-slate-800 dark:bg-gray-950",children:[jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-gray-100 dark:border-gray-800 bg-white/50 dark:bg-gray-900/50 backdrop-blur-sm z-20",children:[jsxs("div",{children:[jsx("h2",{className:"text-lg font-semibold text-gray-900 dark:text-gray-100",children:e}),t&&jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 mt-0.5",children:t})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsxs("div",{className:"inline-flex items-center gap-1.5 px-2 py-1 rounded-full bg-gray-100/80 dark:bg-gray-800/70",children:[jsx("span",{className:Fo.statusDot,"data-status":s}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:c1[s]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(Zg,{...i,showInput:n})})]})]})};var g1={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},xV=({messages:e,onSend:t,onRegenerate:o,isResponding:r=false,className:a,placeholder:n,title:i="Copilot",corner:s="bottom-right",onCollapse:d,onHeaderPointerDown:l,onPlusClick:c,onMicClick:g,streamIntervalMs:h,streamChunkSize:m,onMessageStreamingComplete:b,cardHooks:C})=>{let[u,v]=useState(""),[p,f]=useState(false),y=useRef(null),k=g1[s];useEffect(()=>{y.current?.scrollIntoView({behavior:"smooth"});},[e,r]);let E=useCallback(async()=>{let S=u.trim();!S||r||(v(""),await t(S));},[r,t,u]),M=useCallback(async S=>{S.key==="Enter"&&!p&&(S.preventDefault(),await E());},[E,p]);return jsxs("div",{className:He("relative flex h-full w-full min-h-[460px] min-w-[340px] flex-col overflow-hidden rounded-3xl border border-gray-200 bg-white shadow-none dark:border-gray-800 dark:bg-gray-900",a),children:[d&&jsx("button",{onClick:d,className:He("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",k==="top-left"&&"-left-2 -top-2",k==="top-right"&&"-right-2 -top-2",k==="bottom-left"&&"-bottom-2 -left-2",k==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:He("block h-4 w-4 border-[#21BCFF]",k==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",k==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",k==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",k==="bottom-right"&&"rounded-br-full border-b-[3px] border-r-[3px]")})}),jsxs("div",{className:"flex items-center justify-between border-b border-gray-100 px-4 py-3 dark:border-gray-800",onPointerDown:l,children:[jsx("div",{className:"flex items-center",children:jsx("h3",{className:"text-base font-semibold tracking-tight text-gray-900 dark:text-gray-100",children:i})}),jsx("div",{})]}),jsxs("div",{className:"flex-1 overflow-y-auto px-3 py-3 space-y-5 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-gray-600",children:[e.map((S,D)=>{let P=S.type==="assistant"&&D===e.length-1,w=S.type==="assistant"?{isLatestAssistant:P,onRegenerate:o?()=>o(S.id):void 0}:void 0;return jsx(ys,{message:S,assistantActions:w,onStreamingComplete:()=>b?.(S.id),streamIntervalMs:h,streamChunkSize:m,cardHooks:C},S.id)}),jsx("div",{ref:y})]}),jsx("div",{className:"border-t border-gray-100 px-3 py-3 dark:border-gray-800",children:jsxs("div",{className:"flex items-center gap-2 rounded-xl border border-blue-300/80 bg-white px-2 py-1.5 dark:bg-gray-900",children:[jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:c,type:"button","aria-label":"Add",children:jsx(Plus,{className:"h-4 w-4"})}),jsx("input",{className:"h-7 flex-1 border-none bg-transparent text-sm text-gray-800 outline-none placeholder:text-gray-400 dark:text-gray-100 dark:placeholder:text-gray-500",placeholder:n||"Ask Copilot...",value:u,onChange:S=>v(S.target.value),onCompositionStart:()=>f(true),onCompositionEnd:()=>f(false),onKeyDown:M,"aria-label":"Copilot input",spellCheck:false}),jsx("button",{className:"flex h-8 w-8 items-center justify-center rounded-full text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200",onClick:g,type:"button","aria-label":"Microphone",children:jsx(Mic,{className:"h-4 w-4"})})]})})]})};var f1=["#ff3860","#24e070","#3090ff"],h1=`
17
+ .orbcafe-ai-browser-glow {
18
+ position: fixed;
19
+ inset: 0;
20
+ width: 100vw;
21
+ height: 100vh;
22
+ z-index: var(--orbcafe-ai-glow-z-index);
23
+ pointer-events: none;
24
+ overflow: hidden;
25
+ contain: paint;
26
+ clip-path: inset(0);
27
+ opacity: 0;
28
+ transition: opacity 260ms ease;
29
+ --orbcafe-ai-glow-a: #ff3860;
30
+ --orbcafe-ai-glow-b: #24e070;
31
+ --orbcafe-ai-glow-c: #3090ff;
32
+ }
33
+
34
+ .orbcafe-ai-browser-glow[data-active='true'] {
35
+ opacity: 1;
36
+ }
37
+
38
+ .orbcafe-ai-browser-glow::before,
39
+ .orbcafe-ai-browser-glow::after {
40
+ content: '';
41
+ position: absolute;
42
+ inset: 0;
43
+ pointer-events: none;
44
+ }
45
+
46
+ .orbcafe-ai-browser-glow::before {
47
+ border: 1px solid color-mix(in srgb, var(--orbcafe-ai-glow-c) 54%, transparent);
48
+ box-shadow:
49
+ inset 0 0 18px color-mix(in srgb, var(--orbcafe-ai-glow-a) 56%, transparent),
50
+ inset 0 0 38px color-mix(in srgb, var(--orbcafe-ai-glow-b) 44%, transparent),
51
+ inset 0 0 74px color-mix(in srgb, var(--orbcafe-ai-glow-c) 36%, transparent),
52
+ 0 0 22px color-mix(in srgb, var(--orbcafe-ai-glow-a) 42%, transparent);
53
+ animation: orbcafeAIBrowserGlowPulse 2.2s ease-in-out infinite;
54
+ }
55
+
56
+ .orbcafe-ai-browser-glow::after {
57
+ background:
58
+ linear-gradient(90deg, var(--orbcafe-ai-glow-a), var(--orbcafe-ai-glow-b), var(--orbcafe-ai-glow-c)) top / 100% 5px no-repeat,
59
+ linear-gradient(90deg, var(--orbcafe-ai-glow-c), var(--orbcafe-ai-glow-b), var(--orbcafe-ai-glow-a)) bottom / 100% 5px no-repeat,
60
+ linear-gradient(180deg, var(--orbcafe-ai-glow-a), var(--orbcafe-ai-glow-b), var(--orbcafe-ai-glow-c)) left / 5px 100% no-repeat,
61
+ linear-gradient(180deg, var(--orbcafe-ai-glow-c), var(--orbcafe-ai-glow-b), var(--orbcafe-ai-glow-a)) right / 5px 100% no-repeat;
62
+ filter: blur(9px) saturate(1.35);
63
+ opacity: 0.78;
64
+ }
65
+
66
+ @keyframes orbcafeAIBrowserGlowPulse {
67
+ 0%, 100% { opacity: 0.68; }
68
+ 50% { opacity: 0.98; }
69
+ }
70
+ `,kV=({active:e=false,colors:t=f1,zIndex:o=2147483e3})=>{let r={"--orbcafe-ai-glow-a":t[0],"--orbcafe-ai-glow-b":t[1],"--orbcafe-ai-glow-c":t[2],"--orbcafe-ai-glow-z-index":o};return jsxs(Fragment,{children:[jsx("style",{children:h1}),jsx("div",{className:"orbcafe-ai-browser-glow","data-active":e?"true":"false",style:r,"aria-hidden":"true"})]})};var IV=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:r}={})=>{let[a,n]=useState(e),[i,s]=useState(false),d=useCallback(async m=>{s(true);try{await m?.();}finally{s(false);}},[]),l=useCallback(m=>d(()=>t?.(m)),[t,d]),c=useCallback(m=>d(()=>o?.(m)),[o,d]),g=useCallback(m=>d(()=>r?.(m)),[r,d]),h=useMemo(()=>({mode:a,loading:i,onModeChange:n,onLogin:l,onRegister:c,onForgotPassword:g}),[g,l,c,i,a]);return {mode:a,loading:i,setMode:n,authPageProps:h}};var kd=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var Di=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));Di.displayName="CPaper";var A1={productName:"ORBCAFE",headline:"Operational workbench",subheadline:"A focused entry point for reports, planning, agent workflows, and enterprise operations.",loginTitle:"Sign in",loginSubtitle:"Use your workspace account to continue.",registerTitle:"Create account",registerSubtitle:"Request a demo workspace user for evaluation.",forgotTitle:"Reset password",forgotSubtitle:"Send a password reset request to your email address."},qV=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:r,onRegister:a,onForgotPassword:n,loading:i=false,logo:s,copy:d,sx:l})=>{let c=useTheme(),g=e!==void 0,[h,m]=useState(t),b=e??h,C=useMemo(()=>({...A1,...d}),[d]),[u,v]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[p,f]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[y,k]=useState({email:""}),[E,M]=useState(""),S=I=>{g||m(I),M(""),o?.(I);},D=async I=>{I.preventDefault(),await r?.(u),M("Demo login accepted. No real authentication request was sent.");},P=async I=>{I.preventDefault(),await a?.(p),M("Demo registration saved locally for this screen.");},w=async I=>{I.preventDefault(),await n?.(y),M("Demo reset link request created. No email was sent.");},B=b==="login"?C.loginTitle:b==="register"?C.registerTitle:C.forgotTitle,R=b==="login"?C.loginSubtitle:b==="register"?C.registerSubtitle:C.forgotSubtitle;return jsxs(Box,{sx:{minHeight:"100vh",display:"grid",gridTemplateColumns:{xs:"1fr",md:"minmax(320px, 0.9fr) minmax(420px, 1.1fr)"},background:c.palette.mode==="dark"?"linear-gradient(135deg, #071018 0%, #151515 48%, #101827 100%)":"linear-gradient(135deg, #eef3f8 0%, #ffffff 52%, #e8f2f0 100%)",...l},children:[jsxs(Box,{sx:{display:{xs:"none",md:"flex"},flexDirection:"column",justifyContent:"space-between",p:{md:6,lg:8},borderRight:`1px solid ${c.palette.divider}`},children:[jsxs(Stack,{spacing:4,children:[jsx(Box,{children:s}),jsxs(Stack,{spacing:2,children:[jsx(Typography,{sx:{fontSize:14,fontWeight:700,color:"primary.main",textTransform:"uppercase"},children:C.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:C.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:C.subheadline})]})]}),jsxs(Stack,{direction:"row",spacing:2,sx:{color:"text.secondary",fontSize:13},children:[jsx(Typography,{variant:"caption",children:"Reports"}),jsx(Typography,{variant:"caption",children:"Planning"}),jsx(Typography,{variant:"caption",children:"Agent UI"})]})]}),jsx(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"center",p:{xs:2,sm:4,md:6}},children:jsx(Di,{elevation:0,sx:{width:"100%",maxWidth:460,m:0,p:{xs:2.5,sm:4},borderRadius:3,border:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.mode==="dark"?"rgba(15, 23, 42, 0.86)":"rgba(255, 255, 255, 0.88)",backdropFilter:"blur(18px)",boxShadow:c.palette.mode==="dark"?"0 24px 80px rgba(0,0,0,0.34)":"0 24px 80px rgba(15,23,42,0.10)"},children:jsxs(Stack,{spacing:3,children:[jsxs(Stack,{spacing:1,children:[jsx(Box,{sx:{display:{xs:"block",md:"none"},mb:1},children:s}),jsx(Typography,{sx:{fontSize:28,fontWeight:800},children:B}),jsx(Typography,{sx:{color:"text.secondary"},children:R})]}),E&&jsx(Alert,{severity:"success",children:E}),b==="login"&&jsx(Box,{component:"form",onSubmit:D,children:jsxs(Stack,{spacing:2,children:[jsx(io,{label:"Email or user ID",value:u.username,onChange:I=>v(A=>({...A,username:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(of,{fontSize:"small"})})}}),jsx(io,{label:"Password",type:"password",value:u.password,onChange:I=>v(A=>({...A,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(D1,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(kd,{label:"Remember me",checked:u.remember,onChange:I=>v(A=>({...A,remember:I.target.checked}))}),jsx(jo,{type:"button",variant:"text",size:"small",onClick:()=>S("forgot"),children:"Forgot?"})]}),jsx(jo,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(jo,{type:"button",variant:"text",size:"small",onClick:()=>S("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),b==="register"&&jsx(Box,{component:"form",onSubmit:P,children:jsxs(Stack,{spacing:2,children:[jsx(io,{label:"Full name",value:p.name,onChange:I=>f(A=>({...A,name:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(of,{fontSize:"small"})})}}),jsx(io,{label:"Work email",type:"email",value:p.email,onChange:I=>f(A=>({...A,email:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(tf,{fontSize:"small"})})}}),jsx(io,{label:"Password",type:"password",value:p.password,onChange:I=>f(A=>({...A,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(M1,{fontSize:"small"})})}}),jsx(io,{label:"Confirm password",type:"password",value:p.confirmPassword,onChange:I=>f(A=>({...A,confirmPassword:I.target.value}))}),jsx(kd,{label:"I accept the demo workspace terms",checked:p.acceptedTerms,onChange:I=>f(A=>({...A,acceptedTerms:I.target.checked}))}),jsx(jo,{type:"submit",size:"large",disabled:i,children:"Create demo account"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["Already have an account?"," ",jsx(jo,{type:"button",variant:"text",size:"small",onClick:()=>S("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),b==="forgot"&&jsx(Box,{component:"form",onSubmit:w,children:jsxs(Stack,{spacing:2,children:[jsx(io,{label:"Work email",type:"email",value:y.email,onChange:I=>k({email:I.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(tf,{fontSize:"small"})})}}),jsx(jo,{type:"submit",size:"large",disabled:i,children:"Send reset request"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["Remember your password?"," ",jsx(jo,{type:"button",variant:"text",size:"small",onClick:()=>S("login"),sx:{minWidth:0,p:0},children:"Back to sign in"})]})]})}),jsx(Divider,{}),jsx(Typography,{variant:"caption",sx:{color:"text.secondary"},children:"Demo credentials: demo@orbcafe.local / orbcafe-demo"})]})})})]})};var F1={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},L1=[{id:"keyword",label:"Keyword",type:"text",placeholder:"Task/ID/Project",hasSearchIcon:true},{id:"status",label:"Status",type:"select",options:[{label:"In progress",value:"in-progress"},{label:"Blocked",value:"blocked"},{label:"Planned",value:"planned"},{label:"Not started",value:"not-started"}]},{id:"owner",label:"Owner",type:"text",placeholder:"Owner name"},{id:"workCenter",label:"Work Center",type:"text",placeholder:"CNC-02 / WH-A / ..."},{id:"dateRange",label:"Date Range",type:"date"}],rf=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:r,filterFields:a,filterAppId:n="planning-gantt-filter",filterTableKey:i="planning",columns:s,page:d,rowsPerPage:l,rowsPerPageOptions:c,count:g,onPageChange:h,onRowsPerPageChange:m,onFilterSearch:b,onFilterVariantLoad:C,enableRowReorder:u,onTaskReorder:v})=>{let[p,f]=useState(t),[y,k]=useState(o??e[0]?.id??""),[E,M]=useState({...F1,...r}),S=useMemo(()=>{let B=String(E.keyword?.value??"").trim().toLowerCase(),R=String(E.status?.value??"").trim(),I=String(E.owner?.value??"").trim().toLowerCase(),A=String(E.workCenter?.value??"").trim().toLowerCase(),q=E.dateRange?.value,O=q?.[0]?mr(q[0]):null,K=q?.[1]?mr(q[1]):null;return e.filter(Q=>{if(B&&![Q.id,Q.code,Q.title,Q.project,Q.workCenter,Q.owner?.name].join(" ").toLowerCase().includes(B)||R&&Q.status!==R||I&&!String(Q.owner?.name??"").toLowerCase().includes(I)||A&&!String(Q.workCenter??"").toLowerCase().includes(A))return false;if(O||K){let ne=mr(Q.startDate),ie=mr(Q.endDate),Y=O?ie.isAfter(O)||ie.isSame(O,"day"):true,Ae=K?ne.isBefore(K)||ne.isSame(K,"day"):true;if(!Y||!Ae)return false}return true})},[E,e]);useEffect(()=>{S.length!==0&&(S.some(B=>B.id===y)||k(S[0].id));},[S,y]);let D=useCallback(B=>{k(B.id);},[]),P=useMemo(()=>({appId:n,tableKey:i,fields:a??L1,filters:E,onFilterChange:M,onVariantLoad:C??(()=>{}),onSearch:b??(()=>{})}),[n,a,i,E,b,C]),w=useMemo(()=>({tasks:S,columns:s,scale:p,onScaleChange:f,page:d,rowsPerPage:l,rowsPerPageOptions:c,count:g,onPageChange:h,onRowsPerPageChange:m,selectedTaskId:y,onTaskSelect:D,enableRowReorder:u,onTaskReorder:v}),[s,g,u,S,h,m,v,D,d,l,c,p,y]);return {scale:p,setScale:f,selectedTaskId:y,setSelectedTaskId:k,filters:E,setFilters:M,filteredTasks:S,smartFilterProps:P,planningGanttProps:w}};var eO=e=>{let t=rf(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var af=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var ia=forwardRef(({tooltip:e,...t},o)=>{let r=jsx(IconButton,{ref:o,...t,size:t.size||"small"});return e?jsx(Tooltip,{title:e,children:r}):r});ia.displayName="CIconButton";var lf=({label:e,options:t,minWidth:o=120,...r})=>jsxs(FormControl,{fullWidth:true,size:"small",sx:{minWidth:o},children:[e&&jsx(InputLabel,{children:e}),jsx(Select,{label:e,...r,children:t.map(a=>jsx(MenuItem,{value:a.value,children:a.label},a.value))})]});mr.extend(_1);var Pd=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],Rd=56,za=58,Ts=8,Dd=260,hT=320,Is="0.85rem",la="220ms cubic-bezier(0.2, 0, 0, 1)",pf={"not-started":{label:"Not started",color:"default"},planned:{label:"Planned",color:"info"},"in-progress":{label:"In progress",color:"primary"},blocked:{label:"Blocked",color:"error"},done:{label:"Done",color:"success"}},bT=e=>e?pf[e]?.label??e:"Planned",yT=e=>e?pf[e]?.color??"default":"info",mf=e=>Math.min(100,Math.max(0,e??0)),gf=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...gf(o.children??[],t+1)]),xT=e=>({id:e.id,code:e.code??e.id,title:e.title,titleSub:e.project??e.workCenter??"General",project:e.project??"",workCenter:e.workCenter??"",owner:e.owner?.name??"Unassigned",status:bT(e.status),statusTone:e.status??"planned",progress:mf(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),ff=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),hf=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),vT=(e,t,o)=>{let r=[],a=ff(e,o),n=hf(t,o);for(;a.isBefore(n)||a.isSame(n);){let i=o==="month"?a.add(1,"month"):o==="week"?a.add(1,"week"):o==="day"?a.add(1,"day"):a.add(1,"hour");r.push({key:`${o}-${a.valueOf()}`,label:o==="month"?a.format("MMM YYYY"):o==="week"?a.format("MMM D"):o==="day"?a.format("D"):a.format("HH:mm"),contextLabel:o==="hour"?a.format("MMM D"):o==="day"?a.format("MMM"):o==="week"?`W${a.isoWeek()}`:void 0,title:o==="hour"?a.format("MMM D, YYYY HH:mm"):o==="day"?a.format("MMM D, YYYY"):o==="week"?`${a.format("MMM D, YYYY")} - Week ${a.isoWeek()}`:void 0,start:a,end:i}),a=i;}return r},Md=(e,t,o)=>{let r=0;for(let a of t){if(e.isBefore(a.start))return r;if(e.isBefore(a.end)){let n=Math.max(1,a.end.valueOf()-a.start.valueOf()),i=Math.max(0,e.valueOf()-a.start.valueOf());return r+i/n*o}r+=o;}return r},bf=({title:e="Project Plan",extraTools:t,bodyHeight:o=560,tasks:r,columns:a,scale:n="week",onScaleChange:i,page:s,rowsPerPage:d=20,rowsPerPageOptions:l=[20,50,100,-1],count:c,onPageChange:g,onRowsPerPageChange:h,timelineStart:m,timelineEnd:b,selectedTaskId:C,onTaskSelect:u,enableRowReorder:v=true,onTaskReorder:p,emptyLabel:f="No planning tasks available.",sx:y})=>{let k=useTheme(),{t:E}=ee(),M=useRef(null),S=useRef(null),D=useRef(null),P=useRef(false),[w,B]=useState(null),[R,I]=useState("content"),[A,q]=useState(null),[O,K]=useState({}),[Q,ne]=useState(Rd),[ie,Y]=useState([]),[Ae,Ze]=useState({activeId:null,overId:null}),[ht,fe]=useState(null),[We,Ee]=useState(false),Tt=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:4}})),_e=useRef(null),ze=useMemo(()=>gf(r),[r]),Ue=useMemo(()=>{if(ie.length===0)return ze;let T=new Map(ze.map(J=>[J.id,J])),N=ie.map(J=>T.get(J)).filter(J=>!!J),U=new Set(N.map(J=>J.id));return [...N,...ze.filter(J=>!U.has(J.id))]},[ze,ie]),tt=useMemo(()=>new Map(Ue.map(T=>[T.id,T])),[Ue]),_=useMemo(()=>Ue.map(T=>xT(T)),[Ue]),le=useMemo(()=>new Map(_.map(T=>[T.id,T])),[_]),Re=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(T,N)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:N.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:N.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(T,N)=>jsx(af,{label:N.status,color:yT(N.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:T=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[T,"%"]}),jsx(LinearProgress,{variant:"determinate",value:T,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),Ne=useMemo(()=>{if(!a||a.length===0)return Re;let T=new Map(Re.map(N=>[N.id,N]));return a.map(N=>{let U=T.get(N.id),J=N.width??U?.minWidth??120,ue={id:N.id,label:N.label,minWidth:J};if(U?.numeric&&(ue.numeric=true),N.render){let he=N.render;return ue.render=(ye,me)=>{let Be=tt.get(me.id);return he(Be||me)},ue}return U?.render?(ue.render=U.render,ue):(ue.render=(he,ye)=>{let me=ye[N.id];if(me!=null&&String(me).length>0)return String(me);let Ve=tt.get(ye.id)?.[N.id];return Ve!=null&&String(Ve).length>0?String(Ve):"-"},ue)})},[a,Re,tt]),G=nn({appId:"planning-gantt",title:e,columns:Ne,rows:_,rowKey:"id",page:s,rowsPerPage:d,rowsPerPageOptions:l,count:c??_.length,onPageChange:g,onRowsPerPageChange:h,showSummary:false}),j=G.visibleRows,Te=G.rowsPerPage===-1?1:Math.max(1,Math.ceil(G.totalDisplayCount/G.rowsPerPage)),Ce=Math.max(0,Math.min(G.page,Te-1)),De=Math.min(Ce+1,Te),ot=Ce>0,je=Ce<Te-1&&G.rowsPerPage!==-1;useEffect(()=>{let T=ze.map(N=>N.id);Y(N=>{let U=new Set(T),J=N.filter(me=>U.has(me)),ue=new Set(J),he=T.filter(me=>!ue.has(me)),ye=[...J,...he];return ye.length===N.length&&ye.every((me,Be)=>me===N[Be])?N:ye});},[ze]);let eo=T=>T.type==="group"?`group-${T.id}`:`row-${(T.data||T)?.id}`,Zt=useMemo(()=>{let T=_.map(Be=>mr(Be.startDate)),N=_.map(Be=>mr(Be.endDate)),U=m?mr(m):T.reduce((Be,Ve)=>Ve.isBefore(Be)?Ve:Be,T[0]??mr()),J=b?mr(b):N.reduce((Be,Ve)=>Ve.isAfter(Be)?Ve:Be,N[0]??mr().add(30,"day")),ue=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",he=n==="month"?"month":n==="week"?"week":n==="day"?"day":"hour",ye=n==="hour"?12:1,me=n==="hour"?12:1;return {start:ff(U.subtract(ye,ue),n),end:hf(J.add(me,he),n)}},[_,n,b,m]),It=Pd.find(T=>T.value===n)??Pd[1],po=Array.isArray(t)?t:t?[t]:[],Et=useMemo(()=>vT(Zt.start,Zt.end,n),[Zt.end,Zt.start,n]),Fe=Et.length*It.width,Se=(G.columns||[]).filter(T=>G.visibleColumns.includes(T.id)).reduce((T,N)=>T+(G.columnWidths?.[N.id]||N.minWidth||100),0),bt=R==="manual"&&w!==null?w:Se,Ke=A==="table",Ft=A==="timeline",mo=Ft?0:Ke||R==="even"?"100%":bt,go=A==="timeline",Xt=A==="table",yt=!go&&!Xt,fo=Ke?"minmax(0, 1fr) 0px 0px":Ft?"0px 0px minmax(0, 1fr)":R==="even"?`minmax(0, 1fr) ${Ts}px minmax(0, 1fr)`:`${bt}px ${Ts}px minmax(0, 1fr)`,ho=()=>{let T=M.current?.clientWidth??0;return T>0?Math.max(Dd,T-Ts-hT):Math.max(Dd,Se)},bo=T=>Math.min(Math.max(T,Dd),ho());useEffect(()=>{R==="manual"&&B(T=>T===null?null:bo(T));},[R,Se]);let Uo=T=>{T.preventDefault(),T.currentTarget.setPointerCapture(T.pointerId),q(null),I("manual"),_e.current={startX:T.clientX,startWidth:S.current?.getBoundingClientRect().width??bt};let N=J=>{let ue=_e.current;if(!ue)return;let he=bo(ue.startWidth+J.clientX-ue.startX);B(he);},U=()=>{_e.current=null,window.removeEventListener("pointermove",N),window.removeEventListener("pointerup",U),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",N),window.addEventListener("pointerup",U);},ut=()=>{q(null),I("even"),B(null);},to=T=>!v||!T?false:le.get(T)?.reorderable!==false,xt=(T,N)=>{if(!T||!N||T===N||!to(T)||!to(N))return false;if(G.grouping.length===0)return true;let U=le.get(T),J=le.get(N);return !U||!J?false:G.grouping.every(ue=>U[ue]===J[ue])},z=(T,N)=>{if(!xt(T,N))return;let U=j.filter(Ge=>Ge.type!=="group").map(Ge=>String((Ge.data||Ge)?.id)),J=U.indexOf(T),ue=U.indexOf(N);if(J<0||ue<0)return;let he=[...U];[he[J],he[ue]]=[he[ue],he[J]];let ye=new Set(U),me=Ue.map(Ge=>Ge.id),Be=[...he,...me.filter(Ge=>!ye.has(Ge))],Ve=tt.get(T),it=tt.get(N);if(G.setOrder("asc"),G.setOrderBy(""),Y(Be),Ve&&it){let{level:Ge,...Le}=Ve,{level:Lt,...Ot}=it,pt=Be.reduce((oo,mt)=>{let ro=tt.get(mt);if(ro){let{level:Ko,...ao}=ro;oo.push(ao);}return oo},[]);p?.(pt,{activeTask:Le,targetTask:Ot});}},V=(T,N)=>{if(!to(N.id)){T.preventDefault();return}T.stopPropagation(),T.dataTransfer.effectAllowed="move",T.dataTransfer.setData("text/plain",N.id),Ze({activeId:N.id,overId:null}),u?.(tt.get(N.id)||N);},H=(T,N)=>{if(!xt(Ae.activeId,N)){Ze(U=>U.overId===null?U:{...U,overId:null});return}T.preventDefault(),T.stopPropagation(),T.dataTransfer.dropEffect="move",Ze(U=>U.overId===N?U:{...U,overId:N});},ae=(T,N)=>{let U=Ae.activeId||T.dataTransfer.getData("text/plain");if(!xt(U,N)){Ze({activeId:null,overId:null});return}T.preventDefault(),T.stopPropagation(),z(U,N),Ze({activeId:null,overId:null});},se=()=>{Ze({activeId:null,overId:null});},ke=T=>{if(P.current)return;let N=T==="table"?S.current:D.current,U=T==="table"?D.current:S.current;!N||!U||(P.current=true,U.scrollTop=N.scrollTop,window.requestAnimationFrame(()=>{P.current=false;}));};return useLayoutEffect(()=>{if(!C||Xt)return;let T=D.current,N=S.current;if(!T)return;let U=`row-${C}`,J=Array.from(T.querySelectorAll("[data-planning-timeline-row-key]")).find(ye=>ye.dataset.planningTimelineRowKey===U),ue=le.get(C);if(!J||!ue)return;let he=window.requestAnimationFrame(()=>{let ye=T.getBoundingClientRect(),me=J.getBoundingClientRect(),Be=Math.max(1,T.clientHeight-Q),Ve=T.scrollTop+me.top-ye.top-Q-(Be-me.height)/2;P.current=true,T.scrollTop=Math.max(0,Ve),N&&!go&&(N.scrollTop=T.scrollTop);let it=Md(mr(ue.startDate),Et,It.width),Ge=Math.max(0,it-It.width);T.scrollLeft=Math.min(Ge,Math.max(0,Fe-T.clientWidth)),window.requestAnimationFrame(()=>{P.current=false;});});return ()=>window.cancelAnimationFrame(he)},[It.width,Q,C,go,le,Xt,j,Fe,Et]),useLayoutEffect(()=>{let T=S.current;if(!T)return;let N=0,U=0,J=false,ue=()=>{if(J)return;let Lt=T.querySelector("thead"),Ot=Array.from(T.querySelectorAll("tbody tr[data-planning-row-key]"));if(Ot.length===0)return;let pt=Lt?.getBoundingClientRect().height||Rd,oo={};Ot.forEach(mt=>{let ro=mt.dataset.planningRowKey;ro&&(oo[ro]=mt.getBoundingClientRect().height);}),ne(mt=>Math.abs(mt-pt)<.01?mt:pt),K(mt=>{let ro=Object.keys(mt),Ko=Object.keys(oo);return ro.length===Ko.length&&Ko.every(ao=>Math.abs((mt[ao]??0)-oo[ao])<.01)?mt:oo});},he=()=>{window.cancelAnimationFrame(N),N=window.requestAnimationFrame(ue);};if(ue(),window.cancelAnimationFrame(U),U=window.requestAnimationFrame(()=>{U=window.requestAnimationFrame(ue);}),typeof document<"u"&&document.fonts?.ready&&document.fonts.ready.then(()=>{J||he();}).catch(()=>{}),typeof ResizeObserver>"u")return window.addEventListener("resize",he),()=>{J=true,window.cancelAnimationFrame(N),window.cancelAnimationFrame(U),window.removeEventListener("resize",he);};let ye=new ResizeObserver(he),me=T.querySelector("table"),Be=T.querySelector("tbody"),Ve=T.querySelector("thead");me&&ye.observe(me),Ve&&ye.observe(Ve);let it=new WeakSet,Ge=()=>{T.querySelectorAll("tbody tr[data-planning-row-key]").forEach(Lt=>{it.has(Lt)||(ye.observe(Lt),it.add(Lt));});};Ge();let Le=null;return Be&&typeof MutationObserver<"u"&&(Le=new MutationObserver(()=>{Ge(),he();}),Le.observe(Be,{childList:true,subtree:true,characterData:true})),window.addEventListener("resize",he),()=>{J=true,window.cancelAnimationFrame(N),window.cancelAnimationFrame(U),ye.disconnect(),Le?.disconnect(),window.removeEventListener("resize",he);}},[j,G.visibleColumns,G.grouping,G.columnWidths]),jsxs(Di,{elevation:0,sx:{m:0,p:0,display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden",borderRadius:3,border:`1px solid ${k.palette.divider}`,backgroundColor:k.palette.background.paper,...y},children:[jsxs(Stack,{direction:{xs:"column",md:"row"},justifyContent:"space-between",alignItems:{xs:"stretch",md:"center"},spacing:2,sx:{px:2,py:1.75,borderBottom:`1px solid ${k.palette.divider}`},children:[jsxs(Stack,{direction:"row",spacing:.75,alignItems:"center",sx:{p:.5,borderRadius:2,backgroundColor:"action.hover",minHeight:38},children:[jsx(Typography,{sx:{fontSize:Is,color:"text.secondary",whiteSpace:"nowrap"},children:E("table.toolbar.itemsPerPage")}),jsx(Select,{size:"small",variant:"standard",value:G.rowsPerPage,disableUnderline:true,onChange:T=>G.setRowsPerPage(Number(T.target.value)),sx:{fontSize:Is,fontWeight:600,color:"text.primary",minWidth:64,"& .MuiSelect-select":{py:.25,pr:"16px !important"},"& .MuiSvgIcon-root":{color:"text.primary"}},children:l.map(T=>jsx(MenuItem,{value:T,sx:{fontSize:Is},children:T===-1?E("common.all"):T},`planning-rows-per-page-${T}`))}),jsx(IconButton,{size:"small",onClick:()=>G.setPage(Math.max(Ce-1,0)),disabled:!ot,sx:{p:.35,color:"text.primary"},children:jsx(Wh,{fontSize:"small"})}),jsx(Typography,{sx:{fontSize:Is,fontWeight:600,minWidth:88,textAlign:"center",color:"text.primary"},children:E("table.toolbar.pageOf",{current:De,total:Te})}),jsx(IconButton,{size:"small",onClick:()=>G.setPage(Math.min(Ce+1,Te-1)),disabled:!je,sx:{p:.35,color:"text.primary"},children:jsx(uf,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[po.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:po.map((T,N)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:T},`planning-extra-tool-${N}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ia,{tooltip:"Column visibility",onClick:T=>G.setAnchorEl(T.currentTarget),color:"default",children:jsx(Bh,{fontSize:"small"})}),jsx(ia,{tooltip:"Group by",onClick:T=>G.setGroupAnchorEl(T.currentTarget),color:"default",children:jsx(Lh,{fontSize:"small"})}),jsx(ia,{tooltip:"Sort by...",onClick:()=>Ee(true),color:G.sortBy.length>0||G.orderBy?"primary":"default",children:jsx(gT,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ia,{tooltip:"Expand task table",onClick:()=>q("table"),color:A==="table"?"primary":"default",children:jsx(pT,{fontSize:"small"})}),jsx(ia,{tooltip:"Split evenly",onClick:ut,color:A===null&&R==="even"?"primary":"default",children:jsx(mT,{fontSize:"small"})}),jsx(ia,{tooltip:"Expand timeline",onClick:()=>q("timeline"),color:A==="timeline"?"primary":"default",children:jsx(uT,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(lf,{label:"",value:n,options:Pd.map(T=>({value:T.value,label:T.label})),onChange:T=>i?.(T.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),_.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:f}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:M,sx:{height:"100%",display:"grid",gridTemplateColumns:fo,minWidth:0,transition:`grid-template-columns ${la}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:S,onScroll:()=>ke("table"),sx:{width:mo,minWidth:0,maxWidth:"100%",height:o,overflowX:"auto",overflowY:"auto",opacity:go?0:1,transform:go?"translateX(-10px)":"translateX(0)",pointerEvents:go?"none":"auto",transition:`opacity ${la}, transform ${la}, width ${la}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:Se,"& thead .MuiTableCell-root":{height:Rd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(DndContext,{sensors:Tt,collisionDetection:closestCenter,modifiers:[restrictToHorizontalAxis],onDragEnd:T=>{let N=T?.active?.id,U=T?.over?.id;typeof N=="string"&&typeof U=="string"&&G.handleColumnReorder(N,U);},children:jsx(Ni,{columns:G.columns,visibleColumns:G.visibleColumns,order:G.order,orderBy:G.orderBy,sortBy:G.sortBy,onRequestSort:G.handleRequestSort,onContextMenu:(T,N)=>{T.preventDefault(),T.stopPropagation(),fe({mouseX:T.clientX+2,mouseY:T.clientY-6,columnId:N});},grouping:G.grouping,isAllExpanded:G.isAllExpanded,handleToggleAll:G.handleToggleAll,columnWidths:G.columnWidths,onColumnResize:G.handleColumnResize,enableColumnReorder:true})}),jsx(TableBody,{children:j.map(T=>{let N=eo(T);if(T.type==="group")return jsxs(TableRow,{"data-planning-row-key":N,sx:{height:za,backgroundColor:k.palette.action.hover},children:[G.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:za,py:0,borderBottom:`1px solid ${k.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>G.toggleGroupExpand(T.id),children:T.isExpanded?jsx(cb,{fontSize:"small"}):jsx(uf,{fontSize:"small"})})}),jsx(TableCell,{colSpan:G.visibleColumns.length,sx:{height:za,py:0,borderBottom:`1px solid ${k.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[T.field,": ",T.value," (",T.count,")"]})})]},T.id);let U=T.data||T,J=U.id===C,ue=to(U.id),he=Ae.activeId===U.id,ye=Ae.overId===U.id&&xt(Ae.activeId,U.id);return jsxs(TableRow,{"data-planning-row-key":N,draggable:ue,hover:true,selected:J,onDragStart:me=>V(me,U),onDragOver:me=>H(me,U.id),onDragEnter:me=>H(me,U.id),onDrop:me=>ae(me,U.id),onDragEnd:se,onClick:()=>u?.(tt.get(U.id)||U),sx:{cursor:he?"grabbing":ue?"grab":u?"pointer":"default",height:za,opacity:he?.56:1,"& .MuiTableCell-root":ye?{borderTop:`2px solid ${k.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[G.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:za,py:0,borderBottom:`1px solid ${k.palette.divider}`}}),(G.columns||[]).filter(me=>G.visibleColumns.includes(me.id)).map(me=>jsx(TableCell,{sx:{width:G.columnWidths?.[me.id]||me.minWidth||100,height:za,py:0,overflow:"hidden",borderBottom:`1px solid ${k.palette.divider}`},children:me.render?me.render(U[me.id],U):String(U[me.id]??"-")},`${U.id}-${me.id}`))]},U.id)})})]})}),jsx(Box,{onPointerDown:yt?Uo:void 0,role:"separator","aria-orientation":"vertical",sx:{width:yt?Ts:0,cursor:yt?"col-resize":"default",opacity:yt?1:0,pointerEvents:yt?"auto":"none",borderLeft:yt?`1px solid ${k.palette.divider}`:"0 solid transparent",borderRight:yt?`1px solid ${k.palette.divider}`:"0 solid transparent",backgroundColor:k.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${la}, opacity ${la}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:k.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:yt?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:Xt?0:1,transform:Xt?"translateX(10px)":"translateX(0)",pointerEvents:Xt?"none":"auto",transition:`opacity ${la}, transform ${la}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:D,onScroll:()=>ke("timeline"),sx:{width:"100%",height:o,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:Fe},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Et.length}, ${It.width}px)`,height:Q,boxSizing:"border-box",borderBottom:`1px solid ${k.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:k.palette.background.paper},children:Et.map(T=>jsxs(Box,{title:T.title,sx:{px:.75,display:"flex",flexDirection:T.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:T.contextLabel?.15:0,borderRight:`1px solid ${k.palette.divider}`,color:T.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[T.contextLabel&&jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"text.secondary",fontSize:11,fontWeight:700,lineHeight:1.1},children:T.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:T.label})]},T.key))}),jsx(Stack,{sx:{position:"relative"},children:j.map(T=>{let N=eo(T),U=O[N]??za;if(T.type==="group")return jsx(Box,{"data-planning-timeline-row-key":N,sx:{position:"relative",height:U,boxSizing:"border-box",borderBottom:`1px solid ${k.palette.divider}`,backgroundColor:k.palette.action.hover}},T.id);let J=T.data||T,ue=mr(J.startDate),he=mr(J.endDate),ye=Md(ue,Et,It.width),me=Md(he,Et,It.width),Be=Math.max(18,me-ye),Ve=mf(J.progress),it=J.id===C,Ge=to(J.id),Le=Ae.activeId===J.id,Lt=Ae.overId===J.id&&xt(Ae.activeId,J.id),Ot=J.color??(J.statusTone==="blocked"?k.palette.error.main:k.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":N,draggable:Ge,onDragStart:pt=>V(pt,J),onDragOver:pt=>H(pt,J.id),onDragEnter:pt=>H(pt,J.id),onDrop:pt=>ae(pt,J.id),onDragEnd:se,onClick:()=>u?.(tt.get(J.id)||J),sx:{position:"relative",height:U,boxSizing:"border-box",borderBottom:`1px solid ${k.palette.divider}`,opacity:Le?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:k.palette.primary.main,opacity:Lt?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},backgroundImage:k.palette.mode==="dark"?"linear-gradient(90deg, rgba(148,163,184,0.08) 1px, transparent 1px)":"linear-gradient(90deg, rgba(15,23,42,0.06) 1px, transparent 1px)",backgroundSize:`${It.width}px 100%`,cursor:Le?"grabbing":Ge?"grab":u?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${J.title}: ${ue.format("MMM D HH:mm")} - ${he.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:ye,top:Math.max(8,(U-24)/2),width:Be,height:24,borderRadius:999,overflow:"hidden",backgroundColor:k.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:it?`2px solid ${k.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${Ve}%`,backgroundColor:Ot}}),jsx(Typography,{sx:{position:"absolute",inset:0,px:1,display:"flex",alignItems:"center",color:"#fff",fontSize:11,fontWeight:800,textShadow:"0 1px 4px rgba(0,0,0,0.45)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:J.code})]})})},J.id)})})]})})})]})}),jsx(Ua,{groupAnchorEl:G.groupAnchorEl,setGroupAnchorEl:G.setGroupAnchorEl,grouping:G.grouping,setGrouping:G.setGrouping,columns:G.columns,toggleGroupField:G.toggleGroupField}),jsx(Ka,{anchorEl:G.anchorEl,setAnchorEl:G.setAnchorEl,columns:G.columns,visibleColumns:G.visibleColumns,toggleColumnVisibility:G.toggleColumnVisibility}),jsx(bu,{contextMenu:ht,handleClose:()=>fe(null),columns:G.columns,visibleColumns:G.visibleColumns,grouping:G.grouping,summaryColumns:G.summaryColumns,showSummary:G.showSummary,sortBy:G.sortBy,orderBy:G.orderBy,order:G.order,onSortAsc:T=>{G.applyMultiSort([{field:T,direction:"asc"}]);},onSortDesc:T=>{G.applyMultiSort([{field:T,direction:"desc"}]);},onClearSort:T=>{let N=G.sortBy.filter(U=>U.field!==T);N.length>0?G.applyMultiSort(N):(G.clearMultiSort(),G.orderBy===T&&G.setOrderBy(""));},onHideColumn:T=>{G.visibleColumns.includes(T)&&G.toggleColumnVisibility(T);},onToggleGroup:T=>G.toggleGroupField(T),onToggleSummary:T=>G.toggleSummaryColumn(T),onOpenSortDialog:()=>Ee(true)}),jsx(yu,{open:We,onClose:()=>Ee(false),columns:G.columns,initialRules:G.sortBy.length>0?G.sortBy:G.orderBy?[{field:G.orderBy,direction:G.order}]:[],onApply:T=>G.applyMultiSort(T),onClear:()=>{G.clearMultiSort(),G.setOrderBy("");}})]})};var WO=({filterProps:e,ganttProps:t,spacing:o=2,sx:r,children:a})=>{let n=r?[{height:"100%",overflow:"hidden"},r]:{height:"100%",overflow:"hidden"},i=t.sx?[{height:"100%"},t.sx]:{height:"100%"};return jsxs(Stack,{spacing:o,sx:n,children:[jsx(Box,{sx:{flexShrink:0},children:jsx(vr,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(bf,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),a]})};var RT={none:{from:{},to:{}},fade:{from:{opacity:0},to:{opacity:1}},"slide-up":{from:{opacity:0,transform:"translate3d(0, 12px, 0)"},to:{opacity:1,transform:"translate3d(0, 0, 0)"}},"slide-left":{from:{opacity:0,transform:"translate3d(12px, 0, 0)"},to:{opacity:1,transform:"translate3d(0, 0, 0)"}},scale:{from:{opacity:0,transform:"scale(0.985)"},to:{opacity:1,transform:"scale(1)"}}},qO=({children:e,transitionKey:t,variant:o="fade",durationMs:r=220,delayMs:a=0,easing:n="cubic-bezier(0.22, 1, 0.36, 1)",disabled:i=false,sx:s})=>{let d=useMediaQuery("(prefers-reduced-motion: reduce)"),[l,c]=useState("to"),g=!i&&!d&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let b=requestAnimationFrame(()=>{b=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(b)},[t,g]);let h=RT[o],m=useMemo(()=>g?l==="from"?h.from:h.to:{opacity:1,transform:"none"},[g,l,h.from,h.to]);return jsx(Box,{sx:{willChange:g?"opacity, transform":"auto",transition:g?`opacity ${r}ms ${n} ${a}ms, transform ${r}ms ${n} ${a}ms`:"none",backfaceVisibility:"hidden",...m,...s},children:e})},_O={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};export{kV as AIBrowserGlow,uV as AgentPanel,Ds as Button,MS as CAINavProvider,Nu as CAmapChart,Ll as CAppHeader,sE as CAppPageLayout,qV as CAuthPage,Gn as CBarChart,$i as CChartCard,wu as CComboChart,Wu as CCustomizeAgent,pB as CDetailInfoPage,Np as CDetailSearchAiBar,Tl as CDetailSectionCard,Ru as CFishboneChart,Eu as CGoogleMapChart,Vu as CGraphCharts,vu as CGraphKpiCards,rl as CGraphReport,Iu as CHeatmapChart,EB as CKanbanBoard,Gp as CKanbanBucket,Bc as CKanbanCard,up as CLayoutManagement,fl as CLayoutManager,Su as CLineChart,En as CMessageBox,tu as CPageLayout,qO as CPageTransition,Zi as CPieChart,X5 as CPivotTable,bf as CPlanningGantt,WO as CPlanningLayout,vr as CSmartFilter,AA as CSmartTable,VA as CStandardPage,Xr as CTable,IA as CTableBody,PA as CTableCell,RA as CTableContainer,DA as CTableHead,MA as CTableRow,eu as CValueHelp,ll as CVariantManagement,Yu as CVariantManager,dd as CVoiceWaveOverlay,Mu as CWaterfallChart,ti as CodeBlock,xV as CopilotChat,EI as GlobalMessage,ii as MarkdownRenderer,oi as MathBlock,yc as MermaidBlock,Wd as NavigationIsland,Bn as ORBCAFE_I18N_MESSAGES,Ei as OrbcafeI18nProvider,_O as PAGE_TRANSITION_PRESETS,IL as PAppPageLayout,fF as PBarcodeScanner,lg as PNavIsland,MF as PNumericKeypad,Jm as PSmartFilter,cS as PTable,CF as PTouchCard,og as PWorkloadNav,Am as PivotChartPanel,Zg as StdChat,vc as TableBlock,Sl as ThinkBlock,As as TreeMenu,OL as VoiceNavigatorProvider,AL as VoiceWaveOverlay,Qi as buildAmapEmbedUrl,qn as buildGoogleMapEmbedUrl,VR as buildGoogleMapIframe,wf as buttonVariants,qp as createKanbanBoardModel,er as findKanbanCard,hI as message,yr as messageManager,Ml as moveKanbanCard,Cl as parseMarkdownTable,L2 as renderMarkdown,mp as resolveVariantFilters,hl as resolveVariantLayout,AS as useAINav,JA as useAmapEmbedUrl,IV as useAuthPage,Op as useDetailInfo,QA as useGoogleMapEmbedUrl,_A as useGraphChartData,nl as useGraphInteraction,tn as useGraphReport,VB as useKanbanBoard,Gd as useNavigationIsland,ee as useOrbcafeI18n,iF as usePadLayout,cF as usePadRecordEditor,om as usePageLayout,tF as usePivotTable,rf as usePlanningGantt,eO as usePlanningLayout,UA as useStandardReport,ls as useVoiceInput,HL as useVoiceNavigator};