orbcafe-ui 1.3.2 → 1.3.3

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,17 @@
1
- import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as ft from'react';import ft__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 Bp from'@mui/material/Dialog';import Ep from'@mui/material/DialogTitle';import Fp from'@mui/material/DialogContent';import pf from'@mui/material/DialogContentText';import Lp from'@mui/material/DialogActions';import Gn from'@mui/material/Box';import gf from'@mui/icons-material/CheckCircle';import ff from'@mui/icons-material/Warning';import hf from'@mui/icons-material/Error';import yf from'@mui/icons-material/Info';import {styled,Paper,IconButton,Tooltip,Box,Typography,Stack,Link,Dialog,DialogTitle,DialogContent,MenuItem,DialogActions,Button,Chip,InputBase,useTheme,Autocomplete,TextField,FormControlLabel,Checkbox,Menu,ListItemText,Divider,Collapse,Grid,ListItemIcon,CircularProgress,Alert,TableContainer,Table,TableHead,TableRow,TableCell,TableBody,Tabs,Tab,LinearProgress,Avatar,AppBar,Toolbar,InputAdornment,createTheme,ThemeProvider,FormControl,Select,Switch,Portal,useMediaQuery,Drawer,Popover,ListSubheader,Badge,TableFooter,InputLabel}from'@mui/material';import bb from'@mui/material/Paper';import xb from'@mui/material/Table';import vb from'@mui/material/TableBody';import wl from'@mui/material/TableCell';import Vp from'@mui/material/TableContainer';import Gf from'@mui/material/TableHead';import Uf from'@mui/material/TableRow';import zp from'@mui/material/TextField';import is from'@mui/material/Button';import Np 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 xp from'@mui/icons-material/Search';import Df from'@mui/icons-material/ViewColumn';import Pp from'@mui/icons-material/Save';import Af from'@mui/icons-material/Download';import Bf from'@mui/icons-material/AccountTree';import Ef from'@mui/icons-material/Functions';import Ff from'@mui/icons-material/Insights';import Lf from'@mui/icons-material/Add';import zf from'@mui/icons-material/Edit';import Nf from'@mui/icons-material/Delete';import Vf from'@mui/icons-material/KeyboardArrowLeft';import Of from'@mui/icons-material/KeyboardArrowRight';import Kf from'@mui/material/Checkbox';import qf from'@mui/material/TableSortLabel';import _f from'@mui/material/IconButton';import jf from'@mui/material/Tooltip';import Zf from'@mui/icons-material/UnfoldMore';import Xf from'@mui/icons-material/UnfoldLess';import oh from'@mui/icons-material/KeyboardArrowDown';import hh from'@mui/icons-material/Check';import yh from'@mui/icons-material/ClearAll';import Uh from'@mui/icons-material/Close';import Qh from'@mui/icons-material/MicNoneOutlined';import Jh from'@mui/icons-material/SettingsOutlined';import ey from'@mui/icons-material/SendOutlined';import Xy from'@mui/icons-material/Settings';import Yy from'@mui/icons-material/KeyboardArrowUp';import Jy from'@mui/icons-material/ArrowRightAlt';import Cy 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 zy from'@mui/icons-material/CalendarMonth';import Ny from'@mui/icons-material/Clear';import Vy from'@mui/icons-material/ArrowForward';import Qo from'dayjs';import Oy from'dayjs/plugin/isBetween';import Wy 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 mb from'@mui/icons-material/StarBorder';import gb from'@mui/icons-material/ViewQuilt';import zx from'@mui/icons-material/CloseOutlined';import zb from'@mui/icons-material/ContentCopyOutlined';import Nb from'@mui/icons-material/CheckOutlined';import ux from'@mui/icons-material/ExpandMore';import {arrayMove,SortableContext,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import {alpha,useTheme as useTheme$1,createTheme as createTheme$1,ThemeProvider as ThemeProvider$1}from'@mui/material/styles';import hu from'@mui/icons-material/Language';import C0 from'@mui/icons-material/DesktopWindows';import k0 from'@mui/icons-material/DarkMode';import S0 from'@mui/icons-material/LightMode';import T0 from'@mui/icons-material/Logout';import Wv from'@mui/icons-material/DeleteOutline';import j0 from'@mui/icons-material/DragIndicator';import uv from'@mui/icons-material/FilterList';import mv from'@mui/icons-material/TableRows';import J0 from'@mui/icons-material/LayersClear';import pC from'@mui/icons-material/CameraAltRounded';import uC from'@mui/icons-material/QrCodeScannerRounded';import hC from'@mui/icons-material/DragIndicatorRounded';import vC from'@mui/icons-material/BackspaceRounded';import CC from'@mui/icons-material/CloseRounded';import kC from'@mui/icons-material/CheckRounded';import NC from'@mui/icons-material/SearchRounded';import VC from'@mui/icons-material/MenuOpenRounded';import OC from'@mui/icons-material/MenuRounded';import WC from'@mui/icons-material/ExpandMoreRounded';import $C from'@mui/icons-material/ChevronRightRounded';import sk from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import CS from'react-markdown';import kS from'remark-gfm';import SS from'remark-math';import wS from'rehype-katex';import TS 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 Hm from'mermaid';import zS from'@mui/icons-material/MicRounded';import NS from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import HS from'@mui/icons-material/SendRounded';import GS from'@mui/icons-material/AddRounded';import US from'@mui/icons-material/HardwareRounded';import mw from'@mui/icons-material/LockOutlined';import yg from'@mui/icons-material/MailOutline';import bg from'@mui/icons-material/PersonOutline';import gw from'@mui/icons-material/VpnKeyOutlined';import Aw from'dayjs/plugin/isoWeek';import Ow from'@mui/icons-material/CalendarMonthOutlined';import Gw from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import Uw from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import Kw from'@mui/icons-material/SplitscreenOutlined';import qw from'@mui/icons-material/Sort';function Co(...e){return twMerge(clsx(e))}var gl={primary:"#000000",primaryHover:"#333333"},Ci={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"},Tn={none:"rounded-none",sm:"rounded-sm",md:"rounded-md",full:"rounded-full"},ud=()=>"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 Vg=cva(ud(),{variants:{variant:{default:`${Ci.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:`${Ci.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:Ci.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-[${gl.primary}] hover:bg-[${gl.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:Tn.none,sm:Tn.sm,md:Tn.md,full:Tn.full}},defaultVariants:{variant:"default",size:"default",rounded:"md"}}),fl=ft.forwardRef(({className:e,variant:t,size:o,asChild:a=false,...r},n)=>jsx(a?Slot:"button",{className:Co(Vg({variant:t,size:o,className:e})),ref:n,...r}));fl.displayName="Button";var Wg={"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"},$g={"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"},Hg={"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"},Gg={"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"},Ug={"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"},Kg={"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"},In={en:Wg,zh:$g,fr:Hg,de:Gg,ja:Ug,ko:Kg};var gd=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,a)=>{let r=t[a];return r==null?"":String(r)}):e,Zg={locale:"en",t:(e,t)=>gd(In.en[e]||e,t)},fd=createContext(Zg),ki=({locale:e="en",messages:t,children:o})=>{let a=useMemo(()=>{let r=In[e]||In.en,n=t?.[e]||{},i={...In.en,...r,...n};return {locale:e,t:(l,p)=>gd(i[l]||l,p)}},[e,t]);return jsx(fd.Provider,{value:a,children:o})},Q=()=>useContext(fd);function yl({items:e,onItemClick:t,className:o="",level:a=0,expandedIds:r,onToggleExpand:n,colorMode:i="light"}){let{t:l}=Q(),p=i==="dark",s=usePathname(),[c,g]=useState(false),[f,u]=useState(new Set),h=r!==void 0&&n!==void 0,T=h?r:f;useEffect(()=>{g(true);},[]);let d=m=>{if(h)n(m);else {let y=new Set(f);y.has(m)?y.delete(m):y.add(m),u(y);}},C=m=>{m.children&&m.children.length>0&&d(m.id),t&&t(m);};return !e||!Array.isArray(e)?jsx("div",{className:Co("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:l("navigation.noItems")})}):jsx("div",{className:Co("tree-menu",o),children:e.map(m=>{let y=T.has(m.id)||m.isExpanded,x=m.children&&m.children.length>0,S=m.appurl||m.href,A=c&&S?s===S:false;return jsxs("div",{className:"tree-menu-item relative",children:[A&&jsx("div",{className:Co("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",p?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(fl,{variant:"ghost",className:Co("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${a*4}`,A?p?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":p?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>C(m),children:[x&&jsx("div",{className:Co("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",A?p?"text-[#90caf9]":"text-[#1976d2]":p?"text-gray-500 group-hover:text-gray-300":"text-gray-400 group-hover:text-gray-600"),children:jsx(ChevronRight,{className:"h-4 w-4"})}),!x&&jsx("div",{className:"w-4 h-4 flex-shrink-0"}),m.icon&&jsx("div",{className:Co("flex-shrink-0 transition-colors duration-200",A?p?"text-[#90caf9]":"text-[#1976d2]":p?"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:Co("text-sm truncate transition-colors duration-200",A?"font-semibold":"font-medium"),children:m.title||m.label}),m.description&&jsx("div",{className:Co("text-xs truncate transition-colors duration-200",A?p?"text-[#90caf9]/70":"text-[#1976d2]/75":p?"text-gray-400":"text-gray-500"),title:m.description,children:m.description})]})]}),x&&jsx("div",{className:Co("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(yl,{items:m.children,onItemClick:t,level:a+1,expandedIds:r,onToggleExpand:n,colorMode:i})})})]},m.id)})})}var Cd=({collapsed:e,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light"})=>{let{t:i}=Q(),l=n==="dark",p=useRouter(),[s,c]=useState(""),[g,f]=useState(new Set);useEffect(()=>{e&&f(new Set);},[e]);let u=useCallback(C=>{let m=[],y=x=>{x.forEach(S=>{m.push(S.id),S.children&&y(S.children);});};return y(C),m},[]),h=useMemo(()=>{if(!s.trim())return r;let C=m=>m.reduce((y,x)=>{let S=x.title?.toLowerCase().includes(s.toLowerCase())||x.description?.toLowerCase().includes(s.toLowerCase()),A=x.children?C(x.children):[];return (S||A.length>0)&&y.push({...x,children:A.length>0?A:x.children}),y},[]);return C(r)},[s,r]),T=useMemo(()=>s.trim()?new Set(u(r)):g,[s,r,g,u]),d=useCallback(async C=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",C),C.id==="chat"||C.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{p.push("/chat?new=true");}catch(y){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",y),p.push("/chat");}return}let m=C.appurl||C.href;m&&(m.startsWith("http://")||m.startsWith("https://")?window.open(m,"_blank"):p.push(m));},[p]);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} ${l?"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 ${l?"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:s,onChange:C=>c(C.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 ${l?"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 ${l?"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(s?"navigation.noMatch":"navigation.noAccessibleApp")}):jsxs(Fragment,{children:[!e&&jsx("div",{className:`transition-opacity duration-300 ${e?"opacity-0":"opacity-100 delay-200"}`,children:jsx(yl,{items:h,onItemClick:d,className:"space-y-1",expandedIds:T,colorMode:n,onToggleExpand:C=>{let m=new Set(g);h.some(x=>x.id===C)?m.has(C)?m.delete(C):(h.forEach(x=>{x.id!==C&&m.has(x.id)&&m.delete(x.id);}),m.add(C)):m.has(C)?m.delete(C):m.add(C),f(m);}})}),e&&jsx("div",{className:"space-y-2",children:r.map(C=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let m=new Set([C.id]);f(m);},className:`w-full flex items-center justify-center p-2 rounded-lg cursor-pointer transition-colors duration-200 ${l?"text-gray-400 hover:bg-gray-800":"text-gray-600 hover:bg-gray-50"}`,title:i("navigation.expandView",{title:C.title||""}),children:C.icon||jsx("div",{className:`w-6 h-6 rounded text-xs flex items-center justify-center font-medium ${l?"bg-[#90caf9] text-[#0b0b0b]":"bg-[#1976d2] text-white"}`,children:C.title?.charAt(0)||"?"})})},C.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 ${l?"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:l?"border-yellow-400":"",style:{width:"32px",height:"32px",borderRadius:"16px",border:"3px solid #21BCFF",backgroundColor:"transparent",position:"absolute",top:"-16px",left:"-16px"}})})})]})};var Sd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[a,r]=useState(t),[n,i]=useState(o),l=useCallback(()=>{r(s=>!s);},[]),p=useMemo(()=>({collapsed:a,onToggle:l,menuData:n}),[a,l,n]);return {collapsed:a,setCollapsed:r,toggleCollapsed:l,menuData:n,setMenuData:i,navigationIslandProps:p}};var Mo=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var xl=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);}},ia=new xl,j1={success:(e,t)=>ia.show("success",e,t),error:(e,t)=>ia.show("error",e,t),warning:(e,t)=>ia.show("warning",e,t),info:(e,t)=>ia.show("info",e,t),show:(e,t,o)=>ia.show(e,t,o),hide:()=>ia.hide()};var bf={success:{icon:jsx(gf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(ff,{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(yf,{sx:{fontSize:40}}),color:"#e3f2fd",iconColor:"#42a5f5",borderColor:"#90caf9"},default:{icon:null,color:"transparent",iconColor:"inherit",borderColor:"transparent"}},Pn=({open:e,title:t,message:o,onClose:a,onConfirm:r,confirmText:n,cancelText:i,showCancel:l=true,maxWidth:p="xs",type:s="default"})=>{let{t:c}=Q(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),u=()=>{r?r():a();},h=bf[s],T=s!=="default";return jsxs(Bp,{open:e,onClose:a,maxWidth:p,fullWidth:true,PaperProps:{sx:{borderRadius:3,...T&&{borderTop:`6px solid ${h.iconColor}`}}},children:[T&&jsx(Gn,{sx:{display:"flex",justifyContent:"center",pt:3,color:h.iconColor},children:h.icon}),t&&jsx(Ep,{sx:{textAlign:T?"center":"left",pt:T?1:2},children:t}),jsx(Fp,{sx:{textAlign:T?"center":"left"},children:typeof o=="string"?jsx(pf,{children:o}):o}),jsxs(Lp,{sx:{justifyContent:T?"center":"flex-end",pb:3,px:3},children:[l&&jsx(Mo,{onClick:a,variant:"text",color:"inherit",children:f}),jsx(Mo,{onClick:u,variant:"contained",sx:{bgcolor:T?h.iconColor:void 0,"&:hover":{bgcolor:T?h.iconColor:void 0,filter:"brightness(0.9)"}},autoFocus:true,children:g})]})]})},pT=()=>{let[e,t]=ft__default.useState(null),[o,a]=ft__default.useState(false);ft__default.useEffect(()=>{let i=l=>{l?(t(l),a(true)):(a(false),t(null));};return ia.register(i),()=>ia.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(Pn,{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 Td=({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 Si=e=>{let{t}=Q(),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,l=Array.isArray(e.rowsPerPageOptions)&&e.rowsPerPageOptions.length>0?e.rowsPerPageOptions:[20,50,100,-1],p=typeof e.count=="number"?e.count:0,s=Math.max(0,typeof e.page=="number"?e.page:0),c=i===-1?1:Math.max(1,Math.ceil(p/i)),g=Math.min(s+1,c),f=s>0,u=s<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(xp,{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:l.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(s-1,0)),disabled:!f,sx:{p:.35,color:"text.primary"},children:jsx(Vf,{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(s+1,c-1)),disabled:!u,sx:{p:.35,color:"text.primary"},children:jsx(Of,{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,T)=>jsx(ft__default.Fragment,{children:h},`toolbar-custom-${T}`))}),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(Bf,{})})})}),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(Ef,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(Df,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(Af,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(Lf,{})})}),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(zf,{})})})}),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(Nf,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(Ff,{})})}),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(Pp,{})})}),e.layoutManager]})]})};var wi=e=>{let{t}=Q(),{onSelectAllClick:o,order:a,orderBy:r,numSelected:n=0,rowCount:i=0,onRequestSort:l,columns:p,visibleColumns:s,selectionMode:c,grouping:g=[],isAllExpanded:f=false,handleToggleAll:u,onColumnResize:h,columnWidths:T}=e,[d,C]=useState(null),m=useRef(null),y=v=>M=>{d||l(v);},x=(v,M,k)=>{v.preventDefault(),v.stopPropagation(),C(M),m.current={startX:v.clientX,startWidth:k,colId:M},document.addEventListener("mousemove",S),document.addEventListener("mouseup",A),document.body.style.cursor="col-resize";},S=v=>{if(!m.current)return;let{startX:M,startWidth:k,colId:I}=m.current,D=v.clientX-M,G=Math.max(50,k+D);h&&h(I,G);},A=()=>{C(null),m.current=null,document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",A),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",A);},[]);let R=c==="multiple"||c==="single",w=g.length>0&&!!u,E=t(f?"table.group.collapseAll":"table.group.expandAll"),P=p.filter(v=>s.includes(v.id));return jsx(Gf,{children:jsxs(Uf,{children:[R&&jsx(wl,{padding:"checkbox",sx:v=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:v.palette.mode==="dark"?"#000000":"#f5f5f5",color:v.palette.mode==="dark"?"#ffffff":v.palette.text.primary}),children:jsx(Kf,{color:"primary",indeterminate:n>0&&n<i,checked:i>0&&n===i,onChange:o,disabled:c==="single"})}),w&&jsx(wl,{align:"center",padding:"checkbox",sx:v=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:v.palette.mode==="dark"?"#000000":"#f5f5f5",color:v.palette.mode==="dark"?"#ffffff":v.palette.text.primary}),children:jsx(jf,{title:E,children:jsx(_f,{size:"small",onClick:v=>{v.stopPropagation(),u?.(!f);},sx:{p:.2},children:f?jsx(Xf,{fontSize:"small"}):jsx(Zf,{fontSize:"small"})})})}),P.map(v=>{let M=T?.[v.id]||v.minWidth||100;return jsxs(wl,{align:"left",padding:v.disablePadding?"none":"normal",sortDirection:r===v.id?a:false,style:{width:M,minWidth:M,maxWidth:M},sx:k=>({position:"sticky",top:0,zIndex:4,backgroundColor:k.palette.mode==="dark"?"#000000":"#f5f5f5",color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsx(qf,{active:r===v.id,direction:r===v.id?a:"asc",onClick:y(v.id),sx:k=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary,opacity:r===v.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary}),children:jsx(Gn,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:v.label})}),jsx(Gn,{onMouseDown:k=>x(k,v.id,typeof M=="number"?M:100),onClick:k=>k.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},v.id)})]})})};var Ad=e=>{let{t}=Q(),{visibleRows:o,visibleColumns:a,selected:r=[],handleClick:n,columns:i,toggleGroupExpand:l,expandedGroups:p=new Set,selectionMode:s,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:u}=e,h=m=>r.indexOf(m)!==-1,T=s==="multiple"||s==="single",d=c.length>0,C=a.length+(T?1:0)+(d?1:0);return jsxs(TableBody,{children:[o.map((m,y)=>{if(m.type==="group"){let x=p.has(m.id),S=m.childIds||[],A=S.filter(P=>h(P)).length,R=S.length>0&&A===S.length,w=A>0&&A<S.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:[T&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:R,indeterminate:w,onChange:P=>{if(P.stopPropagation(),!!e.onSelectionChange)if(R){let v=r.filter(M=>!S.includes(M));e.onSelectionChange(v);}else {let v=Array.from(new Set([...r,...S]));e.onSelectionChange(v);}},onClick:P=>P.stopPropagation(),sx:{p:.5}})}),d&&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(Xf,{fontSize:"small"}):jsx(Zf,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>l&&l(m.id),sx:{p:.25},children:x?jsx(oh,{}):jsx(Of,{})})]})}),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 x=m.data||m,S=m.id||x.id||y,A=h(S),R=`enhanced-table-checkbox-${y}`,E=(m.level!==void 0?m.level:0)*4;return jsxs(TableRow,{hover:true,onClick:P=>n&&n(P,x),role:"checkbox","aria-checked":A,tabIndex:-1,selected:A,sx:{cursor:"pointer"},children:[T&&jsx(TableCell,{padding:"checkbox",sx:{pl:E>0?E+1:void 0},children:jsx(Checkbox,{color:"primary",checked:A,inputProps:{"aria-labelledby":R}})}),d&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(P=>a.includes(P.id)).map((P,v)=>{let k=!T&&v===0&&E>0?{pl:E+2}:{};return jsx(TableCell,{align:"left",sx:k,children:P.render?P.render(x[P.id],x):(function(){let D=x[P.id];if(P.numeric){if(typeof D=="number")return D.toLocaleString();if(typeof D=="string"&&D.trim()!==""&&!isNaN(Number(D)))return Number(D).toLocaleString()}return D})()},P.id)})]},S)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:C,align:"center",children:t("common.noData")})})]})};var Bd=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(l=>jsx(TableCell,{sx:{fontWeight:"bold",fontSize:"0.85rem",bgcolor:"background.paper",color:"text.primary"},children:(function(){let s=o[l];return s==null||s===""?"":typeof s=="number"?s.toLocaleString():typeof s=="string"&&s.trim()!==""&&!isNaN(Number(s))?Number(s).toLocaleString():s})()},l))]})})};var Fd=e=>{let{t}=Q();return jsx(Box,{sx:{p:2},children:jsx(Typography,{children:t("table.mobile.notImplemented")})})};var Nr=({groupAnchorEl:e,setGroupAnchorEl:t,grouping:o,setGrouping:a,columns:r,toggleGroupField:n})=>{let{t:i}=Q();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(yh,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),r.map(l=>{let p=o.includes(l.id),s=o.indexOf(l.id)+1;return jsx(MenuItem,{onClick:()=>n(l.id),children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Checkbox,{checked:p,size:"small"}),jsx(ListItemText,{primary:l.label}),p&&jsx(Badge,{badgeContent:s,color:"primary",sx:{mr:2}})]})},l.id)})]})},Vr=({anchorEl:e,setAnchorEl:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=Q();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))]})},Ri=({anchorEl:e,setAnchorEl:t,showSummary:o,setShowSummary:a,columns:r,summaryColumns:n,toggleSummaryColumn:i})=>{let{t:l}=Q();return jsxs(Menu,{anchorEl:e,open:!!e,onClose:()=>t(null),children:[jsx(MenuItem,{children:jsx(FormControlLabel,{control:jsx(Switch,{checked:o,onChange:p=>a(p.target.checked),size:"small"}),label:l("table.menu.showSummaryRow")})}),jsx(Divider,{}),r.filter(p=>p.numeric).map(p=>jsxs(MenuItem,{onClick:()=>i(p.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(p.id),size:"small"}),jsx(ListItemText,{primary:p.label})]},p.id)),r.filter(p=>p.numeric).length===0&&jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:l("table.menu.noNumericColumns")})})]})},Di=({contextMenu:e,handleCloseContextMenu:t,columns:o,visibleColumns:a,toggleColumnVisibility:r})=>{let{t:n}=Q();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(hh,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})};var Mn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),Nd=({kpis:e})=>{let{t}=Q(),o=[{label:t("graph.kpi.totalRecords"),value:Mn(e.totalRecords,0),color:"text.primary"},{label:t("graph.kpi.totalReport"),value:Mn(e.totalReportHours),color:"text.primary"},{label:t("graph.kpi.totalBillable"),value:Mn(e.totalBillableHours),color:"success.main"},{label:t("graph.kpi.efficiency"),value:`${e.efficiency.toFixed(2)}%`,color:"warning.main"},{label:t("graph.kpi.amount"),value:Mn(e.totalAmount),color:"info.main"},{label:t("graph.kpi.flagged"),value:Mn(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 Mi=({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 Bn=({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(l=>l.value),1);return t==="vertical"?jsx(Box,{sx:{display:"flex",gap:1,alignItems:"flex-end",minHeight:a},children:e.map(l=>jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsx(Box,{onClick:()=>n?.(l),sx:{height:`${Math.max(l.value/i*180,6)}px`,bgcolor:l.name===r?"primary.dark":"primary.main",borderRadius:"8px 8px 0 0",cursor:n?"pointer":"default",opacity:r&&l.name!==r?.45:1}}),jsx(Typography,{variant:"caption",noWrap:true,title:l.name,sx:{display:"block",mt:.5},children:l.name}),jsxs(Typography,{variant:"caption",color:"text.secondary",children:[l.value.toFixed(1),o]})]},l.name))}):jsx(Stack,{spacing:1,children:e.map(l=>jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"140px 1fr 64px",gap:1},children:[jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,title:l.name,children:l.name}),jsx(Box,{onClick:()=>n?.(l),sx:{alignSelf:"center",bgcolor:"action.hover",height:10,borderRadius:999,overflow:"hidden",cursor:n?"pointer":"default",opacity:r&&l.name!==r?.45:1},children:jsx(Box,{sx:{width:`${l.value/i*100}%`,height:"100%",bgcolor:l.name===r?"primary.dark":"primary.main"}})}),jsxs(Typography,{variant:"caption",sx:{textAlign:"right",fontWeight:600},children:[l.value.toFixed(1),o]})]},l.name))})};var Wd=({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),l=Math.min(...i,0),s=Math.max(...i,1)-l||1,c=e.map((f,u)=>{let h=n+u*(r-n*2)/Math.max(e.length-1,1),T=a-n-(f.value-l)/s*(a-n*2);return {x:h,y:T,...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 $d=({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),l=Math.max(...e.map(c=>c.lineValue),1),p=e.map((c,g)=>{let f=(r-n*2)/e.length,u=Math.max(f*.5,8),h=n+g*f+(f-u)/2,T=c.barValue/i*(a-n*2),d=a-n-T;return {x:h,y:d,barHeight:T,barWidth:u,item:c}}),s=e.map((c,g)=>{let f=(r-n*2)/e.length,u=n+g*f+f/2,h=a-n-c.lineValue/l*(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)"}),p.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:s.map(c=>`${c.x},${c.y}`).join(" ")}),s.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 Th=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,Gd=({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 l=r.get(`${n}__${i}`)||0,p=l/a;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:Th(p),border:"1px solid rgba(148,163,184,0.2)",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(Typography,{variant:"caption",fontWeight:700,children:l.toFixed(1)})},`${n}-${i}`)})]},n))]})})};var Ih=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],Ni=({data:e,variant:t="donut",colors:o=Ih,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,l=e.map((p,s)=>{let c=i;return i+=p.percent,`${o[s%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(${l.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((p,s)=>jsxs(Box,{onClick:()=>n?.(p),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:r&&p.name!==r?.45:1},children:[jsx(Box,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:o[s%o.length]}}),jsx(Typography,{variant:"caption",sx:{flex:1},children:p.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[p.percent.toFixed(0),"%"]})]},p.name))})]})};var Kd=({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 _d=({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),l=680,p=30,s=i-n||1,c=g=>t-p-(g-n)/s*(t-p*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${l} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:p,y1:c(0),x2:l-p,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),a.map((g,f)=>{let u=(l-p*2)/a.length,h=Math.max(u*.55,8),T=p+f*u+(u-h)/2,d=c(Math.max(g.start,g.end)),C=c(Math.min(g.start,g.end)),m=g.type==="total"?"#42A5F5":g.delta>=0?"#66BB6A":"#EF5350";return jsxs("g",{children:[jsx("rect",{x:T,y:d,width:h,height:Math.max(C-d,4),rx:6,fill:m}),jsx("text",{x:T+h/2,y:d-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 Ln=({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}`},UI=(e,t=360)=>{let o=Ln(e);return `<iframe width="100%" height="${t}" style="border:0" loading="lazy" allowfullscreen referrerpolicy="no-referrer-when-downgrade" src="${o}"></iframe>`};var Xd=({apiKey:e,query:t,embedUrl:o,zoom:a=14,mapType:r="roadmap",height:n=320})=>{let i=o||(e&&t?Ln({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 Wi=({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 ep=({keyword:e,location:t,embedUrl:o,height:a=320})=>{let r=o||Wi({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 tp=({billableByPrimary:e,efficiencyBySecondary:t,statusDistribution:o,interaction:a})=>{let{t:r}=Q();return jsxs(Box,{sx:{display:"grid",gap:1.5,gridTemplateColumns:{xs:"1fr",lg:"1.2fr 1.2fr 1fr"}},children:[jsx(Mi,{title:r("graph.chart.billable.title"),subtitle:r("graph.chart.billable.subtitle"),children:jsx(Bn,{data:e,orientation:"horizontal",activeName:a?.filters?.primaryDimension,onItemClick:n=>a?.onPrimaryDimensionClick?.(n.name)})}),jsx(Mi,{title:r("graph.chart.efficiency.title"),subtitle:r("graph.chart.efficiency.subtitle"),children:jsx(Bn,{data:t,orientation:"vertical",valueSuffix:"%",activeName:a?.filters?.secondaryDimension,onItemClick:n=>a?.onSecondaryDimensionClick?.(n.name)})}),jsx(Mi,{title:r("graph.chart.status.title"),subtitle:r("graph.chart.status.subtitle"),children:jsx(Ni,{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 zl=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var Kh=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],qh=["zh","en","de","fr","ja","ko"],rp=({open:e,onClose:t,value:o,onSaveAll:a,modelOptions:r=Kh,promptLangOptions:n=qh,analysisTemplateOptions:i=[],responseTemplateOptions:l=[],defaultAnalysisTemplateId:p,defaultResponseTemplateId:s})=>{let[c,g]=useState(o),[f,u]=useState(p||""),[h,T]=useState(s||""),[d,C]=useState(false);useEffect(()=>{e&&(g(o),u(p||""),T(s||""));},[e,o,p,s]);let m=(x,S)=>{g(A=>({...A,[x]:S}));},y=async()=>{if(a)try{C(!0),await a({settings:c,analysisTemplateId:f||void 0,responseTemplateId:h||void 0});}finally{C(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(Uh,{})})]}),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:x=>m("baseUrl",x.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(qt,{size:"small",type:"password",value:c.apiKey,onChange:x=>m("apiKey",x.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(qt,{size:"small",value:c.model,onChange:x=>m("model",x.target.value),fullWidth:true,select:true,label:"Model",children:r.map(x=>jsx(MenuItem,{value:x,children:x},x))})}),jsx(Box,{children:jsx(qt,{size:"small",value:c.promptLang,onChange:x=>m("promptLang",x.target.value),fullWidth:true,select:true,label:"Prompt Lang",children:n.map(x=>jsx(MenuItem,{value:x,children:x},x))})})]}),jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:[jsxs(qt,{size:"small",value:f,onChange:x=>u(x.target.value),fullWidth:true,select:true,label:"Analysis Template",children:[jsx(MenuItem,{value:"",children:"Default"}),i.map(x=>jsx(MenuItem,{value:x.id,children:x.label},x.id))]}),jsx(zl,{multiline:true,minRows:8,value:c.analysisPrompt,onChange:x=>m("analysisPrompt",x.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:x=>T(x.target.value),fullWidth:true,select:true,label:"Response Template",children:[jsx(MenuItem,{value:"",children:"Default"}),l.map(x=>jsx(MenuItem,{value:x.id,children:x.label},x.id))]}),jsx(zl,{multiline:true,minRows:8,value:c.responsePrompt,onChange:x=>m("responsePrompt",x.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||d,children:"Save"})]})]})};var Ki=({open:e,onClose:t,model:o,tableContent:a,extraCharts:r,interaction:n,aiAssistant:i})=>{let{t:l}=Q(),[p,s]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,u]=useState(false),h=n?.enabled!==false&&!!n,T=i?.enabled!==false,d=n?.filters||{},C=!!(d.primaryDimension||d.secondaryDimension||d.status),m=i?.placeholder||"Ask AI to analyze data, create charts, or find insights...";useEffect(()=>{e&&s(i?.defaultPrompt||"");},[e,i?.defaultPrompt]);let y=i?.settings||{baseUrl:"/llm-api",apiKey:"",model:"doubao-lite",promptLang:"zh",analysisPrompt:"",responsePrompt:""},x=async()=>{let S=p.trim();if(!(!S||!i?.onSubmit))try{g(!0),await i.onSubmit(S,{filters:d,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:l("graph.records",{count:o.kpis.totalRecords})}),h&&d.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${d.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),h&&d.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${d.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),h&&d.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${d.status}`,onDelete:()=>n?.onClearFilter("status")}),h&&C&&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:[T&&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(Qh,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:p,onChange:S=>s(S.target.value),onKeyDown:S=>{S.key==="Enter"&&(S.preventDefault(),x());},placeholder:m,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:x,disabled:c||!p.trim(),children:jsx(ey,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>u(true),children:jsx(Jh,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Uh,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(Nd,{kpis:o.kpis}),jsx(tp,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:d,onPrimaryDimensionClick:S=>n?.onPrimaryDimensionClick(S),onSecondaryDimensionClick:S=>n?.onSecondaryDimensionClick(S),onStatusClick:S=>n?.onStatusClick(S)}:void 0}),r,a]}),jsx(rp,{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 Ba={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"]},oy=5,np=e=>e.toLowerCase().replace(/[\s_-]/g,""),Ea=(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=>[np(i),i]));for(let i of o){let l=n.get(np(i));if(l)return l}return r[0]||a},co=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),ay=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=$t(i[t],r);n.set(l,(n.get(l)||0)+co(i[o]));}),Array.from(n.entries()).map(([i,l])=>({name:i,value:l})).sort((i,l)=>l.value-i.value).slice(0,a)},ry=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let p=$t(l[t],n),s=i.get(p)||{report:0,billable:0};s.report+=co(l[o]),s.billable+=co(l[a]),i.set(p,s);}),Array.from(i.entries()).map(([l,p])=>({name:l,value:p.report>0?p.billable/p.report*100:0})).sort((l,p)=>l.value-p.value).slice(0,r)},ny=(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}))},ip=(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)+co(r[o]));}),Array.from(a.entries()).sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,value:n}))},iy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let p=$t(l[t],n),s=i.get(p)||{report:0,billable:0};s.report+=co(l[o]),s.billable+=co(l[a]),i.set(p,s);}),Array.from(i.entries()).map(([l,p])=>({name:l,barValue:p.billable,lineValue:p.report>0?p.billable/p.report*100:0})).sort((l,p)=>p.barValue-l.barValue).slice(0,r)},sy=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let l=$t(i[t],r),p=$t(i[o],r),s=`${l}__${p}`;n.set(s,(n.get(s)||0)+co(i[a]));}),Array.from(n.entries()).map(([i,l])=>{let[p,s]=i.split("__");return {x:p,y:s,value:l}})},ly=(e,t,o)=>{let a=ip(e,t,o),r=a.map(i=>({name:i.name,value:i.value,type:"delta"})),n=a.reduce((i,l)=>i+l.value,0);return [...r,{name:"Total",value:n,type:"total"}]},cy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(l=>{let p=$t(l[t],n),s=`${$t(l[o],n)} / ${$t(l[a],n)}`,c=i.get(p)||new Map;c.set(s,(c.get(s)||0)+1),i.set(p,c);}),Array.from(i.entries()).map(([l,p])=>({title:l,causes:Array.from(p.entries()).sort((s,c)=>c[1]-s[1]).slice(0,r).map(([s,c])=>`${s} (${c})`)})).slice(0,6)},jr=({rows:e,config:t})=>{let{t:o}=Q(),a=o("graph.unassigned"),r=useMemo(()=>{let c=t?.fieldMapping;return {primaryDimension:Ea(e,c?.primaryDimension,Ba.primaryDimension,"Category"),secondaryDimension:Ea(e,c?.secondaryDimension,Ba.secondaryDimension,"Owner"),status:Ea(e,c?.status,Ba.status,"Status"),date:Ea(e,c?.date,Ba.date,"Date"),description:Ea(e,c?.description,Ba.description,"Description"),reportHours:Ea(e,c?.reportHours,Ba.reportHours,"ReportHours"),billableHours:Ea(e,c?.billableHours,Ba.billableHours,"BillableHours"),amount:Ea(e,c?.amount,Ba.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=co(c[r.reportHours]),u=co(c[r.billableHours]),h=co(c[r.amount]),T=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:T,Status:$t(c[r.status],a)}}),[e,r,a]),i=useMemo(()=>{let c=n.length,g=n.reduce((C,m)=>C+co(m.ReportHours),0),f=n.reduce((C,m)=>C+co(m.BillableHours),0),u=n.reduce((C,m)=>C+co(m.Amount),0),h=g>0?f/g*100:0,T=t?.statusFlagValues||["flag","flagged","warning","risk"],d=n.filter(C=>T.includes($t(C.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:u,flaggedCount:d}},[n,t?.statusFlagValues]),l=t?.topN||oy,p=useMemo(()=>({billableByPrimary:ay(n,"Primary","BillableHours",l,a),efficiencyBySecondary:ry(n,"Secondary","ReportHours","BillableHours",l,a),statusDistribution:ny(n,"Status",a),lineByDate:ip(n,"Date","BillableHours"),comboByPrimary:iy(n,"Primary","ReportHours","BillableHours",l,a),heatmapPrimarySecondary:sy(n,"Primary","Secondary","BillableHours",a),waterfallBillable:ly(n,"Date","BillableHours"),fishboneStatusCauses:cy(n,"Status","Primary","Secondary",3,a)}),[n,l,a]),s=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:p,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}}),[p,t?.title,r,i,n,o]);return {fieldMapping:r,model:s}};var Zr=e=>String(e??"").trim(),_i=(e={})=>{let[t,o]=useState(e),a=useCallback((p,s)=>{o(c=>{let g=s?.trim();if(!g){let f={...c};return delete f[p],f}if(c[p]===g){let f={...c};return delete f[p],f}return {...c,[p]:g}});},[]),r=useCallback(p=>{o(s=>{if(!s[p])return s;let c={...s};return delete c[p],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),l=useCallback((p,s)=>p.filter(c=>!(t.primaryDimension&&Zr(c[s.primaryDimension])!==Zr(t.primaryDimension)||t.secondaryDimension&&Zr(c[s.secondaryDimension])!==Zr(t.secondaryDimension)||t.status&&Zr(c[s.status])!==Zr(t.status))),[t]);return {filters:t,setFilter:a,clearFilter:r,clearAll:n,hasActiveFilters:i,applyRows:l}};var Zi=({variants:e,currentVariantId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=Q(),p=useTheme().palette.mode==="dark",s="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(""),[T,d]=useState(false),[C,m]=useState(false),y=e.find(A=>A.id===t),x=()=>{h(y?.name||i("variant.newVariant")),d(y?.isDefault||false),m(y?.isPublic||false),f(true);},S=()=>{a({name:u,isDefault:T,isPublic:C,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:s,bgcolor:p?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:p?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:p?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:p?"rgba(144,202,249,0.9)":"rgba(25,118,210,0.85)"}},"& .MuiInputBase-input":{fontSize:s},"& .MuiAutocomplete-noOptions":{fontSize:s}},noOptionsText:jsx(Typography,{sx:{fontSize:s},children:i("variant.noOptions")}),options:e,getOptionLabel:A=>A.name+(A.isDefault?` (${i("variant.defaultSuffix")})`:""),value:y||null,onChange:(A,R)=>{R&&o(R);},renderInput:A=>jsx(TextField,{...A,variant:"outlined",size:"small",InputProps:{...A.InputProps,sx:{fontSize:s,color:p?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(A,R)=>jsx("li",{...A,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:s},children:R.name}),R.isDefault&&jsx(Cy,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:x,size:"small",color:"primary",children:jsx(Pp,{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:A=>h(A.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:T,onChange:A=>d(A.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:A=>m(A.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:S,variant:"contained",children:i("common.save")})]})]})]})};var gp=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:a,layoutRefs:r,onLoad:n,variantService:i,serviceUrl:l,onError:p,onSuccess:s,currentVariantId:c,onVariantChange:g})=>{let{t:f}=Q(),[u,h]=useState([]),[T,d]=useState(""),C=`orbcafe.variants.${e}.${t}`,m=c!==void 0?c:T,y=M=>{c===void 0&&d(M),g&&g(M);},x=useCallback(()=>{try{let M=localStorage.getItem(C);if(!M)return [];let k=JSON.parse(M);return Array.isArray(k)?k:[]}catch{return []}},[C]),S=useCallback(M=>{try{localStorage.setItem(C,JSON.stringify(M));}catch{}},[C]),A=useCallback(M=>{h(M);let k=M.find(I=>I.isDefault);k&&!m&&(y(k.id),n(k));},[m,n,y]),R=useCallback(async()=>{if(!e)return [];try{let M=[];if(i)M=await i.getVariants(e,t);else if(l){let k=await fetch(`${l}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!k.ok)throw new Error(f("variant.toast.fetchFailed"));M=await k.json();}else M=x();return A(M),M}catch(M){console.error("Error fetching variants",M);let k=x();return A(k),p&&p(f("variant.toast.fetchFailed")),k}},[e,t,i,l,x,A,p,f]);return useEffect(()=>{R();},[e,t]),jsx(Zi,{variants:u,currentVariantId:m,onLoad:M=>{y(M.id),n(M);},onSave:async M=>{let k=Date.now().toString(),I;try{let D=M.scope||"Both",G=u.find(oe=>oe.name===M.name);k=G?G.id:Date.now().toString();let $=[];if(G&&(Array.isArray(G.filters)?$=[...G.filters]:G.filters&&($=[{scope:"default",filters:G.filters}])),D==="Search"||D==="Both"){let oe=(Array.isArray(o),o);if(oe)if(Array.isArray(oe)&&oe.length>0&&oe[0].scope)oe.forEach(re=>{let X=$.findIndex(qe=>qe.scope===re.scope);X>=0?$[X]=re:$.push(re);});else {let re={scope:t,filters:oe},X=$.findIndex(qe=>qe.scope===t);X>=0?$[X]=re:$.push(re);}}let ee=G?.layout||{},me=[];if(G&&Array.isArray(G.layoutRefs)&&(me=[...G.layoutRefs]),D==="Layout"||D==="Both")if(r&&r.length>0)r.forEach(oe=>{let re=me.findIndex(X=>X.tableKey===oe.tableKey);re>=0?me[re]=oe:me.push(oe);});else {let oe={tableKey:t,layoutId:a||null},re=me.findIndex(X=>X.tableKey===t);re>=0?me[re]=oe:me.push(oe);}if(I={appId:e,tableKey:t,...M,scope:D,id:k,createdAt:new Date().toISOString(),filters:$,layout:ee,layoutRefs:me},i)await i.saveVariant(I,e,t);else if(l){if(!(await fetch(`${l}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})).ok)throw new Error(f("variant.toast.saveFailed"))}else {let re=u.some(X=>X.id===k)?u.map(X=>X.id===k?I:X):[...u,I];h(re),S(re);}s&&s(f("variant.toast.saveSuccess")),(i||l)&&await R(),y(k),n(I);}catch(D){console.error("Error saving variant",D);let $=u.some(ee=>ee.id===k)?u.map(ee=>ee.id===k?I:ee):[...u,I];h($),S($),y(k),n(I),p&&p(f("variant.toast.saveFailed"));}},onDelete:async M=>{try{if(i)await i.deleteVariant(M);else if(l){if(!(await fetch(`${l}/api/variants/${M}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let k=u.filter(I=>I.id!==M);h(k),S(k);}m===M&&y(""),(i||l)&&R(),s&&s(f("variant.toast.deleteSuccess"));}catch(k){console.error("Error deleting variant",k);let I=u.filter(D=>D.id!==M);h(I),S(I),m===M&&y(""),p&&p(f("variant.toast.deleteFailed"));}},onSetDefault:async M=>{try{let k=u.find(D=>D.id===M);if(!k)return;let I={appId:e,tableKey:t,...k,isDefault:!0};if(i)await i.setDefaultVariant(M,e,t);else if(l){if(!(await fetch(`${l}/api/variants`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})).ok)throw new Error(f("variant.toast.defaultFailed"))}else {let D=u.map(G=>({...G,isDefault:G.id===M}));h(D),S(D);}(i||l)&&await R(),s&&s(f("variant.toast.defaultSuccess"));}catch(k){console.error("Error setting default variant",k);let I=u.map(D=>({...D,isDefault:D.id===M}));h(I),S(I),p&&p(f("variant.toast.defaultFailed"));}}})};Qo.extend(Oy);Qo.extend(Wy);var $y=[null,null],$l="0.85rem",Hy={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Gy=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%"}})),yp=({label:e,value:t=$y,onChange:o})=>{let{t:a,locale:r}=Q(),n=Hy[r]||"en",i=e||a("dateRange.label"),[l,p]=useState(null),[s,c]=useState(t),[g,f]=useState("start"),[u,h]=useState(null),[T,d]=useState((t[0]||Qo()).locale(n)),C=ft__default.useRef(t);useEffect(()=>{let[k,I]=t,[D,G]=C.current,$=oe=>oe&&typeof oe.isSame=="function",ee=!(k===null&&D===null||$(k)&&$(D)&&k.isSame(D,"day")),me=!(I===null&&G===null||$(I)&&$(G)&&I.isSame(G,"day"));(ee||me)&&(c(t),t[0]&&$(t[0])&&d(t[0].locale(n))),C.current=t;},[t,n]);let m=k=>{p(k.currentTarget);},y=()=>{p(null),f("start"),h(null);},x=!!l,S=k=>{if(!k)return;let I=[...s];if(g==="start")I=[k,null],f("end");else {let D=I[0];D&&k.isBefore(D)?(I=[k,null],f("end")):(I=[D,k],f("start"));}c(I);},A=k=>{let I=Qo().locale(n),D=[null,null];switch(k){case "today":D=[I,I];break;case "week":D=[I.startOf("week"),I.endOf("week")];break;case "month":D=[I.startOf("month"),I.endOf("month")];break}c(D),f("start"),d(I);},R=()=>{c([null,null]),f("start"),d(Qo().locale(n));},w=()=>{o&&o(s),y();},E=()=>{c(t),f("start"),y();},P=useCallback(k=>{let{day:I,...D}=k,[G,$]=s,ee=G?I.isSame(G,"day"):false,me=$?I.isSame($,"day"):false,oe=G&&$?I.isBetween(G,$,"day","()"):false,re=false;return g==="end"&&G&&!$&&u&&I.isAfter(G,"day")&&I.isBefore(u.add(1,"day"),"day")&&(re=true),jsx(Gy,{...D,day:I,disableMargin:true,isStart:ee,isEnd:me,isInRange:oe||re,onMouseEnter:()=>h(I)})},[s,g,u]),v=k=>k?k.locale(n).format("YYYY-MM-DD"):"",M=k=>k?k.locale(n).format("ll"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:s[0]?`${v(s[0])} - ${v(s[1])}`:"",onClick:m,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:$l}},InputProps:{readOnly:true,sx:{fontSize:$l,"& .MuiOutlinedInput-input":{fontSize:$l},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(s[0]||s[1])&&jsx(IconButton,{size:"small",onClick:k=>{k.stopPropagation(),R();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Ny,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:m,sx:{padding:"2px"},children:jsx(zy,{sx:{fontSize:"1rem"},color:"action"})})]})}}),jsxs(Popover,{open:x,anchorEl:l,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:s[0]?M(s[0]):a("dateRange.select")})]}),jsx(Vy,{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:()=>{s[0]&&f("end");},children:[jsx(Typography,{variant:"caption",color:"text.secondary",display:"block",children:a("dateRange.endDate")}),jsx(Typography,{variant:"body2",fontWeight:500,children:s[1]?M(s[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:()=>A("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisWeek"),onClick:()=>A("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisMonth"),onClick:()=>A("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:T,onMonthChange:d,onYearChange:d,onChange:S,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:E,color:"inherit",children:a("common.cancel")}),jsx(Button,{size:"small",variant:"contained",onClick:w,children:a("common.done")})]})]})]})};var Ji={equals:"=",contains:"\u2287",notContains:"\u2285",wildcard:"*","=":"=","!=":"!=",">":">","<":"<",">=":"\u2265","<=":"\u2264",between:"\u2194"},eb={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"},tb=["equals","contains","notContains","wildcard"],vp=["=","!=",">","<",">=","<=","between"],ct="0.85rem",ob=({field:e,value:t,onChange:o})=>{let{t:a}=Q(),[r,n]=useState(null),[i,l]=useState(null),[p,s]=useState(""),[c,g]=useState(""),[f,u]=useState(false),[h,T]=useState(""),[d,C]=useState("");useEffect(()=>{let v=setTimeout(()=>{C(h);},1e3);return ()=>clearTimeout(v)},[h]);let m=t?.operator||(e.type==="number"?"=":"equals"),y=t?.value,x=v=>{let M=eb[v];return M?a(M):v},S=v=>{n(v.currentTarget);},A=v=>{o({...t,operator:v,value:y}),n(null);},R={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"}}}}}},w=e.type||"text";if(w==="date"){let M=(k=>{if(!k)return [null,null];if(Array.isArray(k)&&k.length===2){let I=k[0]?Qo.isDayjs(k[0])?k[0]:Qo(k[0]):null,D=k[1]?Qo.isDayjs(k[1])?k[1]:Qo(k[1]):null;return [I,D]}return Qo.isDayjs(k)||typeof k=="string"?[Qo.isDayjs(k)?k:Qo(k),null]:[null,null]})(y);return jsx(yp,{label:e.label,value:M,onChange:k=>o({value:k,operator:"between"})})}if(w==="number"&&m==="between"){let v=()=>{o({value:[p,c],operator:"between"}),l(null);},M=Array.isArray(y)?`${y[0]||""} - ${y[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,value:M,placeholder:a("smartFilter.minMaxPlaceholder"),InputProps:{...R.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x("between"),children:jsx(IconButton,{size:"small",onClick:S,sx:{width:24,height:24,fontSize:ct},children:Ji.between})})}),readOnly:true},onClick:k=>l(k.currentTarget)}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ct,minHeight:"auto",py:.5}}},children:vp.map(k=>jsxs(MenuItem,{selected:k===m,onClick:()=>A(k),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Ji[k]}),jsx(ListItemText,{primary:x(k),primaryTypographyProps:{fontSize:ct}})]},k))}),jsx(Popover,{open:!!i,anchorEl:i,onClose:()=>l(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:p,onChange:k=>s(k.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ct}},InputProps:{sx:{fontSize:ct}}}),jsx(Jy,{color:"action"}),jsx(TextField,{size:"small",label:a("smartFilter.max"),type:"number",value:c,onChange:k=>g(k.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:ct}},InputProps:{sx:{fontSize:ct}}}),jsx(Button,{variant:"contained",size:"small",onClick:v,children:a("common.ok")})]})})]})}if(w==="select")return jsxs(TextField,{...R,select:true,label:e.label,value:y||"",onChange:v=>o({...t,value:v.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:a("common.none")})}),e.options?.map(v=>jsx(MenuItem,{value:v.value,children:v.label},v.value))]});if(w==="multi-select"){let v=Array.isArray(y)?y:[],M=e.options?.filter(k=>k.label.toLowerCase().includes(d.toLowerCase()))||[];return jsxs(TextField,{...R,select:true,label:e.label,value:v,onChange:k=>o({...t,value:k.target.value,operator:"anyOf"}),SelectProps:{...R.SelectProps,multiple:true,onClose:()=>{T(""),C("");},renderValue:k=>{if(!Array.isArray(k)||k.length===0)return jsx("em",{children:a("common.none")});let I=G=>e.options?.find($=>$.value===G)?.label||G,D=k.map(I);return D.length>2?`${D.slice(0,2).join(", ")} +${D.length-2}`:D.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(xp,{fontSize:"small"})}),sx:{fontSize:ct}},value:h,onChange:k=>T(k.target.value),onKeyDown:k=>{k.key!=="Escape"&&k.stopPropagation();},onClick:k=>k.stopPropagation()})}),M.length>0?M.map(k=>jsxs(MenuItem,{value:k.value,children:[jsx(Checkbox,{checked:v.indexOf(k.value)>-1,size:"small"}),jsx(ListItemText,{primary:k.label,primaryTypographyProps:{fontSize:ct}})]},k.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:a("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:ct}})})]})}let E=w==="number"?vp:tb,P=f||y!==void 0&&y!==""&&y!==null||!!r;return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,sx:{minWidth:"120px"},value:y||"",type:w==="number"?"number":"text",onChange:v=>o({...t,value:v.target.value,operator:m}),onFocus:()=>u(true),onBlur:()=>u(false),InputProps:{...R.InputProps,startAdornment:P?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:x(m),children:jsx(IconButton,{size:"small",onClick:S,onMouseDown:v=>v.preventDefault(),sx:{width:24,height:24,fontSize:ct,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:Ji[m]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(xp,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:ct,minHeight:"auto",py:.5}}},children:E.map(v=>jsxs(MenuItem,{selected:v===m,onClick:()=>A(v),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:Ji[v]}),jsx(ListItemText,{primary:x(v),primaryTypographyProps:{fontSize:ct}})]},v))})]})},da=({fields:e,filters:t,onFilterChange:o,variants:a=[],currentVariantId:r,onVariantLoad:n,onVariantSave:i,onVariantDelete:l,onVariantSetDefault:p,onSearch:s,loading:c=false,appId:g,tableKey:f,currentLayout:u,currentLayoutId:h,layoutRefs:T,variantService:d,serviceUrl:C})=>{let{t:m}=Q(),[y,x]=useState(true),[S,A]=useState(null),[R,w]=useState(e.filter(M=>!M.hidden).map(M=>M.id)),E=(M,k)=>{o({...t,[M]:k});},P=M=>{R.includes(M)?w(R.filter(k=>k!==M)):w([...R,M]);};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(gp,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:R},currentLayout:u,currentLayoutId:h,layoutRefs:T,onLoad:M=>{if(!M.filters)return;let k=null;if(Array.isArray(M.filters)){let I=f||"default",D=M.filters.find(G=>G.scope===I);k=D?D.filters:null;}else k=M.filters;k&&(k.values||k.visibleFields?(k.visibleFields&&Array.isArray(k.visibleFields)&&w(k.visibleFields),k.values&&o(k.values)):o(k)),n&&n(M);},variantService:d,serviceUrl:C,currentVariantId:r}):jsx(Zi,{variants:a,currentVariantId:r,onLoad:n,onSave:M=>{i&&i({...M,filters:{values:t,visibleFields:R}});},onDelete:l,onSetDefault:p}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:m("smartFilter.addFilters"),children:jsx(Button,{onClick:M=>A(M.currentTarget),size:"small",color:"primary",startIcon:jsx(Xy,{fontSize:"small"}),sx:{textTransform:"none",fontSize:ct,whiteSpace:"nowrap",minWidth:"fit-content"},children:m("smartFilter.adaptFilters")})}),jsx(Button,{variant:"contained",size:"small",onClick:s,disabled:c,sx:{minWidth:"52px",fontWeight:"bold",fontSize:ct},children:m(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:S,open:!!S,onClose:()=>A(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:ct,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:m("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:ct}})}),jsx(Divider,{}),e.map(M=>jsxs(MenuItem,{onClick:()=>P(M.id),children:[jsx(Checkbox,{checked:R.includes(M.id),size:"small"}),jsx(ListItemText,{primary:M.label,primaryTypographyProps:{fontSize:ct}})]},M.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(M=>R.includes(M.id)).map(M=>jsx(Grid,{size:1,children:jsx(ob,{field:M,value:t[M.id]||{value:"",operator:M.type==="number"?"=":"equals"},onChange:k=>E(M.id,k)})},M.id))})})}),jsx(Box,{sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",zIndex:10},children:jsx(IconButton,{size:"small",onClick:()=>x(!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(Yy,{sx:{fontSize:16},color:"action"}):jsx(oh,{sx:{fontSize:16},color:"action"})})})]})};var Rp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=Q(),[l,p]=useState(null),[s,c]=useState(false),[g,f]=useState(""),[u,h]=useState(""),[T,d]=useState({isDefault:false,isPublic:false}),C=e.find(R=>R.id===t),m=R=>{p(R.currentTarget);},y=()=>{p(null);},x=R=>{o(R),y();},S=()=>{f(""),h(""),d({isDefault:false,isPublic:false}),c(true),y();},A=()=>{g.trim()&&(a({name:g,description:u,...T}),c(false));};return jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:i("layout.saveLayout"),children:jsx(IconButton,{onClick:S,color:"primary",size:"small",children:jsx(Pp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:m,color:C?"primary":"default",children:jsx(gb,{})})}),jsxs(Menu,{anchorEl:l,open:!!l,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:S,children:[jsx(ListItemIcon,{children:jsx(Pp,{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((R,w)=>jsx(MenuItem,{onClick:()=>x(R),selected:R.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:R.id===t?"bold":"normal",noWrap:true,children:R.name})}),R.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:R.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:E=>E.stopPropagation(),children:[jsx(Tooltip,{title:R.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:E=>{E.stopPropagation(),n(R.id);},children:R.isDefault?jsx(Cy,{fontSize:"small",color:"warning"}):jsx(mb,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:E=>{E.stopPropagation(),r(R.id);},children:jsx(Nf,{fontSize:"small"})})})]})]})},R.id||w))]}),jsxs(Dialog,{open:s,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:R=>f(R.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(R=>R.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:R=>h(R.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:T.isDefault,onChange:R=>d({...T,isDefault:R.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:T.isPublic,onChange:R=>d({...T,isPublic:R.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:A,variant:"contained",disabled:!g,children:i("common.save")})]})]})]})};var as=({appId:e,tableKey:t="default",currentLayoutData:o,onLayoutLoad:a,targetLayoutId:r,activeLayoutId:n,serviceUrl:i,onError:l,onSuccess:p})=>{let{t:s}=Q(),[c,g]=useState([]),[f,u]=useState(""),h=`orbcafe.layouts.${e}.${t}`,T=w=>({id:w.layoutId,name:w.name,description:w.description??"",isDefault:!!w.isDefault,isPublic:!!w.isPublic,createdAt:w.createdAt??new Date().toISOString(),layoutData:w.layout??{}}),d=w=>({appId:e,tableKey:t,layoutId:w.id,name:w.name,description:w.description??"",isDefault:!!w.isDefault,isPublic:!!w.isPublic,createdAt:w.createdAt,layout:w.layoutData}),C=useCallback(()=>{try{let w=localStorage.getItem(h);if(!w)return [];let E=JSON.parse(w);return Array.isArray(E)?E:[]}catch{return []}},[h]),m=useCallback(w=>{try{localStorage.setItem(h,JSON.stringify(w));}catch{}},[h]);useEffect(()=>{n!==void 0&&u(n);},[n]),useEffect(()=>{if(r&&c.length>0){let w=c.find(E=>E.id===r);w&&(u(w.id),a(w));}},[r,c,a]);let y=useCallback(async()=>{if(e){if(!i){let w=C();g(w);let E=w.find(P=>P.isDefault);E&&!f&&!r&&(u(E.id),a(E));return}try{let w=await fetch(`${i}/api/layouts?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!w.ok)throw new Error("LAYOUT_FETCH_FAILED");let P=(await w.json()).map(T);g(P);let v=P.find(M=>M.isDefault);v&&!f&&!r&&(u(v.id),a(v));}catch(w){console.error("Error fetching layouts",w);let E=C();g(E);let P=E.find(v=>v.isDefault);P&&!f&&!r&&(u(P.id),a(P)),l&&l(s("layout.toast.loadFallback"));}}},[e,t,i,l,f,a,r,C,s]);return useEffect(()=>{y();},[e,t]),jsx(Rp,{layouts:c,currentLayoutId:f,onLoad:w=>{u(w.id),a(w);},onSave:async w=>{let E=c.find(M=>M.name===w.name),P=E?E.id:Date.now().toString(),v={id:P,...w,createdAt:new Date().toISOString(),layoutData:o,isDefault:w.isDefault??false,isPublic:w.isPublic??false};if(!i){let k=c.some(I=>I.id===P)?c.map(I=>I.id===P?v:I):[...c,v];g(k),m(k),u(P),a(v),p&&p(s("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d(v))})).ok)throw new Error("LAYOUT_SAVE_FAILED");p&&p(s("layout.toast.saveSuccess")),await y(),u(P),a(v);}catch(M){console.error("Error saving layout",M);let I=c.some(D=>D.id===P)?c.map(D=>D.id===P?v:D):[...c,v];g(I),m(I),u(P),a(v),p&&p(s("layout.toast.saveLocalSuccess")),l&&l(s("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async w=>{if(!i){let E=c.filter(P=>P.id!==w);g(E),m(E),f===w&&u(""),p&&p(s("layout.toast.deleteLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts/${encodeURIComponent(w)}`,{method:"DELETE"})).ok)throw new Error("LAYOUT_DELETE_FAILED");f===w&&u(""),p&&p(s("layout.toast.deleteSuccess")),await y();}catch(E){console.error("Error deleting layout",E);let P=c.filter(v=>v.id!==w);g(P),m(P),f===w&&u(""),p&&p(s("layout.toast.deleteLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async w=>{if(!i){let E=c.map(P=>({...P,isDefault:P.id===w}));g(E),m(E),p&&p(s("layout.toast.defaultLocalSuccess"));return}try{let E=c.find(v=>v.id===w);if(!E)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d({...E,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");p&&p(s("layout.toast.defaultSuccess")),await y();}catch(E){console.error("Error setting default",E);let P=c.map(v=>({...v,isDefault:v.id===w}));g(P),m(P),p&&p(s("layout.toast.defaultLocalSuccess")),l&&l(s("layout.toast.backendUnavailableDefaultLocal"));}}})};var Mp=(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},rs=(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 Ap(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function hb(e,t){return e==="desc"?(o,a)=>Ap(o,a,t):(o,a)=>-Ap(o,a,t)}function yb(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 Qr=e=>{let t=useCallback(z=>{let N=String(z?.label??z?.id??"").length*9+64,ae=typeof z?.minWidth=="number"?z.minWidth:0;return Math.max(100,ae,N)},[]),o=useCallback(()=>(e.columns||[]).filter(z=>!!z?.numeric).map(z=>z.id),[e.columns]),[a,r]=useState(""),[n,i]=useState(e.order||"asc"),[l,p]=useState(e.orderBy||""),[s,c]=useState(e.page||0),[g,f]=useState(e.rowsPerPage||20),[u,h]=useState(e.selected||[]),[T,d]=useState(e.columns?e.columns.map(z=>z.id):[]),[C,m]=useState(e.showSummary||false),[y,x]=useState(()=>o()),[S,A]=useState([]),[R,w]=useState(new Set),[E,P]=useState(()=>{let z={};return (e.columns||[]).forEach(V=>{z[V.id]=t(V);}),z}),[v,M]=useState(null),[k,I]=useState(null),[D,G]=useState(null),[$,ee]=useState(null),[me,oe]=useState(false),[re,X]=useState(""),[qe,nt]=useState("");useEffect(()=>{e.layout&&De(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&p(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 z=o();x(V=>V.filter(ae=>z.includes(ae)));},[o]),useEffect(()=>{P(z=>{let V={...z};return (e.columns||[]).forEach(N=>{V[N.id]===void 0&&(V[N.id]=t(N));}),V});},[e.columns,t]);let Y=useMemo(()=>{let z=e.rows||[];return a&&(z=z.filter(V=>Object.keys(V).some(N=>String(V[N]).toLowerCase().includes(a.toLowerCase())))),z},[e.rows,a]),le=useMemo(()=>e.onSortChange||!l?Y:yb(Y,hb(n,l)),[Y,n,l,e.onSortChange]),Ve=useCallback(z=>{if(S.length===0)return z.map(ke=>({type:"row",data:ke,id:ke[e.rowKey||"id"]}));let V=[...z].sort((ke,te)=>{for(let Pe of S){if(ke[Pe]<te[Pe])return -1;if(ke[Pe]>te[Pe])return 1}return 0}),N=(ke,te=0)=>{if(te>=S.length)return ke;let Pe=S[te],Se={},Me=[];return ke.forEach(we=>{let Ie=we[Pe],Ae=`${Pe}:${Ie}`;Se[Ae]||(Se[Ae]={key:Ae,field:Pe,value:Ie,children:[],count:0,level:te},Me.push(Se[Ae])),Se[Ae].children.push(we),Se[Ae].count++;}),Me.forEach(we=>{we.children&&(we.children=N(we.children,te+1));}),Me},ae=N(V),ie=(ke,te="")=>{let Pe=[];return ke.forEach(Se=>{if(Se.children){let Me=te?`${te}>${Se.key}`:Se.key,we=R.has(Me);Pe.push({type:"group",id:Me,field:Se.field,value:Se.value,level:Se.level,count:Se.count,isExpanded:we,childIds:(function Ie(Ae){let kt=[];return Ae.children.forEach(bo=>{bo.children?kt=kt.concat(Ie(bo)):kt.push(bo[e.rowKey||"id"]);}),kt})(Se)}),we&&(Pe=Pe.concat(ie(Se.children,Me)));}else Pe.push({type:"row",data:Se,id:Se[e.rowKey||"id"],level:S.length});}),Pe};return ie(ae)},[S,R,e.rowKey]),Le=useCallback(z=>{if(S.length===0)return [];let V=[...z].sort((ie,ke)=>{for(let te of S){if(ie[te]<ke[te])return -1;if(ie[te]>ke[te])return 1}return 0}),N=[],ae=(ie,ke,te)=>{if(ke>=S.length)return;let Pe=S[ke],Se=new Map;ie.forEach(Me=>{let we=Me[Pe],Ie=Se.get(we);Ie?Ie.push(Me):Se.set(we,[Me]);}),Se.forEach((Me,we)=>{let Ie=`${Pe}:${we}`,Ae=te?`${te}>${Ie}`:Ie;N.push(Ae),ae(Me,ke+1,Ae);});};return ae(V,0,""),N},[S]),Oe=useMemo(()=>Ve(le),[le,Ve]),tt=useMemo(()=>Le(le),[le,Le]),ze=useMemo(()=>{let z=(e.rows||[]).length;return typeof e.count=="number"&&e.count>z},[e.count,e.rows]),Xe=useMemo(()=>ze?Oe:g>0?Oe.slice(s*g,s*g+g):Oe,[Oe,s,g,ze]),Pt=useMemo(()=>ze&&typeof e.count=="number"?e.count:Oe.length,[Oe.length,ze,e.count]),Rt=z=>{w(V=>{let N=new Set(V);return N.has(z)?N.delete(z):N.add(z),N});},_e=z=>{let V=tt.filter(N=>N===z||N.startsWith(`${z}>`));w(N=>{let ae=new Set(N);return V.forEach(ie=>ae.add(ie)),ae});},yt=z=>{w(V=>{let N=new Set(V);return Array.from(N).forEach(ae=>{(ae===z||ae.startsWith(`${z}>`))&&N.delete(ae);}),N});},Dt=z=>{if(!z){w(new Set);return}w(new Set(tt));},et=z=>{let V=tt.filter(N=>N.startsWith(`${z}>`));return V.length===0?R.has(z):R.has(z)&&V.every(N=>R.has(N))},U=z=>{let V=l===z&&n==="asc",N=l===z&&n==="desc";if(e.onSortChange){V?e.onSortChange(z,"desc"):N?e.onSortChange("","asc"):e.onSortChange(z,"asc");return}V?(i("desc"),p(z)):N?(i("asc"),p("")):(i("asc"),p(z));},fe=(z,V)=>{P(N=>({...N,[z]:V}));},he=z=>{if(z.target.checked){let V=Y.map(N=>N[e.rowKey||"id"]);h(V),e.onSelectionChange&&e.onSelectionChange(V);return}h([]),e.onSelectionChange&&e.onSelectionChange([]);},Te=(z,V)=>{let N=V[e.rowKey||"id"],ae=u.indexOf(N),ie=[];ae===-1?ie=ie.concat(u,N):ae===0?ie=ie.concat(u.slice(1)):ae===u.length-1?ie=ie.concat(u.slice(0,-1)):ae>0&&(ie=ie.concat(u.slice(0,ae),u.slice(ae+1))),h(ie),e.onSelectionChange&&e.onSelectionChange(ie);},je=z=>{c(z),e.onPageChange&&e.onPageChange(z);},Ne=z=>{f(z),c(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(z);},Ct=z=>{let V=T.indexOf(z),N=[...T];V===-1?N.push(z):N.splice(V,1),d(N);},ao=z=>{let V=S.indexOf(z),N=[...S];V===-1?N.push(z):N.splice(V,1),A(N);},Xt=z=>{o().includes(z)&&x(N=>N.includes(z)?N.filter(ae=>ae!==z):[...N,z]);},Ot=z=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:T,order:n,orderBy:l,grouping:S,columnWidths:E,showSummary:C,summaryColumns:y});},Yt=z=>{let{layout:V,layoutId:N}=rs(z,e.tableKey||"default");N?(nt(N),X(N)):(nt(""),X("")),V&&(V.visibleColumns&&d(V.visibleColumns),V.order&&i(V.order),V.orderBy&&p(V.orderBy),V.grouping&&A(V.grouping),V.columnWidths&&P(V.columnWidths),V.showSummary!==void 0&&m(!!V.showSummary),Array.isArray(V.summaryColumns)&&x(V.summaryColumns));},De=z=>{let V=z?.layoutData||z?.layout||z||{};V.visibleColumns&&d(V.visibleColumns),V.order&&i(V.order),V.orderBy!==void 0&&p(V.orderBy),V.grouping&&A(V.grouping),V.columnWidths&&P(V.columnWidths),V.showSummary!==void 0&&m(!!V.showSummary),Array.isArray(V.summaryColumns)&&x(V.summaryColumns),w(new Set),c(0),z?.id&&X(z.id),nt("");};useEffect(()=>{e.layout&&Yt({layout:e.layout});},[e.layout]);let xe=z=>{z.preventDefault(),ee($===null?{mouseX:z.clientX+2,mouseY:z.clientY-6}:null);},L=()=>{ee(null);},H=useMemo(()=>{if(!C)return {};let z={};e.columns.forEach(N=>{if(N.numeric&&y.includes(N.id)){let ae=Y.reduce((ie,ke)=>{let te=parseFloat(ke[N.id]);return ie+(isNaN(te)?0:te)},0);z[N.id]=ae.toFixed(2);}else z[N.id]="";});let V=e.columns.find(N=>T.includes(N.id));return V&&!V.numeric&&(z[V.id]="Total"),z},[Y,e.columns,C,y,T]),_=()=>{if(!e.columns||!Y)return;let z=e.columns.map(ke=>ke.label).join(","),V=Y.map(ke=>e.columns.map(te=>{let Pe=ke[te.id];return `"${(Pe==null?"":String(Pe)).replace(/"/g,'""')}"`}).join(",")).join(`
1
+ import {a}from'./chunk-74Z76O3S.mjs';export{b as COrbCanvas}from'./chunk-74Z76O3S.mjs';import*as vt from'react';import vt__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 Jp from'@mui/material/Dialog';import eu from'@mui/material/DialogTitle';import tu from'@mui/material/DialogContent';import Bf from'@mui/material/DialogContentText';import ou from'@mui/material/DialogActions';import Xn from'@mui/material/Box';import Lf from'@mui/icons-material/CheckCircle';import zf from'@mui/icons-material/Warning';import Nf from'@mui/icons-material/Error';import Vf 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 Qf from'@mui/icons-material/Clear';import Jf from'@mui/icons-material/Close';import Wd from'@mui/icons-material/Search';import ax from'@mui/material/Paper';import rx from'@mui/material/Table';import nx from'@mui/material/TableBody';import Ls from'@mui/material/TableCell';import nu from'@mui/material/TableContainer';import Rh from'@mui/material/TableHead';import Dh from'@mui/material/TableRow';import au from'@mui/material/TextField';import gl from'@mui/material/Button';import ru 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 gh from'@mui/icons-material/ViewColumn';import jp from'@mui/icons-material/Save';import hh from'@mui/icons-material/Download';import yh from'@mui/icons-material/AccountTree';import bh from'@mui/icons-material/Functions';import xh from'@mui/icons-material/Insights';import vh from'@mui/icons-material/Add';import Ch from'@mui/icons-material/Edit';import kh from'@mui/icons-material/Delete';import Sh from'@mui/icons-material/KeyboardArrowLeft';import wh from'@mui/icons-material/KeyboardArrowRight';import Mh from'@mui/material/Checkbox';import Ah from'@mui/material/TableSortLabel';import Bh from'@mui/material/IconButton';import Eh from'@mui/material/Tooltip';import Fh from'@mui/icons-material/UnfoldMore';import Lh from'@mui/icons-material/UnfoldLess';import Wh from'@mui/icons-material/KeyboardArrowDown';import ty from'@mui/icons-material/Check';import oy from'@mui/icons-material/ClearAll';import Ny from'@mui/icons-material/MicNoneOutlined';import Vy from'@mui/icons-material/SettingsOutlined';import Oy from'@mui/icons-material/SendOutlined';import Lb from'@mui/icons-material/Settings';import zb from'@mui/icons-material/KeyboardArrowUp';import Vb from'@mui/icons-material/ArrowRightAlt';import ib 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 Cb from'@mui/icons-material/CalendarMonth';import Sb from'@mui/icons-material/ArrowForward';import ta from'dayjs';import wb from'dayjs/plugin/isBetween';import Tb 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 Qb from'@mui/icons-material/StarBorder';import Jb from'@mui/icons-material/ViewQuilt';import C0 from'@mui/icons-material/CloseOutlined';import Cx from'@mui/icons-material/ContentCopyOutlined';import kx from'@mui/icons-material/CheckOutlined';import Yx from'@mui/icons-material/ExpandMore';import {arrayMove,SortableContext,verticalListSortingStrategy,useSortable}from'@dnd-kit/sortable';import Nu from'@mui/icons-material/Language';import iv from'@mui/icons-material/DesktopWindows';import lv from'@mui/icons-material/DarkMode';import sv from'@mui/icons-material/LightMode';import dv from'@mui/icons-material/Logout';import TC from'@mui/icons-material/DeleteOutline';import Ev from'@mui/icons-material/DragIndicator';import Yv from'@mui/icons-material/FilterList';import Qv from'@mui/icons-material/TableRows';import Vv from'@mui/icons-material/LayersClear';import XC from'@mui/icons-material/CameraAltRounded';import YC from'@mui/icons-material/QrCodeScannerRounded';import tk from'@mui/icons-material/DragIndicatorRounded';import nk from'@mui/icons-material/BackspaceRounded';import ik from'@mui/icons-material/CloseRounded';import lk from'@mui/icons-material/CheckRounded';import kk from'@mui/icons-material/SearchRounded';import Sk from'@mui/icons-material/MenuOpenRounded';import wk from'@mui/icons-material/MenuRounded';import Tk from'@mui/icons-material/ExpandMoreRounded';import Ik from'@mui/icons-material/ChevronRightRounded';import qk from'next/dynamic';import {AnimatePresence,motion}from'framer-motion';import iw from'react-markdown';import lw from'remark-gfm';import sw from'remark-math';import cw from'rehype-katex';import dw 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 cg from'mermaid';import Cw from'@mui/icons-material/MicRounded';import kw from'@mui/icons-material/MicOffRounded';import {InsertDriveFile,Close,Stop}from'@mui/icons-material';import Pw from'@mui/icons-material/SendRounded';import Rw from'@mui/icons-material/AddRounded';import Dw from'@mui/icons-material/HardwareRounded';import Qw from'@mui/icons-material/LockOutlined';import Vg from'@mui/icons-material/MailOutline';import Og from'@mui/icons-material/PersonOutline';import Jw from'@mui/icons-material/VpnKeyOutlined';import h1 from'dayjs/plugin/isoWeek';import w1 from'@mui/icons-material/CalendarMonthOutlined';import R1 from'@mui/icons-material/KeyboardDoubleArrowLeftOutlined';import D1 from'@mui/icons-material/KeyboardDoubleArrowRightOutlined';import M1 from'@mui/icons-material/SplitscreenOutlined';import A1 from'@mui/icons-material/Sort';function ko(...e){return twMerge(clsx(e))}var ks={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"},Sd=()=>"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 nf=cva(Sd(),{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-[${ks.primary}] hover:bg-[${ks.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"}}),Ss=vt.forwardRef(({className:e,variant:t,size:o,asChild:a=false,...r},n)=>jsx(a?Slot:"button",{className:ko(nf({variant:t,size:o,className:e})),ref:n,...r}));Ss.displayName="Button";var sf={"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"},cf={"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"},df={"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"},pf={"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"},uf={"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"},mf={"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:sf,zh:cf,fr:df,de:pf,ja:uf,ko:mf};var Td=(e,t)=>t?e.replace(/\{(\w+)\}/g,(o,a)=>{let r=t[a];return r==null?"":String(r)}):e,yf={locale:"en",t:(e,t)=>Td(Mn.en[e]||e,t)},Id=createContext(yf),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,p)=>Td(i[s]||s,p)}},[e,t]);return jsx(Id.Provider,{value:a,children:o})},ee=()=>useContext(Id);function Ts({items:e,onItemClick:t,className:o="",level:a=0,expandedIds:r,onToggleExpand:n,colorMode:i="light"}){let{t:s}=ee(),p=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 d=m=>{if(h)n(m);else {let y=new Set(f);y.has(m)?y.delete(m):y.add(m),u(y);}},C=m=>{m.children&&m.children.length>0&&d(m.id),t&&t(m);};return !e||!Array.isArray(e)?jsx("div",{className:ko("tree-menu",o),children:jsx("div",{className:"text-sm text-gray-500 p-2",children:s("navigation.noItems")})}):jsx("div",{className:ko("tree-menu",o),children:e.map(m=>{let y=w.has(m.id)||m.isExpanded,b=m.children&&m.children.length>0,T=m.appurl||m.href,A=c&&T?l===T:false;return jsxs("div",{className:"tree-menu-item relative",children:[A&&jsx("div",{className:ko("absolute left-0 top-2 bottom-2 w-[3px] rounded-r-full z-10",p?"bg-[#90caf9]":"bg-[#1976d2]")}),jsxs(Ss,{variant:"ghost",className:ko("w-full justify-start gap-2 h-auto py-2 relative overflow-hidden group",`ml-${a*4}`,A?p?"bg-transparent text-[#90caf9] hover:bg-gray-800/35":"bg-transparent text-[#1976d2] hover:bg-gray-100/60":p?"hover:bg-gray-800/50 text-gray-300":"hover:bg-gray-100/50 text-gray-700"),onClick:()=>C(m),children:[b&&jsx("div",{className:ko("flex-shrink-0 transition-transform duration-200",y&&"rotate-90",A?p?"text-[#90caf9]":"text-[#1976d2]":p?"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:ko("flex-shrink-0 transition-colors duration-200",A?p?"text-[#90caf9]":"text-[#1976d2]":p?"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:ko("text-sm truncate transition-colors duration-200",A?"font-semibold":"font-medium"),children:m.title||m.label}),m.description&&jsx("div",{className:ko("text-xs truncate transition-colors duration-200",A?p?"text-[#90caf9]/70":"text-[#1976d2]/75":p?"text-gray-400":"text-gray-500"),title:m.description,children:m.description})]})]}),b&&jsx("div",{className:ko("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(Ts,{items:m.children,onItemClick:t,level:a+1,expandedIds:r,onToggleExpand:n,colorMode:i})})})]},m.id)})})}var Bd=({collapsed:e,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light"})=>{let{t:i}=ee(),s=n==="dark",p=useRouter(),[l,c]=useState(""),[g,f]=useState(new Set);useEffect(()=>{e&&f(new Set);},[e]);let u=useCallback(C=>{let m=[],y=b=>{b.forEach(T=>{m.push(T.id),T.children&&y(T.children);});};return y(C),m},[]),h=useMemo(()=>{if(!l.trim())return r;let C=m=>m.reduce((y,b)=>{let T=b.title?.toLowerCase().includes(l.toLowerCase())||b.description?.toLowerCase().includes(l.toLowerCase()),A=b.children?C(b.children):[];return (T||A.length>0)&&y.push({...b,children:A.length>0?A:b.children}),y},[]);return C(r)},[l,r]),w=useMemo(()=>l.trim()?new Set(u(r)):g,[l,r,g,u]),d=useCallback(async C=>{if(console.log("\u{1F5B1}\uFE0F \u5BFC\u822A\u83DC\u5355\u9879\u70B9\u51FB:",C),C.id==="chat"||C.appurl==="/chat"){console.log("\u{1F4AC} \u68C0\u6D4B\u5230chat\u83DC\u5355\u70B9\u51FB\uFF0C\u8DF3\u8F6C\u5230\u65B0\u7684\u804A\u5929\u89C6\u56FE");try{p.push("/chat?new=true");}catch(y){console.error("\u274C \u65E0\u6CD5\u8DF3\u8F6C\u5230\u65B0\u804A\u5929\u89C6\u56FE:",y),p.push("/chat");}return}let m=C.appurl||C.href;m&&(m.startsWith("http://")||m.startsWith("https://")?window.open(m,"_blank"):p.push(m));},[p]);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:C=>c(C.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(Ts,{items:h,onItemClick:d,className:"space-y-1",expandedIds:w,colorMode:n,onToggleExpand:C=>{let m=new Set(g);h.some(b=>b.id===C)?m.has(C)?m.delete(C):(h.forEach(b=>{b.id!==C&&m.has(b.id)&&m.delete(b.id);}),m.add(C)):m.has(C)?m.delete(C):m.add(C),f(m);}})}),e&&jsx("div",{className:"space-y-2",children:r.map(C=>jsx("div",{className:"space-y-1",children:jsx("button",{onClick:()=>{t();let m=new Set([C.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:C.title||""}),children:C.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:C.title?.charAt(0)||"?"})})},C.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 Fd=(e={})=>{let{initialCollapsed:t=false,content:o=[]}=e,[a,r]=useState(t),[n,i]=useState(o),s=useCallback(()=>{r(l=>!l);},[]),p=useMemo(()=>({collapsed:a,onToggle:s,menuData:n}),[a,s,n]);return {collapsed:a,setCollapsed:r,toggleCollapsed:s,menuData:n,setMenuData:i,navigationIslandProps:p}};var Bo=e=>jsx(Button,{...e,variant:e.variant||"contained",size:e.size||"medium",sx:{textTransform:"none",...e.sx}});var Ps=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);}},ca=new Ps,ET={success:(e,t)=>ca.show("success",e,t),error:(e,t)=>ca.show("error",e,t),warning:(e,t)=>ca.show("warning",e,t),info:(e,t)=>ca.show("info",e,t),show:(e,t,o)=>ca.show(e,t,o),hide:()=>ca.hide()};var Of={success:{icon:jsx(Lf,{sx:{fontSize:40}}),color:"#e8f5e9",iconColor:"#66bb6a",borderColor:"#a5d6a7"},warning:{icon:jsx(zf,{sx:{fontSize:40}}),color:"#fff3e0",iconColor:"#ffa726",borderColor:"#ffcc80"},error:{icon:jsx(Nf,{sx:{fontSize:40}}),color:"#ffebee",iconColor:"#ef5350",borderColor:"#ef9a9a"},info:{icon:jsx(Vf,{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:p="xs",type:l="default"})=>{let{t:c}=ee(),g=n||c("messageBox.confirm"),f=i||c("messageBox.cancel"),u=()=>{r?r():a();},h=Of[l],w=l!=="default";return jsxs(Jp,{open:e,onClose:a,maxWidth:p,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(eu,{sx:{textAlign:w?"center":"left",pt:w?1:2},children:t}),jsx(tu,{sx:{textAlign:w?"center":"left"},children:typeof o=="string"?jsx(Bf,{children:o}):o}),jsxs(ou,{sx:{justifyContent:w?"center":"flex-end",pb:3,px:3},children:[s&&jsx(Bo,{onClick:a,variant:"text",color:"inherit",children:f}),jsx(Bo,{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})]})]})},XT=()=>{let[e,t]=vt__default.useState(null),[o,a]=vt__default.useState(false);vt__default.useEffect(()=>{let i=s=>{s?(t(s),a(true)):(a(false),t(null));};return ca.register(i),()=>ca.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 eh=[{field:"value",label:"Value",minWidth:120},{field:"label",label:"Description",minWidth:180}],$d=e=>Array.isArray(e)?e:e==null||e===""?[]:[e],jo=e=>String(e),Gd=(e,t)=>e[t],Ud=e=>{let t=e.value??e.id??e.key??e.code;return typeof t=="number"||typeof t=="string"?t:""},th=e=>{let t=e.label??e.description??e.name??e.title;return String(typeof t=="number"||typeof t=="string"?t:Ud(e))},oh=e=>{let t=e.description??e.subtitle;return typeof t=="number"||typeof t=="string"?String(t):void 0},Kd=({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:p="Cancel",valueHelpLabel:l="Open value help",noResultsText:c="No matching values",loading:g=false,clearable:f=true,selectedItems:u=[],displayValue:h,getOptionValue:w=Ud,getOptionLabel:d=th,getOptionDescription:C=oh,onChange:m,onSearch:y,disabled:b,InputProps:T,onKeyDown:A,...R})=>{let S=a==="multiple",[B,P]=useState(false),[v,M]=useState(""),[k,I]=useState(null),[D,G]=useState(false),[V,X]=useState(()=>$d(e)),de=useMemo(()=>o&&o.length>0?o:eh,[o]),oe=k??t,re=useMemo(()=>{let j=[...u,...t,...k??[]],pe=new Map;return j.forEach(De=>{pe.set(jo(w(De)),De);}),pe},[w,t,k,u]),_=useMemo(()=>$d(e),[e]);useEffect(()=>{B||X(_);},[B,_]);let qe=useMemo(()=>{let j=v.trim().toLowerCase();if(!j||y)return oe;let pe=de.filter(De=>De.searchable!==false);return oe.filter(De=>[w(De),d(De),C(De),...pe.map(We=>Gd(De,We.field))].some(We=>String(We??"").toLowerCase().includes(j)))},[oe,C,d,w,y,v,de]),it=useMemo(()=>{if(h!==void 0)return h;if(_.length===0)return "";let j=pe=>{let De=re.get(jo(pe));if(!De)return String(pe);let Le=d(De);return Le&&Le!==String(pe)?`${pe} - ${Le}`:String(pe)};return S?_.length>2?`${_.length} selected`:_.map(j).join(", "):j(_[0])},[h,d,S,re,_]),Y=useCallback(async()=>{if(y){G(true);try{let j=await y(v);Array.isArray(j)&&I(j);}finally{G(false);}}},[y,v]),le=()=>{b||(X(_),P(true));},Be=()=>{P(false);},Ee=()=>{m?.(S?[]:null,S?[]:null),X([]);},Ue=j=>{let pe=w(j);if(S){X(De=>De.some(We=>jo(We)===jo(pe))?De.filter(We=>jo(We)!==jo(pe)):[...De,pe]);return}X([pe]);},ot=()=>{let j=V.map(pe=>re.get(jo(pe))).filter(pe=>!!pe);S?m?.(V,j):m?.(V[0]??null,j[0]??null),P(false);},Fe=j=>{if(j.key==="F4"){j.preventDefault(),le();return}A?.(j);},_e=g||D,ht=_.length>0;return jsxs(Fragment,{children:[jsx(TextField,{...R,disabled:b,value:it,onKeyDown:Fe,InputProps:{...T,readOnly:true,endAdornment:jsxs(InputAdornment,{position:"end",children:[_e?jsx(CircularProgress,{size:18}):null,f&&ht&&!b?jsx(Tooltip,{title:s,children:jsx(IconButton,{size:"small",edge:"end","aria-label":s,onClick:Ee,children:jsx(Qf,{fontSize:"small"})})}):null,jsx(Tooltip,{title:l,children:jsx("span",{children:jsx(IconButton,{size:"small",edge:"end","aria-label":l,onClick:le,disabled:b,children:jsx(Wd,{fontSize:"small"})})})})]})}}),jsxs(Dialog,{open:B,onClose:Be,fullWidth:true,maxWidth:"md",PaperProps:{sx:j=>({borderRadius:2,overflow:"hidden",border:`1px solid ${j.palette.divider}`,boxShadow:j.palette.mode==="dark"?`0 24px 80px ${alpha(j.palette.common.black,.72)}`:`0 24px 80px ${alpha(j.palette.common.black,.18)}`})},children:[jsxs(DialogTitle,{sx:j=>({display:"flex",alignItems:"center",justifyContent:"space-between",gap:2,px:2.5,py:2,pr:1.5,borderBottom:`1px solid ${j.palette.divider}`,bgcolor:j.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:`${V.length} selected`}):null]}),jsx(IconButton,{"aria-label":"Close",onClick:Be,size:"small",children:jsx(Jf,{fontSize:"small"})})]}),jsxs(DialogContent,{sx:{p:0},children:[jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1,sx:j=>({px:2.5,py:1.5,borderBottom:`1px solid ${j.palette.divider}`,bgcolor:j.palette.mode==="dark"?alpha(j.palette.common.white,.025):alpha(j.palette.primary.main,.035)}),children:[jsx(TextField,{size:"small",fullWidth:true,value:v,placeholder:n,onChange:j=>M(j.target.value),onKeyDown:j=>{j.key==="Enter"&&(j.preventDefault(),Y());},InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Wd,{fontSize:"small"})}),sx:j=>({borderRadius:1,bgcolor:j.palette.background.paper,"& fieldset":{borderColor:alpha(j.palette.text.primary,j.palette.mode==="dark"?.2:.16)},"&:hover fieldset":{borderColor:alpha(j.palette.primary.main,.52)},"&.Mui-focused fieldset":{borderColor:j.palette.primary.main}})}}),y?jsx(Button,{variant:"outlined",onClick:()=>{Y();},disabled:_e,sx:{minWidth:96,textTransform:"none",fontWeight:700},children:_e?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:j=>({bgcolor:j.palette.mode==="dark"?"#111111":j.palette.background.paper,borderBottom:`1px solid ${j.palette.divider}`})}),de.map(j=>jsx(TableCell,{align:j.align,sx:pe=>({minWidth:j.minWidth,width:j.width,fontSize:"0.78rem",fontWeight:800,bgcolor:pe.palette.mode==="dark"?"#111111":pe.palette.background.paper,borderBottom:`1px solid ${pe.palette.divider}`}),children:j.label},String(j.field)))]})}),jsxs(TableBody,{children:[qe.map(j=>{let pe=w(j),De=V.some(Le=>jo(Le)===jo(pe));return jsxs(TableRow,{hover:true,selected:De,onClick:()=>Ue(j),onDoubleClick:()=>{S||(X([pe]),m?.(pe,j),P(false));},sx:Le=>({cursor:"pointer","&.Mui-selected":{bgcolor:alpha(Le.palette.primary.main,Le.palette.mode==="dark"?.22:.12)},"&.Mui-selected:hover":{bgcolor:alpha(Le.palette.primary.main,Le.palette.mode==="dark"?.28:.18)}}),children:[jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:De})}),de.map(Le=>{let We=Gd(j,Le.field);return jsx(TableCell,{align:Le.align,sx:{fontSize:"0.82rem",py:1},children:Le.render?Le.render(We,j):String(We??"")},String(Le.field))})]},jo(pe))}),qe.length===0?jsx(TableRow,{children:jsx(TableCell,{colSpan:de.length+1,children:jsx(Box,{sx:{py:5,textAlign:"center",color:"text.secondary"},children:c})})}):null]})]})})]}),jsxs(DialogActions,{sx:j=>({px:2.5,py:1.5,borderTop:`1px solid ${j.palette.divider}`,bgcolor:j.palette.background.paper,"& .MuiButton-root":{textTransform:"none",fontWeight:700}}),children:[f&&(ht||V.length>0)?jsx(Button,{onClick:Ee,children:s}):null,jsx(Box,{sx:{flex:1}}),jsx(Button,{onClick:Be,children:p}),jsx(Button,{variant:"contained",onClick:ot,disabled:!S&&V.length===0,children:i})]})]})]})};var qd=({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],p=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(p/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(Wd,{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(Sh,{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(wh,{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(vt__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(yh,{})})})}),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(bh,{})})}),jsx(Tooltip,{title:t("table.toolbar.columns"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:h=>e.setAnchorEl(h.currentTarget),children:jsx(gh,{})})}),jsx(Tooltip,{title:t("table.toolbar.export"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.handleExport,children:jsx(hh,{})})}),e.showCreateButton&&jsx(Tooltip,{title:t("table.toolbar.newItem"),children:jsx(IconButton,{onClick:e.onOpenCreateDialog,color:"primary",children:jsx(vh,{})})}),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(Ch,{})})})}),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(kh,{})})})}),e.onOpenGraphReport&&jsx(Tooltip,{title:t("table.toolbar.graphicReport"),children:jsx(IconButton,{sx:{color:"text.primary"},onClick:e.onOpenGraphReport,children:jsx(xh,{})})}),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(jp,{})})}),e.layoutManager]})]})};var Bi=e=>{let{t}=ee(),{onSelectAllClick:o,order:a,orderBy:r,numSelected:n=0,rowCount:i=0,onRequestSort:s,columns:p,visibleColumns:l,selectionMode:c,grouping:g=[],isAllExpanded:f=false,handleToggleAll:u,onColumnResize:h,columnWidths:w}=e,[d,C]=useState(null),m=useRef(null),y=v=>M=>{d||s(v);},b=(v,M,k)=>{v.preventDefault(),v.stopPropagation(),C(M),m.current={startX:v.clientX,startWidth:k,colId:M},document.addEventListener("mousemove",T),document.addEventListener("mouseup",A),document.body.style.cursor="col-resize";},T=v=>{if(!m.current)return;let{startX:M,startWidth:k,colId:I}=m.current,D=v.clientX-M,G=Math.max(50,k+D);h&&h(I,G);},A=()=>{C(null),m.current=null,document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",A),document.body.style.cursor="";};useEffect(()=>()=>{document.removeEventListener("mousemove",T),document.removeEventListener("mouseup",A);},[]);let R=c==="multiple"||c==="single",S=g.length>0&&!!u,B=t(f?"table.group.collapseAll":"table.group.expandAll"),P=p.filter(v=>l.includes(v.id));return jsx(Rh,{children:jsxs(Dh,{children:[R&&jsx(Ls,{padding:"checkbox",sx:v=>({width:48,position:"sticky",top:0,zIndex:4,backgroundColor:v.palette.mode==="dark"?"#000000":"#f5f5f5",color:v.palette.mode==="dark"?"#ffffff":v.palette.text.primary}),children:jsx(Mh,{color:"primary",indeterminate:n>0&&n<i,checked:i>0&&n===i,onChange:o,disabled:c==="single"})}),S&&jsx(Ls,{align:"center",padding:"checkbox",sx:v=>({width:44,position:"sticky",top:0,zIndex:4,backgroundColor:v.palette.mode==="dark"?"#000000":"#f5f5f5",color:v.palette.mode==="dark"?"#ffffff":v.palette.text.primary}),children:jsx(Eh,{title:B,children:jsx(Bh,{size:"small",onClick:v=>{v.stopPropagation(),u?.(!f);},sx:{p:.2},children:f?jsx(Lh,{fontSize:"small"}):jsx(Fh,{fontSize:"small"})})})}),P.map(v=>{let M=w?.[v.id]||v.minWidth||100;return jsxs(Ls,{align:"left",padding:v.disablePadding?"none":"normal",sortDirection:r===v.id?a:false,style:{width:M,minWidth:M,maxWidth:M},sx:k=>({position:"sticky",top:0,zIndex:4,backgroundColor:k.palette.mode==="dark"?"#000000":"#f5f5f5",color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary,fontWeight:"bold",userSelect:"none"}),children:[jsx(Ah,{active:r===v.id,direction:r===v.id?a:"asc",onClick:y(v.id),sx:k=>({"&.MuiTableSortLabel-root":{width:"100%"},"& .MuiTableSortLabel-icon":{color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary,opacity:r===v.id?1:0,transition:"opacity 0.2s"},"&:hover .MuiTableSortLabel-icon":{opacity:.5},"&.Mui-active .MuiTableSortLabel-icon":{opacity:1,color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary},fontWeight:"bold",fontSize:"0.85rem",color:k.palette.mode==="dark"?"#ffffff":k.palette.text.primary}),children:jsx(Xn,{component:"span",sx:{overflow:"visible",textOverflow:"clip",whiteSpace:"normal",lineHeight:1.2,wordBreak:"break-word",pr:1},children:v.label})}),jsx(Xn,{onMouseDown:k=>b(k,v.id,typeof M=="number"?M:100),onClick:k=>k.stopPropagation(),sx:{position:"absolute",right:0,top:0,bottom:0,width:5,cursor:"col-resize","&:hover":{backgroundColor:"primary.main",opacity:.5},zIndex:1}})]},v.id)})]})})};var Qd=e=>{let{t}=ee(),{visibleRows:o,visibleColumns:a,selected:r=[],handleClick:n,columns:i,toggleGroupExpand:s,expandedGroups:p=new Set,selectionMode:l,grouping:c=[],isGroupFullyExpanded:g,handleExpandGroupRecursively:f,handleCollapseGroupRecursively:u}=e,h=m=>r.indexOf(m)!==-1,w=l==="multiple"||l==="single",d=c.length>0,C=a.length+(w?1:0)+(d?1:0);return jsxs(TableBody,{children:[o.map((m,y)=>{if(m.type==="group"){let b=p.has(m.id),T=m.childIds||[],A=T.filter(P=>h(P)).length,R=T.length>0&&A===T.length,S=A>0&&A<T.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:[w&&jsx(TableCell,{padding:"checkbox",children:jsx(Checkbox,{size:"small",checked:R,indeterminate:S,onChange:P=>{if(P.stopPropagation(),!!e.onSelectionChange)if(R){let v=r.filter(M=>!T.includes(M));e.onSelectionChange(v);}else {let v=Array.from(new Set([...r,...T]));e.onSelectionChange(v);}},onClick:P=>P.stopPropagation(),sx:{p:.5}})}),d&&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(Lh,{fontSize:"small"}):jsx(Fh,{fontSize:"small"})})}),jsx(IconButton,{size:"small",onClick:()=>s&&s(m.id),sx:{p:.25},children:b?jsx(Wh,{}):jsx(wh,{})})]})}),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,T=m.id||b.id||y,A=h(T),R=`enhanced-table-checkbox-${y}`,B=(m.level!==void 0?m.level:0)*4;return jsxs(TableRow,{hover:true,onClick:P=>n&&n(P,b),role:"checkbox","aria-checked":A,tabIndex:-1,selected:A,sx:{cursor:"pointer"},children:[w&&jsx(TableCell,{padding:"checkbox",sx:{pl:B>0?B+1:void 0},children:jsx(Checkbox,{color:"primary",checked:A,inputProps:{"aria-labelledby":R}})}),d&&jsx(TableCell,{padding:"checkbox",sx:{width:44}}),i.filter(P=>a.includes(P.id)).map((P,v)=>{let k=!w&&v===0&&B>0?{pl:B+2}:{};return jsx(TableCell,{align:"left",sx:k,children:P.render?P.render(b[P.id],b):(function(){let D=b[P.id];if(P.numeric){if(typeof D=="number")return D.toLocaleString();if(typeof D=="string"&&D.trim()!==""&&!isNaN(Number(D)))return Number(D).toLocaleString()}return D})()},P.id)})]},T)}}),o.length===0&&jsx(TableRow,{children:jsx(TableCell,{colSpan:C,align:"center",children:t("common.noData")})})]})};var Jd=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 tp=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(oy,{}),children:i("table.menu.clearAll")})]}),jsx(Divider,{}),r.map(s=>{let p=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:p,size:"small"}),jsx(ListItemText,{primary:s.label}),p&&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:p=>a(p.target.checked),size:"small"}),label:s("table.menu.showSummaryRow")})}),jsx(Divider,{}),r.filter(p=>p.numeric).map(p=>jsxs(MenuItem,{onClick:()=>i(p.id),disabled:!o,children:[jsx(Checkbox,{checked:n.includes(p.id),size:"small"}),jsx(ListItemText,{primary:p.label})]},p.id)),r.filter(p=>p.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(ty,{fontSize:"small"})}),jsx(ListItemText,{children:i.label})]},i.id))]})};var Nn=(e,t=2)=>e.toLocaleString(void 0,{maximumFractionDigits:t}),rp=({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 lp=({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 sp=({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),p=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),d=a-n-w;return {x:h,y:d,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)"}),p.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 dy=e=>`rgba(30, 136, 229, ${.2+Math.max(0,Math.min(1,e))*.8})`,dp=({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,p=s/a;return jsx(Box,{sx:{height:36,borderRadius:1,bgcolor:dy(p),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 py=["#1E88E5","#1ABC9C","#FBC02D","#EF5350","#7E57C2","#78909C"],Ki=({data:e,variant:t="donut",colors:o=py,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((p,l)=>{let c=i;return i+=p.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((p,l)=>jsxs(Box,{onClick:()=>n?.(p),sx:{display:"flex",alignItems:"center",gap:1,cursor:n?"pointer":"default",opacity:r&&p.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:p.name}),jsxs(Typography,{variant:"caption",sx:{fontWeight:700},children:[p.percent.toFixed(0),"%"]})]},p.name))})]})};var up=({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 gp=({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,p=30,l=i-n||1,c=g=>t-p-(g-n)/l*(t-p*2);return jsxs(Box,{children:[jsxs(Box,{component:"svg",viewBox:`0 0 ${s} ${t}`,sx:{width:"100%",height:t},children:[jsx("line",{x1:p,y1:c(0),x2:s-p,y2:c(0),stroke:"rgba(148,163,184,0.4)"}),a.map((g,f)=>{let u=(s-p*2)/a.length,h=Math.max(u*.55,8),w=p+f*u+(u-h)/2,d=c(Math.max(g.start,g.end)),C=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:d,width:h,height:Math.max(C-d,4),rx:6,fill:m}),jsx("text",{x:w+h/2,y:d-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}`},NP=(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 yp=({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 Cp=({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 kp=({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 _t=e=>jsx(TextField,{...e,variant:e.variant||"outlined",size:e.size||"small",fullWidth:e.fullWidth!==void 0?e.fullWidth:true});var _s=e=>jsx(TextField,{...e,multiline:true,minRows:3,fullWidth:true,variant:"outlined"});var My=["doubao-lite","gpt-4o-mini","gpt-4.1-mini","claude-3.5-sonnet"],Ay=["zh","en","de","fr","ja","ko"],Tp=({open:e,onClose:t,value:o,onSaveAll:a,modelOptions:r=My,promptLangOptions:n=Ay,analysisTemplateOptions:i=[],responseTemplateOptions:s=[],defaultAnalysisTemplateId:p,defaultResponseTemplateId:l})=>{let[c,g]=useState(o),[f,u]=useState(p||""),[h,w]=useState(l||""),[d,C]=useState(false);useEffect(()=>{e&&(g(o),u(p||""),w(l||""));},[e,o,p,l]);let m=(b,T)=>{g(A=>({...A,[b]:T}));},y=async()=>{if(a)try{C(!0),await a({settings:c,analysisTemplateId:f||void 0,responseTemplateId:h||void 0});}finally{C(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(Jf,{})})]}),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(_t,{size:"small",value:c.baseUrl,onChange:b=>m("baseUrl",b.target.value),fullWidth:true,label:"Base URL"})}),jsx(Box,{children:jsx(_t,{size:"small",type:"password",value:c.apiKey,onChange:b=>m("apiKey",b.target.value),fullWidth:true,label:"API Key"})}),jsx(Box,{children:jsx(_t,{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(_t,{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(_t,{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(_s,{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(_t,{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(_s,{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||d,children:"Save"})]})]})};var Ji=({open:e,onClose:t,model:o,tableContent:a,extraCharts:r,interaction:n,aiAssistant:i})=>{let{t:s}=ee(),[p,l]=useState(i?.defaultPrompt||""),[c,g]=useState(false),[f,u]=useState(false),h=n?.enabled!==false&&!!n,w=i?.enabled!==false,d=n?.filters||{},C=!!(d.primaryDimension||d.secondaryDimension||d.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 T=p.trim();if(!(!T||!i?.onSubmit))try{g(!0),await i.onSubmit(T,{filters:d,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&&d.primaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.primaryDimension}: ${d.primaryDimension}`,onDelete:()=>n?.onClearFilter("primaryDimension")}),h&&d.secondaryDimension&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.secondaryDimension}: ${d.secondaryDimension}`,onDelete:()=>n?.onClearFilter("secondaryDimension")}),h&&d.status&&jsx(Chip,{size:"small",variant:"outlined",label:`${n?.fieldMapping.status}: ${d.status}`,onDelete:()=>n?.onClearFilter("status")}),h&&C&&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(Ny,{sx:{fontSize:18,color:"text.secondary"}})}),jsx(InputBase,{fullWidth:true,value:p,onChange:T=>l(T.target.value),onKeyDown:T=>{T.key==="Enter"&&(T.preventDefault(),b());},placeholder:m,sx:{fontSize:"0.9rem"}}),jsx(IconButton,{size:"small",onClick:b,disabled:c||!p.trim(),children:jsx(Oy,{sx:{fontSize:18}})}),jsx(IconButton,{size:"small",onClick:()=>u(true),children:jsx(Vy,{sx:{fontSize:18}})})]}),jsx(IconButton,{onClick:t,children:jsx(Jf,{})})]})]})}),jsxs(Box,{sx:{p:2,display:"flex",flexDirection:"column",gap:1.5,overflow:"auto",minHeight:0},children:[jsx(rp,{kpis:o.kpis}),jsx(kp,{billableByPrimary:o.charts.billableByPrimary,efficiencyBySecondary:o.charts.efficiencyBySecondary,statusDistribution:o.charts.statusDistribution,interaction:h?{filters:d,onPrimaryDimensionClick:T=>n?.onPrimaryDimensionClick(T),onSecondaryDimensionClick:T=>n?.onSecondaryDimensionClick(T),onStatusClick:T=>n?.onStatusClick(T)}:void 0}),r,a]}),jsx(Tp,{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 za={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"]},Wy=5,Ip=e=>e.toLowerCase().replace(/[\s_-]/g,""),Na=(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=>[Ip(i),i]));for(let i of o){let s=n.get(Ip(i));if(s)return s}return r[0]||a},po=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),$y=(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)+po(i[o]));}),Array.from(n.entries()).map(([i,s])=>({name:i,value:s})).sort((i,s)=>s.value-i.value).slice(0,a)},Gy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let p=$t(s[t],n),l=i.get(p)||{report:0,billable:0};l.report+=po(s[o]),l.billable+=po(s[a]),i.set(p,l);}),Array.from(i.entries()).map(([s,p])=>({name:s,value:p.report>0?p.billable/p.report*100:0})).sort((s,p)=>s.value-p.value).slice(0,r)},Uy=(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}))},Pp=(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)+po(r[o]));}),Array.from(a.entries()).sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,value:n}))},Ky=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let p=$t(s[t],n),l=i.get(p)||{report:0,billable:0};l.report+=po(s[o]),l.billable+=po(s[a]),i.set(p,l);}),Array.from(i.entries()).map(([s,p])=>({name:s,barValue:p.billable,lineValue:p.report>0?p.billable/p.report*100:0})).sort((s,p)=>p.barValue-s.barValue).slice(0,r)},qy=(e,t,o,a,r)=>{let n=new Map;return e.forEach(i=>{let s=$t(i[t],r),p=$t(i[o],r),l=`${s}__${p}`;n.set(l,(n.get(l)||0)+po(i[a]));}),Array.from(n.entries()).map(([i,s])=>{let[p,l]=i.split("__");return {x:p,y:l,value:s}})},_y=(e,t,o)=>{let a=Pp(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"}]},jy=(e,t,o,a,r,n)=>{let i=new Map;return e.forEach(s=>{let p=$t(s[t],n),l=`${$t(s[o],n)} / ${$t(s[a],n)}`,c=i.get(p)||new Map;c.set(l,(c.get(l)||0)+1),i.set(p,c);}),Array.from(i.entries()).map(([s,p])=>({title:s,causes:Array.from(p.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:Na(e,c?.primaryDimension,za.primaryDimension,"Category"),secondaryDimension:Na(e,c?.secondaryDimension,za.secondaryDimension,"Owner"),status:Na(e,c?.status,za.status,"Status"),date:Na(e,c?.date,za.date,"Date"),description:Na(e,c?.description,za.description,"Description"),reportHours:Na(e,c?.reportHours,za.reportHours,"ReportHours"),billableHours:Na(e,c?.billableHours,za.billableHours,"BillableHours"),amount:Na(e,c?.amount,za.amount,"Amount")}},[e,t?.fieldMapping]),n=useMemo(()=>e.map((c,g)=>{let f=po(c[r.reportHours]),u=po(c[r.billableHours]),h=po(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((C,m)=>C+po(m.ReportHours),0),f=n.reduce((C,m)=>C+po(m.BillableHours),0),u=n.reduce((C,m)=>C+po(m.Amount),0),h=g>0?f/g*100:0,w=t?.statusFlagValues||["flag","flagged","warning","risk"],d=n.filter(C=>w.includes($t(C.Status,"").toLowerCase())).length;return {totalRecords:c,totalReportHours:g,totalBillableHours:f,efficiency:h,totalAmount:u,flaggedCount:d}},[n,t?.statusFlagValues]),s=t?.topN||Wy,p=useMemo(()=>({billableByPrimary:$y(n,"Primary","BillableHours",s,a),efficiencyBySecondary:Gy(n,"Secondary","ReportHours","BillableHours",s,a),statusDistribution:Uy(n,"Status",a),lineByDate:Pp(n,"Date","BillableHours"),comboByPrimary:Ky(n,"Primary","ReportHours","BillableHours",s,a),heatmapPrimarySecondary:qy(n,"Primary","Secondary","BillableHours",a),waterfallBillable:_y(n,"Date","BillableHours"),fishboneStatusCauses:jy(n,"Status","Primary","Secondary",3,a)}),[n,s,a]),l=useMemo(()=>({title:t?.title||o("graph.reportTitle"),kpis:i,charts:p,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}}),[p,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((p,l)=>{o(c=>{let g=l?.trim();if(!g){let f={...c};return delete f[p],f}if(c[p]===g){let f={...c};return delete f[p],f}return {...c,[p]:g}});},[]),r=useCallback(p=>{o(l=>{if(!l[p])return l;let c={...l};return delete c[p],c});},[]),n=useCallback(()=>{o({});},[]),i=useMemo(()=>!!(t.primaryDimension||t.secondaryDimension||t.status),[t]),s=useCallback((p,l)=>p.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(),p=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,d]=useState(false),[C,m]=useState(false),y=e.find(A=>A.id===t),b=()=>{h(y?.name||i("variant.newVariant")),d(y?.isDefault||false),m(y?.isPublic||false),f(true);},T=()=>{a({name:u,isDefault:w,isPublic:C,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:p?"rgba(25, 118, 210, 0.2)":"#e7f1ff","& .MuiOutlinedInput-notchedOutline":{borderColor:p?"rgba(144,202,249,0.45)":"rgba(25,118,210,0.45)"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:p?"rgba(144,202,249,0.7)":"rgba(25,118,210,0.65)"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:p?"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:A=>A.name+(A.isDefault?` (${i("variant.defaultSuffix")})`:""),value:y||null,onChange:(A,R)=>{R&&o(R);},renderInput:A=>jsx(TextField,{...A,variant:"outlined",size:"small",InputProps:{...A.InputProps,sx:{fontSize:l,color:p?"#E3F2FD":"#0D47A1"}},placeholder:i("variant.selectVariant")}),renderOption:(A,R)=>jsx("li",{...A,children:jsxs(Box,{sx:{display:"flex",alignItems:"center",width:"100%"},children:[jsx(Typography,{sx:{flex:1,fontSize:l},children:R.name}),R.isDefault&&jsx(ib,{fontSize:"small",color:"action"})]})})}),jsx(Tooltip,{title:i("variant.saveView"),children:jsx(IconButton,{onClick:b,size:"small",color:"primary",children:jsx(jp,{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:A=>h(A.target.value)}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w,onChange:A=>d(A.target.checked)}),label:i("variant.setDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:C,onChange:A=>m(A.target.checked)}),label:i("variant.publicAllUsers")})]}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>f(false),children:i("common.cancel")}),jsx(Button,{onClick:T,variant:"contained",children:i("common.save")})]})]})]})};var Lp=({appId:e,tableKey:t="default",currentFilters:o,currentLayoutId:a,layoutRefs:r,onLoad:n,variantService:i,serviceUrl:s,onError:p,onSuccess:l,currentVariantId:c,onVariantChange:g})=>{let{t:f}=ee(),[u,h]=useState([]),[w,d]=useState(""),C=`orbcafe.variants.${e}.${t}`,m=c!==void 0?c:w,y=M=>{c===void 0&&d(M),g&&g(M);},b=useCallback(()=>{try{let M=localStorage.getItem(C);if(!M)return [];let k=JSON.parse(M);return Array.isArray(k)?k:[]}catch{return []}},[C]),T=useCallback(M=>{try{localStorage.setItem(C,JSON.stringify(M));}catch{}},[C]),A=useCallback(M=>{h(M);let k=M.find(I=>I.isDefault);k&&!m&&(y(k.id),n(k));},[m,n,y]),R=useCallback(async()=>{if(!e)return [];try{let M=[];if(i)M=await i.getVariants(e,t);else if(s){let k=await fetch(`${s}/api/variants?appId=${encodeURIComponent(e)}&tableKey=${encodeURIComponent(t)}`);if(!k.ok)throw new Error(f("variant.toast.fetchFailed"));M=await k.json();}else M=b();return A(M),M}catch(M){console.error("Error fetching variants",M);let k=b();return A(k),p&&p(f("variant.toast.fetchFailed")),k}},[e,t,i,s,b,A,p,f]);return useEffect(()=>{R();},[e,t]),jsx(al,{variants:u,currentVariantId:m,onLoad:M=>{y(M.id),n(M);},onSave:async M=>{let k=Date.now().toString(),I;try{let D=M.scope||"Both",G=u.find(oe=>oe.name===M.name);k=G?G.id:Date.now().toString();let V=[];if(G&&(Array.isArray(G.filters)?V=[...G.filters]:G.filters&&(V=[{scope:"default",filters:G.filters}])),D==="Search"||D==="Both"){let oe=(Array.isArray(o),o);if(oe)if(Array.isArray(oe)&&oe.length>0&&oe[0].scope)oe.forEach(re=>{let _=V.findIndex(qe=>qe.scope===re.scope);_>=0?V[_]=re:V.push(re);});else {let re={scope:t,filters:oe},_=V.findIndex(qe=>qe.scope===t);_>=0?V[_]=re:V.push(re);}}let X=G?.layout||{},de=[];if(G&&Array.isArray(G.layoutRefs)&&(de=[...G.layoutRefs]),D==="Layout"||D==="Both")if(r&&r.length>0)r.forEach(oe=>{let re=de.findIndex(_=>_.tableKey===oe.tableKey);re>=0?de[re]=oe:de.push(oe);});else {let oe={tableKey:t,layoutId:a||null},re=de.findIndex(_=>_.tableKey===t);re>=0?de[re]=oe:de.push(oe);}if(I={appId:e,tableKey:t,...M,scope:D,id:k,createdAt:new Date().toISOString(),filters:V,layout:X,layoutRefs:de},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(f("variant.toast.saveFailed"))}else {let re=u.some(_=>_.id===k)?u.map(_=>_.id===k?I:_):[...u,I];h(re),T(re);}l&&l(f("variant.toast.saveSuccess")),(i||s)&&await R(),y(k),n(I);}catch(D){console.error("Error saving variant",D);let V=u.some(X=>X.id===k)?u.map(X=>X.id===k?I:X):[...u,I];h(V),T(V),y(k),n(I),p&&p(f("variant.toast.saveFailed"));}},onDelete:async M=>{try{if(i)await i.deleteVariant(M);else if(s){if(!(await fetch(`${s}/api/variants/${M}`,{method:"DELETE"})).ok)throw new Error(f("variant.toast.deleteFailed"))}else {let k=u.filter(I=>I.id!==M);h(k),T(k);}m===M&&y(""),(i||s)&&R(),l&&l(f("variant.toast.deleteSuccess"));}catch(k){console.error("Error deleting variant",k);let I=u.filter(D=>D.id!==M);h(I),T(I),m===M&&y(""),p&&p(f("variant.toast.deleteFailed"));}},onSetDefault:async M=>{try{let k=u.find(D=>D.id===M);if(!k)return;let I={appId:e,tableKey:t,...k,isDefault:!0};if(i)await i.setDefaultVariant(M,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(f("variant.toast.defaultFailed"))}else {let D=u.map(G=>({...G,isDefault:G.id===M}));h(D),T(D);}(i||s)&&await R(),l&&l(f("variant.toast.defaultSuccess"));}catch(k){console.error("Error setting default variant",k);let I=u.map(D=>({...D,isDefault:D.id===M}));h(I),T(I),p&&p(f("variant.toast.defaultFailed"));}}})};ta.extend(wb);ta.extend(Tb);var Ib=[null,null],Qs="0.85rem",Pb={en:"en",zh:"zh-cn",fr:"fr",de:"de",ja:"ja",ko:"ko"},Rb=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%"}})),Vp=({label:e,value:t=Ib,onChange:o})=>{let{t:a,locale:r}=ee(),n=Pb[r]||"en",i=e||a("dateRange.label"),[s,p]=useState(null),[l,c]=useState(t),[g,f]=useState("start"),[u,h]=useState(null),[w,d]=useState((t[0]||ta()).locale(n)),C=vt__default.useRef(t);useEffect(()=>{let[k,I]=t,[D,G]=C.current,V=oe=>oe&&typeof oe.isSame=="function",X=!(k===null&&D===null||V(k)&&V(D)&&k.isSame(D,"day")),de=!(I===null&&G===null||V(I)&&V(G)&&I.isSame(G,"day"));(X||de)&&(c(t),t[0]&&V(t[0])&&d(t[0].locale(n))),C.current=t;},[t,n]);let m=k=>{p(k.currentTarget);},y=()=>{p(null),f("start"),h(null);},b=!!s,T=k=>{if(!k)return;let I=[...l];if(g==="start")I=[k,null],f("end");else {let D=I[0];D&&k.isBefore(D)?(I=[k,null],f("end")):(I=[D,k],f("start"));}c(I);},A=k=>{let I=ta().locale(n),D=[null,null];switch(k){case "today":D=[I,I];break;case "week":D=[I.startOf("week"),I.endOf("week")];break;case "month":D=[I.startOf("month"),I.endOf("month")];break}c(D),f("start"),d(I);},R=()=>{c([null,null]),f("start"),d(ta().locale(n));},S=()=>{o&&o(l),y();},B=()=>{c(t),f("start"),y();},P=useCallback(k=>{let{day:I,...D}=k,[G,V]=l,X=G?I.isSame(G,"day"):false,de=V?I.isSame(V,"day"):false,oe=G&&V?I.isBetween(G,V,"day","()"):false,re=false;return g==="end"&&G&&!V&&u&&I.isAfter(G,"day")&&I.isBefore(u.add(1,"day"),"day")&&(re=true),jsx(Rb,{...D,day:I,disableMargin:true,isStart:X,isEnd:de,isInRange:oe||re,onMouseEnter:()=>h(I)})},[l,g,u]),v=k=>k?k.locale(n).format("YYYY-MM-DD"):"",M=k=>k?k.locale(n).format("ll"):"";return jsxs(Box,{children:[jsx(TextField,{label:i,value:l[0]?`${v(l[0])} - ${v(l[1])}`:"",onClick:m,fullWidth:true,size:"small",InputLabelProps:{sx:{fontSize:Qs}},InputProps:{readOnly:true,sx:{fontSize:Qs,"& .MuiOutlinedInput-input":{fontSize:Qs},paddingRight:"4px"},endAdornment:jsxs(InputAdornment,{position:"end",sx:{ml:0},children:[(l[0]||l[1])&&jsx(IconButton,{size:"small",onClick:k=>{k.stopPropagation(),R();},edge:"end",sx:{mr:.5,padding:"2px"},children:jsx(Qf,{sx:{fontSize:"1rem"}})}),jsx(IconButton,{size:"small",edge:"end",onClick:m,sx:{padding:"2px"},children:jsx(Cb,{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]?M(l[0]):a("dateRange.select")})]}),jsx(Sb,{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]?M(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:()=>A("today"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisWeek"),onClick:()=>A("week"),clickable:true,size:"small",variant:"outlined"}),jsx(Chip,{label:a("dateRange.thisMonth"),onClick:()=>A("month"),clickable:true,size:"small",variant:"outlined"})]})}),jsx(LocalizationProvider,{dateAdapter:AdapterDayjs,adapterLocale:n,children:jsx(DateCalendar,{value:null,referenceDate:w,onMonthChange:d,onYearChange:d,onChange:T,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:B,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"},Ob={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"},Hb=["equals","contains","notContains","wildcard"],Wp=["=","!=",">","<",">=","<=","between"],mt="0.85rem",Wb=({field:e,value:t,onChange:o})=>{let{t:a}=ee(),[r,n]=useState(null),[i,s]=useState(null),[p,l]=useState(""),[c,g]=useState(""),[f,u]=useState(false),[h,w]=useState(""),[d,C]=useState("");useEffect(()=>{let v=setTimeout(()=>{C(h);},1e3);return ()=>clearTimeout(v)},[h]);let m=t?.operator||(e.type==="number"?"=":"equals"),y=t?.value,b=v=>{let M=Ob[v];return M?a(M):v},T=v=>{n(v.currentTarget);},A=v=>{o({...t,operator:v,value:y}),n(null);},R={size:"small",fullWidth:true,variant:"outlined",InputLabelProps:{sx:{fontSize:mt}},InputProps:{sx:{fontSize:mt}},SelectProps:{MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:mt,paddingTop:"4px",paddingBottom:"4px",minHeight:"auto"}}}}}},S=e.type||"text";if(S==="date"){let M=(k=>{if(!k)return [null,null];if(Array.isArray(k)&&k.length===2){let I=k[0]?ta.isDayjs(k[0])?k[0]:ta(k[0]):null,D=k[1]?ta.isDayjs(k[1])?k[1]:ta(k[1]):null;return [I,D]}return ta.isDayjs(k)||typeof k=="string"?[ta.isDayjs(k)?k:ta(k),null]:[null,null]})(y);return jsx(Vp,{label:e.label,value:M,onChange:k=>o({value:k,operator:"between"})})}if(S==="number"&&m==="between"){let v=()=>{o({value:[p,c],operator:"between"}),s(null);},M=Array.isArray(y)?`${y[0]||""} - ${y[1]||""}`:"";return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,value:M,placeholder:a("smartFilter.minMaxPlaceholder"),InputProps:{...R.InputProps,startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:b("between"),children:jsx(IconButton,{size:"small",onClick:T,sx:{width:24,height:24,fontSize:mt},children:ll.between})})}),readOnly:true},onClick:k=>s(k.currentTarget)}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:mt,minHeight:"auto",py:.5}}},children:Wp.map(k=>jsxs(MenuItem,{selected:k===m,onClick:()=>A(k),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ll[k]}),jsx(ListItemText,{primary:b(k),primaryTypographyProps:{fontSize:mt}})]},k))}),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:p,onChange:k=>l(k.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:mt}},InputProps:{sx:{fontSize:mt}}}),jsx(Vb,{color:"action"}),jsx(TextField,{size:"small",label:a("smartFilter.max"),type:"number",value:c,onChange:k=>g(k.target.value),sx:{width:100},InputLabelProps:{sx:{fontSize:mt}},InputProps:{sx:{fontSize:mt}}}),jsx(Button,{variant:"contained",size:"small",onClick:v,children:a("common.ok")})]})})]})}if(e.isValueHelp||S==="value-help"){let v=e.valueHelp?.mode||"single";return jsx(Kd,{...R,...e.valueHelp,label:e.label,placeholder:e.placeholder||e.valueHelp?.placeholder,value:y??(v==="multiple"?[]:null),mode:v,onChange:M=>o({value:M,operator:v==="multiple"?"anyOf":"equals"})})}if(S==="select")return jsxs(TextField,{...R,select:true,label:e.label,value:y||"",onChange:v=>o({...t,value:v.target.value,operator:"equals"}),children:[jsx(MenuItem,{value:"",children:jsx("em",{children:a("common.none")})}),e.options?.map(v=>jsx(MenuItem,{value:v.value,children:v.label},v.value))]});if(S==="multi-select"){let v=Array.isArray(y)?y:[],M=e.options?.filter(k=>k.label.toLowerCase().includes(d.toLowerCase()))||[];return jsxs(TextField,{...R,select:true,label:e.label,value:v,onChange:k=>o({...t,value:k.target.value,operator:"anyOf"}),SelectProps:{...R.SelectProps,multiple:true,onClose:()=>{w(""),C("");},renderValue:k=>{if(!Array.isArray(k)||k.length===0)return jsx("em",{children:a("common.none")});let I=G=>e.options?.find(V=>V.value===G)?.label||G,D=k.map(I);return D.length>2?`${D.slice(0,2).join(", ")} +${D.length-2}`:D.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(Wd,{fontSize:"small"})}),sx:{fontSize:mt}},value:h,onChange:k=>w(k.target.value),onKeyDown:k=>{k.key!=="Escape"&&k.stopPropagation();},onClick:k=>k.stopPropagation()})}),M.length>0?M.map(k=>jsxs(MenuItem,{value:k.value,children:[jsx(Checkbox,{checked:v.indexOf(k.value)>-1,size:"small"}),jsx(ListItemText,{primary:k.label,primaryTypographyProps:{fontSize:mt}})]},k.value)):jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:a("smartFilter.noOptionsFound"),primaryTypographyProps:{fontSize:mt}})})]})}let B=S==="number"?Wp:Hb,P=f||y!==void 0&&y!==""&&y!==null||!!r;return jsxs(Fragment,{children:[jsx(TextField,{...R,label:e.label,sx:{minWidth:"120px"},value:y||"",type:S==="number"?"number":"text",onChange:v=>o({...t,value:v.target.value,operator:m}),onFocus:()=>u(true),onBlur:()=>u(false),InputProps:{...R.InputProps,startAdornment:P?jsx(InputAdornment,{position:"start",children:jsx(Tooltip,{title:b(m),children:jsx(IconButton,{size:"small",onClick:T,onMouseDown:v=>v.preventDefault(),sx:{width:24,height:24,fontSize:mt,fontWeight:"bold",color:"primary.main",bgcolor:"action.hover"},children:ll[m]})})}):null,endAdornment:e.hasSearchIcon?jsx(InputAdornment,{position:"end",children:jsx(Wd,{color:"action"})}):void 0}}),jsx(Menu,{anchorEl:r,open:!!r,onClose:()=>n(null),PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:mt,minHeight:"auto",py:.5}}},children:B.map(v=>jsxs(MenuItem,{selected:v===m,onClick:()=>A(v),children:[jsx(Box,{sx:{width:24,display:"inline-block",fontWeight:"bold"},children:ll[v]}),jsx(ListItemText,{primary:b(v),primaryTypographyProps:{fontSize:mt}})]},v))})]})},ma=({fields:e,filters:t,onFilterChange:o,variants:a=[],currentVariantId:r,onVariantLoad:n,onVariantSave:i,onVariantDelete:s,onVariantSetDefault:p,onSearch:l,loading:c=false,appId:g,tableKey:f,currentLayout:u,currentLayoutId:h,layoutRefs:w,variantService:d,serviceUrl:C})=>{let{t:m}=ee(),[y,b]=useState(true),[T,A]=useState(null),[R,S]=useState(e.filter(M=>!M.hidden).map(M=>M.id)),B=(M,k)=>{o({...t,[M]:k});},P=M=>{R.includes(M)?S(R.filter(k=>k!==M)):S([...R,M]);};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(Lp,{appId:g,tableKey:f,currentFilters:{values:t,visibleFields:R},currentLayout:u,currentLayoutId:h,layoutRefs:w,onLoad:M=>{if(!M.filters)return;let k=null;if(Array.isArray(M.filters)){let I=f||"default",D=M.filters.find(G=>G.scope===I);k=D?D.filters:null;}else k=M.filters;k&&(k.values||k.visibleFields?(k.visibleFields&&Array.isArray(k.visibleFields)&&S(k.visibleFields),k.values&&o(k.values)):o(k)),n&&n(M);},variantService:d,serviceUrl:C,currentVariantId:r}):jsx(al,{variants:a,currentVariantId:r,onLoad:n,onSave:M=>{i&&i({...M,filters:{values:t,visibleFields:R}});},onDelete:s,onSetDefault:p}),jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[jsx(Tooltip,{title:m("smartFilter.addFilters"),children:jsx(Button,{onClick:M=>A(M.currentTarget),size:"small",color:"primary",startIcon:jsx(Lb,{fontSize:"small"}),sx:{textTransform:"none",fontSize:mt,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:mt},children:m(c?"common.loading":"smartFilter.go")}),jsxs(Menu,{anchorEl:T,open:!!T,onClose:()=>A(null),slotProps:{paper:{style:{maxHeight:400,width:"25ch"},sx:{"& .MuiMenuItem-root":{fontSize:mt,minHeight:32}}}},children:[jsx(MenuItem,{disabled:true,children:jsx(ListItemText,{primary:m("smartFilter.visibleFilters"),primaryTypographyProps:{fontSize:mt}})}),jsx(Divider,{}),e.map(M=>jsxs(MenuItem,{onClick:()=>P(M.id),children:[jsx(Checkbox,{checked:R.includes(M.id),size:"small"}),jsx(ListItemText,{primary:M.label,primaryTypographyProps:{fontSize:mt}})]},M.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(M=>R.includes(M.id)).map(M=>jsx(Grid,{size:1,children:jsx(Wb,{field:M,value:t[M.id]||{value:"",operator:M.type==="number"?"=":"equals"},onChange:k=>B(M.id,k)})},M.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(zb,{sx:{fontSize:16},color:"action"}):jsx(Wh,{sx:{fontSize:16},color:"action"})})})]})};var Zp=({layouts:e,currentLayoutId:t,onLoad:o,onSave:a,onDelete:r,onSetDefault:n})=>{let{t:i}=ee(),[s,p]=useState(null),[l,c]=useState(false),[g,f]=useState(""),[u,h]=useState(""),[w,d]=useState({isDefault:false,isPublic:false}),C=e.find(R=>R.id===t),m=R=>{p(R.currentTarget);},y=()=>{p(null);},b=R=>{o(R),y();},T=()=>{f(""),h(""),d({isDefault:false,isPublic:false}),c(true),y();},A=()=>{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:T,color:"primary",size:"small",children:jsx(jp,{})})}),jsx(Tooltip,{title:i("layout.layoutOptions"),children:jsx(IconButton,{onClick:m,color:C?"primary":"default",children:jsx(Jb,{})})}),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:T,children:[jsx(ListItemIcon,{children:jsx(jp,{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((R,S)=>jsx(MenuItem,{onClick:()=>b(R),selected:R.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:R.id===t?"bold":"normal",noWrap:true,children:R.name})}),R.description&&jsx(Typography,{variant:"caption",color:"text.secondary",noWrap:true,children:R.description})]}),jsxs(Box,{sx:{display:"flex",alignItems:"center"},onClick:B=>B.stopPropagation(),children:[jsx(Tooltip,{title:R.isDefault?i("layout.removeDefault"):i("layout.setAsDefault"),children:jsx(IconButton,{size:"small",onClick:B=>{B.stopPropagation(),n(R.id);},children:R.isDefault?jsx(ib,{fontSize:"small",color:"warning"}):jsx(Qb,{fontSize:"small"})})}),jsx(Tooltip,{title:i("common.delete"),children:jsx(IconButton,{size:"small",color:"error",onClick:B=>{B.stopPropagation(),r(R.id);},children:jsx(kh,{fontSize:"small"})})})]})]})},R.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:R=>f(R.target.value),fullWidth:true,autoFocus:true,size:"small",helperText:i("layout.layoutNameHelper")}),e.some(R=>R.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:R=>h(R.target.value),fullWidth:true,size:"small"}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isDefault,onChange:R=>d({...w,isDefault:R.target.checked})}),label:i("layout.useAsDefault")}),jsx(FormControlLabel,{control:jsx(Checkbox,{checked:w.isPublic,onChange:R=>d({...w,isPublic:R.target.checked})}),label:i("layout.publicAllUsers")})]})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>c(false),children:i("common.cancel")}),jsx(Button,{onClick:A,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:p})=>{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??{}}),d=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}),C=useCallback(()=>{try{let S=localStorage.getItem(h);if(!S)return [];let B=JSON.parse(S);return Array.isArray(B)?B:[]}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(B=>B.id===r);S&&(u(S.id),a(S));}},[r,c,a]);let y=useCallback(async()=>{if(e){if(!i){let S=C();g(S);let B=S.find(P=>P.isDefault);B&&!f&&!r&&(u(B.id),a(B));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(w);g(P);let v=P.find(M=>M.isDefault);v&&!f&&!r&&(u(v.id),a(v));}catch(S){console.error("Error fetching layouts",S);let B=C();g(B);let P=B.find(v=>v.isDefault);P&&!f&&!r&&(u(P.id),a(P)),s&&s(l("layout.toast.loadFallback"));}}},[e,t,i,s,f,a,r,C,l]);return useEffect(()=>{y();},[e,t]),jsx(Zp,{layouts:c,currentLayoutId:f,onLoad:S=>{u(S.id),a(S);},onSave:async S=>{let B=c.find(M=>M.name===S.name),P=B?B.id:Date.now().toString(),v={id:P,...S,createdAt:new Date().toISOString(),layoutData:o,isDefault:S.isDefault??false,isPublic:S.isPublic??false};if(!i){let k=c.some(I=>I.id===P)?c.map(I=>I.id===P?v:I):[...c,v];g(k),m(k),u(P),a(v),p&&p(l("layout.toast.saveLocalSuccess"));return}try{if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d(v))})).ok)throw new Error("LAYOUT_SAVE_FAILED");p&&p(l("layout.toast.saveSuccess")),await y(),u(P),a(v);}catch(M){console.error("Error saving layout",M);let I=c.some(D=>D.id===P)?c.map(D=>D.id===P?v:D):[...c,v];g(I),m(I),u(P),a(v),p&&p(l("layout.toast.saveLocalSuccess")),s&&s(l("layout.toast.backendUnavailableSavedLocal"));}},onDelete:async S=>{if(!i){let B=c.filter(P=>P.id!==S);g(B),m(B),f===S&&u(""),p&&p(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(""),p&&p(l("layout.toast.deleteSuccess")),await y();}catch(B){console.error("Error deleting layout",B);let P=c.filter(v=>v.id!==S);g(P),m(P),f===S&&u(""),p&&p(l("layout.toast.deleteLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDeletedLocal"));}},onSetDefault:async S=>{if(!i){let B=c.map(P=>({...P,isDefault:P.id===S}));g(B),m(B),p&&p(l("layout.toast.defaultLocalSuccess"));return}try{let B=c.find(v=>v.id===S);if(!B)return;if(!(await fetch(`${i}/api/layouts`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(d({...B,isDefault:!0}))})).ok)throw new Error("LAYOUT_DEFAULT_FAILED");p&&p(l("layout.toast.defaultSuccess")),await y();}catch(B){console.error("Error setting default",B);let P=c.map(v=>({...v,isDefault:v.id===S}));g(P),m(P),p&&p(l("layout.toast.defaultLocalSuccess")),s&&s(l("layout.toast.backendUnavailableDefaultLocal"));}}})};var Yp=(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 Qp(e,t,o){return t[o]<e[o]?-1:t[o]>e[o]?1:0}function tx(e,t){return e==="desc"?(o,a)=>Qp(o,a,t):(o,a)=>-Qp(o,a,t)}function ox(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(z=>{let N=String(z?.label??z?.id??"").length*9+64,ne=typeof z?.minWidth=="number"?z.minWidth:0;return Math.max(100,ne,N)},[]),o=useCallback(()=>(e.columns||[]).filter(z=>!!z?.numeric).map(z=>z.id),[e.columns]),[a,r]=useState(""),[n,i]=useState(e.order||"asc"),[s,p]=useState(e.orderBy||""),[l,c]=useState(e.page||0),[g,f]=useState(e.rowsPerPage||20),[u,h]=useState(e.selected||[]),[w,d]=useState(e.columns?e.columns.map(z=>z.id):[]),[C,m]=useState(e.showSummary||false),[y,b]=useState(()=>o()),[T,A]=useState([]),[R,S]=useState(new Set),[B,P]=useState(()=>{let z={};return (e.columns||[]).forEach(O=>{z[O.id]=t(O);}),z}),[v,M]=useState(null),[k,I]=useState(null),[D,G]=useState(null),[V,X]=useState(null),[de,oe]=useState(false),[re,_]=useState(""),[qe,it]=useState("");useEffect(()=>{e.layout&&ze(e.layout);},[e.layout]),useEffect(()=>{e.order!==void 0&&i(e.order),e.orderBy!==void 0&&p(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 z=o();b(O=>O.filter(ne=>z.includes(ne)));},[o]),useEffect(()=>{P(z=>{let O={...z};return (e.columns||[]).forEach(N=>{O[N.id]===void 0&&(O[N.id]=t(N));}),O});},[e.columns,t]);let Y=useMemo(()=>{let z=e.rows||[];return a&&(z=z.filter(O=>Object.keys(O).some(N=>String(O[N]).toLowerCase().includes(a.toLowerCase())))),z},[e.rows,a]),le=useMemo(()=>e.onSortChange||!s?Y:ox(Y,tx(n,s)),[Y,n,s,e.onSortChange]),Be=useCallback(z=>{if(T.length===0)return z.map(we=>({type:"row",data:we,id:we[e.rowKey||"id"]}));let O=[...z].sort((we,ae)=>{for(let Me of T){if(we[Me]<ae[Me])return -1;if(we[Me]>ae[Me])return 1}return 0}),N=(we,ae=0)=>{if(ae>=T.length)return we;let Me=T[ae],Te={},Ne=[];return we.forEach(Ie=>{let Re=Ie[Me],Ve=`${Me}:${Re}`;Te[Ve]||(Te[Ve]={key:Ve,field:Me,value:Re,children:[],count:0,level:ae},Ne.push(Te[Ve])),Te[Ve].children.push(Ie),Te[Ve].count++;}),Ne.forEach(Ie=>{Ie.children&&(Ie.children=N(Ie.children,ae+1));}),Ne},ne=N(O),se=(we,ae="")=>{let Me=[];return we.forEach(Te=>{if(Te.children){let Ne=ae?`${ae}>${Te.key}`:Te.key,Ie=R.has(Ne);Me.push({type:"group",id:Ne,field:Te.field,value:Te.value,level:Te.level,count:Te.count,isExpanded:Ie,childIds:(function Re(Ve){let It=[];return Ve.children.forEach(xo=>{xo.children?It=It.concat(Re(xo)):It.push(xo[e.rowKey||"id"]);}),It})(Te)}),Ie&&(Me=Me.concat(se(Te.children,Ne)));}else Me.push({type:"row",data:Te,id:Te[e.rowKey||"id"],level:T.length});}),Me};return se(ne)},[T,R,e.rowKey]),Ee=useCallback(z=>{if(T.length===0)return [];let O=[...z].sort((se,we)=>{for(let ae of T){if(se[ae]<we[ae])return -1;if(se[ae]>we[ae])return 1}return 0}),N=[],ne=(se,we,ae)=>{if(we>=T.length)return;let Me=T[we],Te=new Map;se.forEach(Ne=>{let Ie=Ne[Me],Re=Te.get(Ie);Re?Re.push(Ne):Te.set(Ie,[Ne]);}),Te.forEach((Ne,Ie)=>{let Re=`${Me}:${Ie}`,Ve=ae?`${ae}>${Re}`:Re;N.push(Ve),ne(Ne,we+1,Ve);});};return ne(O,0,""),N},[T]),Ue=useMemo(()=>Be(le),[le,Be]),ot=useMemo(()=>Ee(le),[le,Ee]),Fe=useMemo(()=>{let z=(e.rows||[]).length;return typeof e.count=="number"&&e.count>z},[e.count,e.rows]),_e=useMemo(()=>Fe?Ue:g>0?Ue.slice(l*g,l*g+g):Ue,[Ue,l,g,Fe]),ht=useMemo(()=>Fe&&typeof e.count=="number"?e.count:Ue.length,[Ue.length,Fe,e.count]),j=z=>{S(O=>{let N=new Set(O);return N.has(z)?N.delete(z):N.add(z),N});},pe=z=>{let O=ot.filter(N=>N===z||N.startsWith(`${z}>`));S(N=>{let ne=new Set(N);return O.forEach(se=>ne.add(se)),ne});},De=z=>{S(O=>{let N=new Set(O);return Array.from(N).forEach(ne=>{(ne===z||ne.startsWith(`${z}>`))&&N.delete(ne);}),N});},Le=z=>{if(!z){S(new Set);return}S(new Set(ot));},We=z=>{let O=ot.filter(N=>N.startsWith(`${z}>`));return O.length===0?R.has(z):R.has(z)&&O.every(N=>R.has(N))},U=z=>{let O=s===z&&n==="asc",N=s===z&&n==="desc";if(e.onSortChange){O?e.onSortChange(z,"desc"):N?e.onSortChange("","asc"):e.onSortChange(z,"asc");return}O?(i("desc"),p(z)):N?(i("asc"),p("")):(i("asc"),p(z));},ye=(z,O)=>{P(N=>({...N,[z]:O}));},be=z=>{if(z.target.checked){let O=Y.map(N=>N[e.rowKey||"id"]);h(O),e.onSelectionChange&&e.onSelectionChange(O);return}h([]),e.onSelectionChange&&e.onSelectionChange([]);},Pe=(z,O)=>{let N=O[e.rowKey||"id"],ne=u.indexOf(N),se=[];ne===-1?se=se.concat(u,N):ne===0?se=se.concat(u.slice(1)):ne===u.length-1?se=se.concat(u.slice(0,-1)):ne>0&&(se=se.concat(u.slice(0,ne),u.slice(ne+1))),h(se),e.onSelectionChange&&e.onSelectionChange(se);},et=z=>{c(z),e.onPageChange&&e.onPageChange(z);},Ge=z=>{f(z),c(0),e.onPageChange&&e.onPageChange(0),e.onRowsPerPageChange&&e.onRowsPerPageChange(z);},Tt=z=>{let O=w.indexOf(z),N=[...w];O===-1?N.push(z):N.splice(O,1),d(N);},ro=z=>{let O=T.indexOf(z),N=[...T];O===-1?N.push(z):N.splice(O,1),A(N);},Yt=z=>{o().includes(z)&&b(N=>N.includes(z)?N.filter(ne=>ne!==z):[...N,z]);},Ht=z=>{e.onLayoutSave&&e.onLayoutSave({visibleColumns:w,order:n,orderBy:s,grouping:T,columnWidths:B,showSummary:C,summaryColumns:y});},Qt=z=>{let{layout:O,layoutId:N}=ul(z,e.tableKey||"default");N?(it(N),_(N)):(it(""),_("")),O&&(O.visibleColumns&&d(O.visibleColumns),O.order&&i(O.order),O.orderBy&&p(O.orderBy),O.grouping&&A(O.grouping),O.columnWidths&&P(O.columnWidths),O.showSummary!==void 0&&m(!!O.showSummary),Array.isArray(O.summaryColumns)&&b(O.summaryColumns));},ze=z=>{let O=z?.layoutData||z?.layout||z||{};O.visibleColumns&&d(O.visibleColumns),O.order&&i(O.order),O.orderBy!==void 0&&p(O.orderBy),O.grouping&&A(O.grouping),O.columnWidths&&P(O.columnWidths),O.showSummary!==void 0&&m(!!O.showSummary),Array.isArray(O.summaryColumns)&&b(O.summaryColumns),S(new Set),c(0),z?.id&&_(z.id),it("");};useEffect(()=>{e.layout&&Qt({layout:e.layout});},[e.layout]);let Ce=z=>{z.preventDefault(),X(V===null?{mouseX:z.clientX+2,mouseY:z.clientY-6}:null);},L=()=>{X(null);},$=useMemo(()=>{if(!C)return {};let z={};e.columns.forEach(N=>{if(N.numeric&&y.includes(N.id)){let ne=Y.reduce((se,we)=>{let ae=parseFloat(we[N.id]);return se+(isNaN(ae)?0:ae)},0);z[N.id]=ne.toFixed(2);}else z[N.id]="";});let O=e.columns.find(N=>w.includes(N.id));return O&&!O.numeric&&(z[O.id]="Total"),z},[Y,e.columns,C,y,w]),Z=()=>{if(!e.columns||!Y)return;let z=e.columns.map(we=>we.label).join(","),O=Y.map(we=>e.columns.map(ae=>{let Me=we[ae.id];return `"${(Me==null?"":String(Me)).replace(/"/g,'""')}"`}).join(",")).join(`
2
2
  `),N=`data:text/csv;charset=utf-8,${z}
3
- ${V}`,ae=encodeURI(N),ie=document.createElement("a");ie.setAttribute("href",ae),ie.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(ie),ie.click(),document.body.removeChild(ie);},J=()=>{oe(true);},ve=()=>{oe(false);};return {isMobile:false,columns:e.columns,order:n,setOrder:i,orderBy:l,setOrderBy:p,filterText:a,setFilterText:r,visibleColumns:T,setVisibleColumns:d,showSummary:C,setShowSummary:m,summaryColumns:y,grouping:S,setGrouping:A,expandedGroups:R,setExpandedGroups:w,groupAnchorEl:k,setGroupAnchorEl:I,summaryAnchorEl:D,setSummaryAnchorEl:G,columnWidths:E,setColumnWidths:P,anchorEl:v,setAnchorEl:M,contextMenu:$,setContextMenu:ee,sensors:void 0,sortedAndFilteredRows:le,visibleRows:Xe,summaryRow:H,page:s,setPage:je,rowsPerPage:g,setRowsPerPage:Ne,totalDisplayCount:Pt,selected:u,setSelected:h,isAllExpanded:tt.length>0&&tt.every(z=>R.has(z)),handleColumnResize:fe,handleRequestSort:U,handleSelectAllClick:he,handleClick:Te,toggleSummaryColumn:Xt,handleDragEnd:()=>{},handleExport:_,handleContextMenu:xe,handleCloseContextMenu:L,toggleColumnVisibility:Ct,toggleGroupExpand:Rt,toggleGroupField:ao,handleToggleAll:Dt,handleExpandGroupRecursively:_e,handleCollapseGroupRecursively:yt,isGroupFullyExpanded:et,handleLayoutLoad:De,handleVariantLoad:Yt,handleLayoutSave:Ot,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:T,order:n,orderBy:l,grouping:S,columnWidths:E,showSummary:C,summaryColumns:y},currentLayoutId:re,layoutIdToLoad:qe,onPageChange:je,onRowsPerPageChange:Ne,graphReportOpen:me,handleOpenGraphReport:J,handleCloseGraphReport:ve}};var AD=e=>jsx(vb,{...e}),BD=e=>jsx(wl,{...e}),ED=e=>jsx(Vp,{...e}),FD=e=>jsx(Gf,{...e}),LD=e=>jsx(Uf,{...e}),Va=e=>{let{t}=Q(),o="0.85rem",{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:p,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:T,filterConfig:d,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:S,quickDelete:A,serviceUrl:R}=e,w=a||t("table.title.default"),{isMobile:E,columns:P,order:v,orderBy:M,filterText:k,setFilterText:I,visibleColumns:D,showSummary:G,setShowSummary:$,summaryColumns:ee,grouping:me,setGrouping:oe,expandedGroups:re,groupAnchorEl:X,setGroupAnchorEl:qe,summaryAnchorEl:nt,setSummaryAnchorEl:Y,columnWidths:le,anchorEl:Ve,setAnchorEl:Le,contextMenu:Oe,sensors:tt,sortedAndFilteredRows:ze,summaryRow:Xe,visibleRows:Pt,isAllExpanded:Rt,page:_e,setPage:yt,rowsPerPage:Dt,setRowsPerPage:et,totalDisplayCount:U,setSelected:fe,handleColumnResize:he,handleRequestSort:Te,handleSelectAllClick:je,handleClick:Ne,toggleSummaryColumn:Ct,handleDragEnd:ao,handleExport:Xt,handleContextMenu:Ot,handleCloseContextMenu:Yt,toggleColumnVisibility:De,toggleGroupExpand:xe,toggleGroupField:L,handleToggleAll:H,handleExpandGroupRecursively:_,handleCollapseGroupRecursively:J,isGroupFullyExpanded:ve,handleLayoutLoad:z,handleVariantLoad:V,handleLayoutSave:N,effectiveAppId:ae,currentLayoutData:ie,currentLayoutId:ke,layoutIdToLoad:te,graphReportOpen:Pe,handleOpenGraphReport:Se,handleCloseGraphReport:Me}=Qr(e),we=y?.enabled??false,Ie=we&&(y?.interaction?.enabled??true),Ae=_i(),kt=!!x?.enabled,bo=!!S?.enabled,ut=!!A?.enabled,Mt=x?.fields,xo=x?.excludeFields||[],Ta=x?.initialValues||{},[Rr,Po]=ft__default.useState(false),[ro,Xa]=ft__default.useState(false),[Jo,Ut]=ft__default.useState({}),[no,Wt]=ft__default.useState(false),[We,ea]=ft__default.useState(false),[$o,ta]=ft__default.useState({}),[Ya,Ho]=ft__default.useState(false),[Qa,Ja]=ft__default.useState(false),Go=u||ro||We||Qa,oa=ft__default.useMemo(()=>{let O=[...P];if(Array.isArray(Mt)&&Mt.length>0){let Z=new Set(Mt);O=O.filter(j=>Z.has(j.id));}if(xo.length>0){let Z=new Set(xo);O=O.filter(j=>!Z.has(j.id));}return O.filter(Z=>!!Z?.id)},[P,xo,Mt]),Ia=C||"id",Kt=ft__default.useMemo(()=>{let O=new Set(i);return ze.filter(Z=>O.has(Z?.[Ia]))},[i,ze,Ia]),Ro=Kt.length===1?Kt[0]:null,aa=S?.fields,vo=S?.excludeFields||[],Uo=S?.editableFields||[],er=S?.nonEditableFields||[],Dr=S?.primaryKeys?.length?S.primaryKeys:[Ia],Pa=ft__default.useMemo(()=>{let O=[...P];if(Array.isArray(aa)&&aa.length>0){let Z=new Set(aa);O=O.filter(j=>Z.has(j.id));}if(vo.length>0){let Z=new Set(vo);O=O.filter(j=>!Z.has(j.id));}return O.filter(Z=>!!Z?.id)},[P,vo,aa]),tr=ft__default.useMemo(()=>new Set(Dr),[Dr]),ra=ft__default.useMemo(()=>new Set(Uo),[Uo]),Qt=ft__default.useMemo(()=>new Set(er),[er]),Do=ft__default.useCallback(O=>ra.size>0?ra.has(O):!(Qt.has(O)||tr.has(O)),[ra,Qt,tr]);ft__default.useEffect(()=>{!Pe&&Ae.hasActiveFilters&&Ae.clearAll();},[Pe,Ae.hasActiveFilters,Ae.clearAll]);let Mr=()=>{let O={};oa.forEach(Z=>{O[Z.id]=Ta[Z.id]??"";}),Ut(O),Po(true);},or=()=>{ro||Po(false);},Ar=(O,Z)=>{Ut(j=>({...j,[O]:Z}));},Br=async()=>{if(!x?.onSubmit){Po(false);return}try{Xa(!0),await x.onSubmit(Jo),Po(!1);}finally{Xa(false);}},Er=()=>{if(!Ro)return;let O={};Pa.forEach(j=>{O[j.id]=Ro[j.id]??"";});let Z=S?.getInitialValues?{...O,...S.getInitialValues(Ro)}:O;ta(Z),Wt(true);},io=()=>{We||Wt(false);},Fr=(O,Z)=>{ta(j=>({...j,[O]:Z}));},Lr=async()=>{if(Ro){if(!S?.onSubmit){Wt(false);return}try{ea(!0),await S.onSubmit($o,Ro),Wt(!1);}finally{ea(false);}}},ar=()=>{Kt.length!==0&&Ho(true);},na=()=>{Qa||Ho(false);},Ra=async()=>{if(Kt.length===0){Ho(false);return}if(!A?.onConfirm){Ho(false),fe([]),l?.([]);return}try{Ja(!0),await A.onConfirm(Kt),Ho(!1),fe([]),l?.([]);}finally{Ja(false);}},Da=ze,{fieldMapping:b}=jr({rows:Da,config:{...y,title:y?.title||`${w} ${t("graph.reportTitle")}`}}),B=ft__default.useMemo(()=>Ie?Ae.applyRows(Da,b):Da,[Ie,Ae.applyRows,Da,b]),{model:F}=jr({rows:B,config:{...y,title:y?.title||`${w} ${t("graph.reportTitle")}`,fieldMapping:b}}),K=F.table.columns.map(O=>({id:O.id,label:O.label,align:O.align||"left",minWidth:120,numeric:O.align==="right"})),se=ae?jsx(as,{appId:ae,tableKey:m,currentLayoutData:ie,onLayoutLoad:z,targetLayoutId:te,activeLayoutId:ke,serviceUrl:R??d?.serviceUrl}):null,Ce=jsxs(Fragment,{children:[jsx(Nr,{groupAnchorEl:X,setGroupAnchorEl:qe,grouping:me,setGrouping:oe,columns:P,toggleGroupField:L}),jsx(Vr,{anchorEl:Ve,setAnchorEl:Le,columns:P,visibleColumns:D,toggleColumnVisibility:De}),jsx(Ri,{anchorEl:nt,setAnchorEl:Y,showSummary:G,setShowSummary:$,columns:P,summaryColumns:ee,toggleSummaryColumn:Ct}),jsx(Di,{contextMenu:Oe,handleCloseContextMenu:Yt,columns:P,visibleColumns:D,toggleColumnVisibility:De})]});return E?jsxs(Gn,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[d&&jsx(da,{fields:d.fields,filters:d.filters,onFilterChange:d.onFilterChange,onSearch:d.onSearch,variants:d.variants||[],currentVariantId:d.currentVariantId,onVariantLoad:d.onVariantLoad,onVariantSave:d.onVariantSave,onVariantDelete:d.onVariantDelete,onVariantSetDefault:d.onVariantSetDefault,appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:ie}],variantService:d.variantService,serviceUrl:R??d.serviceUrl}),jsx(Fd,{title:w,loading:u,showSummary:G,setShowSummary:$,setAnchorEl:Le,setSummaryAnchorEl:Y,filterText:k,setFilterText:I,sortedAndFilteredRows:ze,selected:i,columns:P,visibleColumns:D,summaryRow:Xe,handleClick:Ne,selectionMode:n}),Ce]}):jsxs(Gn,{sx:{width:g?"100%":"auto",mb:c?0:2,...c?{flex:1,display:"flex",flexDirection:"column",minHeight:0,height:"100%",overflow:"hidden"}:{}},children:[d&&jsx(Gn,{sx:{mb:2},children:jsx(da,{fields:d.fields,filters:d.filters,onFilterChange:d.onFilterChange,onSearch:d.onSearch,variants:d.variants||[],currentVariantId:d.currentVariantId,onVariantLoad:O=>{V(O),d.onVariantLoad&&d.onVariantLoad(O);},onVariantSave:d.onVariantSave,onVariantDelete:d.onVariantDelete,onVariantSetDefault:d.onVariantSetDefault,loading:u,appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:ie}],currentLayoutId:ke,layoutRefs:[{tableKey:m,layoutId:ke}],variantService:d.variantService,serviceUrl:R??d.serviceUrl})}),jsxs(bb,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Go?{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(Si,{filterText:k,setFilterText:I,onRowsPerPageChange:et,rowsPerPage:Dt,rowsPerPageOptions:h,page:_e,count:U,onPageChange:yt,actions:p,extraTools:s,grouping:me,setGroupAnchorEl:qe,showSummary:G,setShowSummary:$,setAnchorEl:Le,setSummaryAnchorEl:Y,handleExport:Xt,showCreateButton:kt,onOpenCreateDialog:Mr,showEditButton:bo,onOpenEditDialog:Er,editDisabled:Kt.length!==1,showDeleteButton:ut,onOpenDeleteConfirm:ar,deleteDisabled:Kt.length===0,onLayoutSave:T||d?.variantService&&d?.appId?N:void 0,loading:u,layoutManager:se,onOpenGraphReport:we?Se:void 0}),jsx(Vp,{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:tt,collisionDetection:closestCenter,onDragEnd:ao,modifiers:[restrictToHorizontalAxis],children:jsxs(xb,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(le).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(wi,{columns:P,visibleColumns:D,order:v,orderBy:M,onRequestSort:Te,onContextMenu:Ot,selectionMode:n,grouping:me,isAllExpanded:Rt,handleToggleAll:H,rowCount:ze.length,numSelected:i.length,onSelectAllClick:je,columnWidths:le,onColumnResize:he}),jsx(Ad,{visibleRows:Pt,columns:P,visibleColumns:D,selectionMode:n,selected:i,orderBy:M,loading:u,expandedGroups:re,toggleGroupExpand:xe,handleExpandGroupRecursively:_,handleCollapseGroupRecursively:J,isGroupFullyExpanded:ve,handleClick:Ne,onSelectionChange:l,grouping:me,rowKeyProp:C,page:_e,rowsPerPage:Dt}),G&&jsx(Bd,{showSummary:G,columns:P,visibleColumns:D,summaryRow:Xe,selectionMode:n?.toString(),grouping:me,orderBy:M,zIndex:3})]})})})]}),kt&&jsxs(Bp,{open:Rr,onClose:or,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:O=>`1px solid ${O.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Ep,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:x?.title||t("quickCreate.createWithTitle",{title:w})}),jsx(Fp,{sx:{pt:"8px !important"},children:jsxs(Gn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[oa.map(O=>{let Z=O.type==="number"||O.numeric?"number":O.type==="date"?"date":"text",j=O.label||O.id;return jsx(zp,{label:j,value:Jo[O.id]??"",onChange:Ye=>Ar(O.id,Ye.target.value),type:Z,size:"small",fullWidth:true,InputLabelProps:{shrink:Z==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${O.id}`)}),x?.description&&jsx(Np,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:x.description})]})}),jsxs(Lp,{sx:{px:3,pb:2},children:[jsx(is,{onClick:or,sx:{fontSize:"0.85rem"},disabled:ro,children:x?.cancelLabel||t("common.cancel")}),jsx(is,{onClick:Br,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:ro,children:x?.submitLabel||t("common.save")})]})]}),bo&&jsxs(Bp,{open:no,onClose:io,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:O=>`1px solid ${O.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(Ep,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:S?.title||t("quickEdit.editWithTitle",{title:w})}),jsx(Fp,{sx:{pt:"8px !important"},children:jsxs(Gn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Pa.map(O=>{let Z=O.type==="number"||O.numeric?"number":O.type==="date"?"date":"text",j=O.label||O.id,Ye=Do(O.id);return jsx(zp,{label:j,value:$o[O.id]??"",onChange:W=>Fr(O.id,W.target.value),type:Z,size:"small",fullWidth:true,disabled:!Ye,InputLabelProps:{shrink:Z==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${O.id}`)}),S?.description&&jsx(Np,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:S.description})]})}),jsxs(Lp,{sx:{px:3,pb:2},children:[jsx(is,{onClick:io,sx:{fontSize:"0.85rem"},disabled:We,children:S?.cancelLabel||t("common.cancel")}),jsx(is,{onClick:Lr,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:We||!Ro,children:S?.submitLabel||t("common.save")})]})]}),ut&&jsx(Pn,{open:Ya,type:"warning",title:A?.title||t("quickDelete.confirmTitle"),message:A?.message||(Kt.length>1?t("quickDelete.confirmMessageMultiple",{count:Kt.length}):t("quickDelete.confirmMessageSingle")),confirmText:A?.confirmText||t("common.delete"),cancelText:A?.cancelText||t("common.cancel"),onClose:na,onConfirm:Ra}),Ce,we&&jsx(Ki,{open:Pe,onClose:Me,model:F,aiAssistant:y?.aiAssistant,interaction:Ie?{enabled:true,filters:Ae.filters,fieldMapping:b,onPrimaryDimensionClick:O=>Ae.setFilter("primaryDimension",O),onSecondaryDimensionClick:O=>Ae.setFilter("secondaryDimension",O),onStatusClick:O=>Ae.setFilter("status",O),onClearFilter:Ae.clearFilter,onClearAll:Ae.clearAll}:void 0,tableContent:jsx(Va,{appId:ae||"graph-report-internal",title:t("graph.dataBody"),columns:K,rows:F.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},zD=Va;var GD=({id:e,title:t,hideHeader:o=true,filterConfig:a,tableProps:r,children:n,spacing:i=1,mode:l="separated"})=>{let p=a?{...a,appId:a.appId||e}:void 0,s={...r,appId:r.appId||e};return jsxs(Td,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[l==="separated"&&p&&jsx(Box,{sx:{flexShrink:0},children:jsx(da,{...p})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx(Va,{...s,fitContainer:true,filterConfig:l==="integrated"?p:void 0})})]}),n]})};var ZD=({metadata:e,fetchData:t,initialRowsPerPage:o=20,rowsPerPageOptions:a=[20,50,100,-1],tableKey:r="default",mode:n="integrated",serviceUrl:i,variantService:l})=>{let{t:p}=Q(),[s,c]=useState(false),[g,f]=useState([]),[u,h]=useState({}),[T,d]=useState(e.variants||[]),[C,m]=useState(e.layout||null),[y,x]=useState(""),[S,A]=useState(0),[R,w]=useState(0),[E,P]=useState(o),[v,M]=useState([]),[k,I]=useState("asc"),[D,G]=useState("");useEffect(()=>{let le={};e.filters.forEach(Ve=>{Ve.defaultValue!==void 0&&(le[Ve.id]=Ve.defaultValue);}),h(le);},[e.filters]);let $=useCallback(async(le,Ve,Le,Oe,tt)=>{c(true);try{let ze={...le,page:Ve+1,limit:Le,sort:tt,order:Oe},Xe;t?Xe=await t(ze):typeof e.api=="function"?Xe=await e.api(ze):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,ze),Xe={rows:[],total:0}):(console.warn("No API configured for report"),Xe={rows:[],total:0}),Xe&&(f(Xe.rows||[]),A(Xe.total||0));}catch(ze){console.error("Failed to fetch report data",ze);}finally{c(false);}},[e.api,t]);useEffect(()=>{$(u,R,E,k,D);},[$,R,E,k,D]);let ee=()=>{w(0),$(u,0,E,k,D);},me=le=>{w(0),P(le);},oe=(le,Ve)=>{I(Ve),G(le);},re=le=>{h(le);},X=le=>{x(le?.id||"");let Ve=Mp(le,r);if(Ve){let Oe=Ve.values??Ve;h(Oe),$(Oe,0,E,k,D),w(0);}let{layout:Le}=rs(le,r);Le&&m(Le);},qe=le=>{let Ve={...le,id:Date.now().toString(),createdAt:new Date().toISOString()};d(Le=>[...Le,Ve]);},nt=le=>{m(le);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:r,fields:e.filters,filters:u,onFilterChange:re,onSearch:ee,onVariantLoad:X,onVariantSave:qe,onVariantDelete:le=>d(Ve=>Ve.filter(Le=>Le.id!==le)),onVariantSetDefault:le=>{d(Ve=>Ve.map(Le=>({...Le,isDefault:Le.id===le})));},variants:T,currentVariantId:y,variantService:l,serviceUrl:i},tableProps:{appId:e.id,tableKey:r,columns:e.columns,rows:g,loading:s,rowKey:"id",count:S,page:R,rowsPerPage:E,rowsPerPageOptions:a,onPageChange:w,onRowsPerPageChange:me,selectionMode:"multiple",selected:v,onSelectionChange:M,onLayoutSave:nt,layout:C,title:e.title,showSummary:true,order:k,orderBy:D,serviceUrl:i,onSortChange:oe,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${p("graph.reportTitle")}`}}},filters:u,rows:g,loading:s,refresh:ee}};var Mb=e=>[...e].sort((t,o)=>o.value-t.value),QD=({bars:e=[],lines:t=[],combos:o=[],heatmap:a=[],pies:r=[],waterfalls:n=[]})=>{let i=useMemo(()=>Mb(e),[e]),l=useMemo(()=>[...t],[t]),p=useMemo(()=>[...o],[o]),s=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:l,combos:p,heatmap:s,pies:c,waterfalls:g}};var aM=({apiKey:e,query:t,zoom:o=14,mapType:a="roadmap"})=>useMemo(()=>!e||!t?"":Ln({apiKey:e,query:t,zoom:o,mapType:a}),[e,t,o,a]),rM=({keyword:e,location:t})=>useMemo(()=>Wi({keyword:e,location:t?{lng:t.lng,lat:t.lat,name:t.name}:void 0}),[e,t]);var Un=({code:e,language:t="text",copyable:o=true,showLineNumbers:a=false,wrapLongLines:r=false,maxHeight:n})=>{let[i,l]=useState(false),p=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),l(!0),window.setTimeout(()=>l(!1),1400);}catch{l(false);}},children:i?jsx(Nb,{fontSize:"inherit"}):jsx(zb,{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?p.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 Hb=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},Gb=async e=>new Function("m","return import(m)")(e),Kn=({expression:e,inline:t=false,allowKatex:o=false})=>{let a=useMemo(()=>Hb(e),[e]),[r,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!a){n("");return}try{let p=await Gb("katex"),c=(p?.default||p)?.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 Xb=async e=>new Function("m","return import(m)")(e),Ql=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:a=true})=>{let[r,n]=useState(""),[i,l]=useState(""),[p,s]=useState(false),c=useMemo(()=>e.trim(),[e]);return useEffect(()=>{let g=true;return (async()=>{if(!a||!c){n(""),l("");return}s(true),l(""),n("");try{let u=await Xb("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 T=await h.render(`orbcafe-mermaid-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,c),d=typeof T=="string"?T:T?.svg;g&&typeof d=="string"&&n(d);}catch(u){if(g){let h=u instanceof Error?u.message:"Failed to render Mermaid diagram";l(h);}}finally{g&&s(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:[p&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!p&&r&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:r}}),!p&&!r&&jsxs(Box,{children:[i&&jsx(Alert,{severity:"info",sx:{mb:1},children:i}),jsx(Un,{code:c,language:"mermaid",copyable:true,showLineNumbers:true,wrapLongLines:true})]})]})]})};var Jl=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),rx=e=>/^:?-{3,}:?$/.test(e.trim()),nx=e=>{let t=e.trim(),o=t.startsWith(":"),a=t.endsWith(":");return o&&a?"center":a?"right":"left"},cs=e=>{let t=e.split(`
5
- `).map(i=>i.trim()).filter(Boolean);if(t.length<2)return null;let o=Jl(t[0]),a=Jl(t[1]);if(o.length===0||a.length!==o.length||!a.every(rx))return null;let r=a.map(nx),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let l=Jl(i);return l.length<o.length?[...l,...Array.from({length:o.length-l.length},()=>"")]:l.slice(0,o.length)});return {headers:o,aligns:r,rows:n}},ec=({markdown:e,table:t,maxHeight:o=360})=>{let a=useMemo(()=>t||(e?cs(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,l)=>jsx(TableCell,{align:a.aligns[l],sx:{whiteSpace:"pre-wrap",wordBreak:"break-word"},children:i||jsx(Box,{component:"span",sx:{color:"text.disabled"},children:"-"})},`cell-${n}-${l}`))},`row-${n}`))})]})})})};var ps=({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(ux,{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 oc=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,us=e=>e.trim().startsWith("```"),jp=e=>/^#{1,6}\s+/.test(e.trim()),ac=e=>/^[-*+]\s+/.test(e.trim()),rc=e=>/^\d+\.\s+/.test(e.trim()),Zp=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),nc=e=>e.trim().startsWith(">"),Xp=(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())},Yp=e=>e.trim().startsWith("<think>")||e.trim()===":::think",jn=(e,t,o)=>{let a=[],r=0,n=0;oc.lastIndex=0;let i=oc.exec(e);for(;i;){i.index>r&&a.push(e.slice(r,i.index));let l=i[0],p=`${o}-${n}`;if(l.startsWith("**")&&l.endsWith("**"))a.push(jsx("strong",{children:l.slice(2,-2)},p));else if(l.startsWith("*")&&l.endsWith("*"))a.push(jsx("em",{children:l.slice(1,-1)},p));else if(l.startsWith("`")&&l.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:l.slice(1,-1)},p));else if(l.startsWith("[")&&l.includes("](")&&l.endsWith(")")){let s=l.match(/^\[([^\]]+)\]\(([^)]+)\)$/);s?a.push(jsx(Link,{href:s[2],target:"_blank",rel:"noreferrer",underline:"hover",children:s[1]},p)):a.push(l);}else l.startsWith("$")&&l.endsWith("$")&&t.enableMath?a.push(jsx(Kn,{expression:l,inline:true,allowKatex:true},p)):a.push(l);r=i.index+l.length,n+=1,i=oc.exec(e);}return r<e.length&&a.push(e.slice(r)),a.length>0?a:[e]},Zn=({markdown:e,content:t,className:o,enableMath:a=true,enableMermaid:r=true,enableThinkBlock:n=true,codeCopyable:i=true,codeLineNumbers:l=false})=>{let p=e??t??"",s=useMemo(()=>{let c=[],g=p.replace(/\r\n/g,`
3
+ ${O}`,ne=encodeURI(N),se=document.createElement("a");se.setAttribute("href",ne),se.setAttribute("download",`${e.title||"export"}.csv`),document.body.appendChild(se),se.click(),document.body.removeChild(se);},te=()=>{oe(true);},ke=()=>{oe(false);};return {isMobile:false,columns:e.columns,order:n,setOrder:i,orderBy:s,setOrderBy:p,filterText:a,setFilterText:r,visibleColumns:w,setVisibleColumns:d,showSummary:C,setShowSummary:m,summaryColumns:y,grouping:T,setGrouping:A,expandedGroups:R,setExpandedGroups:S,groupAnchorEl:k,setGroupAnchorEl:I,summaryAnchorEl:D,setSummaryAnchorEl:G,columnWidths:B,setColumnWidths:P,anchorEl:v,setAnchorEl:M,contextMenu:V,setContextMenu:X,sensors:void 0,sortedAndFilteredRows:le,visibleRows:_e,summaryRow:$,page:l,setPage:et,rowsPerPage:g,setRowsPerPage:Ge,totalDisplayCount:ht,selected:u,setSelected:h,isAllExpanded:ot.length>0&&ot.every(z=>R.has(z)),handleColumnResize:ye,handleRequestSort:U,handleSelectAllClick:be,handleClick:Pe,toggleSummaryColumn:Yt,handleDragEnd:()=>{},handleExport:Z,handleContextMenu:Ce,handleCloseContextMenu:L,toggleColumnVisibility:Tt,toggleGroupExpand:j,toggleGroupField:ro,handleToggleAll:Le,handleExpandGroupRecursively:pe,handleCollapseGroupRecursively:De,isGroupFullyExpanded:We,handleLayoutLoad:ze,handleVariantLoad:Qt,handleLayoutSave:Ht,effectiveAppId:e.appId||"",currentLayoutData:{visibleColumns:w,order:n,orderBy:s,grouping:T,columnWidths:B,showSummary:C,summaryColumns:y},currentLayoutId:re,layoutIdToLoad:qe,onPageChange:et,onRowsPerPageChange:Ge,graphReportOpen:de,handleOpenGraphReport:te,handleCloseGraphReport:ke}};var TM=e=>jsx(nx,{...e}),IM=e=>jsx(Ls,{...e}),PM=e=>jsx(nu,{...e}),RM=e=>jsx(Rh,{...e}),DM=e=>jsx(Dh,{...e}),$a=e=>{let{t}=ee(),o="0.85rem",{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:p,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:d,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:b,quickEdit:T,quickDelete:A,serviceUrl:R}=e,S=a||t("table.title.default"),{isMobile:B,columns:P,order:v,orderBy:M,filterText:k,setFilterText:I,visibleColumns:D,showSummary:G,setShowSummary:V,summaryColumns:X,grouping:de,setGrouping:oe,expandedGroups:re,groupAnchorEl:_,setGroupAnchorEl:qe,summaryAnchorEl:it,setSummaryAnchorEl:Y,columnWidths:le,anchorEl:Be,setAnchorEl:Ee,contextMenu:Ue,sensors:ot,sortedAndFilteredRows:Fe,summaryRow:_e,visibleRows:ht,isAllExpanded:j,page:pe,setPage:De,rowsPerPage:Le,setRowsPerPage:We,totalDisplayCount:U,setSelected:ye,handleColumnResize:be,handleRequestSort:Pe,handleSelectAllClick:et,handleClick:Ge,toggleSummaryColumn:Tt,handleDragEnd:ro,handleExport:Yt,handleContextMenu:Ht,handleCloseContextMenu:Qt,toggleColumnVisibility:ze,toggleGroupExpand:Ce,toggleGroupField:L,handleToggleAll:$,handleExpandGroupRecursively:Z,handleCollapseGroupRecursively:te,isGroupFullyExpanded:ke,handleLayoutLoad:z,handleVariantLoad:O,handleLayoutSave:N,effectiveAppId:ne,currentLayoutData:se,currentLayoutId:we,layoutIdToLoad:ae,graphReportOpen:Me,handleOpenGraphReport:Te,handleCloseGraphReport:Ne}=on(e),Ie=y?.enabled??false,Re=Ie&&(y?.interaction?.enabled??true),Ve=tl(),It=!!b?.enabled,xo=!!T?.enabled,yt=!!A?.enabled,At=b?.fields,vo=b?.excludeFields||[],Ra=b?.initialValues||{},[Br,Do]=vt__default.useState(false),[no,er]=vt__default.useState(false),[oa,Kt]=vt__default.useState({}),[io,Wt]=vt__default.useState(false),[je,aa]=vt__default.useState(false),[Go,ra]=vt__default.useState({}),[tr,Uo]=vt__default.useState(false),[or,ar]=vt__default.useState(false),Ko=u||no||je||or,na=vt__default.useMemo(()=>{let H=[...P];if(Array.isArray(At)&&At.length>0){let J=new Set(At);H=H.filter(Q=>J.has(Q.id));}if(vo.length>0){let J=new Set(vo);H=H.filter(Q=>!J.has(Q.id));}return H.filter(J=>!!J?.id)},[P,vo,At]),Da=C||"id",qt=vt__default.useMemo(()=>{let H=new Set(i);return Fe.filter(J=>H.has(J?.[Da]))},[i,Fe,Da]),Mo=qt.length===1?qt[0]:null,ia=T?.fields,Co=T?.excludeFields||[],qo=T?.editableFields||[],rr=T?.nonEditableFields||[],Er=T?.primaryKeys?.length?T.primaryKeys:[Da],Ma=vt__default.useMemo(()=>{let H=[...P];if(Array.isArray(ia)&&ia.length>0){let J=new Set(ia);H=H.filter(Q=>J.has(Q.id));}if(Co.length>0){let J=new Set(Co);H=H.filter(Q=>!J.has(Q.id));}return H.filter(J=>!!J?.id)},[P,Co,ia]),nr=vt__default.useMemo(()=>new Set(Er),[Er]),la=vt__default.useMemo(()=>new Set(qo),[qo]),Jt=vt__default.useMemo(()=>new Set(rr),[rr]),Ao=vt__default.useCallback(H=>la.size>0?la.has(H):!(Jt.has(H)||nr.has(H)),[la,Jt,nr]);vt__default.useEffect(()=>{!Me&&Ve.hasActiveFilters&&Ve.clearAll();},[Me,Ve.hasActiveFilters,Ve.clearAll]);let Fr=()=>{let H={};na.forEach(J=>{H[J.id]=Ra[J.id]??"";}),Kt(H),Do(true);},ir=()=>{no||Do(false);},Lr=(H,J)=>{Kt(Q=>({...Q,[H]:J}));},zr=async()=>{if(!b?.onSubmit){Do(false);return}try{er(!0),await b.onSubmit(oa),Do(!1);}finally{er(false);}},Nr=()=>{if(!Mo)return;let H={};Ma.forEach(Q=>{H[Q.id]=Mo[Q.id]??"";});let J=T?.getInitialValues?{...H,...T.getInitialValues(Mo)}:H;ra(J),Wt(true);},lo=()=>{je||Wt(false);},Vr=(H,J)=>{ra(Q=>({...Q,[H]:J}));},Or=async()=>{if(Mo){if(!T?.onSubmit){Wt(false);return}try{aa(!0),await T.onSubmit(Go,Mo),Wt(!1);}finally{aa(false);}}},lr=()=>{qt.length!==0&&Uo(true);},sa=()=>{or||Uo(false);},Aa=async()=>{if(qt.length===0){Uo(false);return}if(!A?.onConfirm){Uo(false),ye([]),s?.([]);return}try{ar(!0),await A.onConfirm(qt),Uo(!1),ye([]),s?.([]);}finally{ar(false);}},Ba=Fe,{fieldMapping:x}=Qr({rows:Ba,config:{...y,title:y?.title||`${S} ${t("graph.reportTitle")}`}}),E=vt__default.useMemo(()=>Re?Ve.applyRows(Ba,x):Ba,[Re,Ve.applyRows,Ba,x]),{model:F}=Qr({rows:E,config:{...y,title:y?.title||`${S} ${t("graph.reportTitle")}`,fieldMapping:x}}),K=F.table.columns.map(H=>({id:H.id,label:H.label,align:H.align||"left",minWidth:120,numeric:H.align==="right"})),ce=ne?jsx(pl,{appId:ne,tableKey:m,currentLayoutData:se,onLayoutLoad:z,targetLayoutId:ae,activeLayoutId:we,serviceUrl:R??d?.serviceUrl}):null,Se=jsxs(Fragment,{children:[jsx(Wr,{groupAnchorEl:_,setGroupAnchorEl:qe,grouping:de,setGrouping:oe,columns:P,toggleGroupField:L}),jsx($r,{anchorEl:Be,setAnchorEl:Ee,columns:P,visibleColumns:D,toggleColumnVisibility:ze}),jsx(zi,{anchorEl:it,setAnchorEl:Y,showSummary:G,setShowSummary:V,columns:P,summaryColumns:X,toggleSummaryColumn:Tt}),jsx(Ni,{contextMenu:Ue,handleCloseContextMenu:Qt,columns:P,visibleColumns:D,toggleColumnVisibility:ze})]});return B?jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:2,height:"100%"},children:[d&&jsx(ma,{fields:d.fields,filters:d.filters,onFilterChange:d.onFilterChange,onSearch:d.onSearch,variants:d.variants||[],currentVariantId:d.currentVariantId,onVariantLoad:d.onVariantLoad,onVariantSave:d.onVariantSave,onVariantDelete:d.onVariantDelete,onVariantSetDefault:d.onVariantSetDefault,appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:se}],variantService:d.variantService,serviceUrl:R??d.serviceUrl}),jsx(tp,{title:S,loading:u,showSummary:G,setShowSummary:V,setAnchorEl:Ee,setSummaryAnchorEl:Y,filterText:k,setFilterText:I,sortedAndFilteredRows:Fe,selected:i,columns:P,visibleColumns:D,summaryRow:_e,handleClick:Ge,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:[d&&jsx(Xn,{sx:{mb:2},children:jsx(ma,{fields:d.fields,filters:d.filters,onFilterChange:d.onFilterChange,onSearch:d.onSearch,variants:d.variants||[],currentVariantId:d.currentVariantId,onVariantLoad:H=>{O(H),d.onVariantLoad&&d.onVariantLoad(H);},onVariantSave:d.onVariantSave,onVariantDelete:d.onVariantDelete,onVariantSetDefault:d.onVariantSetDefault,loading:u,appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:se}],currentLayoutId:we,layoutRefs:[{tableKey:m,layoutId:we}],variantService:d.variantService,serviceUrl:R??d.serviceUrl})}),jsxs(ax,{sx:{width:g?"100%":"auto",mb:c?0:2,display:"flex",flexDirection:"column",overflow:"hidden",position:"relative","&::before":Ko?{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:k,setFilterText:I,onRowsPerPageChange:We,rowsPerPage:Le,rowsPerPageOptions:h,page:pe,count:U,onPageChange:De,actions:p,extraTools:l,grouping:de,setGroupAnchorEl:qe,showSummary:G,setShowSummary:V,setAnchorEl:Ee,setSummaryAnchorEl:Y,handleExport:Yt,showCreateButton:It,onOpenCreateDialog:Fr,showEditButton:xo,onOpenEditDialog:Nr,editDisabled:qt.length!==1,showDeleteButton:yt,onOpenDeleteConfirm:lr,deleteDisabled:qt.length===0,onLayoutSave:w||d?.variantService&&d?.appId?N:void 0,loading:u,layoutManager:ce,onOpenGraphReport:Ie?Te:void 0}),jsx(nu,{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:ot,collisionDetection:closestCenter,onDragEnd:ro,modifiers:[restrictToHorizontalAxis],children:jsxs(rx,{sx:{minWidth:g?750:"auto",width:g?"100%":"auto",tableLayout:Object.keys(le).length>0?"fixed":"auto",borderCollapse:"separate",borderSpacing:0,"& .MuiTableCell-root":{fontSize:o}},"aria-labelledby":"tableTitle",size:"small",stickyHeader:true,children:[jsx(Bi,{columns:P,visibleColumns:D,order:v,orderBy:M,onRequestSort:Pe,onContextMenu:Ht,selectionMode:n,grouping:de,isAllExpanded:j,handleToggleAll:$,rowCount:Fe.length,numSelected:i.length,onSelectAllClick:et,columnWidths:le,onColumnResize:be}),jsx(Qd,{visibleRows:ht,columns:P,visibleColumns:D,selectionMode:n,selected:i,orderBy:M,loading:u,expandedGroups:re,toggleGroupExpand:Ce,handleExpandGroupRecursively:Z,handleCollapseGroupRecursively:te,isGroupFullyExpanded:ke,handleClick:Ge,onSelectionChange:s,grouping:de,rowKeyProp:C,page:pe,rowsPerPage:Le}),G&&jsx(Jd,{showSummary:G,columns:P,visibleColumns:D,summaryRow:_e,selectionMode:n?.toString(),grouping:de,orderBy:M,zIndex:3})]})})})]}),It&&jsxs(Jp,{open:Br,onClose:ir,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:H=>`1px solid ${H.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(eu,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:b?.title||t("quickCreate.createWithTitle",{title:S})}),jsx(tu,{sx:{pt:"8px !important"},children:jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[na.map(H=>{let J=H.type==="number"||H.numeric?"number":H.type==="date"?"date":"text",Q=H.label||H.id;return jsx(au,{label:Q,value:oa[H.id]??"",onChange:at=>Lr(H.id,at.target.value),type:J,size:"small",fullWidth:true,InputLabelProps:{shrink:J==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-create-${H.id}`)}),b?.description&&jsx(ru,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:b.description})]})}),jsxs(ou,{sx:{px:3,pb:2},children:[jsx(gl,{onClick:ir,sx:{fontSize:"0.85rem"},disabled:no,children:b?.cancelLabel||t("common.cancel")}),jsx(gl,{onClick:zr,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:no,children:b?.submitLabel||t("common.save")})]})]}),xo&&jsxs(Jp,{open:io,onClose:lo,fullWidth:true,maxWidth:"sm",slotProps:{paper:{sx:{borderRadius:2,border:H=>`1px solid ${H.palette.divider}`,bgcolor:"background.paper"}}},children:[jsx(eu,{sx:{fontSize:"0.85rem",fontWeight:700,pb:1},children:T?.title||t("quickEdit.editWithTitle",{title:S})}),jsx(tu,{sx:{pt:"8px !important"},children:jsxs(Xn,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ma.map(H=>{let J=H.type==="number"||H.numeric?"number":H.type==="date"?"date":"text",Q=H.label||H.id,at=Ao(H.id);return jsx(au,{label:Q,value:Go[H.id]??"",onChange:W=>Vr(H.id,W.target.value),type:J,size:"small",fullWidth:true,disabled:!at,InputLabelProps:{shrink:J==="date"?true:void 0,sx:{fontSize:"0.85rem"}},InputProps:{sx:{fontSize:"0.85rem"}}},`quick-edit-${H.id}`)}),T?.description&&jsx(ru,{severity:"info",sx:{fontSize:"0.85rem","& .MuiAlert-message":{fontSize:"0.85rem"}},children:T.description})]})}),jsxs(ou,{sx:{px:3,pb:2},children:[jsx(gl,{onClick:lo,sx:{fontSize:"0.85rem"},disabled:je,children:T?.cancelLabel||t("common.cancel")}),jsx(gl,{onClick:Or,variant:"contained",sx:{fontSize:"0.85rem",fontWeight:700},disabled:je||!Mo,children:T?.submitLabel||t("common.save")})]})]}),yt&&jsx(An,{open:tr,type:"warning",title:A?.title||t("quickDelete.confirmTitle"),message:A?.message||(qt.length>1?t("quickDelete.confirmMessageMultiple",{count:qt.length}):t("quickDelete.confirmMessageSingle")),confirmText:A?.confirmText||t("common.delete"),cancelText:A?.cancelText||t("common.cancel"),onClose:sa,onConfirm:Aa}),Se,Ie&&jsx(Ji,{open:Me,onClose:Ne,model:F,aiAssistant:y?.aiAssistant,interaction:Re?{enabled:true,filters:Ve.filters,fieldMapping:x,onPrimaryDimensionClick:H=>Ve.setFilter("primaryDimension",H),onSecondaryDimensionClick:H=>Ve.setFilter("secondaryDimension",H),onStatusClick:H=>Ve.setFilter("status",H),onClearFilter:Ve.clearFilter,onClearAll:Ve.clearAll}:void 0,tableContent:jsx($a,{appId:ne||"graph-report-internal",title:t("graph.dataBody"),columns:K,rows:F.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false}})})]})},MM=$a;var NM=({id:e,title:t,hideHeader:o=true,filterConfig:a,tableProps:r,children:n,spacing:i=1,mode:s="separated"})=>{let p=a?{...a,appId:a.appId||e}:void 0,l={...r,appId:r.appId||e};return jsxs(qd,{title:t,hideHeader:o,children:[jsxs(Stack,{spacing:i,sx:{height:"100%",overflow:"hidden"},children:[s==="separated"&&p&&jsx(Box,{sx:{flexShrink:0},children:jsx(ma,{...p})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:jsx($a,{...l,fitContainer:true,filterConfig:s==="integrated"?p:void 0})})]}),n]})};var GM=({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:p}=ee(),[l,c]=useState(false),[g,f]=useState([]),[u,h]=useState({}),[w,d]=useState(e.variants||[]),[C,m]=useState(e.layout||null),[y,b]=useState(""),[T,A]=useState(0),[R,S]=useState(0),[B,P]=useState(o),[v,M]=useState([]),[k,I]=useState("asc"),[D,G]=useState("");useEffect(()=>{let le={};e.filters.forEach(Be=>{Be.defaultValue!==void 0&&(le[Be.id]=Be.defaultValue);}),h(le);},[e.filters]);let V=useCallback(async(le,Be,Ee,Ue,ot)=>{c(true);try{let Fe={...le,page:Be+1,limit:Ee,sort:ot,order:Ue},_e;t?_e=await t(Fe):typeof e.api=="function"?_e=await e.api(Fe):e.api&&typeof e.api=="object"?(console.log("Fetching from URL:",e.api.url,Fe),_e={rows:[],total:0}):(console.warn("No API configured for report"),_e={rows:[],total:0}),_e&&(f(_e.rows||[]),A(_e.total||0));}catch(Fe){console.error("Failed to fetch report data",Fe);}finally{c(false);}},[e.api,t]);useEffect(()=>{V(u,R,B,k,D);},[V,R,B,k,D]);let X=()=>{S(0),V(u,0,B,k,D);},de=le=>{S(0),P(le);},oe=(le,Be)=>{I(Be),G(le);},re=le=>{h(le);},_=le=>{b(le?.id||"");let Be=Yp(le,r);if(Be){let Ue=Be.values??Be;h(Ue),V(Ue,0,B,k,D),S(0);}let{layout:Ee}=ul(le,r);Ee&&m(Ee);},qe=le=>{let Be={...le,id:Date.now().toString(),createdAt:new Date().toISOString()};d(Ee=>[...Ee,Be]);},it=le=>{m(le);};return {pageProps:{id:e.id,title:e.title,mode:n,filterConfig:{appId:e.id,tableKey:r,fields:e.filters,filters:u,onFilterChange:re,onSearch:X,onVariantLoad:_,onVariantSave:qe,onVariantDelete:le=>d(Be=>Be.filter(Ee=>Ee.id!==le)),onVariantSetDefault:le=>{d(Be=>Be.map(Ee=>({...Ee,isDefault:Ee.id===le})));},variants:w,currentVariantId:y,variantService:s,serviceUrl:i},tableProps:{appId:e.id,tableKey:r,columns:e.columns,rows:g,loading:l,rowKey:"id",count:T,page:R,rowsPerPage:B,rowsPerPageOptions:a,onPageChange:S,onRowsPerPageChange:de,selectionMode:"multiple",selected:v,onSelectionChange:M,onLayoutSave:it,layout:C,title:e.title,showSummary:true,order:k,orderBy:D,serviceUrl:i,onSortChange:oe,graphReport:e.graphReport||{enabled:true,title:`${e.title} ${p("graph.reportTitle")}`}}},filters:u,rows:g,loading:l,refresh:X}};var fx=e=>[...e].sort((t,o)=>o.value-t.value),qM=({bars:e=[],lines:t=[],combos:o=[],heatmap:a=[],pies:r=[],waterfalls:n=[]})=>{let i=useMemo(()=>fx(e),[e]),s=useMemo(()=>[...t],[t]),p=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:p,heatmap:l,pies:c,waterfalls:g}};var YM=({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]),QM=({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),p=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(kx,{fontSize:"inherit"}):jsx(Cx,{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?p.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 Px=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},Rx=async e=>new Function("m","return import(m)")(e),Qn=({expression:e,inline:t=false,allowKatex:o=false})=>{let a=useMemo(()=>Px(e),[e]),[r,n]=useState("");return useEffect(()=>{let i=true;return (async()=>{if(!o||!a){n("");return}try{let p=await Rx("katex"),c=(p?.default||p)?.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 Lx=async e=>new Function("m","return import(m)")(e),cc=({code:e,title:t="Mermaid Diagram",height:o=320,enabled:a=true})=>{let[r,n]=useState(""),[i,s]=useState(""),[p,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 Lx("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),d=typeof w=="string"?w:w?.svg;g&&typeof d=="string"&&n(d);}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:[p&&jsx(Box,{sx:{minHeight:120,display:"flex",alignItems:"center",justifyContent:"center"},children:jsx(CircularProgress,{size:20})}),!p&&r&&jsx(Box,{sx:{maxHeight:o,overflow:"auto","& svg":{display:"block",mx:"auto",maxWidth:"100%",height:"auto"}},dangerouslySetInnerHTML:{__html:r}}),!p&&!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 dc=e=>e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(o=>o.trim()),Gx=e=>/^:?-{3,}:?$/.test(e.trim()),Ux=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=dc(t[0]),a=dc(t[1]);if(o.length===0||a.length!==o.length||!a.every(Gx))return null;let r=a.map(Ux),n=t.slice(2).filter(i=>i.includes("|")).map(i=>{let s=dc(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}},pc=({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(Yx,{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 mc=/(\*\*[^*]+\*\*|`[^`]+`|\[[^\]]+\]\([^)]+\)|\*[^*]+\*|\$[^$\n]+\$)/g,vl=e=>e.trim().startsWith("```"),fu=e=>/^#{1,6}\s+/.test(e.trim()),gc=e=>/^[-*+]\s+/.test(e.trim()),fc=e=>/^\d+\.\s+/.test(e.trim()),hu=e=>/^(?:-{3,}|\*{3,}|_{3,})$/.test(e.trim()),hc=e=>e.trim().startsWith(">"),yu=(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())},bu=e=>e.trim().startsWith("<think>")||e.trim()===":::think",ti=(e,t,o)=>{let a=[],r=0,n=0;mc.lastIndex=0;let i=mc.exec(e);for(;i;){i.index>r&&a.push(e.slice(r,i.index));let s=i[0],p=`${o}-${n}`;if(s.startsWith("**")&&s.endsWith("**"))a.push(jsx("strong",{children:s.slice(2,-2)},p));else if(s.startsWith("*")&&s.endsWith("*"))a.push(jsx("em",{children:s.slice(1,-1)},p));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)},p));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]},p)):a.push(s);}else s.startsWith("$")&&s.endsWith("$")&&t.enableMath?a.push(jsx(Qn,{expression:s,inline:true,allowKatex:true},p)):a.push(s);r=i.index+s.length,n+=1,i=mc.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 p=e??t??"",l=useMemo(()=>{let c=[],g=p.replace(/\r\n/g,`
6
6
  `).split(`
7
- `),f={enableMath:a},u=0;for(;u<g.length;){let h=g[u],T=h.trim();if(!T){u+=1;continue}if(n&&Yp(h)){if(T.startsWith("<think>")){let m=[],y=h;for(;;){let x=y.indexOf("<think>"),S=x>=0?y.slice(x+7):y,A=S.indexOf("</think>");if(A>=0){m.push(S.slice(0,A)),u+=1;break}if(m.push(S),u+=1,u>=g.length)break;y=g[u];}c.push(jsx(ps,{content:m.join(`
8
- `).trim()},`think-tag-${u}`));continue}u+=1;let C=[];for(;u<g.length&&g[u].trim()!==":::";)C.push(g[u]),u+=1;u<g.length&&g[u].trim()===":::"&&(u+=1),c.push(jsx(ps,{content:C.join(`
9
- `).trim()},`think-fence-${u}`));continue}if(us(h)){let C=T.slice(3).trim().toLowerCase(),m=[];for(u+=1;u<g.length&&!us(g[u]);)m.push(g[u]),u+=1;u<g.length&&us(g[u])&&(u+=1);let y=m.join(`
10
- `);if(r&&C==="mermaid"){c.push(jsx(Ql,{code:y},`mermaid-${u}`));continue}if(a&&["math","latex","katex"].includes(C)){c.push(jsx(Kn,{expression:y,allowKatex:true},`math-fence-${u}`));continue}c.push(jsx(Un,{code:y,language:C||"text",copyable:i,showLineNumbers:l,wrapLongLines:true},`code-${u}`));continue}if(a&&T.startsWith("$$")){let C=[];if(T.endsWith("$$")&&T!=="$$")C.push(T.slice(2,-2)),u+=1;else {let y=h.slice(h.indexOf("$$")+2);for(y.trim()&&C.push(y),u+=1;u<g.length;){let x=g[u],S=x.indexOf("$$");if(S>=0){C.push(x.slice(0,S)),u+=1;break}C.push(x),u+=1;}}c.push(jsx(Kn,{expression:C.join(`
11
- `).trim(),allowKatex:true},`math-${u}`));continue}if(jp(h)){let C=Math.min(6,h.match(/^#{1,6}/)?.[0]?.length||1),m=h.replace(/^#{1,6}\s+/,""),y=C===1?"h5":C===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:y,sx:{mt:C===1?1.2:.8,mb:.5,fontWeight:700},children:jn(m,f,`h-${u}`)},`heading-${u}`)),u+=1;continue}if(Zp(h)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${u}`)),u+=1;continue}if(Xp(g,u)){let C=u+2;for(;C<g.length&&g[C].trim()&&g[C].includes("|");)C+=1;let m=g.slice(u,C).join(`
12
- `),y=cs(m);if(y){c.push(jsx(ec,{table:y},`table-${u}`)),u=C;continue}}if(nc(h)){let C=[];for(;u<g.length&&nc(g[u]);)C.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:C.map((m,y)=>jsxs(Fragment$1,{children:[y>0&&jsx("br",{}),jn(m,f,`q-${u}-${y}`)]},`quote-line-${y}`))})},`quote-${u}`));continue}if(ac(h)){let C=[];for(;u<g.length&&ac(g[u]);)C.push(g[u].trim().replace(/^[-*+]\s+/,"")),u+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:C.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:jn(m,f,`ul-${u}-${y}`)})},`ul-item-${y}`))},`ul-${u}`));continue}if(rc(h)){let C=[];for(;u<g.length&&rc(g[u]);)C.push(g[u].trim().replace(/^\d+\.\s+/,"")),u+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:C.map((m,y)=>jsx(Box,{component:"li",sx:{mb:.45},children:jsx(Typography,{variant:"body2",children:jn(m,f,`ol-${u}-${y}`)})},`ol-item-${y}`))},`ol-${u}`));continue}let d=[];for(;u<g.length;){let C=g[u],m=C.trim();if(!m||us(C)||jp(C)||Zp(C)||ac(C)||rc(C)||nc(C)||Xp(g,u)||n&&Yp(C)||a&&m.startsWith("$$"))break;d.push(C),u+=1;}d.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:d.map((C,m)=>jsxs(Fragment$1,{children:[m>0&&jsx("br",{}),jn(C,f,`p-${u}-${m}`)]},`p-line-${m}`))},`p-${u}`)):u+=1;}return c},[p,a,r,n,i,l]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:s})};var WM=(e,t)=>jsx(Zn,{markdown:e,...t});var eu=({value:e,onChange:t,onSubmit:o,onVoiceInput:a,onClear:r,placeholder:n,statusText:i,loading:l=false,compact:p=false,showStatusText:s=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:p?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:p?38:44},children:[jsx(xp,{sx:{fontSize:p?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:p?"0.84rem":"0.9rem"}}),e&&r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Uh,{sx:{fontSize:p?16:18}})}),a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Qh,{sx:{fontSize:p?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:l||!e.trim(),children:jsx(ey,{sx:{fontSize:p?16:18}})})]}),s&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var tu=(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)]})},ms=({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:tu(a.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:r?tu(r,t):a.value})]},a.id)})})]})};var dc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",fs=e=>e.trim().toLowerCase(),Mx=(e,t)=>{let o=[];return e.forEach(a=>{a.fields.forEach(r=>{let n=r.searchableText||dc(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:fs(`${a.title} ${r.label} ${n}`)});});}),t.forEach(a=>{(a.fields||[]).forEach(r=>{let n=r.searchableText||dc(r.value),i={source:"tab",sourceId:a.id,sourceTitle:a.label,fieldId:r.id,fieldLabel:r.label,fieldValue:n};o.push({hit:i,text:fs(`${a.label} ${r.label} ${n}`)});}),(a.sections||[]).forEach(r=>{r.fields.forEach(n=>{let i=n.searchableText||dc(n.value),l={source:"tab",sourceId:a.id,sourceSectionId:r.id,sourceTitle:`${a.label} / ${r.title}`,fieldId:n.id,fieldLabel:n.label,fieldValue:i};o.push({hit:l,text:fs(`${a.label} ${r.title} ${n.label} ${i}`)});});});}),o},ou=({sections:e,tabs:t=[],defaultTabId:o,ai:a})=>{let{t:r}=Q(),[n,i]=useState(""),[l,p]=useState(o||t[0]?.id),[s,c]=useState("idle"),[g,f]=useState([]),[u,h]=useState(""),[T,d]=useState(""),[C,m]=useState(false),y=useMemo(()=>Mx(e,t),[e,t]);useEffect(()=>{if(t.length===0){p(void 0);return}t.some(E=>E.id===l)||p(o||t[0]?.id);},[t,l,o]);let x=useCallback(()=>{c("idle"),f([]),h(""),d("");},[]),S=useCallback(w=>{i(w),w.trim()||(c("idle"),f([]),h(""),d(""));},[]),A=useCallback(w=>{let E=fs(w);return E?y.filter(P=>P.text.includes(E)).map(P=>P.hit):[]},[y]),R=useCallback(async()=>{let w=n.trim();if(!w)return;m(true);let E=A(w);if(f(E),E.length>0){c("search"),d(""),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 v=await a.onSubmit(w,{query:w,hits:E,activeTabId:l,sections:e,tabs:t});d(typeof v=="string"?v:"");}finally{m(false);}return}c("search"),d(""),h(r("detail.searchAi.noMatch")),m(false);},[n,A,r,a,l,e,t]);return {query:n,setQuery:S,activeTabId:l,setActiveTabId:p,searchMode:s,hits:g,statusText:u,aiResponse:T,searching:C,handleSubmit:R,clearResult:x}};var yA=({title:e,subtitle:t,sections:o,tabs:a=[],defaultTabId:r,table:n,ai:i,rightHeaderSlot:l,searchBarWidth:p=460,onClose:s,closeLabel:c="Close"})=>{let{t:g}=Q(),{query:f,setQuery:u,activeTabId:h,setActiveTabId:T,searchMode:d,hits:C,statusText:m,aiResponse:y,searching:x,handleSubmit:S,clearResult:A}=ou({sections:o,tabs:a,defaultTabId:r,ai:i}),R=useMemo(()=>a.find(P=>P.id===h)||a[0],[a,h]),w=useCallback(P=>{let v=M=>{let k=document.getElementById(P);if(k){k.scrollIntoView({behavior:"smooth",block:"center"});return}M<4&&setTimeout(()=>v(M+1),60);};requestAnimationFrame(()=>v(0));},[]),E=useCallback((P,v)=>{if(a.some(M=>M.id===P)){T(P),w(v?`detail-tab-${P}-section-${v}`:`detail-tab-${P}`);return}w(`detail-section-${P}`);},[a,T,w]);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:p},maxWidth:"100%",minWidth:{md:320}},children:jsx(eu,{value:f,onChange:u,onSubmit:S,onVoiceInput:i?.onVoiceInput,onClear:()=>{u(""),A();},placeholder:i?.placeholder||g("detail.searchAi.placeholder"),statusText:m,loading:x,compact:true,showStatusText:false})}),s&&jsx(Tooltip,{title:c,children:jsx(IconButton,{size:"small",onClick:s,children:jsx(zx,{fontSize:"small"})})}),l]})]}),m&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:m}),d==="search"&&C.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:C.length})}),jsx(Stack,{spacing:.35,children:C.slice(0,8).map(P=>jsx(Box,{component:"button",type:"button",onClick:()=>E(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}`))})]}),d==="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(Zn,{markdown:y})})]}),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(ms,{section:P,highlightQuery:f})},P.id))}),a.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:R?.id||false,onChange:(P,v)=>T(v),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:a.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-${R?.id||""}`}),R?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:R.description}),R?.content?R.content:jsxs(Stack,{spacing:1.5,children:[(R?.sections||[]).map(P=>jsx(Box,{id:`detail-tab-${R?.id}-section-${P.id}`,children:jsx(ms,{section:P,highlightQuery:f})},P.id)),R?.fields&&R.fields.length>0&&jsx(ms,{section:{id:`${R.id}-fields`,title:R.label,fields:R.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx(Va,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var iu=({bucket:e,cardCount:t,highlighted:o=false,children:a,emptyLabel:r,maxHeight:n,sx:i})=>{let{t:l}=Q();return jsx(Paper,{sx:[p=>{let s=e.accentColor??p.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(s,o?.58:p.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(p.palette.background.paper,p.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(s,.22)}`:`0 10px 28px ${alpha(p.palette.common.black,p.palette.mode==="dark"?.18:.08)}`,transition:"border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease","&::before":{content:'""',display:"block",height:4,bgcolor:s}}},...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:`${l("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:l("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:p=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(p.palette.divider,.9)}`,bgcolor:p.palette.mode==="dark"?alpha(p.palette.common.white,.02):alpha(p.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??l("kanban.empty")})})})]})})};var $x={success:"success",warning:"warning",info:"info",error:"error"},Hx={critical:"error",high:"warning",medium:"info",low:"success"},Gx=(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}},Ux=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",uc=({card:e,bucket:t,dragging:o=false,overlay:a=false,onClick:r,sx:n})=>{let{t:i}=Q(),l=!!(r&&t),p=e.tone??(e.priority?Hx[e.priority]:"default"),s=p==="default"?"primary":$x[p],c=t?{card:e,bucket:t}:void 0;return jsx(Paper,{onClick:l?()=>c&&r?.(c):void 0,onKeyDown:l?g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),c&&r?.(c));}:void 0,role:l?"button":void 0,tabIndex:l?0:void 0,sx:[g=>{let f=p==="default"?g.palette.primary.main:g.palette[s].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:l?"pointer":"default",opacity:o?.5:1,"&::before":{content:'""',position:"absolute",inset:"0 auto 0 0",width:4,bgcolor:f},"&:hover":l?{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:s,label:Gx(e.priority,i),variant:p==="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:s,sx:{height:8,borderRadius:999}})]}),(e.tags?.length||e.assignee||e.dueDate||e.footer||l)&&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??Ux(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})]}),l&&jsx(Typography,{sx:{fontSize:"0.72rem",color:"primary.main",fontWeight:700,whiteSpace:"nowrap"},children:i("kanban.card.openDetail")})]}),e.footer]})]})})};var qx=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,cu=({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}})}},No=(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}}},bs=(e,t)=>{let o=No(e,t.cardId);if(!o)return e;let a=e.buckets.findIndex(s=>s.id===t.toBucketId);if(a<0)return e;let r=e.buckets.map(s=>({...s,cards:s.cards.map(c=>({...c}))})),n=r[o.bucketIndex],[i]=n.cards.splice(o.cardIndex,1);if(!i)return e;let l=r[a],p=qx(t.targetIndex??l.cards.length,l.cards.length);return l.cards.splice(p,0,{...i,bucketId:t.toBucketId}),{buckets:r.map(s=>({...s,cards:s.cards.map((c,g)=>({...c,bucketId:s.id,position:g}))}))}};var mc="kanban-card|",gc="kanban-bucket|",mu=e=>`${mc}${e}`,n0=e=>`${gc}${e}`,xs=e=>e?.startsWith(mc)?e.slice(mc.length):void 0,uu=e=>e?.startsWith(gc)?e.slice(gc.length):void 0,i0=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:a,attributes:r,listeners:n,transform:i,transition:l,isDragging:p}=useSortable({id:mu(e.id)}),s={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:l,zIndex:p?2:1,touchAction:"none",cursor:p?"grabbing":"grab"};return jsx(Box,{ref:a,style:s,...r,...n,children:jsx(uc,{card:e,bucket:t,dragging:p,onClick:o})})},s0=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:a,onCardClick:r})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:n0(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(iu,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:a,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(l=>mu(l.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(l=>jsx(i0,{card:l,bucket:e,onCardClick:r},l.id))})})})})},VA=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:a=320,bucketMaxHeight:r,emptyBucketLabel:n,sx:i})=>{let[l,p]=useState(null),[s,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>l?No(e,l):void 0,[l,e]),u=useCallback(()=>{p(null),c(void 0);},[]),h=useCallback(m=>{if(!m)return;let y=xs(m);return y?No(e,y)?.bucket.id:uu(m)},[e]),T=useCallback(m=>{p(xs(String(m.active.id))??null);},[]),d=useCallback(m=>{c(h(m.over?String(m.over.id):void 0));},[h]),C=useCallback(m=>{let y=xs(String(m.active.id)),x=m.over?String(m.over.id):void 0;if(!y||!x){u();return}let S=No(e,y);if(!S){u();return}let A=S.bucket.id,R=S.cardIndex,w=xs(x);if(w){let v=No(e,w);if(!v){u();return}A=v.bucket.id,R=v.cardIndex;}else {let v=uu(x),M=e.buckets.find(k=>k.id===v);if(!v||!M){u();return}A=v,R=M.cards.length;}if(S.bucket.id===A&&S.cardIndex===R){u();return}let E=bs(e,{cardId:y,fromBucketId:S.bucket.id,toBucketId:A,targetIndex:R}),P=No(E,y);P&&!(P.bucket.id===S.bucket.id&&P.cardIndex===S.cardIndex)&&t?.({cardId:y,fromBucketId:S.bucket.id,toBucketId:P.bucket.id,targetIndex:P.cardIndex,card:P.card,model:E}),u();},[e,t,u]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:T,onDragOver:d,onDragEnd:C,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(s0,{bucket:m,highlighted:m.id===s,bucketMaxHeight:r,emptyBucketLabel:n,onCardClick:o},m.id))}),jsx(DragOverlay,{children:f?jsx(Box,{sx:{width:Math.max(a-24,260)},children:jsx(uc,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var p0=({initialModel:e,initialBuckets:t,initialCards:o})=>e||cu({buckets:t??[],cards:o??[]}),GA=e=>{let{onCardMove:t,onCardClick:o}=e,[a,r]=useState(()=>p0(e)),n=useCallback(c=>{r(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>No(a,c),[a]),l=useCallback((c,g,f)=>{let u=No(a,c);if(!u)return;let h=bs(a,{cardId:c,fromBucketId:u.bucket.id,toBucketId:g,targetIndex:f}),T=No(h,c);if(!T||T.bucket.id===u.bucket.id&&T.cardIndex===u.cardIndex)return;r(h);let d={cardId:c,fromBucketId:u.bucket.id,toBucketId:T.bucket.id,targetIndex:T.cardIndex,card:T.card,model:h};return t?.(d),d},[a,t]),p=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})}))}));},[]),s=useMemo(()=>({model:a,onCardMove:c=>{l(c.cardId,c.toBucketId,c.targetIndex);},onCardClick:o}),[a,l,o]);return {model:a,actions:{replaceModel:n,moveCard:l,updateCard:p,getCard:i},boardProps:s}};var yu=64,I0="#E9EDF2",P0="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",R0=["en","zh","fr","de","ja","ko"],bu={en:"EN",zh:"\u4E2D\u6587",fr:"FR",de:"DE",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4"},Ss=({appTitle:e,logo:t,mode:o="dark",onToggleMode:a,locale:r,localeLabel:n,localeOptions:i,onLocaleChange:l,searchPlaceholder:p,onSearch:s,user:c,onUserSetting:g,onUserLogout:f,userMenuItems:u,leftSlot:h,rightSlot:T})=>{let{t:d,locale:C}=Q(),y=useTheme().palette.mode==="dark",[x,S]=useState(""),[A,R]=useState(null),[w,E]=useState(null),P=X=>{X.preventDefault(),s&&s(x.trim());},v=o==="system"?jsx(C0,{fontSize:"small"}):o==="dark"?jsx(k0,{fontSize:"small"}):jsx(S0,{fontSize:"small"}),M=d(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),k=r||C,I=i&&i.length>0?i:R0,D=n||bu[k]||k.toUpperCase(),G=!!A,$=p||d("header.searchPlaceholder"),ee=!!w,me=[{key:"setting",label:d("header.menu.setting"),icon:jsx(Xy,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:d("header.menu.logout"),icon:jsx(T0,{sx:{fontSize:18}}),onClick:f}],oe=u&&u.length>0?u:me,re=X=>{E(null),X?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:X=>({top:0,zIndex:X.zIndex.drawer+10,height:yu,backgroundColor:X.palette.mode==="dark"?"#0D0D0D":I0,backgroundImage:X.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%)",P0,"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:X.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(15,23,42,0.12)"}),children:[jsxs(Toolbar,{sx:{minHeight:`${yu}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:P,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:x,onChange:X=>S(X.target.value),placeholder:$,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(xp,{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:[l?jsxs(Fragment,{children:[jsx(IconButton,{size:"small",onClick:X=>R(X.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(hu,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:D})]})}),jsx(Menu,{anchorEl:A,open:G,onClose:()=>R(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:I.map(X=>jsx(MenuItem,{selected:X===k,onClick:()=>{l(X),R(null);},sx:{fontSize:"0.82rem"},children:bu[X]},X))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(hu,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:D})]}),jsx(IconButton,{size:"small",sx:{color:y?"common.white":"#111827"},onClick:a,title:M,children:v}),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:X=>E(X.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()})})]}),T]})]}),c&&jsx(Menu,{anchorEl:w,open:ee,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:oe.map(X=>jsxs(MenuItem,{disabled:X.disabled,onClick:()=>re(X.onClick),children:[X.icon&&jsx(ListItemIcon,{children:X.icon}),jsx(ListItemText,{primary:X.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},X.key))})]})};var xu=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=Sd({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 m2=({appTitle:e,menuData:t=[],children:o,showNavigation:a=true,locale:r="en",localeLabel:n,localeOptions:i,onLocaleChange:l,user:p,onUserSetting:s,onUserLogout:c,userMenuItems:g,logo:f,onSearch:u,rightHeaderSlot:h,leftHeaderSlot:T,contentSx:d})=>{let C="orbcafe:page-layout-mode",[m,y]=useState("system"),[x,S]=useState("light"),[A,R]=useState(false),w=m==="system"?A?x:"light":m;useEffect(()=>{try{let I=window.localStorage.getItem(C);(I==="light"||I==="dark"||I==="system")&&y(I);}catch{}R(true);let M=window.matchMedia("(prefers-color-scheme: dark)"),k=()=>{S(M.matches?"dark":"light");};return k(),M.addEventListener("change",k),()=>M.removeEventListener("change",k)},[]),useEffect(()=>{if(A)try{window.localStorage.setItem(C,m);}catch{}},[A,m]),useEffect(()=>{w==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[w]);let E=useMemo(()=>createTheme({palette:{mode:w}}),[w]),{navigationIslandProps:P,navigationMaxHeight:v}=xu({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:E,children:jsx(ki,{locale:r,children:jsxs(Box,{sx:M=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:M.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":M.palette.background.default}),children:[jsx(Ss,{appTitle:e,logo:f,mode:m,onToggleMode:()=>y(M=>M==="system"?"dark":M==="dark"?"light":"system"),locale:r,localeLabel:n,localeOptions:i,onLocaleChange:l,user:p,onUserSetting:s,onUserLogout:c,userMenuItems:g,onSearch:u,leftSlot:T,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(Cd,{...P,maxHeight:v,colorMode:w})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...d},children:o})]})]})})})};var Ts="(blank)",Cu="Result",ku="Grand Total",Su={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},wu=["sum","count","avg","min","max"];var Tu=["palette","rows","columns","filters","values"];var Iu=e=>Tu.includes(e),Pu=e=>e==="rows"||e==="columns"||e==="filters",Is=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&Iu(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&Iu(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},fa=e=>e==null||e===""?Ts:e instanceof Date?e.toISOString().slice(0,10):String(e),yr=e=>JSON.stringify(e),Ru=(e,t)=>{let o=e.join(""),a=t.join("");return o.localeCompare(a,void 0,{sensitivity:"base"})},z0=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},on=(e,t,o)=>{if(o==="count")return e.length;let a=e.map(r=>z0(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)},wt=(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},ha=(e,t)=>e.length!==t.length?false:e.every((o,a)=>o===t[a]),Du=(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 ha(n,i)})},Ps=(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}),xc=e=>!e?.aggregations||e.aggregations.length===0?wu:e.aggregations,_t=(e,t)=>{let o=xc(t);return e&&o.includes(e)?e:t?.type==="number"&&o.includes("sum")?"sum":o.includes("count")?"count":o[0]},oi=(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 Bu=({options:e,selectedValues:t,onChange:o,minWidth:a=96})=>{let{t:r}=Q(),[n,i]=useState(""),l=useMemo(()=>{let s=n.trim().toLowerCase();return s?e.filter(c=>c.toLowerCase().includes(s)):e},[e,n]),p=e.length>0&&t.length===e.length;return jsx(FormControl,{size:"small",sx:{minWidth:a},children:jsxs(Select,{multiple:true,value:t,onChange:s=>{let c=s.target.value,g=typeof c=="string"?c.split(","):c;o(g);},onClick:s=>s.stopPropagation(),onMouseDown:s=>s.stopPropagation(),renderValue:s=>{let c=s;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:s=>({bgcolor:"background.paper",py:.8,lineHeight:"normal",borderBottom:`1px solid ${s.palette.divider}`}),children:jsx(TextField,{size:"small",placeholder:`${r("common.search")}...`,fullWidth:true,value:n,onChange:s=>i(s.target.value),onKeyDown:s=>s.stopPropagation(),onClick:s=>s.stopPropagation(),sx:{m:0,"& .MuiInputBase-input":{fontSize:"0.75rem",py:.7}}})}),jsx(Box,{sx:s=>({px:1.5,py:.5,borderBottom:`1px solid ${s.palette.divider}`,bgcolor:"background.paper"}),onMouseDown:s=>{s.preventDefault(),s.stopPropagation();},onClick:s=>{s.preventDefault(),s.stopPropagation();},children:jsx(Button,{variant:"text",size:"small",onClick:s=>{s.preventDefault(),s.stopPropagation(),o(p?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:r(p?"pivot.filter.deselectAll":"pivot.filter.selectAll")})}),l.length===0&&jsx(MenuItem,{disabled:true,sx:{fontSize:"0.75rem"},children:r("pivot.filter.noResults")}),l.map(s=>{let c=t.includes(s);return jsxs(MenuItem,{value:s,sx:{fontSize:"0.75rem",py:.25},children:[jsx(Checkbox,{size:"small",checked:c,sx:{p:.5,mr:.5}}),jsx(ListItemText,{primary:s,primaryTypographyProps:{sx:{fontSize:"0.75rem",lineHeight:1.2}}})]},s)})]})})};var Cc=({label:e,subtitle:t,isDragging:o,dragRef:a,listeners:r,attributes:n,style:i})=>jsx(Paper,{ref:a,...r,...n,sx:l=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:l.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:l=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.3,borderRadius:1,bgcolor:l.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)"}),children:jsx(j0,{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})]})]})}),Lu=({id:e,label:t,subtitle:o})=>{let{setNodeRef:a,listeners:r,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(Cc,{label:t,subtitle:o,isDragging:i,dragRef:a,listeners:r,attributes:n})};var nn=({zone:e,title:t,hint:o,icon:a,children:r,itemCount:n,onClear:i})=>{let l=`container|${e}`,{isOver:p,setNodeRef:s}=useDroppable({id:l}),{t:c}=Q();return jsxs(Paper,{ref:s,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:p?"primary.main":g.palette.divider,bgcolor:p?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(J0,{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 Nu={xs:1.2,md:1.6},ln=({title:e,subtitle:t,collapsed:o,onToggleCollapse:a,expandAriaLabel:r,collapseAriaLabel:n,children:i,bodySx:l,unmountOnExit:p=false,headerActions:s})=>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:Nu,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:[s,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(Yy,{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:p,children:jsx(Box,{sx:[{px:Nu,py:{xs:1.2,md:1.6}},...Array.isArray(l)?l:l?[l]:[]],children:i})})]});var Bs=({label:e,caption:t,onRemove:o,trailing:a,isDragging:r,dragRef:n,listeners:i,attributes:l,style:p})=>jsx(Paper,{ref:n,style:p,sx:s=>({p:1,borderRadius:2,border:"1px solid",borderColor:"divider",bgcolor:s.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,{...l,...i,sx:s=>({display:"inline-flex",alignItems:"center",justifyContent:"center",p:.25,borderRadius:1,bgcolor:s.palette.mode==="dark"?"rgba(255,255,255,0.12)":"rgba(17, 24, 39, 0.08)",cursor:"grab"}),children:jsx(j0,{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:s=>{s.stopPropagation(),o();},sx:{p:.2},children:jsx(Uh,{sx:{fontSize:16}})})]})}),ai=({id:e,label:t,caption:o,onRemove:a,trailing:r})=>{let{setNodeRef:n,attributes:i,listeners:l,transform:p,transition:s,isDragging:c}=useSortable({id:e}),g={transform:p?`translate3d(${p.x}px, ${p.y}px, 0)`:void 0,transition:s,zIndex:c?999:"auto"};return jsx(Bs,{label:t,caption:o,onRemove:a,trailing:r,isDragging:c,dragRef:n,listeners:l,attributes:i,style:g})};var Ls={rows:jsx(mv,{fontSize:"small"}),columns:jsx(Df,{fontSize:"small"}),filters:jsx(uv,{fontSize:"small"}),values:jsx(Ef,{fontSize:"small"})},Wu=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:a,filterFields:r,columnFields:n,rowFields:i,valueFields:l,clearZone:p,removeFieldFromZone:s,getFilterSelectionSummary:c,renderDimensionFilterSelect:g,renderAggregationSelect:f,getAggregationLabel:u})=>{let{t:h}=Q(),T=[`${h("pivot.zone.rows")} ${i.length}`,`${h("pivot.zone.columns")} ${n.length}`,`${h("pivot.zone.filters")} ${r.length}`,`${h("pivot.zone.values")} ${l.length}`].join(" \xB7 ");return jsx(ln,{title:h("pivot.config.title"),subtitle:T,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(nn,{zone:"palette",title:h("pivot.fieldList"),hint:h("pivot.availableDimensions"),itemCount:o.length,icon:jsx(j0,{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(d=>jsx(Lu,{id:`item|palette|${d.id}`,label:d.label,subtitle:d.type??"string"},d.id))]})}),jsxs(Stack,{spacing:2,children:[jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(nn,{zone:"filters",title:h("pivot.zone.filters"),hint:h("pivot.hint.filters"),icon:Ls.filters,itemCount:r.length,onClear:()=>p("filters"),children:jsx(SortableContext,{items:r.map(d=>`item|filters|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:r.map(d=>jsx(ai,{id:`item|filters|${d}`,label:a.get(d)?.label??d,caption:c(d),trailing:g(d),onRemove:()=>s("filters",d)},d))})})}),jsx(nn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:Ls.columns,itemCount:n.length,onClear:()=>p("columns"),children:jsx(SortableContext,{items:n.map(d=>`item|columns|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(d=>jsx(ai,{id:`item|columns|${d}`,label:a.get(d)?.label??d,caption:`${a.get(d)?.type??"dimension"} \u2022 ${c(d)}`,trailing:g(d),onRemove:()=>s("columns",d)},d))})})})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:2},children:[jsx(nn,{zone:"rows",title:h("pivot.zone.rows"),hint:h("pivot.hint.rows"),icon:Ls.rows,itemCount:i.length,onClear:()=>p("rows"),children:jsx(SortableContext,{items:i.map(d=>`item|rows|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(d=>jsx(ai,{id:`item|rows|${d}`,label:a.get(d)?.label??d,caption:`${a.get(d)?.type??"dimension"} \u2022 ${c(d)}`,trailing:g(d),onRemove:()=>s("rows",d)},d))})})}),jsx(nn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:Ls.values,itemCount:l.length,onClear:()=>p("values"),children:jsx(SortableContext,{items:l.map(d=>`item|values|${d.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:l.map(d=>{let C=a.get(d.fieldId)?.label??d.fieldId,m=`${u(d.aggregation)}(${C})`;return jsx(ai,{id:`item|values|${d.tokenId}`,label:C,caption:m,trailing:f(d),onRemove:()=>s("values",d.tokenId)},d.tokenId)})})})})]})]})]})})};var $u=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),Hu=({data:e,primaryLabel:t,secondaryLabel:o,formatPrimaryValue:a,formatSecondaryValue:r})=>{let n=useTheme$1();if(e.length===0)return null;let i=720,l=250,p={top:20,right:24,bottom:40,left:52},s=o?e.map(d=>d.primaryValue):e.map((d,C)=>C+1),c=o?e.map(d=>d.secondaryValue??0):e.map(d=>d.primaryValue),g=Math.max(...s,1),f=Math.max(...c,1),u=i-p.left-p.right,h=l-p.top-p.bottom,T=e.map((d,C)=>{let m=o?d.primaryValue:C+1,y=o?d.secondaryValue??0:d.primaryValue,x=p.left+m/g*u,S=l-p.bottom-y/f*h;return {...d,x,y:S,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} ${l}`,sx:{width:"100%",minWidth:i,height:l},children:[jsx("line",{x1:p.left,y1:l-p.bottom,x2:i-p.right,y2:l-p.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:p.left,y1:p.top,x2:p.left,y2:l-p.bottom,stroke:alpha(n.palette.text.secondary,.35)}),T.map(d=>jsxs("g",{children:[jsx("circle",{cx:d.x,cy:d.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:d.x,cy:d.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[d.name,`
7
+ `),f={enableMath:a},u=0;for(;u<g.length;){let h=g[u],w=h.trim();if(!w){u+=1;continue}if(n&&bu(h)){if(w.startsWith("<think>")){let m=[],y=h;for(;;){let b=y.indexOf("<think>"),T=b>=0?y.slice(b+7):y,A=T.indexOf("</think>");if(A>=0){m.push(T.slice(0,A)),u+=1;break}if(m.push(T),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 C=[];for(;u<g.length&&g[u].trim()!==":::";)C.push(g[u]),u+=1;u<g.length&&g[u].trim()===":::"&&(u+=1),c.push(jsx(xl,{content:C.join(`
9
+ `).trim()},`think-fence-${u}`));continue}if(vl(h)){let C=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&&C==="mermaid"){c.push(jsx(cc,{code:y},`mermaid-${u}`));continue}if(a&&["math","latex","katex"].includes(C)){c.push(jsx(Qn,{expression:y,allowKatex:true},`math-fence-${u}`));continue}c.push(jsx(Yn,{code:y,language:C||"text",copyable:i,showLineNumbers:s,wrapLongLines:true},`code-${u}`));continue}if(a&&w.startsWith("$$")){let C=[];if(w.endsWith("$$")&&w!=="$$")C.push(w.slice(2,-2)),u+=1;else {let y=h.slice(h.indexOf("$$")+2);for(y.trim()&&C.push(y),u+=1;u<g.length;){let b=g[u],T=b.indexOf("$$");if(T>=0){C.push(b.slice(0,T)),u+=1;break}C.push(b),u+=1;}}c.push(jsx(Qn,{expression:C.join(`
11
+ `).trim(),allowKatex:true},`math-${u}`));continue}if(fu(h)){let C=Math.min(6,h.match(/^#{1,6}/)?.[0]?.length||1),m=h.replace(/^#{1,6}\s+/,""),y=C===1?"h5":C===2?"h6":"subtitle1";c.push(jsx(Typography,{variant:y,sx:{mt:C===1?1.2:.8,mb:.5,fontWeight:700},children:ti(m,f,`h-${u}`)},`heading-${u}`)),u+=1;continue}if(hu(h)){c.push(jsx(Divider,{sx:{my:1.2}},`hr-${u}`)),u+=1;continue}if(yu(g,u)){let C=u+2;for(;C<g.length&&g[C].trim()&&g[C].includes("|");)C+=1;let m=g.slice(u,C).join(`
12
+ `),y=yl(m);if(y){c.push(jsx(pc,{table:y},`table-${u}`)),u=C;continue}}if(hc(h)){let C=[];for(;u<g.length&&hc(g[u]);)C.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:C.map((m,y)=>jsxs(Fragment$1,{children:[y>0&&jsx("br",{}),ti(m,f,`q-${u}-${y}`)]},`quote-line-${y}`))})},`quote-${u}`));continue}if(gc(h)){let C=[];for(;u<g.length&&gc(g[u]);)C.push(g[u].trim().replace(/^[-*+]\s+/,"")),u+=1;c.push(jsx(Box,{component:"ul",sx:{my:.8,pl:2.5},children:C.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(fc(h)){let C=[];for(;u<g.length&&fc(g[u]);)C.push(g[u].trim().replace(/^\d+\.\s+/,"")),u+=1;c.push(jsx(Box,{component:"ol",sx:{my:.8,pl:2.7},children:C.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 d=[];for(;u<g.length;){let C=g[u],m=C.trim();if(!m||vl(C)||fu(C)||hu(C)||gc(C)||fc(C)||hc(C)||yu(g,u)||n&&bu(C)||a&&m.startsWith("$$"))break;d.push(C),u+=1;}d.length>0?c.push(jsx(Typography,{variant:"body2",sx:{my:.65,lineHeight:1.65},children:d.map((C,m)=>jsxs(Fragment$1,{children:[m>0&&jsx("br",{}),ti(C,f,`p-${u}-${m}`)]},`p-line-${m}`))},`p-${u}`)):u+=1;}return c},[p,a,r,n,i,s]);return jsx(Box,{className:o,sx:{"& strong":{fontWeight:700},"& em":{fontStyle:"italic"},"& a":{wordBreak:"break-all"}},children:l})};var FA=(e,t)=>jsx(oi,{markdown:e,...t});var Cu=({value:e,onChange:t,onSubmit:o,onVoiceInput:a,onClear:r,placeholder:n,statusText:i,loading:s=false,compact:p=false,showStatusText:l=true})=>jsxs(Stack,{spacing:.75,children:[jsxs(Box,{sx:{display:"flex",alignItems:"center",gap:1,px:1.2,py:p?.25:.4,borderRadius:999,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",minHeight:p?38:44},children:[jsx(Wd,{sx:{fontSize:p?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:p?"0.84rem":"0.9rem"}}),e&&r&&jsx(IconButton,{size:"small",onClick:r,children:jsx(Jf,{sx:{fontSize:p?16:18}})}),a&&jsx(IconButton,{size:"small",onClick:a,children:jsx(Ny,{sx:{fontSize:p?16:18}})}),jsx(IconButton,{size:"small",onClick:o,disabled:s||!e.trim(),children:jsx(Oy,{sx:{fontSize:p?16:18}})})]}),l&&i&&jsx(Typography,{variant:"caption",color:"text.secondary",children:i})]});var ku=(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:ku(a.label,t)}),jsx(Typography,{component:"div",variant:"body2",sx:{mt:.2,fontWeight:500,wordBreak:"break-word"},children:r?ku(r,t):a.value})]},a.id)})})]})};var Cc=e=>e==null?"":typeof e=="string"||typeof e=="number"||typeof e=="boolean"?String(e):"",Sl=e=>e.trim().toLowerCase(),f0=(e,t)=>{let o=[];return e.forEach(a=>{a.fields.forEach(r=>{let n=r.searchableText||Cc(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||Cc(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||Cc(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},Su=({sections:e,tabs:t=[],defaultTabId:o,ai:a})=>{let{t:r}=ee(),[n,i]=useState(""),[s,p]=useState(o||t[0]?.id),[l,c]=useState("idle"),[g,f]=useState([]),[u,h]=useState(""),[w,d]=useState(""),[C,m]=useState(false),y=useMemo(()=>f0(e,t),[e,t]);useEffect(()=>{if(t.length===0){p(void 0);return}t.some(B=>B.id===s)||p(o||t[0]?.id);},[t,s,o]);let b=useCallback(()=>{c("idle"),f([]),h(""),d("");},[]),T=useCallback(S=>{i(S),S.trim()||(c("idle"),f([]),h(""),d(""));},[]),A=useCallback(S=>{let B=Sl(S);return B?y.filter(P=>P.text.includes(B)).map(P=>P.hit):[]},[y]),R=useCallback(async()=>{let S=n.trim();if(!S)return;m(true);let B=A(S);if(f(B),B.length>0){c("search"),d(""),h(r("detail.searchAi.matches",{count:B.length})),m(false);return}if(a?.enabled!==false&&a?.onSubmit){c("ai"),h(r("detail.searchAi.autoAiFallback"));try{let v=await a.onSubmit(S,{query:S,hits:B,activeTabId:s,sections:e,tabs:t});d(typeof v=="string"?v:"");}finally{m(false);}return}c("search"),d(""),h(r("detail.searchAi.noMatch")),m(false);},[n,A,r,a,s,e,t]);return {query:n,setQuery:T,activeTabId:s,setActiveTabId:p,searchMode:l,hits:g,statusText:u,aiResponse:w,searching:C,handleSubmit:R,clearResult:b}};var p2=({title:e,subtitle:t,sections:o,tabs:a=[],defaultTabId:r,table:n,ai:i,rightHeaderSlot:s,searchBarWidth:p=460,onClose:l,closeLabel:c="Close"})=>{let{t:g}=ee(),{query:f,setQuery:u,activeTabId:h,setActiveTabId:w,searchMode:d,hits:C,statusText:m,aiResponse:y,searching:b,handleSubmit:T,clearResult:A}=Su({sections:o,tabs:a,defaultTabId:r,ai:i}),R=useMemo(()=>a.find(P=>P.id===h)||a[0],[a,h]),S=useCallback(P=>{let v=M=>{let k=document.getElementById(P);if(k){k.scrollIntoView({behavior:"smooth",block:"center"});return}M<4&&setTimeout(()=>v(M+1),60);};requestAnimationFrame(()=>v(0));},[]),B=useCallback((P,v)=>{if(a.some(M=>M.id===P)){w(P),S(v?`detail-tab-${P}-section-${v}`:`detail-tab-${P}`);return}S(`detail-section-${P}`);},[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:p},maxWidth:"100%",minWidth:{md:320}},children:jsx(Cu,{value:f,onChange:u,onSubmit:T,onVoiceInput:i?.onVoiceInput,onClear:()=>{u(""),A();},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(C0,{fontSize:"small"})})}),s]})]}),m&&jsx(Typography,{variant:"caption",color:"text.secondary",sx:{mt:-0.7},children:m}),d==="search"&&C.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:C.length})}),jsx(Stack,{spacing:.35,children:C.slice(0,8).map(P=>jsx(Box,{component:"button",type:"button",onClick:()=>B(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}`))})]}),d==="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(P=>jsx(Box,{id:`detail-section-${P.id}`,children:jsx(Cl,{section:P,highlightQuery:f})},P.id))}),a.length>0&&jsxs(Paper,{variant:"outlined",sx:{borderRadius:2,overflow:"hidden"},children:[jsx(Tabs,{value:R?.id||false,onChange:(P,v)=>w(v),variant:"scrollable",scrollButtons:"auto",sx:{borderBottom:"1px solid",borderColor:"divider"},children:a.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-${R?.id||""}`}),R?.description&&jsx(Typography,{variant:"body2",color:"text.secondary",sx:{mb:1.2},children:R.description}),R?.content?R.content:jsxs(Stack,{spacing:1.5,children:[(R?.sections||[]).map(P=>jsx(Box,{id:`detail-tab-${R?.id}-section-${P.id}`,children:jsx(Cl,{section:P,highlightQuery:f})},P.id)),R?.fields&&R.fields.length>0&&jsx(Cl,{section:{id:`${R.id}-fields`,title:R.label,fields:R.fields,columns:2},highlightQuery:f})]})]})]}),n&&jsx($a,{title:n.title||g("detail.table.title"),...n.tableProps,filterConfig:void 0,fitContainer:false})]})};var Pu=({bucket:e,cardCount:t,highlighted:o=false,children:a,emptyLabel:r,maxHeight:n,sx:i})=>{let{t:s}=ee();return jsx(Paper,{sx:[p=>{let l=e.accentColor??p.palette.primary.main;return {position:"relative",minWidth:0,borderRadius:4,overflow:"hidden",border:`1px solid ${alpha(l,o?.58:p.palette.mode==="dark"?.28:.18)}`,bgcolor:alpha(p.palette.background.paper,p.palette.mode==="dark"?.92:.97),boxShadow:o?`0 18px 40px ${alpha(l,.22)}`:`0 10px 28px ${alpha(p.palette.common.black,p.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:p=>({minHeight:160,borderRadius:3,border:`1px dashed ${alpha(p.palette.divider,.9)}`,bgcolor:p.palette.mode==="dark"?alpha(p.palette.common.white,.02):alpha(p.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 I0={success:"success",warning:"warning",info:"info",error:"error"},P0={critical:"error",high:"warning",medium:"info",low:"success"},R0=(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}},D0=e=>e?e.split(/\s+/).map(t=>t.charAt(0).toUpperCase()).slice(0,2).join(""):"NA",Sc=({card:e,bucket:t,dragging:o=false,overlay:a=false,onClick:r,sx:n})=>{let{t:i}=ee(),s=!!(r&&t),p=e.tone??(e.priority?P0[e.priority]:"default"),l=p==="default"?"primary":I0[p],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=p==="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:R0(e.priority,i),variant:p==="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??D0(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 A0=(e,t)=>Number.isNaN(e)||e<0?0:e>t?t:e,Mu=({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}})}},Oo=(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}}},Il=(e,t)=>{let o=Oo(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],p=A0(t.targetIndex??s.cards.length,s.cards.length);return s.cards.splice(p,0,{...i,bucketId:t.toBucketId}),{buckets:r.map(l=>({...l,cards:l.cards.map((c,g)=>({...c,bucketId:l.id,position:g}))}))}};var wc="kanban-card|",Tc="kanban-bucket|",Fu=e=>`${wc}${e}`,U0=e=>`${Tc}${e}`,Pl=e=>e?.startsWith(wc)?e.slice(wc.length):void 0,Eu=e=>e?.startsWith(Tc)?e.slice(Tc.length):void 0,K0=({card:e,bucket:t,onCardClick:o})=>{let{setNodeRef:a,attributes:r,listeners:n,transform:i,transition:s,isDragging:p}=useSortable({id:Fu(e.id)}),l={transform:i?`translate3d(${i.x}px, ${i.y}px, 0)`:void 0,transition:s,zIndex:p?2:1,touchAction:"none",cursor:p?"grabbing":"grab"};return jsx(Box,{ref:a,style:l,...r,...n,children:jsx(Sc,{card:e,bucket:t,dragging:p,onClick:o})})},q0=({bucket:e,highlighted:t,bucketMaxHeight:o,emptyBucketLabel:a,onCardClick:r})=>{let{isOver:n,setNodeRef:i}=useDroppable({id:U0(e.id)});return jsx(Box,{ref:i,sx:{minWidth:0},children:jsx(Pu,{bucket:e,cardCount:e.cards.length,highlighted:t||n,emptyLabel:a,maxHeight:o,children:jsx(SortableContext,{items:e.cards.map(s=>Fu(s.id)),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:1,children:e.cards.map(s=>jsx(K0,{card:s,bucket:e,onCardClick:r},s.id))})})})})},B2=({model:e,onCardMove:t,onCardClick:o,minBucketWidth:a=320,bucketMaxHeight:r,emptyBucketLabel:n,sx:i})=>{let[s,p]=useState(null),[l,c]=useState(),g=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:6}}),useSensor(TouchSensor,{activationConstraint:{delay:120,tolerance:8}})),f=useMemo(()=>s?Oo(e,s):void 0,[s,e]),u=useCallback(()=>{p(null),c(void 0);},[]),h=useCallback(m=>{if(!m)return;let y=Pl(m);return y?Oo(e,y)?.bucket.id:Eu(m)},[e]),w=useCallback(m=>{p(Pl(String(m.active.id))??null);},[]),d=useCallback(m=>{c(h(m.over?String(m.over.id):void 0));},[h]),C=useCallback(m=>{let y=Pl(String(m.active.id)),b=m.over?String(m.over.id):void 0;if(!y||!b){u();return}let T=Oo(e,y);if(!T){u();return}let A=T.bucket.id,R=T.cardIndex,S=Pl(b);if(S){let v=Oo(e,S);if(!v){u();return}A=v.bucket.id,R=v.cardIndex;}else {let v=Eu(b),M=e.buckets.find(k=>k.id===v);if(!v||!M){u();return}A=v,R=M.cards.length;}if(T.bucket.id===A&&T.cardIndex===R){u();return}let B=Il(e,{cardId:y,fromBucketId:T.bucket.id,toBucketId:A,targetIndex:R}),P=Oo(B,y);P&&!(P.bucket.id===T.bucket.id&&P.cardIndex===T.cardIndex)&&t?.({cardId:y,fromBucketId:T.bucket.id,toBucketId:P.bucket.id,targetIndex:P.cardIndex,card:P.card,model:B}),u();},[e,t,u]);return jsxs(DndContext,{sensors:g,collisionDetection:closestCorners,onDragStart:w,onDragOver:d,onDragEnd:C,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(q0,{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(Sc,{card:f.card,bucket:f.bucket,overlay:true})}):null})]})};var X0=({initialModel:e,initialBuckets:t,initialCards:o})=>e||Mu({buckets:t??[],cards:o??[]}),N2=e=>{let{onCardMove:t,onCardClick:o}=e,[a,r]=useState(()=>X0(e)),n=useCallback(c=>{r(g=>typeof c=="function"?c(g):c);},[]),i=useCallback(c=>Oo(a,c),[a]),s=useCallback((c,g,f)=>{let u=Oo(a,c);if(!u)return;let h=Il(a,{cardId:c,fromBucketId:u.bucket.id,toBucketId:g,targetIndex:f}),w=Oo(h,c);if(!w||w.bucket.id===u.bucket.id&&w.cardIndex===u.cardIndex)return;r(h);let d={cardId:c,fromBucketId:u.bucket.id,toBucketId:w.bucket.id,targetIndex:w.cardIndex,card:w.card,model:h};return t?.(d),d},[a,t]),p=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:p,getCard:i},boardProps:l}};var Vu=64,pv="#E9EDF2",uv="linear-gradient(90deg, #F5F7FA 0%, #E9EDF2 50%, #F5F7FA 100%)",mv=["en","zh","fr","de","ja","ko"],Ou={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:p,onSearch:l,user:c,onUserSetting:g,onUserLogout:f,userMenuItems:u,leftSlot:h,rightSlot:w})=>{let{t:d,locale:C}=ee(),y=useTheme().palette.mode==="dark",[b,T]=useState(""),[A,R]=useState(null),[S,B]=useState(null),P=_=>{_.preventDefault(),l&&l(b.trim());},v=o==="system"?jsx(iv,{fontSize:"small"}):o==="dark"?jsx(lv,{fontSize:"small"}):jsx(sv,{fontSize:"small"}),M=d(o==="system"?"header.theme.system":o==="dark"?"header.theme.dark":"header.theme.light"),k=r||C,I=i&&i.length>0?i:mv,D=n||Ou[k]||k.toUpperCase(),G=!!A,V=p||d("header.searchPlaceholder"),X=!!S,de=[{key:"setting",label:d("header.menu.setting"),icon:jsx(Lb,{sx:{fontSize:18}}),onClick:g},{key:"logout",label:d("header.menu.logout"),icon:jsx(dv,{sx:{fontSize:18}}),onClick:f}],oe=u&&u.length>0?u:de,re=_=>{B(null),_?.();};return jsxs(AppBar,{position:"sticky",elevation:0,sx:_=>({top:0,zIndex:_.zIndex.drawer+10,height:Vu,backgroundColor:_.palette.mode==="dark"?"#0D0D0D":pv,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%)",uv,"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:`${Vu}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:P,sx:{width:"100%",maxWidth:540},children:jsx(TextField,{size:"small",fullWidth:true,value:b,onChange:_=>T(_.target.value),placeholder:V,InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Wd,{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:_=>R(_.currentTarget),sx:{color:y?"common.white":"#111827",borderRadius:1,px:.5},children:jsxs(Stack,{direction:"row",alignItems:"center",spacing:.45,children:[jsx(Nu,{sx:{fontSize:18}}),jsx(Typography,{variant:"caption",sx:{fontWeight:500},children:D})]})}),jsx(Menu,{anchorEl:A,open:G,onClose:()=>R(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:I.map(_=>jsx(MenuItem,{selected:_===k,onClick:()=>{s(_),R(null);},sx:{fontSize:"0.82rem"},children:Ou[_]},_))})]}):jsxs(Stack,{direction:"row",alignItems:"center",spacing:.5,children:[jsx(Nu,{sx:{color:y?"common.white":"#111827",fontSize:18}}),jsx(Typography,{variant:"caption",sx:{color:y?"common.white":"#111827",fontWeight:500},children:D})]}),jsx(IconButton,{size:"small",sx:{color:y?"common.white":"#111827"},onClick:a,title:M,children:v}),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:_=>B(_.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:X,onClose:()=>B(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:oe.map(_=>jsxs(MenuItem,{disabled:_.disabled,onClick:()=>re(_.onClick),children:[_.icon&&jsx(ListItemIcon,{children:_.icon}),jsx(ListItemText,{primary:_.label,slotProps:{primary:{sx:{fontSize:"0.86rem",fontWeight:500}}}})]},_.key))})]})};var Hu=({menuData:e=[],initialNavigationCollapsed:t=false}={})=>{let{navigationIslandProps:o}=Fd({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 lB=({appTitle:e,menuData:t=[],children:o,showNavigation:a=true,locale:r="en",localeLabel:n,localeOptions:i,onLocaleChange:s,user:p,onUserSetting:l,onUserLogout:c,userMenuItems:g,logo:f,onSearch:u,rightHeaderSlot:h,leftHeaderSlot:w,contentSx:d})=>{let C="orbcafe:page-layout-mode",[m,y]=useState("system"),[b,T]=useState("light"),[A,R]=useState(false),S=m==="system"?A?b:"light":m;useEffect(()=>{try{let I=window.localStorage.getItem(C);(I==="light"||I==="dark"||I==="system")&&y(I);}catch{}R(true);let M=window.matchMedia("(prefers-color-scheme: dark)"),k=()=>{T(M.matches?"dark":"light");};return k(),M.addEventListener("change",k),()=>M.removeEventListener("change",k)},[]),useEffect(()=>{if(A)try{window.localStorage.setItem(C,m);}catch{}},[A,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 B=useMemo(()=>createTheme({palette:{mode:S}}),[S]),{navigationIslandProps:P,navigationMaxHeight:v}=Hu({menuData:t,initialNavigationCollapsed:false});return jsx(ThemeProvider,{theme:B,children:jsx(Di,{locale:r,children:jsxs(Box,{sx:M=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:M.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":M.palette.background.default}),children:[jsx(Al,{appTitle:e,logo:f,mode:m,onToggleMode:()=>y(M=>M==="system"?"dark":M==="dark"?"light":"system"),locale:r,localeLabel:n,localeOptions:i,onLocaleChange:s,user:p,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(Bd,{...P,maxHeight:v,colorMode:S})}),jsx(Box,{sx:{flex:1,minWidth:0,minHeight:0,overflow:"auto",p:1.5,...d},children:o})]})]})})})};var El="(blank)",$u="Result",Gu="Grand Total",Uu={sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max"},Ku=["sum","count","avg","min","max"];var qu=["palette","rows","columns","filters","values"];var _u=e=>qu.includes(e),ju=e=>e==="rows"||e==="columns"||e==="filters",Fl=e=>{let t=e.split("|");return t.length===2&&t[0]==="container"&&_u(t[1])?{kind:"container",zone:t[1]}:t.length===3&&t[0]==="item"&&_u(t[1])&&t[2]?{kind:"item",zone:t[1],key:t[2]}:null},ba=e=>e==null||e===""?El:e instanceof Date?e.toISOString().slice(0,10):String(e),Cr=e=>JSON.stringify(e),Zu=(e,t)=>{let o=e.join(""),a=t.join("");return o.localeCompare(a,void 0,{sensitivity:"base"})},Cv=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=>Cv(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)},Rt=(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},xa=(e,t)=>e.length!==t.length?false:e.every((o,a)=>o===t[a]),Xu=(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 xa(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}),Mc=e=>!e?.aggregations||e.aggregations.length===0?Ku:e.aggregations,jt=(e,t)=>{let o=Mc(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 Ju=({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]),p=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(p?[]:e);},sx:{minWidth:"auto",px:0,py:.2,fontSize:"0.76rem",fontWeight:700,textTransform:"none"},children:r(p?"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 Bc=({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(Ev,{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})]})]})}),om=({id:e,label:t,subtitle:o})=>{let{setNodeRef:a,listeners:r,attributes:n,isDragging:i}=useDraggable({id:e});return jsx(Bc,{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:p,setNodeRef:l}=useDroppable({id:s}),{t:c}=ee();return jsxs(Paper,{ref:l,sx:g=>({p:1.1,borderRadius:3,border:"1px dashed",borderColor:p?"primary.main":g.palette.divider,bgcolor:p?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(Vv,{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 rm={xs:1.2,md:1.6},un=({title:e,subtitle:t,collapsed:o,onToggleCollapse:a,expandAriaLabel:r,collapseAriaLabel:n,children:i,bodySx:s,unmountOnExit:p=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:rm,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(zb,{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:p,children:jsx(Box,{sx:[{px:rm,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:p})=>jsx(Paper,{ref:n,style:p,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(Ev,{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(Jf,{sx:{fontSize:16}})})]})}),di=({id:e,label:t,caption:o,onRemove:a,trailing:r})=>{let{setNodeRef:n,attributes:i,listeners:s,transform:p,transition:l,isDragging:c}=useSortable({id:e}),g={transform:p?`translate3d(${p.x}px, ${p.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(Qv,{fontSize:"small"}),columns:jsx(gh,{fontSize:"small"}),filters:jsx(Yv,{fontSize:"small"}),values:jsx(bh,{fontSize:"small"})},lm=({isConfiguratorCollapsed:e,onToggleCollapse:t,availableFields:o,fieldMap:a,filterFields:r,columnFields:n,rowFields:i,valueFields:s,clearZone:p,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(Ev,{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(d=>jsx(om,{id:`item|palette|${d.id}`,label:d.label,subtitle:d.type??"string"},d.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:()=>p("filters"),children:jsx(SortableContext,{items:r.map(d=>`item|filters|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:r.map(d=>jsx(di,{id:`item|filters|${d}`,label:a.get(d)?.label??d,caption:c(d),trailing:g(d),onRemove:()=>l("filters",d)},d))})})}),jsx(dn,{zone:"columns",title:h("pivot.zone.columns"),hint:h("pivot.hint.columns"),icon:Gl.columns,itemCount:n.length,onClear:()=>p("columns"),children:jsx(SortableContext,{items:n.map(d=>`item|columns|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:n.map(d=>jsx(di,{id:`item|columns|${d}`,label:a.get(d)?.label??d,caption:`${a.get(d)?.type??"dimension"} \u2022 ${c(d)}`,trailing:g(d),onRemove:()=>l("columns",d)},d))})})})]}),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:()=>p("rows"),children:jsx(SortableContext,{items:i.map(d=>`item|rows|${d}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:i.map(d=>jsx(di,{id:`item|rows|${d}`,label:a.get(d)?.label??d,caption:`${a.get(d)?.type??"dimension"} \u2022 ${c(d)}`,trailing:g(d),onRemove:()=>l("rows",d)},d))})})}),jsx(dn,{zone:"values",title:h("pivot.zone.values"),hint:h("pivot.hint.values"),icon:Gl.values,itemCount:s.length,onClear:()=>p("values"),children:jsx(SortableContext,{items:s.map(d=>`item|values|${d.tokenId}`),strategy:verticalListSortingStrategy,children:jsx(Stack,{spacing:.7,children:s.map(d=>{let C=a.get(d.fieldId)?.label??d.fieldId,m=`${u(d.aggregation)}(${C})`;return jsx(di,{id:`item|values|${d.tokenId}`,label:C,caption:m,trailing:f(d),onRemove:()=>l("values",d.tokenId)},d.tokenId)})})})})]})]})]})})};var sm=e=>e.toLocaleString(void 0,{maximumFractionDigits:1}),cm=({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,p={top:20,right:24,bottom:40,left:52},l=o?e.map(d=>d.primaryValue):e.map((d,C)=>C+1),c=o?e.map(d=>d.secondaryValue??0):e.map(d=>d.primaryValue),g=Math.max(...l,1),f=Math.max(...c,1),u=i-p.left-p.right,h=s-p.top-p.bottom,w=e.map((d,C)=>{let m=o?d.primaryValue:C+1,y=o?d.secondaryValue??0:d.primaryValue,b=p.left+m/g*u,T=s-p.bottom-y/f*h;return {...d,x:b,y:T,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:p.left,y1:s-p.bottom,x2:i-p.right,y2:s-p.bottom,stroke:alpha(n.palette.text.secondary,.35)}),jsx("line",{x1:p.left,y1:p.top,x2:p.left,y2:s-p.bottom,stroke:alpha(n.palette.text.secondary,.35)}),w.map(d=>jsxs("g",{children:[jsx("circle",{cx:d.x,cy:d.y,r:7,fill:alpha(n.palette.primary.main,.18)}),jsx("circle",{cx:d.x,cy:d.y,r:4.5,fill:n.palette.primary.main,children:jsxs("title",{children:[d.name,`
13
13
  `,o?`${t}: ${a(d.primaryValue)}`:`${t}: ${a(d.primaryValue)}`,o?`
14
- ${o}: ${(r??a)(d.secondaryValue??0)}`:""]})}),jsx("text",{x:d.x,y:Math.max(d.y-12,p.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:d.name})]},d.name)),jsx("text",{x:i/2,y:l-10,textAnchor:"middle",fontSize:"11",fill:n.palette.text.secondary,children:o?t:"Index"}),jsx("text",{x:16,y:l/2,textAnchor:"middle",transform:`rotate(-90 16 ${l/2})`,fontSize:"11",fill:n.palette.text.secondary,children:o??t}),jsx("text",{x:p.left,y:p.top-4,fontSize:"10",fill:n.palette.text.secondary,children:$u(f)}),jsx("text",{x:i-p.right,y:l-p.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:$u(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(d=>jsxs(Box,{sx:C=>({borderRadius:2,px:1.25,py:1,border:`1px solid ${alpha(C.palette.divider,.7)}`,bgcolor:alpha(C.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:d.name,children:d.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",a(d.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(r??a)(d.secondaryValue??0)]})]},d.name))})]})};var Pc=e=>Math.max(...e,1),Uu=({data:e,chartType:t,primaryLabel:o,secondaryLabel:a,formatPrimaryValue:r,formatSecondaryValue:n})=>{let i=useTheme$1(),l=i.palette.primary.main,p=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let m=Pc(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:l}})}),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:p}})})]}),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=Pc(e.flatMap(x=>[x.primaryValue,x.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(x=>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(x.primaryValue/m*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:l},title:`${o}: ${r(x.primaryValue)}`}),a&&jsx(Box,{sx:{width:16,minHeight:8,height:`${Math.max((x.secondaryValue??0)/m*188,8)}px`,borderRadius:"10px 10px 2px 2px",bgcolor:p},title:`${a}: ${(n??r)(x.secondaryValue??0)}`})]}),jsx(Typography,{sx:{fontSize:"0.76rem",fontWeight:700},noWrap:true,title:x.name,children:x.name}),jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:r(x.primaryValue),children:r(x.primaryValue)}),a&&jsx(Typography,{sx:{fontSize:"0.7rem",color:"text.secondary"},noWrap:true,title:(n??r)(x.secondaryValue??0),children:(n??r)(x.secondaryValue??0)})]},x.name))})})}let s=Math.max(680,e.length*74),c=240,g={top:20,right:18,bottom:36,left:18},f=Pc(e.flatMap(m=>[m.primaryValue,m.secondaryValue??0])),u=s-g.left-g.right,h=c-g.top-g.bottom,T=m=>e.map((y,x)=>{let S=g.left+x*u/Math.max(e.length-1,1),A=c-g.bottom-m(y)/f*h;return {x:S,y:A,item:y}}),d=T(m=>m.primaryValue),C=a?T(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 ${s} ${c}`,sx:{width:"100%",minWidth:s,height:c},children:[jsx("line",{x1:g.left,y1:c-g.bottom,x2:s-g.right,y2:c-g.bottom,stroke:alpha(i.palette.text.secondary,.35)}),jsx("polyline",{fill:"none",stroke:l,strokeWidth:3,points:d.map(m=>`${m.x},${m.y}`).join(" ")}),d.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:4,fill:l,children:jsxs("title",{children:[m.item.name,`
14
+ ${o}: ${(r??a)(d.secondaryValue??0)}`:""]})}),jsx("text",{x:d.x,y:Math.max(d.y-12,p.top+8),textAnchor:"middle",fontSize:"10",fill:n.palette.text.secondary,children:d.name})]},d.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:p.left,y:p.top-4,fontSize:"10",fill:n.palette.text.secondary,children:sm(f)}),jsx("text",{x:i-p.right,y:s-p.bottom+16,textAnchor:"end",fontSize:"10",fill:n.palette.text.secondary,children:sm(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(d=>jsxs(Box,{sx:C=>({borderRadius:2,px:1.25,py:1,border:`1px solid ${alpha(C.palette.divider,.7)}`,bgcolor:alpha(C.palette.background.default,.35)}),children:[jsx(Typography,{sx:{fontSize:"0.78rem",fontWeight:700},noWrap:true,title:d.name,children:d.name}),jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[t,": ",a(d.primaryValue)]}),o&&jsxs(Typography,{sx:{fontSize:"0.72rem",color:"text.secondary"},children:[o,": ",(r??a)(d.secondaryValue??0)]})]},d.name))})]})};var Vc=e=>Math.max(...e,1),pm=({data:e,chartType:t,primaryLabel:o,secondaryLabel:a,formatPrimaryValue:r,formatSecondaryValue:n})=>{let i=useTheme$1(),s=i.palette.primary.main,p=i.palette.warning.main;if(e.length===0)return null;if(t==="bar-horizontal"){let m=Vc(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:p}})})]}),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=Vc(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:p},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=Vc(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 T=g.left+b*u/Math.max(e.length-1,1),A=c-g.bottom-m(y)/f*h;return {x:T,y:A,item:y}}),d=w(m=>m.primaryValue),C=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:d.map(m=>`${m.x},${m.y}`).join(" ")}),d.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:4,fill:s,children:jsxs("title",{children:[m.item.name,`
15
15
  `,o,": ",r(m.item.primaryValue)]})},`primary-${m.item.name}`)),a&&jsxs(Fragment,{children:[jsx("polyline",{fill:"none",stroke:p,strokeWidth:2.5,strokeDasharray:"5 5",points:C.map(m=>`${m.x},${m.y}`).join(" ")}),C.map(m=>jsx("circle",{cx:m.x,cy:m.y,r:3.5,fill:p,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 Ku=(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},qu=(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}}),_u=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:a})=>{if(!t)return [];let r=new Map;return e.forEach(n=>{let i=fa(n[t]),l=r.get(i);if(l){l.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:on(i,o.fieldId,o.aggregation),secondaryValue:a?on(i,a.fieldId,a.aggregation):void 0}))};var ju=({rows:e,fieldMap:t,rowFields:o,columnFields:a,valueFields:r,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:l,chartType:p,isCollapsed:s,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:u,onToggleCollapse:h,getAggregationLabel:T})=>{let{t:d}=Q(),C=useMemo(()=>Ku(o,a,t),[a,t,o]),m=useMemo(()=>qu(r,t,T),[t,T,r]),y=m.find(v=>v.fieldId===i)??m[0],x=m.find(v=>v.fieldId===l&&v.fieldId!==y?.fieldId)??null,S=C.find(v=>v.fieldId===n)??C[0],A=S&&y?d("pivot.chart.subtitleReady",{dimension:S.label,measure:x?`${y.label} / ${x.label}`:y.label}):d("pivot.chart.subtitle"),R=useMemo(()=>!S||!y?[]:_u({rows:e,dimensionFieldId:S.fieldId,primaryValue:y.item,secondaryValue:x?.item}),[y,e,x,S]),w=v=>y?oi(v,y.item,t):v.toLocaleString(),E=v=>x?oi(v,x.item,t):v.toLocaleString(),P=C.length>1||m.length>1;return jsxs(ln,{title:d("pivot.chart.title"),subtitle:A,collapsed:s,onToggleCollapse:h,expandAriaLabel:d("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:d("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:d("pivot.chart.dimension")}),jsx(Select,{value:S?.fieldId??"",onChange:v=>c(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:C.map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.primaryMeasure")}),jsx(Select,{value:y?.fieldId??"",onChange:v=>g(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:m.map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:x?.fieldId??"",onChange:v=>f(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:d("common.none")}),m.filter(v=>v.fieldId!==y?.fieldId).map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))]})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.chartType")}),jsxs(Select,{value:p,onChange:v=>u(v.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:S?y?R.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("pivot.chart.emptyNoData")})}):p==="scatter"?jsx(Hu,{data:R,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:w,formatSecondaryValue:E}):jsx(Uu,{data:R,chartType:p,primaryLabel:y.label,secondaryLabel:x?.label,formatPrimaryValue:w,formatSecondaryValue:E}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("pivot.chart.emptyNoDimension")})})})]})};var Vs=({node:e,dataColumns:t,fieldMap:o,level:a,expandedKeys:r,onToggle:n,getValue:i})=>{let l=r.has(e.key),p=e.children.length>0,s=e.isGrandTotal;return jsxs(Fragment,{children:[jsxs(TableRow,{sx:c=>({bgcolor:s?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:s?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:s?800:600,borderBottom:`1px solid ${c.palette.divider}`,whiteSpace:"nowrap",pl:a*2+1,display:"flex",alignItems:"center",height:40}),children:[p&&!s&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:l?jsx(oh,{sx:{fontSize:16}}):jsx(Of,{sx:{fontSize:16}})}),!p&&!s&&a>0&&jsx(Box,{sx:{width:20}}),e.value]}),t.map(c=>jsx(TableCell,{align:"right",sx:{fontSize:"0.76rem",fontWeight:s?800:500,borderBottom:g=>`1px solid ${g.palette.divider}`,whiteSpace:"nowrap"},children:oi(i?i(e,c.id):e.aggregatedValues[c.id]??0,c.valueItem,o)},`${e.key}-${c.id}`))]}),l&&e.children.map(c=>jsx(Vs,{node:c,dataColumns:t,fieldMap:o,level:a+1,expandedKeys:r,onToggle:n,getValue:i},c.key))]})};var Bc=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},$s=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Ec=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",tm=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},am=(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,am(r.children,t,o+1)),o),Zv=(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},tE=({title:e,rows:t,fields:o,initialLayout:a,initialChart:r,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:l=false,initialTableCollapsed:p=false,model:s,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:u,initialPresetId:h,onPresetApplied:T})=>{let{t:d}=Q(),C=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),m=useRef(0),y=useRef(false),x=e??d("pivot.title.default"),S=n??d("pivot.empty"),A=useMemo(()=>({sum:d("pivot.agg.sum"),count:d("pivot.agg.count"),avg:d("pivot.agg.avg"),min:d("pivot.agg.min"),max:d("pivot.agg.max")}),[d]),R=useCallback(b=>A[b]??Su[b],[A]),w=useMemo(()=>new Set(o.map(b=>b.id)),[o]),E=useMemo(()=>new Map(o.map(b=>[b.id,b])),[o]),[P,v]=useState(()=>wt(a?.rows,w)),[M,k]=useState(()=>wt(a?.columns,w)),[I,D]=useState(()=>wt(a?.filters,w)),[G,$]=useState(()=>{let b=a?.values??[],B=new Set,F=[];return b.forEach(K=>{if(!w.has(K.fieldId)||B.has(K.fieldId))return;B.add(K.fieldId),m.current+=1;let se=E.get(K.fieldId);F.push({tokenId:`v${m.current}`,fieldId:K.fieldId,aggregation:_t(K.aggregation,se)});}),F}),[ee,me]=useState({}),[oe,re]=useState(true),[X,qe]=useState(false),[nt,Y]=useState(()=>Bc(wt(a?.rows,w),wt(a?.columns,w),r?.dimensionFieldId)),[le,Ve]=useState(()=>{let b=(a?.values??[]).filter((B,F,K)=>w.has(B.fieldId)&&K.findIndex(se=>se.fieldId===B.fieldId)===F).map(B=>({tokenId:B.fieldId,fieldId:B.fieldId,aggregation:_t(B.aggregation,E.get(B.fieldId))}));return $s(b,r?.primaryValueFieldId)}),[Le,Oe]=useState(()=>{let b=(a?.values??[]).filter((F,K,se)=>w.has(F.fieldId)&&se.findIndex(Ce=>Ce.fieldId===F.fieldId)===K).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:_t(F.aggregation,E.get(F.fieldId))})),B=$s(b,r?.primaryValueFieldId);return Ec(b,B,r?.secondaryValueFieldId)}),[tt,ze]=useState(r?.chartType??"bar-vertical"),[Xe,Pt]=useState(l),[Rt,_e]=useState(p),[yt,Dt]=useState(()=>f??[]),[et,U]=useState(""),[fe,he]=useState(false),[Te,je]=useState(""),[Ne,Ct]=useState(null),[ao,Xt]=useState(new Set(["__grand_total__"])),[Ot,Yt]=useState(new Set),De=s?.rowFields??P,xe=s?.columnFields??M,L=s?.filterFields??I,H=s?.valueFields??G,_=s?.filterSelections??ee,J=s?.showGrandTotal??oe,ve=s?.isConfiguratorCollapsed??X,z=s?.chartDimensionFieldId??nt,V=s?.chartPrimaryValueFieldId??le,N=s?.chartSecondaryValueFieldId??Le,ae=s?.chartType??tt,ie=s?.isChartCollapsed??Xe,ke=s?.isTableCollapsed??Rt,te=g??yt,Pe=c||te.length>0||!!u,Se=useCallback(b=>{if(s?.setRowFields){s.setRowFields(b);return}v(b);},[s]),Me=useCallback(b=>{if(s?.setColumnFields){s.setColumnFields(b);return}k(b);},[s]),we=useCallback(b=>{if(s?.setFilterFields){s.setFilterFields(b);return}D(b);},[s]),Ie=useCallback(b=>{if(s?.setValueFields){s.setValueFields(b);return}$(b);},[s]),Ae=useCallback(b=>{if(s?.setFilterSelections){s.setFilterSelections(b);return}me(b);},[s]),kt=useCallback(b=>{if(s?.setShowGrandTotal){s.setShowGrandTotal(b);return}re(b);},[s]),bo=useCallback(b=>{if(s?.setIsConfiguratorCollapsed){s.setIsConfiguratorCollapsed(b);return}qe(b);},[s]),ut=useCallback(b=>{if(s?.setChartDimensionFieldId){s.setChartDimensionFieldId(b);return}Y(b);},[s]),Mt=useCallback(b=>{if(s?.setChartPrimaryValueFieldId){s.setChartPrimaryValueFieldId(b);return}Ve(b);},[s]),xo=useCallback(b=>{if(s?.setChartSecondaryValueFieldId){s.setChartSecondaryValueFieldId(b);return}Oe(b);},[s]),Ta=useCallback(b=>{if(s?.setChartType){s.setChartType(b);return}ze(b);},[s]),Rr=useCallback(b=>{if(s?.setIsChartCollapsed){s.setIsChartCollapsed(b);return}Pt(b);},[s]),Po=useCallback(b=>{if(s?.setIsTableCollapsed){s.setIsTableCollapsed(b);return}_e(b);},[s]),ro=useCallback(b=>{let B=typeof b=="function"?b(te):b;g||Dt(B),u?.(B);},[u,te,g]),Xa=useMemo(()=>new Set([...De,...xe,...L]),[De,xe,L]),Jo=useMemo(()=>o.filter(b=>!Xa.has(b.id)),[o,Xa]),Ut=useMemo(()=>{let b=[...De,...xe,...L],B=new Set,F=[];return b.forEach(K=>{B.has(K)||(B.add(K),F.push(K));}),F},[xe,L,De]);useEffect(()=>{Se(b=>{let B=b.filter(F=>w.has(F));return ha(b,B)?b:B}),Me(b=>{let B=b.filter(F=>w.has(F));return ha(b,B)?b:B}),we(b=>{let B=b.filter(F=>w.has(F));return ha(b,B)?b:B}),Ie(b=>{let B=b.filter(F=>w.has(F.fieldId)).map(F=>({...F,aggregation:_t(F.aggregation,E.get(F.fieldId))}));return Ps(b,B)?b:B});},[E,w]);let no=useMemo(()=>{let b={};return Ut.forEach(B=>{let F=new Set;t.forEach(K=>{F.add(fa(K[B]));}),b[B]=Array.from(F).sort((K,se)=>K.localeCompare(se));}),b},[Ut,t]);useEffect(()=>{Ae(b=>{let B={};return Ut.forEach(F=>{let K=no[F]??[],Ce=(b[F]??[]).filter(Z=>K.includes(Z)),O=Object.prototype.hasOwnProperty.call(b,F);B[F]=O?Ce:K;}),Du(b,B)?b:B});},[Ut,no]),useEffect(()=>{ut(b=>Bc(De,xe,b));},[xe,De,ut]),useEffect(()=>{Mt(b=>$s(H,b));},[Mt,H]),useEffect(()=>{xo(b=>Ec(H,V,b));},[V,xo,H]);let Wt=useMemo(()=>t.filter(b=>Ut.every(B=>{let F=_[B]??[],K=no[B]??[];if(F.length===K.length)return true;if(F.length===0)return false;let se=fa(b[B]);return F.includes(se)})),[Ut,no,_,t]),We=useMemo(()=>{if(H.length===0)return null;let b=new Map;if(Wt.forEach(O=>{let Z=xe.length>0?xe.map(Ye=>fa(O[Ye])):[d("pivot.valueLabel")],j=yr(Z);b.set(j,Z);}),b.size===0){let O=xe.length>0?xe.map(()=>Ts):[d("pivot.valueLabel")];b.set(yr(O),O);}let B=Array.from(b.entries()).sort((O,Z)=>Ru(O[1],Z[1])),F=B.flatMap(([O,Z])=>H.map(j=>{let Ye=E.get(j.fieldId),W=`${R(j.aggregation)} ${Ye?.label??j.fieldId}`,ne=xe.length===0||H.length>1?`${Z.join(" / ")} \u2022 ${W}`:Z.join(" / ");return {id:`${O}::${j.tokenId}`,colKey:O,valueItem:j,label:ne}})),K=[];xe.length>0&&B.forEach(([O,Z])=>{let j=F.filter(ne=>ne.colKey===O),Ye=K,W=[];Z.forEach((ne,q)=>{W.push(`d${q}:${ne}`);let pe=`col::${yr(W)}`,$e=Ye.find(Ko=>Ko.key===pe);$e||($e={key:pe,label:ne,children:[],leafColumnIds:[],path:Z.slice(0,q+1),depth:q},Ye.push($e)),j.forEach(Ko=>{$e.leafColumnIds.includes(Ko.id)||$e.leafColumnIds.push(Ko.id);}),Ye=$e.children;});});let se=O=>{let Z={};return F.forEach(j=>{let Ye=O.filter(W=>{let ne=xe.length>0?xe.map(q=>fa(W[q])):[d("pivot.valueLabel")];return yr(ne)===j.colKey});Z[j.id]=on(Ye,j.valueItem.fieldId,j.valueItem.aggregation);}),Z},Ce=[];if(De.length===0)Ce.push({key:"root",value:d("pivot.resultLabel")||Cu,children:[],isLeaf:true,aggregatedValues:se(Wt),path:[],depth:0});else {let O=(Z,j,Ye)=>{if(j>=De.length)return [];let W=De[j],ne=new Map;return Z.forEach(q=>{let pe=fa(q[W]);ne.has(pe)||ne.set(pe,[]),ne.get(pe).push(q);}),Array.from(ne.keys()).sort().map(q=>{let pe=ne.get(q),$e=[...Ye,q];return {key:yr($e),value:q,fieldId:W,aggregatedValues:se(pe),children:O(pe,j+1,$e),isLeaf:j===De.length-1,path:$e,depth:j}})};Ce.push(...O(Wt,0,[]));}return {dataColumns:F,columnTree:K,rowTree:Ce}},[xe,E,Wt,R,De,d,H]),ea=useCallback((b,B)=>(m.current+=1,{tokenId:`v${m.current}`,fieldId:b,aggregation:_t(B,E.get(b))}),[E]),$o=useCallback(b=>{if(b==="rows")return Se([]);if(b==="columns")return Me([]);if(b==="filters")return we([]);Ie([]);},[]),ta=useCallback((b,B)=>{if(b==="rows")return Se(F=>F.filter(K=>K!==B));if(b==="columns")return Me(F=>F.filter(K=>K!==B));if(b==="filters")return we(F=>F.filter(K=>K!==B));Ie(F=>F.filter(K=>K.tokenId!==B));},[]),Ya=useCallback((b,B)=>{Ie(F=>F.map(K=>K.tokenId===b?{...K,aggregation:_t(B,E.get(K.fieldId))}:K));},[E]),Ho=useCallback(b=>{Ct(String(b.active.id));},[]),Qa=useCallback(b=>{if(Ct(null),!b.over)return;let B=Is(String(b.active.id)),F=Is(String(b.over.id));if(!B||!F||B.kind!=="item"||!B.key)return;if(B.zone===F.zone&&F.kind==="item"){if(B.zone==="rows"){let q=De.indexOf(B.key),pe=De.indexOf(F.key??"");q!==-1&&pe!==-1&&q!==pe&&Se($e=>arrayMove($e,q,pe));return}if(B.zone==="columns"){let q=xe.indexOf(B.key),pe=xe.indexOf(F.key??"");q!==-1&&pe!==-1&&q!==pe&&Me($e=>arrayMove($e,q,pe));return}if(B.zone==="filters"){let q=L.indexOf(B.key),pe=L.indexOf(F.key??"");q!==-1&&pe!==-1&&q!==pe&&we($e=>arrayMove($e,q,pe));return}if(B.zone==="values"){let q=H.findIndex($e=>$e.tokenId===B.key),pe=H.findIndex($e=>$e.tokenId===(F.key??""));q!==-1&&pe!==-1&&q!==pe&&Ie($e=>arrayMove($e,q,pe));}return}let K=F.zone,se=[...De],Ce=[...xe],O=[...L],Z=[...H],j="",Ye=null;if(B.zone==="palette")j=B.key;else if(B.zone==="values"){let q=Z.find(pe=>pe.tokenId===B.key);if(!q)return;j=q.fieldId,Ye=q,Z=Z.filter(pe=>pe.tokenId!==B.key);}else B.zone==="rows"?(j=B.key,se=se.filter(q=>q!==j)):B.zone==="columns"?(j=B.key,Ce=Ce.filter(q=>q!==j)):B.zone==="filters"&&(j=B.key,O=O.filter(q=>q!==j));if(!j)return;let W=()=>{se=se.filter(q=>q!==j),Ce=Ce.filter(q=>q!==j),O=O.filter(q=>q!==j);},ne=q=>{if(F.kind!=="item"||!F.key)return q==="rows"?se.length:q==="columns"?Ce.length:q==="filters"?O.length:q==="values"?Z.length:0;if(q==="rows"){let pe=se.indexOf(F.key);return pe>=0?pe:se.length}if(q==="columns"){let pe=Ce.indexOf(F.key);return pe>=0?pe:Ce.length}if(q==="filters"){let pe=O.indexOf(F.key);return pe>=0?pe:O.length}if(q==="values"){let pe=Z.findIndex($e=>$e.tokenId===F.key);return pe>=0?pe:Z.length}return 0};if(K==="palette"){Se(se),Me(Ce),we(O),Ie(Z);return}if(K==="values"){let q=ne("values"),pe=Ye??ea(j);Z.splice(q,0,pe),Se(se),Me(Ce),we(O),Ie(Z);return}if(Pu(K)){W();let q=ne(K);K==="rows"?se.splice(q,0,j):K==="columns"?Ce.splice(q,0,j):O.splice(q,0,j),Se(se),Me(Ce),we(O),Ie(Z);}},[xe,ea,L,De,H]),Ja=useCallback((b,B)=>{Ae(F=>({...F,[b]:B}));},[]),Go=useCallback(b=>{Xt(B=>{let F=new Set(B);return F.has(b)?F.delete(b):F.add(b),F});},[]),oa=useCallback(b=>{Yt(B=>{let F=new Set(B);return F.has(b)?F.delete(b):F.add(b),F});},[]),Ia=useCallback(b=>{let B=E.get(b.fieldId),F=xc(B);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:b.aggregation,onChange:K=>Ya(b.tokenId,K.target.value),onClick:K=>K.stopPropagation(),onMouseDown:K=>K.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:F.map(K=>jsx(MenuItem,{value:K,sx:{fontSize:"0.75rem"},children:R(K)},K))})})},[E,R,Ya]),Kt=useCallback(b=>{let B=no[b]??[],F=_[b]??B;return B.length===0?d("pivot.filter.noValues"):F.length===0?d("pivot.filter.noneSelected"):F.length===B.length?d("pivot.filter.allValues"):d("pivot.filter.selectedCount",{selected:F.length,total:B.length})},[no,_,d]),Ro=useCallback(b=>{let B=no[b]??[],F=_[b]??B;return jsx(Bu,{options:B,selectedValues:F,onChange:K=>Ja(b,K)})},[no,_,Ja]),aa=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),vo=useCallback(()=>{let b={};return new Set([...Ut,...Object.keys(_)]).forEach(F=>{if(!w.has(F))return;let K=_[F]??[];b[F]=[...K];}),{layout:{rows:[...De],columns:[...xe],filters:[...L],values:H.map(F=>({fieldId:F.fieldId,aggregation:F.aggregation}))},filterSelections:b,showGrandTotal:J,chart:{dimensionFieldId:z,primaryValueFieldId:V,secondaryValueFieldId:N,chartType:ae}}},[Ut,z,V,N,ae,xe,L,_,De,J,w,H]),Uo=useCallback(b=>{let B=wt(b.layout.rows,w),F=wt(b.layout.columns,w),K=wt(b.layout.filters,w),se=new Set,Ce=(b.layout.values??[]).filter(j=>!w.has(j.fieldId)||se.has(j.fieldId)?false:(se.add(j.fieldId),true)).map(j=>ea(j.fieldId,j.aggregation)),O={};Object.entries(b.filterSelections??{}).forEach(([j,Ye])=>{!w.has(j)||!Array.isArray(Ye)||(O[j]=Array.from(new Set(Ye.map(W=>String(W)))));}),Se(B),Me(F),we(K),Ie(Ce),Ae(O),typeof b.showGrandTotal=="boolean"&&kt(b.showGrandTotal),ut(Bc(B,F,b.chart?.dimensionFieldId));let Z=$s(Ce,b.chart?.primaryValueFieldId);Mt(Z),xo(Ec(Ce,Z,b.chart?.secondaryValueFieldId)),Ta(b.chart?.chartType??"bar-vertical"),U(b.id),T?.(b);},[ea,T,ut,Mt,xo,Ta,Me,we,Ae,Se,kt,Ie,w]),er=useCallback(b=>{if(!b){U("");return}let B=te.find(F=>F.id===b);if(!B){U("");return}Uo(B);},[Uo,te]),Dr=useCallback(()=>{let b=d("pivot.preset.defaultName",{index:te.length+1});je(b),he(true);},[te.length,d]),Pa=useCallback(()=>{let b=Te.trim();if(!b)return;let B={id:aa(),name:b,...vo()};ro(F=>[...F,B]),U(B.id),he(false);},[vo,aa,Te,ro]),tr=useCallback(()=>{et&&(ro(b=>b.filter(B=>B.id!==et)),U(""));},[et,ro]);useEffect(()=>{if(!h||y.current)return;let b=te.find(B=>B.id===h);b&&(y.current=true,Uo(b));},[Uo,h,te]),useEffect(()=>{et&&(te.some(b=>b.id===et)||U(""));},[et,te]);let ra=useMemo(()=>{if(!J||!We||!De.length)return null;let b={};return We.dataColumns.forEach(B=>{let F=Wt.filter(K=>{let se=xe.length>0?xe.map(Ce=>fa(K[Ce])):[d("pivot.valueLabel")];return yr(se)===B.colKey});b[B.id]=on(F,B.valueItem.fieldId,B.valueItem.aggregation);}),{key:"__grand_total__",value:d("pivot.grandTotal")||ku,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:b,path:[],depth:-1}},[J,We,Wt,xe,De.length,d]),Qt=useMemo(()=>tm(We?.rowTree??[]),[We]),Do=useMemo(()=>tm(We?.columnTree??[]),[We]);useEffect(()=>{Xt(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),Qt.forEach(F=>{b.has(F)&&B.add(F);}),B});},[Qt]),useEffect(()=>{Yt(b=>{let B=new Set;return Do.forEach(F=>{b.has(F)&&B.add(F);}),B});},[Do]);let Mr=useCallback(()=>{Xt(b=>{let B=new Set(b);return Qt.forEach(F=>B.add(F)),B});},[Qt]),or=useCallback(()=>{Xt(b=>{let B=new Set;return b.has("__grand_total__")&&B.add("__grand_total__"),B});},[]),Ar=useCallback(()=>{Yt(new Set(Do));},[Do]),Br=useCallback(()=>{Yt(new Set);},[]),Er=useMemo(()=>!We||xe.length===0?[]:Zv(We.columnTree,Ot),[xe.length,Ot,We]),io=useMemo(()=>{if(!We)return [];if(xe.length===0)return We.dataColumns.map(B=>({id:B.id,label:B.label,leafColumnIds:[B.id],valueItem:B.valueItem}));let b=new Map(We.dataColumns.map(B=>[B.id,B]));return Er.flatMap(B=>{let F=new Map;return B.leafColumnIds.forEach(K=>{let se=b.get(K);if(!se)return;let Ce=se.valueItem.tokenId,O=`${R(se.valueItem.aggregation)} ${E.get(se.valueItem.fieldId)?.label??se.valueItem.fieldId}`,Z=F.get(Ce);if(Z){Z.leafColumnIds.push(K);return}F.set(Ce,{id:`${B.key}::${Ce}`,label:H.length>1?O:B.label,leafColumnIds:[K],valueItem:se.valueItem});}),Array.from(F.values())})},[xe.length,E,R,We,H.length,Er]),Fr=useMemo(()=>new Map(io.map(b=>[b.id,b])),[io]),Lr=useMemo(()=>io.map(b=>({id:b.id,colKey:b.id,valueItem:b.valueItem,label:b.label})),[io]),ar=useMemo(()=>{if(!We||xe.length===0)return [];let b=[],B=am(We.columnTree,Ot),F=B+(H.length>1?1:0),K=(se,Ce)=>{b[Ce]??(b[Ce]=[]),se.forEach(O=>{let Z=O.children.length>0&&Ot.has(O.key),j=io.filter(W=>O.leafColumnIds.some(ne=>W.leafColumnIds.includes(ne))).length,Ye=Z||H.length>1?1:F-Ce;b[Ce].push({key:O.key,label:O.label,colSpan:j,rowSpan:Ye,expandable:O.children.length>0,expanded:Z}),Z&&K(O.children,Ce+1);});};return K(We.columnTree,0),H.length>1&&(b[B]=io.map(se=>({key:se.id,label:se.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),b},[xe.length,Ot,We,H.length,io]),na=useCallback((b,B)=>B.leafColumnIds.reduce((F,K)=>F+(b.aggregatedValues[K]??0),0),[]),Ra=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Mr,disabled:Qt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:or,disabled:Qt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Ar,disabled:Do.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:Br,disabled:xe.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.collapseColumnsAll")})]}),[xe.length,Do.size,Qt.size,Br,or,Ar,Mr,d]),Da=()=>{if(!Ne)return null;let b=Is(Ne);if(!b||b.kind!=="item"||!b.key)return null;if(b.zone==="palette"){let se=E.get(b.key);return se?jsx(Cc,{label:se.label,subtitle:se.type}):null}if(b.zone==="values"){let se=H.find(j=>j.tokenId===b.key);if(!se)return null;let O=E.get(se.fieldId)?.label??se.fieldId,Z=`${R(se.aggregation)}(${O})`;return jsx(Bs,{label:O,caption:Z})}let F=E.get(b.key)?.label??b.key,K=Kt(b.key);return jsx(Bs,{label:F,caption:K})};return jsxs(Paper,{sx:b=>({p:{xs:1.2,md:2},borderRadius:4,border:`1px solid ${b.palette.divider}`,bgcolor:"background.paper",boxShadow:b.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:x}),jsx(Typography,{sx:{fontSize:"0.78rem",color:"text.secondary"},children:d("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[Pe&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:et,displayEmpty:true,onChange:b=>er(String(b.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:d("pivot.preset.selectPlaceholder")}),te.map(b=>jsx(MenuItem,{value:b.id,sx:{fontSize:"0.75rem"},children:b.name},b.id))]})}),jsx(Tooltip,{title:d("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Dr,"aria-label":d("pivot.preset.save"),children:jsx(Pp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:d("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:tr,disabled:!et,"aria-label":d("pivot.preset.delete"),children:jsx(Wv,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[d("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",d("pivot.afterFilter"),":"," ",jsx("strong",{children:Wt.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:d("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:J,onChange:b=>kt(b.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:C,collisionDetection:closestCenter,onDragStart:Ho,onDragEnd:Qa,children:[jsx(Wu,{isConfiguratorCollapsed:ve,onToggleCollapse:()=>bo(b=>!b),availableFields:Jo,fieldMap:E,filterFields:L,columnFields:xe,rowFields:De,valueFields:H,clearZone:$o,removeFieldFromZone:ta,getFilterSelectionSummary:Kt,renderDimensionFilterSelect:Ro,renderAggregationSelect:Ia,getAggregationLabel:R}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Da()})})]}),jsx(ju,{rows:Wt,fieldMap:E,rowFields:De,columnFields:xe,valueFields:H,chartDimensionFieldId:z,chartPrimaryValueFieldId:V,chartSecondaryValueFieldId:N,chartType:ae,isCollapsed:ie,onChartDimensionFieldIdChange:b=>ut(b),onChartPrimaryValueFieldIdChange:b=>Mt(b),onChartSecondaryValueFieldIdChange:b=>xo(b),onChartTypeChange:b=>Ta(b),onToggleCollapse:()=>Rr(b=>!b),getAggregationLabel:R}),jsx(ln,{title:d("pivot.table.sectionTitle"),subtitle:De.length>0?De.map(b=>E.get(b)?.label??b).join(" > "):d("pivot.table.dimensions"),collapsed:ke,onToggleCollapse:()=>Po(b=>!b),expandAriaLabel:d("pivot.table.collapse.ariaExpand"),collapseAriaLabel:d("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Ra,children:We===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:S})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(ar.length>0?ar:[[]]).map((b,B)=>jsxs(TableRow,{children:[B===0&&jsx(TableCell,{rowSpan:Math.max(ar.length,1),sx:F=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:F.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${F.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:De.length>0?De.map(F=>E.get(F)?.label).join(" > "):d("pivot.table.dimensions")}),(b.length>0?b:io.map(F=>({key:F.id,label:F.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(F=>jsx(TableCell,{align:"center",colSpan:F.colSpan,rowSpan:F.rowSpan,sx:K=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:K.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${K.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[F.expandable&&jsx(IconButton,{size:"small",onClick:()=>oa(F.key),sx:{p:.1,ml:-0.3},children:F.expanded?jsx(oh,{sx:{fontSize:16}}):jsx(Of,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:F.label})]})},F.key))]},`pivot-header-row-${B}`))}),jsxs(TableBody,{children:[We.rowTree.map(b=>jsx(Vs,{node:b,dataColumns:Lr,fieldMap:E,level:0,expandedKeys:ao,onToggle:Go,getValue:(B,F)=>{let K=Fr.get(F);return K?na(B,K):0}},b.key)),ra&&jsx(Vs,{node:ra,dataColumns:Lr,fieldMap:E,level:0,expandedKeys:ao,onToggle:Go,getValue:(b,B)=>{let F=Fr.get(B);return F?na(b,F):0}})]})]})})}),jsxs(Dialog,{open:fe,onClose:()=>he(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:d("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:d("pivot.preset.nameLabel"),value:Te,onChange:b=>je(b.target.value),onKeyDown:b=>{b.key==="Enter"&&(b.preventDefault(),Pa());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>he(false),children:d("common.cancel")}),jsx(Button,{variant:"contained",onClick:Pa,disabled:!Te.trim(),children:d("common.save")})]})]})]})};var rm=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},Lc=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",nm=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",iE=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:a=true,initialConfiguratorCollapsed:r=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:l=false})=>{let p=useRef(0),s=useMemo(()=>new Set(e.map(U=>U.id)),[e]),c=useMemo(()=>new Map(e.map(U=>[U.id,U])),[e]),[g,f]=useState(()=>wt(t?.rows,s)),[u,h]=useState(()=>wt(t?.columns,s)),[T,d]=useState(()=>wt(t?.filters,s)),[C,m]=useState(()=>{let U=t?.values??[],fe=new Set,he=[];return U.forEach(Te=>{!s.has(Te.fieldId)||fe.has(Te.fieldId)||(fe.add(Te.fieldId),p.current+=1,he.push({tokenId:`v${p.current}`,fieldId:Te.fieldId,aggregation:_t(Te.aggregation,c.get(Te.fieldId))}));}),he}),[y,x]=useState(o),[S,A]=useState(a),[R,w]=useState(r),[E,P]=useState(()=>rm(wt(t?.rows,s),wt(t?.columns,s),n?.dimensionFieldId)),[v,M]=useState(()=>{let U=(()=>{let fe=t?.values??[],he=new Set,Te=[];return fe.forEach(je=>{!s.has(je.fieldId)||he.has(je.fieldId)||(he.add(je.fieldId),Te.push({tokenId:je.fieldId,fieldId:je.fieldId,aggregation:_t(je.aggregation,c.get(je.fieldId))}));}),Te})();return Lc(U,n?.primaryValueFieldId)}),[k,I]=useState(()=>{let U=(()=>{let he=t?.values??[],Te=new Set,je=[];return he.forEach(Ne=>{!s.has(Ne.fieldId)||Te.has(Ne.fieldId)||(Te.add(Ne.fieldId),je.push({tokenId:Ne.fieldId,fieldId:Ne.fieldId,aggregation:_t(Ne.aggregation,c.get(Ne.fieldId))}));}),je})(),fe=Lc(U,n?.primaryValueFieldId);return nm(U,fe,n?.secondaryValueFieldId)}),[D,G]=useState(n?.chartType??"bar-vertical"),[$,ee]=useState(i),[me,oe]=useState(l);useEffect(()=>{f(U=>{let fe=U.filter(he=>s.has(he));return ha(U,fe)?U:fe}),h(U=>{let fe=U.filter(he=>s.has(he));return ha(U,fe)?U:fe}),d(U=>{let fe=U.filter(he=>s.has(he));return ha(U,fe)?U:fe}),m(U=>{let fe=U.filter(he=>s.has(he.fieldId)).map(he=>({...he,aggregation:_t(he.aggregation,c.get(he.fieldId))}));return Ps(U,fe)?U:fe});},[c,s]),useEffect(()=>{P(U=>rm(g,u,U));},[u,g]),useEffect(()=>{M(U=>Lc(C,U));},[C]),useEffect(()=>{I(U=>nm(C,v,U));},[v,C]);let re=useCallback(U=>{f(wt(U,s));},[s]),X=useCallback(U=>{h(wt(U,s));},[s]),qe=useCallback(U=>{d(wt(U,s));},[s]),nt=useCallback(U=>{m(fe=>{let he=U??[],Te=new Set,je=[];return he.forEach(Ne=>{if(!s.has(Ne.fieldId)||Te.has(Ne.fieldId))return;Te.add(Ne.fieldId);let Ct=fe.find(ao=>ao.fieldId===Ne.fieldId);if(Ct){je.push({...Ct,aggregation:_t(Ne.aggregation??Ct.aggregation,c.get(Ne.fieldId))});return}p.current+=1,je.push({tokenId:`v${p.current}`,fieldId:Ne.fieldId,aggregation:_t(Ne.aggregation,c.get(Ne.fieldId))});}),je});},[c,s]),Y=useCallback(U=>{re(U.rows??[]),X(U.columns??[]),qe(U.filters??[]),nt(U.values??[]);},[X,qe,re,nt]),le=useCallback(U=>{if(U==="rows")return f([]);if(U==="columns")return h([]);if(U==="filters")return d([]);m([]);},[]),Ve=useCallback((U,fe)=>{if(U==="rows")return f(he=>he.filter(Te=>Te!==fe));if(U==="columns")return h(he=>he.filter(Te=>Te!==fe));if(U==="filters")return d(he=>he.filter(Te=>Te!==fe));m(he=>he.filter(Te=>Te.tokenId!==fe));},[]),Le=useCallback((U,fe)=>{m(he=>he.map(Te=>Te.tokenId===U?{...Te,aggregation:_t(fe,c.get(Te.fieldId))}:Te));},[c]),Oe=useCallback((U,fe)=>{x(he=>({...he,[U]:fe}));},[]),tt=useCallback(()=>{x({});},[]),ze=useCallback(()=>{A(U=>!U);},[]),Xe=useCallback(()=>{w(U=>!U);},[]),Pt=useCallback(U=>{P(U);},[]),Rt=useCallback(U=>{M(U);},[]),_e=useCallback(U=>{I(U);},[]),yt=useCallback(()=>{ee(U=>!U);},[]),Dt=useCallback(()=>{oe(U=>!U);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:u,setColumnFields:h,filterFields:T,setFilterFields:d,valueFields:C,setValueFields:m,filterSelections:y,setFilterSelections:x,showGrandTotal:S,setShowGrandTotal:A,isConfiguratorCollapsed:R,setIsConfiguratorCollapsed:w,chartDimensionFieldId:E,setChartDimensionFieldId:P,chartPrimaryValueFieldId:v,setChartPrimaryValueFieldId:M,chartSecondaryValueFieldId:k,setChartSecondaryValueFieldId:I,chartType:D,setChartType:G,isChartCollapsed:$,setIsChartCollapsed:ee,isTableCollapsed:me,setIsTableCollapsed:oe}),[E,v,k,D,u,T,y,$,R,me,g,S,C]),actions:{setRows:re,setColumns:X,setFilters:qe,setValues:nt,setLayout:Y,clearZone:le,removeFieldFromZone:Ve,setAggregationForValue:Le,setFilterSelection:Oe,resetFilterSelections:tt,toggleGrandTotal:ze,toggleConfigurator:Xe,setChartDimension:Pt,setChartPrimaryValue:Rt,setChartSecondaryValue:_e,setChartType:G,toggleChart:yt,toggleTable:Dt}}};var pE=({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]),[l,p]=useState(t??i==="landscape");useEffect(()=>{p(t??i==="landscape");},[t,i]);let s=g=>{p(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:r,isCompactViewport:n,navigationOpen:l,setNavigationOpen:s,toggleNavigationOpen:()=>s(!l)}};var oC=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},gE=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:a})=>{let n=e[0]?.[t],[i,l]=useState(a??n),p=useMemo(()=>e.find(u=>u[t]===i)||e[0],[t,e,i]),[s,c]=useState(()=>{let u=p?.[o];return u==null?"0":String(u)});return {selectedId:i,selectedRecord:p,editorValue:s,setEditorValue:c,selectRecord:u=>{let h=u[t];l(h);let T=u[o];c(T==null?"0":String(T));},applyEditorValue:u=>{if(i===void 0)return;let h=oC(s),T=e.map(d=>d[t]===i?{...d,[o]:h}:d);u(T);}}};var mC=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],pm=(e,t,o,a)=>{t?.(e),a&&o?.();},vE=({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=mC,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:l=true,scanIntervalMs:p=600,confirmLabel:s="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:u,sx:h})=>{let T=ft__default.useRef(null),d=ft__default.useRef(null),C=ft__default.useRef(null),m=ft__default.useRef(null),[y,x]=ft__default.useState("idle"),[S,A]=ft__default.useState(""),[R,w]=ft__default.useState(null),[E,P]=ft__default.useState(null),v=ft__default.useCallback(()=>{C.current!==null&&(window.clearInterval(C.current),C.current=null),d.current&&(d.current.getTracks().forEach(I=>I.stop()),d.current=null),T.current&&(T.current.srcObject=null);},[]),M=ft__default.useCallback(I=>{P(I),x("error"),u?.(I);},[u]);ft__default.useEffect(()=>{if(!e){v(),x("idle"),P(null),A("");return}let I=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){x("unsupported"),P("Camera access is not supported in this browser.");return}x("starting"),P(null);try{let G=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(I){G.getTracks().forEach($=>$.stop());return}if(d.current=G,T.current&&(T.current.srcObject=G,await T.current.play()),!window.BarcodeDetector){x("unsupported"),P("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}m.current=new window.BarcodeDetector({formats:r}),x("ready"),C.current=window.setInterval(async()=>{if(!(!T.current||!m.current)&&!(T.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let ee=(await m.current.detect(T.current)).find(oe=>oe.rawValue);if(!ee?.rawValue)return;let me={rawValue:ee.rawValue,format:ee.format};w(me),v(),pm(me,f,t,l);}catch($){M($ instanceof Error?$.message:"Failed to detect barcode.");}},p);}catch(G){M(G instanceof Error?G.message:"Unable to start camera.");}}})(),()=>{I=true,v();}},[l,n,r,t,f,e,M,p,v]);let k=()=>{let I=S.trim();if(!I)return;let D={rawValue:I,format:"manual"};w(D),pm(D,f,t,l);};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: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:T,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(pC,{}),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"}),R?jsx(Chip,{icon:jsx(uC,{}),label:`${R.format||"barcode"}: ${R.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:S,onChange:I=>A(I.target.value)}),jsx(Button,{variant:"contained",onClick:k,sx:{minHeight:56,px:2.5},children:s})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var yC={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},IE=({title:e,description:t,kicker:o,icon:a,badges:r=[],metrics:n=[],footer:i,children:l,selected:p=false,draggable:s=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:u,dragHandleProps:h,onClick:T,onSwipe:d,sx:C})=>{let[m,y]=useState(0),[x,S]=useState(false),A=useRef(null),R=useRef(0),w=useRef(0),E=!!(f||u),P=132,v=()=>{y(0),S(false),A.current=null,R.current=0,w.current=0;},M=$=>{($==="start"?f:u)?.onTrigger?.(),d?.($),v();},k=$=>{!E||$.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(A.current=$.pointerId,R.current=$.clientX,w.current=$.clientX,S(true),$.currentTarget.setPointerCapture($.pointerId));},I=$=>{if(!x||A.current!==$.pointerId)return;w.current=$.clientX;let ee=w.current-R.current,me=Math.max(-P,Math.min(P,ee));y(me);},D=$=>{if(!x||A.current!==$.pointerId)return;let ee=w.current-R.current;if(ee>=g&&f){M("start");return}if(ee<=-g&&u){M("end");return}Math.abs(ee)<12&&T?.(),v();},G=($,ee)=>{if(!$)return null;let me=$.backgroundColor||yC[$.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[ee]:0,width:P,px:2,display:"flex",alignItems:"center",justifyContent:ee==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${me}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[$.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:$.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...C},children:[G(f,"left"),G(u,"right"),jsx(Paper,{elevation:0,onPointerDown:k,onPointerMove:I,onPointerUp:D,onPointerCancel:v,sx:$=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:p?"primary.main":"divider",background:$.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:p?"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:x?"none":"transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease",touchAction:"pan-y",cursor:T?"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]}),s?jsx(Box,{"data-no-swipe":"true",...h,sx:{alignSelf:"center",display:"inline-flex",touchAction:"none"},children:jsx(IconButton,{size:"small",children:jsx(hC,{})})}):null]}),r.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:r.map(($,ee)=>jsx(Chip,{label:$,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},ee))}):null,n.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(110px, 1fr))",gap:1},children:n.map($=>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:$.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:$.value})]},$.id))}):null,l,i]})})]})};var ui=({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}),LE=({value:e,defaultValue:t="",title:o,subtitle:a,placeholder:r="0",allowDecimal:n=false,allowNegative:i=false,maxLength:l,confirmLabel:p,clearLabel:s,backspaceLabel:c,onChange:g,onSubmit:f,onClose:u,sx:h})=>{let{t:T}=Q(),[d,C]=useState(t),m=e??d,y=v=>{e===void 0&&C(v),g?.(v);},x=v=>{l&&m.length>=l||y(`${m}${v}`);},S=v=>{if(v==="00"){if(!m){y("0");return}x("00");return}x(v);},A=()=>{!n||m.includes(".")||y(m?`${m}.`:"0.");},R=()=>{if(i){if(m.startsWith("-")){y(m.slice(1));return}y(m?`-${m}`:"-");}},w=()=>{y(m.slice(0,-1));},E=()=>{y("");},P=()=>{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(CC,{})}):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(v=>jsx(ui,{label:v,onPress:()=>S(v)},v)),jsx(ui,{label:i?"+/-":"00",onPress:i?R:()=>S("00")}),jsx(ui,{label:"0",onPress:()=>S("0")}),jsx(ui,{label:n?".":c?String(c):"DEL",onPress:n?A:w})]}),jsxs(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(3, minmax(0, 1fr))",gap:1.25},children:[jsx(Box,{component:"button",type:"button",onClick:w,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(vC,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(ui,{label:String(s||"CLR"),onPress:E,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:P,sx:v=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:v.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(kC,{}),jsx(Typography,{sx:{fontWeight:800},children:p||T("common.ok")})]})})]})]})})};var hm=({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(da,{...o})})};var DC=(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);}},xm=({items:e,selectedId:t,orientation:o="auto",onItemSelect:a,sx:r})=>{let n=useTheme$1(),[i,l]=useState(false);useEffect(()=>{l(true);},[]);let p=useMediaQuery("(orientation: portrait)",{noSsr:true}),s=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?p||s?"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:()=>DC(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 Sm=(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?Sm(a.children,t):[];return (r||n.length>0)&&o.push({...a,children:n.length>0?n:a.children}),o},[]):e,HC=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children?.length&&(t.add(r.id),o(r.children));});};return o(e),t},wm=({collapsed:e=false,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light",orientation:i="auto",headerSlot:l,footerSlot:p,activeHref:s,onItemSelect:c})=>{let{t:g}=Q(),f=useTheme$1(),u=useMediaQuery("(orientation: portrait)"),h=useMediaQuery(f.breakpoints.down("md")),T=i==="auto"?u||h?"portrait":"landscape":i,d=n==="dark",C=useRouter(),m=usePathname(),[y,x]=useState(""),[S,A]=useState(new Set),R=useMemo(()=>Sm(r,y),[r,y]),w=useMemo(()=>y.trim()?HC(R):S,[S,R,y]);useEffect(()=>{e&&A(new Set);},[e]);let E=I=>I.appurl||I.href||"",P=I=>{c?.(I);let D=E(I);if(D){if(D.startsWith("http://")||D.startsWith("https://")){window.open(D,"_blank");return}C.push(D);}},v=I=>{let D=!!I.children?.length;if(e&&D){t?.();return}if(D){A(G=>{let $=new Set(G);return $.has(I.id)?$.delete(I.id):$.add(I.id),$});return}P(I);},M=I=>{let D=s||m,G=E(I);return !!(G&&D===G)},k=(I,D=0)=>{let G=!!I.children?.length,$=w.has(I.id),ee=M(I);return jsx(Box,{sx:{pl:D===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:ee?"primary.main":"divider",bgcolor:ee?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>v(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:ee?"primary.main":"action.hover",color:ee?"#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]}),G?jsx(WC,{sx:{transform:$?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx($C,{color:"action"})]}),G?jsx(Collapse,{in:$,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:I.children?.map(me=>k(me,D+1))})}):null]})},I.id)};return e?jsx(Paper,{elevation:0,className:o,sx:{width:T==="portrait"?"100%":88,p:1,borderRadius:4,border:"1px solid",borderColor:"divider",bgcolor:d?"#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(OC,{})}),r.map(I=>jsx(IconButton,{onClick:()=>v(I),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:M(I)?"primary.main":"action.hover",color:M(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:T==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:d?"#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:I=>x(I.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(NC,{fontSize:"small",color:"action"})}}),T==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(VC,{})}):null]}),l,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:R.length>0?R.map(I=>k(I)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),p]})})};var Bm=(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)},jC=e=>ft__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}),ZC=(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)},XC=({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}`))})]})})},YC=e=>{let{t}=Q(),o=useTheme$1(),{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:l,actions:p,extraTools:s,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:T,filterConfig:d,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:x,quickEdit:S,quickDelete:A,serviceUrl:R,orientation:w="auto",cardTitleField:E,cardSubtitleFields:P,toolbarSlot:v,emptyState:M,rowHeight:k="comfortable",cardActionSlot:I,renderCardFooter:D,onRowClick:G}=e,$=a||t("table.title.default"),ee=useMediaQuery("(orientation: portrait)"),me=useMediaQuery(o.breakpoints.down("md")),oe=w==="auto"?ee||me?"portrait":"landscape":w,{columns:re,filterText:X,setFilterText:qe,visibleColumns:nt,showSummary:Y,setShowSummary:le,summaryColumns:Ve,grouping:Le,setGrouping:Oe,expandedGroups:tt,groupAnchorEl:ze,setGroupAnchorEl:Xe,summaryAnchorEl:Pt,setSummaryAnchorEl:Rt,anchorEl:_e,setAnchorEl:yt,contextMenu:Dt,sortedAndFilteredRows:et,summaryRow:U,visibleRows:fe,page:he,setPage:Te,rowsPerPage:je,setRowsPerPage:Ne,totalDisplayCount:Ct,setSelected:ao,handleClick:Xt,toggleSummaryColumn:Ot,handleExport:Yt,handleCloseContextMenu:De,toggleColumnVisibility:xe,toggleGroupExpand:L,toggleGroupField:H,handleExpandGroupRecursively:_,handleCollapseGroupRecursively:J,handleLayoutLoad:ve,handleVariantLoad:z,handleLayoutSave:V,effectiveAppId:N,currentLayoutData:ae,currentLayoutId:ie,layoutIdToLoad:ke,graphReportOpen:te,handleOpenGraphReport:Pe,handleCloseGraphReport:Se}=Qr(e),Me=y?.enabled??false,we=Me&&(y?.interaction?.enabled??true),Ie=_i(),Ae=C||"id",kt=ft__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]),bo=ft__default.useMemo(()=>({...kt,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)}),[kt,o]),ut=ft__default.useMemo(()=>{let W=new Set(i);return et.filter(ne=>W.has(ne?.[Ae]))},[Ae,i,et]),Mt=ut.length===1?ut[0]:null,xo=!!x?.enabled,Ta=!!S?.enabled,Rr=!!A?.enabled,Po=x?.fields,ro=x?.excludeFields||[],Xa=x?.initialValues||{},Jo=S?.fields,Ut=S?.excludeFields||[],no=S?.editableFields||[],Wt=S?.nonEditableFields||[],We=S?.primaryKeys?.length?S.primaryKeys:[Ae],[ea,$o]=ft__default.useState(false),[ta,Ya]=ft__default.useState(false),[Ho,Qa]=ft__default.useState({}),[Ja,Go]=ft__default.useState(false),[oa,Ia]=ft__default.useState(false),[Kt,Ro]=ft__default.useState({}),[aa,vo]=ft__default.useState(false),[Uo,er]=ft__default.useState(false),Dr=u||ta||oa||Uo,Pa=ft__default.useMemo(()=>{let W=[...re];if(Array.isArray(Po)&&Po.length>0){let ne=new Set(Po);W=W.filter(q=>ne.has(q.id));}if(ro.length>0){let ne=new Set(ro);W=W.filter(q=>!ne.has(q.id));}return W.filter(ne=>!!ne?.id)},[re,ro,Po]),tr=ft__default.useMemo(()=>{let W=[...re];if(Array.isArray(Jo)&&Jo.length>0){let ne=new Set(Jo);W=W.filter(q=>ne.has(q.id));}if(Ut.length>0){let ne=new Set(Ut);W=W.filter(q=>!ne.has(q.id));}return W.filter(ne=>!!ne?.id)},[re,Ut,Jo]),ra=ft__default.useMemo(()=>new Set(We),[We]),Qt=ft__default.useMemo(()=>new Set(no),[no]),Do=ft__default.useMemo(()=>new Set(Wt),[Wt]),Mr=ft__default.useCallback(W=>Qt.size>0?Qt.has(W):!(Do.has(W)||ra.has(W)),[Qt,Do,ra]);ft__default.useEffect(()=>{!te&&Ie.hasActiveFilters&&Ie.clearAll();},[Ie,te]);let or=()=>{let W={};Pa.forEach(ne=>{W[ne.id]=Xa[ne.id]??"";}),Qa(W),$o(true);},Ar=(W,ne)=>{Qa(q=>({...q,[W]:ne}));},Br=async()=>{if(!x?.onSubmit){$o(false);return}try{Ya(!0),await x.onSubmit(Ho),$o(!1);}finally{Ya(false);}},Er=()=>{if(!Mt)return;let W={};tr.forEach(q=>{W[q.id]=Mt[q.id]??"";});let ne=S?.getInitialValues?{...W,...S.getInitialValues(Mt)}:W;Ro(ne),Go(true);},io=(W,ne)=>{Ro(q=>({...q,[W]:ne}));},Fr=async()=>{if(Mt){if(!S?.onSubmit){Go(false);return}try{Ia(!0),await S.onSubmit(Kt,Mt),Go(!1);}finally{Ia(false);}}},Lr=()=>{ut.length!==0&&vo(true);},ar=async()=>{if(ut.length===0){vo(false);return}if(!A?.onConfirm){vo(false),ao([]),l?.([]);return}try{er(!0),await A.onConfirm(ut),vo(!1),ao([]),l?.([]);}finally{er(false);}},na=et,{fieldMapping:Ra}=jr({rows:na,config:{...y,title:y?.title||`${$} ${t("graph.reportTitle")}`}}),Da=ft__default.useMemo(()=>we?Ie.applyRows(na,Ra):na,[Ra,Ie,we,na]),{model:b}=jr({rows:Da,config:{...y,title:y?.title||`${$} ${t("graph.reportTitle")}`,fieldMapping:Ra}}),B=b.table.columns.map(W=>({id:W.id,label:W.label,align:W.align||"left",minWidth:120,numeric:W.align==="right"})),F=N?jsx(as,{appId:N,tableKey:m,currentLayoutData:ae,onLayoutLoad:ve,targetLayoutId:ke,activeLayoutId:ie,serviceUrl:R??d?.serviceUrl}):null,K=re.filter(W=>nt.includes(W.id)),se=K.find(W=>W.id===E)||K[0],Ce=P?.map(W=>K.find(ne=>ne.id===W)).filter(Boolean)||K.filter(W=>W.id!==se?.id).slice(0,oe==="portrait"?2:3),O=K.filter(W=>W.id!==se?.id&&!Ce.some(ne=>ne.id===W.id)),Z=[v,s].filter(Boolean),j=jsxs(Fragment,{children:[jsx(Nr,{groupAnchorEl:ze,setGroupAnchorEl:Xe,grouping:Le,setGrouping:Oe,columns:re,toggleGroupField:H}),jsx(Vr,{anchorEl:_e,setAnchorEl:yt,columns:re,visibleColumns:nt,toggleColumnVisibility:xe}),jsx(Ri,{anchorEl:Pt,setAnchorEl:Rt,showSummary:Y,setShowSummary:le,columns:re,summaryColumns:Ve,toggleSummaryColumn:Ot}),jsx(Di,{contextMenu:Dt,handleCloseContextMenu:De,columns:re,visibleColumns:nt,toggleColumnVisibility:xe})]}),Ye=(W,ne,q)=>{let pe=i.includes(ne),$e=oe==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",Ko=q%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),Eg=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{Xt({},W),G?.(W);},sx:{p:k==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:pe?alpha(o.palette.primary.main,.38):Eg,background:pe?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${Ko}, ${alpha(o.palette.primary.main,.015)})`,boxShadow:pe?`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:pe?o.palette.primary.main:q%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:pe,onClick:so=>so.stopPropagation(),onChange:()=>Xt({},W),sx:{mt:-0.6,ml:-0.6}}):null,jsxs(Box,{sx:{flex:1,minWidth:0},children:[se?jsx(Typography,{sx:{fontSize:"1rem",fontWeight:900,lineHeight:1.25},children:Bm(se,W)}):null,Ce.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:Ce.map(so=>jsx(Chip,{label:`${so.label}: ${ZC(so,W)}`,size:"small",variant:"outlined",sx:kt},`${ne}-${so.id}`))}):null]}),I?jsx(Box,{onClick:so=>so.stopPropagation(),children:I(W)}):null]}),O.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:$e,gap:1},children:O.map(so=>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:so.label}),jC(Bm(so,W))]},`${ne}-${so.id}-detail`))}):null,D?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:so=>so.stopPropagation(),children:D(W)})]}):null]})},ne)};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:[d?jsx(Box,{sx:{mb:2},children:jsx(hm,{...d,onVariantLoad:W=>{z(W),d.onVariantLoad?.(W);},appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:ae}],currentLayoutId:ie,layoutRefs:[{tableKey:m,layoutId:ie}],variantService:d.variantService,serviceUrl:R??d.serviceUrl,touchMode:oe==="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":Dr?{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(Si,{filterText:X,setFilterText:qe,onRowsPerPageChange:Ne,rowsPerPage:je,rowsPerPageOptions:h,page:he,count:Ct,onPageChange:Te,actions:p,extraTools:Z,grouping:Le,setGroupAnchorEl:Xe,showSummary:Y,setShowSummary:le,setAnchorEl:yt,setSummaryAnchorEl:Rt,handleExport:Yt,showCreateButton:xo,onOpenCreateDialog:or,showEditButton:Ta,onOpenEditDialog:Er,editDisabled:ut.length!==1,showDeleteButton:Rr,onOpenDeleteConfirm:Lr,deleteDisabled:ut.length===0,onLayoutSave:T||d?.variantService&&d?.appId?V:void 0,loading:u,layoutManager:F,onOpenGraphReport:Me?Pe:void 0})}):null,jsx(Box,{sx:{flex:1,minHeight:0,overflow:"auto",p:1.5},children:jsxs(Stack,{spacing:1.25,children:[fe.length===0&&!u?M||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,fe.map((W,ne)=>{if(W.type==="group"){let $e=tt.has(W.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:()=>L(W.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:[$e?jsx(WC,{}):jsx($C,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[W.field,": ",W.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[W.count," records"]})]}),Le.length>1&&W.level<Le.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:Ko=>{Ko.stopPropagation(),_(W.id);},sx:bo}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:Ko=>{Ko.stopPropagation(),J(W.id);},sx:bo})]}):null]})},W.id)}let q=W.data||W,pe=W.id||q[Ae]||ne;return Ye(q,pe,ne)}),Y?jsx(XC,{summaryRow:U,visibleColumns:nt,columns:re}):null,u?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),xo?jsxs(Dialog,{open:ea,onClose:()=>!ta&&$o(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:x?.title||t("quickCreate.createWithTitle",{title:$})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Pa.map(W=>{let ne=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text";return jsx(TextField,{label:W.label||W.id,value:Ho[W.id]??"",onChange:q=>Ar(W.id,q.target.value),type:ne,fullWidth:true,InputLabelProps:{shrink:ne==="date"?true:void 0}},`quick-create-${W.id}`)}),x?.description?jsx(Alert,{severity:"info",children:x.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>$o(false),disabled:ta,children:x?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Br,variant:"contained",disabled:ta,children:x?.submitLabel||t("common.save")})]})]}):null,Ta?jsxs(Dialog,{open:Ja,onClose:()=>!oa&&Go(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:S?.title||t("quickEdit.editWithTitle",{title:$})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[tr.map(W=>{let ne=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text";return jsx(TextField,{label:W.label||W.id,value:Kt[W.id]??"",onChange:q=>io(W.id,q.target.value),type:ne,disabled:!Mr(W.id),fullWidth:true,InputLabelProps:{shrink:ne==="date"?true:void 0}},`quick-edit-${W.id}`)}),S?.description?jsx(Alert,{severity:"info",children:S.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Go(false),disabled:oa,children:S?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Fr,variant:"contained",disabled:oa||!Mt,children:S?.submitLabel||t("common.save")})]})]}):null,Rr?jsx(Pn,{open:aa,type:"warning",title:A?.title||t("quickDelete.confirmTitle"),message:A?.message||(ut.length>1?t("quickDelete.confirmMessageMultiple",{count:ut.length}):t("quickDelete.confirmMessageSingle")),confirmText:A?.confirmText||t("common.delete"),cancelText:A?.cancelText||t("common.cancel"),onClose:()=>!Uo&&vo(false),onConfirm:ar}):null,j,Me?jsx(Ki,{open:te,onClose:Se,model:b,aiAssistant:y?.aiAssistant,interaction:we?{enabled:true,filters:Ie.filters,fieldMapping:Ra,onPrimaryDimensionClick:W=>Ie.setFilter("primaryDimension",W),onSecondaryDimensionClick:W=>Ie.setFilter("secondaryDimension",W),onStatusClick:W=>Ie.setFilter("status",W),onClearFilter:Ie.clearFilter,onClearAll:Ie.clearAll}:void 0,tableContent:jsx(YC,{appId:N||"graph-report-internal",title:t("graph.dataBody"),columns:B,rows:b.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var AF=({appTitle:e,children:t,menuData:o=[],workloadItems:a=[],workloadSelectedId:r,showNavigation:n=true,showWorkloadNav:i=true,orientation:l="auto",logo:p,headerSlot:s,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:u,user:h,onSearch:T,defaultNavigationOpen:d,navOpen:C,onNavOpenChange:m,onWorkloadSelect:y,locale:x="en",localeLabel:S,localeOptions:A,onLocaleChange:R,onUserSetting:w,onUserLogout:E,userMenuItems:P,leftHeaderSlot:v,rightHeaderSlot:M})=>{let k="orbcafe:page-layout-mode",[I,D]=useState("system"),[G,$]=useState("light"),[ee,me]=useState(false),[oe,re]=useState(false),X=I==="system"?oe?G:"light":I;useEffect(()=>{me(true);},[]),useEffect(()=>{try{let Dt=window.localStorage.getItem(k);(Dt==="light"||Dt==="dark"||Dt==="system")&&D(Dt);}catch{}re(true);let _e=window.matchMedia("(prefers-color-scheme: dark)"),yt=()=>{$(_e.matches?"dark":"light");};return yt(),_e.addEventListener("change",yt),()=>_e.removeEventListener("change",yt)},[]),useEffect(()=>{if(oe)try{window.localStorage.setItem(k,I);}catch{}},[oe,I]),useEffect(()=>{X==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[X]);let qe=useMemo(()=>createTheme$1({palette:X==="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:X==="dark"?"#060913":"#eef3f8"}}},MuiPaper:{styleOverrides:{root:{backgroundImage:"none"}}}}}),[X]),nt=useMediaQuery("(orientation: portrait)"),Y=useMediaQuery(qe.breakpoints.down("md")),le=l==="auto"?!ee||nt||Y?"portrait":"landscape":l,[Ve,Le]=useState({landscape:d??true,portrait:false}),Oe=Ve[le],tt=C??Oe,ze=_e=>{C===void 0&&Le(yt=>({...yt,[le]:_e})),m?.(_e);},Xe=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!ee||n&&le==="portrait"?jsx(IconButton,{onClick:()=>ze(!tt),sx:{bgcolor:"action.hover"},children:jsx(OC,{})}):null,v]}),Pt=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,M]}),Rt=jsx(wm,{collapsed:le==="landscape"?!tt:false,onToggle:()=>ze(!tt),menuData:o,orientation:le,colorMode:X,maxHeight:le==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:qe,children:jsx(ki,{locale:x,children:jsxs(Box,{sx:[_e=>({minHeight:"100vh",display:"flex",flexDirection:"column",background:_e.palette.mode==="dark"?"linear-gradient(180deg, #0A0A0A 0%, #141414 55%, #1A1A1A 100%)":_e.palette.background.default}),...Array.isArray(u)?u:[u]],children:[jsx(Ss,{appTitle:e,logo:p===void 0?null:p,mode:I,onToggleMode:()=>D(_e=>_e==="system"?"dark":_e==="dark"?"light":"system"),locale:x,localeLabel:S,localeOptions:A,onLocaleChange:R,user:h,onUserSetting:w,onUserLogout:E,userMenuItems:P,onSearch:T,leftSlot:Xe,rightSlot:Pt}),s?jsx(Box,{sx:{px:{xs:2,md:3},py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:s}):null,jsxs(Box,{sx:{flex:1,minHeight:0,display:"flex",position:"relative"},children:[ee&&n&&le==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:Rt}):null,!ee||n&&le==="portrait"?jsx(Drawer,{open:tt,onClose:()=>ze(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:Rt}):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(xm,{items:a,selectedId:r,orientation:le,onItemSelect:y}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:le==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:qe.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),le==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var Lm=sk(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function Uc({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(Lm,{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(Lm,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var zF=Uc;function Zs({onTextUpdate:e,onComplete:t,onError:o,wsUrl:a="ws://localhost:8765",silenceThresholdMs:r=2e3,minVolumeRms:n=.015}){let[i,l]=useState(false),p=useRef(null),s=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),u=useRef(0),h=useRef(false),T=useRef(false),d=useCallback(()=>{p.current&&(p.current.close(),p.current=null),g.current&&(g.current.disconnect(),g.current=null),f.current&&(f.current.disconnect(),f.current=null),s.current&&(s.current.getTracks().forEach(y=>y.stop()),s.current=null),c.current&&(c.current.close(),c.current=null),T.current=false,l(false);},[]),C=useCallback(()=>{h.current||(h.current=true,p.current?.readyState===WebSocket.OPEN&&p.current.send(JSON.stringify({type:"stop"})),setTimeout(d,500));},[d]),m=useCallback(async()=>{if(!(i||T.current)){T.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}});s.current=y;let x=new WebSocket(a);p.current=x,x.onopen=()=>{l(!0),T.current=!1;},x.onmessage=E=>{try{let P=JSON.parse(E.data);if(P.type==="recognition")P.is_final?t(P.text):e?.(P.text);else if(P.type==="error"){let v=P.message||"Voice recognition error";o?.(v),C();}}catch{o?.("Failed to parse voice message");}},x.onerror=()=>{o?.("Voice service connection failed"),d();},x.onclose=()=>{d();};let S=window.AudioContext||window.webkitAudioContext;if(!S)throw new Error("AudioContext is not supported in this browser");let A=new S({sampleRate:16e3});c.current=A;let R=A.createMediaStreamSource(y);f.current=R;let w=A.createScriptProcessor(4096,1,1);g.current=w,w.onaudioprocess=E=>{if(p.current?.readyState!==WebSocket.OPEN)return;let P=E.inputBuffer.getChannelData(0),v=0;for(let I=0;I<P.length;I+=1)v+=P[I]*P[I];if(Math.sqrt(v/P.length)>n)u.current=Date.now();else if(Date.now()-u.current>r&&!h.current){C();return}let k=new Int16Array(P.length);for(let I=0;I<P.length;I+=1){let D=Math.max(-1,Math.min(1,P[I]));k[I]=D<0?D*32768:D*32767;}p.current.send(k.buffer);},R.connect(w),w.connect(A.destination);}catch{o?.("Cannot access microphone"),d();}}},[d,i,n,t,o,e,r,C,a]);return useEffect(()=>d,[d]),{isRecording:i,startRecording:m,stopRecording:C}}var Nm=createContext(null);function yk(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 bk({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:a,longPressMs:r=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:l=true,wsUrl:p,silenceThresholdMs:s,minVolumeRms:c}){let[g,f]=useState(false),[u,h]=useState(false),T=useRef(null),d=useRef(false),C=useRef(false),m=useCallback(()=>{C.current=false,f(false);},[]),{isRecording:y,startRecording:x,stopRecording:S}=Zs({wsUrl:p,silenceThresholdMs:s,minVolumeRms:c,onTextUpdate:E=>{o?.(E);},onComplete:async E=>{try{E.trim()&&(h(!0),await t(E.trim()));}catch(P){let v=P instanceof Error?P.message:"Failed to process voice command";a?.(v);}finally{h(!1),m();}},onError:E=>{a?.(E),h(!1),d.current||m();}}),A=useCallback(async()=>{C.current=false,await x();},[x]),R=useCallback(()=>{S();},[S]);useEffect(()=>{if(n)return;let E=v=>{v.isComposing||(v.code==="Space"||v.key===" ")&&(d.current||v.repeat||i&&yk(document.activeElement)||(d.current=true,v.preventDefault(),T.current=setTimeout(()=>{C.current=true,f(true),x();},r)));},P=v=>{(v.code==="Space"||v.key===" ")&&(T.current&&(clearTimeout(T.current),T.current=null),d.current=false,C.current&&(v.preventDefault(),f(false),S()));};return window.addEventListener("keydown",E),window.addEventListener("keyup",P),()=>{window.removeEventListener("keydown",E),window.removeEventListener("keyup",P),T.current&&(clearTimeout(T.current),T.current=null);}},[n,i,r,x,S]);let w=useMemo(()=>({isRecording:y,isHotkeyRecording:g,isSubmitting:u,startRecording:A,stopRecording:R}),[g,y,u,A,R]);return jsxs(Nm.Provider,{value:w,children:[l?jsx(Uc,{isRecording:g}):null,e]})}function xk(){let e=useContext(Nm);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var UF=bk,KF=xk;function Ee(...e){return twMerge(clsx(e))}var Ik=({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})]})},Vm=Ik;var Fk=({content:e,language:t="text",isStreaming:o=false,className:a=""})=>{let{theme:r}=useTheme$2(),[n,i]=useState(false),l=async()=>{try{await navigator.clipboard.writeText(e),i(!0),setTimeout(()=>i(!1),2e3);}catch(s){console.error("\u590D\u5236\u5931\u8D25:",s);}},p=r==="dark"?oneDark:oneLight;return jsxs("div",{className:Ee("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:l,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:p,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:r==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},Wm=Fk;var Vk=({content:e,isLoading:t,className:o="",style:a})=>{let r=useRef(null),[n,i]=useState(false),[l,p]=useState(null),{theme:s}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!r.current)){i(true),p(null);try{Hm.initialize({startOnLoad:!1,theme:s==="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 Hm.render(f,u);r.current&&(r.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),p(f instanceof Error?f.message:"Render failed"),r.current&&(r.current.innerText=e);}finally{i(false);}}},g=setTimeout(()=>{c();},100);return ()=>clearTimeout(g)},[e,s]),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..."})]})}):l?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:l}),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})},Um=Vk;var Uk=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:a,icon:r,closable:n=true,onClose:i,onRetry:l,className:p="",...s})=>{let[c,g]=useState(false),[f,u]=useState(false),h=async()=>{if(l){u(true);try{await l();}catch(T){console.error("\u91CD\u8BD5\u5931\u8D25:",T);}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 ${p}`,...s,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}),(l||a)&&jsxs("div",{className:"flex items-center space-x-4 mt-2",children:[l&&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})})]})},Xs=Uk;var Xk=({title:e="\u8B66\u544A",content:t,warningType:o,severity:a="warning",warnings:r=[],icon:n,closable:i=true,onClose:l,onConfirm:p,actionText:s,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((T,d)=>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:T})]},d))})]}),i&&l&&jsx("button",{onClick:l,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"})})]}),p&&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:p,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:s||"\u786E\u8BA4"})})]})},Ys=Xk;var eS=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:a,maxDisplay:r=5,icon:n,closable:i=false,onClose:l,className:p="",...s})=>{let[c,g]=useState(false),[f,u]=useState(""),[h,T]=useState(false),d=useMemo(()=>f.trim()?o.filter(y=>y.toLowerCase().includes(f.toLowerCase())):o,[o,f]),C=useMemo(()=>c?d:d.slice(0,r),[d,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 ${p}`,...s,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:()=>T(!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&&l&&jsx("button",{onClick:l,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:C.map((y,x)=>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"})]})},x))}),d.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 (${d.length})`}),d.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"})]})]})},Qs=eS;var sS=({title:e,content:t,toolName:o,parameters:a,result:r,status:n,duration:i,icon:l,closable:p=false,onClose:s,onAction:c,actionText:g,className:f="",...u})=>{let[h,T]=useState(false),[d,C]=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"})}},x=R=>R?R<1e3?`${R}ms`:`${(R/1e3).toFixed(2)}s`:"",S=m(),A=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 ${S.iconColor}`,children:l||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:A}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${S.badgeBg} ${S.badgeText}`,children:S.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"}),x(i)]}),p&&s&&jsx("button",{onClick:s,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:()=>T(!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:()=>C(!d),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:[d?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"]}),d&&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"})})]})]})},Js=sS;var cS=({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(Va,{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]})})},el=cS;var bS=({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(Bn,{data:o,orientation:r.orientation||"horizontal",valueSuffix:r.valueSuffix||"",minHeight:r.minHeight});case "line-chart-card":return jsx(Wd,{data:o,color:r.color,valueSuffix:r.valueSuffix||"",height:r.height});case "pie-chart-card":let l=o.reduce((s,c)=>s+(Number(c.value)||0),0),p=o.map(s=>({name:s.name,value:Number(s.value)||0,percent:typeof s.percent=="number"?s.percent:l>0?(Number(s.value)||0)/l*100:0}));return jsx(Ni,{data:p,variant:r.variant||"donut",size:r.size,colors:r.colors});case "combo-chart-card":return jsx($d,{data:o,barColor:r.barColor,lineColor:r.lineColor});case "heatmap-chart-card":return jsx(Gd,{data:o});case "fishbone-chart-card":return jsx(Kd,{branches:o,effect:r.effect||e||"Problem"});case "waterfall-chart-card":return jsx(_d,{data:o,height:r.height});case "google-map-card":return jsx(Xd,{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(ep,{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(l){return console.error("Error rendering chart:",l),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)})]})})]})]})},tl=bS;var vS=({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)})})})]}),al=vS;var rl=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 IS=({content:e,theme:t,size:o="base",className:a,enableCodeHighlight:r=true,enableMermaid:n=true,messageId:i,cardHooks:l})=>{let p=useMemo(()=>e?e.replace(/<think>([\s\S]*?)<\/think>/g,(f,u)=>`<div data-component="thinkbox" data-think-content="${encodeURIComponent(u.trim())}"></div>`):"",[e]),s=(f,u,h,T,d)=>{l?.onCardEvent?.({messageId:i,cardType:f,action:u,title:h,payload:T,rawData:d});},c=(f,u,h,T,d,C)=>{if(!(!d&&!l?.onCardEvent))return (...m)=>{let y=d?.(...m),x=C?C(...m):void 0;return s(f,u,h,x,T),y}},g=useMemo(()=>({div(f){let{"data-component":u,"data-think-content":h,...T}=f;return u==="thinkbox"&&h?jsx(Vm,{content:decodeURIComponent(h),theme:t,size:o,defaultExpanded:false}):jsx("div",{...T})},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,...T}){let d=/language-([\w-]+)/.exec(u||""),C=d?d[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",...T,children:h});let m=String(h).replace(/\n$/,"");if(n&&C==="mermaid")return jsx(Um,{content:m});if(C==="json"){let y=rl(m);if(y)switch(y.type){case "table":return jsx(el,{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(tl,{...y});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(al,{...y});case "error-card":{let x=y;return jsx(Xs,{...x,onClose:c("error-card","close",x.title,x,x.onClose),onRetry:c("error-card","retry",x.title,x,x.onRetry)})}case "warning-card":{let x=y,S=x.onConfirm?c("warning-card","confirm",x.title,x,x.onConfirm):x.actionText&&l?.onCardEvent?c("warning-card","confirm",x.title,x):void 0;return jsx(Ys,{...x,onClose:c("warning-card","close",x.title,x,x.onClose),onConfirm:S})}case "suggestions-card":{let x=y;return jsx(Qs,{...x,onClose:c("suggestions-card","close",x.title,x,x.onClose),onSuggestionClick:c("suggestions-card","suggestion-click",x.title,x,x.onSuggestionClick,S=>({suggestion:S}))})}case "tool-result-card":{let x=y;return jsx(Js,{...x,onClose:c("tool-result-card","close",x.title,x,x.onClose),onAction:c("tool-result-card","action",x.title,x,x.onAction)})}}}return r?jsx(Wm,{content:m,language:C,className:"not-prose"}):jsx("code",{className:u,...T,children:h})}}),[t,o,n,r,l,i]);return jsx("div",{className:Ee("markdown-body prose dark:prose-invert max-w-none",a),children:jsx(CS,{remarkPlugins:[kS,SS],rehypePlugins:[wS,TS],components:g,children:p})})},nl=IS;var PS=({content:e,messageId:t,cardHooks:o})=>{let a=(i,l,p,s,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:l,title:p,payload:s,rawData:c});},r=(i,l,p,s,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let u=c?.(...f),h=g?g(...f):void 0;return a(i,l,p,h,s),u}},n=rl(e);if(n)switch(n.type){case "table":return jsx(el,{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(tl,{...n});case "sap-analytical-card":case "sap-list-card":case "sap-object-card":case "sap-component-card":return jsx(al,{...n});case "error-card":{let i=n;return jsx(Xs,{...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,l=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(Ys,{...i,onClose:r("warning-card","close",i.title,i,i.onClose),onConfirm:l})}case "suggestions-card":{let i=n;return jsx(Qs,{...i,onClose:r("suggestions-card","close",i.title,i,i.onClose),onSuggestionClick:r("suggestions-card","suggestion-click",i.title,i,i.onSuggestionClick,l=>({suggestion:l}))})}case "tool-result-card":{let i=n;return jsx(Js,{...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(nl,{content:e,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:t,cardHooks:o})})},eg=PS;var Jc=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"}}},DS=({content:e,className:t="",messageId:o,cardHooks:a})=>{let r=ft__default.useMemo(()=>Jc.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(eg,{content:n.content,messageId:o,cardHooks:a},`block-${i}`):jsx(nl,{content:n.content,enableCodeHighlight:true,enableMath:true,enableMermaid:true,messageId:o,cardHooks:a},`block-${i}`))})},tg=DS;var MS=({content:e,isStreaming:t=true,onComplete:o,className:a="",streamIntervalMs:r=24,streamChunkSize:n=3,messageId:i,cardHooks:l})=>{let[p,s]=useState(t?0:e.length),[c,g]=useState(!t);useEffect(()=>{if(t){s(0),g(false);return}s(e.length),g(true);},[e,t]),useEffect(()=>{if(!t||c)return;if(p>=e.length){g(true),o?.();return}let d=window.setTimeout(()=>{s(C=>Math.min(C+n,e.length));},r);return ()=>{window.clearTimeout(d);}},[e.length,c,t,o,n,r,p]);let f=()=>{t&&!c&&(s(e.length),g(true),o?.());},u=t?e.slice(0,p):e,h=t&&!c,T=t&&!c;return jsxs("div",{className:`streaming-markdown ${a}`,onClick:f,style:{cursor:t?"pointer":"default"},children:[jsxs("div",{className:"relative",children:[jsx(tg,{content:u,messageId:i,cardHooks:l}),h&&jsx("span",{className:"inline-block w-0.5 h-5 bg-blue-500 ml-1 animate-pulse",style:{verticalAlign:"text-bottom"}})]}),T&&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"})]})},ng=MS;var ig=({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:Ee("flex items-center gap-1",t),children:e.map((a,r)=>jsx("button",{onClick:a.onClick,disabled:a.disabled,className:Ee("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 il=({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(ng,{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(ig,{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 lg=({onTextUpdate:e,onComplete:t,onCancel:o,disabled:a,className:r})=>{let{isRecording:n,startRecording:i,stopRecording:l}=Zs({onTextUpdate:e,onComplete:s=>{t?.(s);},onError:s=>{console.error("Voice input error:",s),o?.();}});return jsx("button",{onClick:async()=>{n?l():await i();},disabled:a,className:Ee("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(NS,{sx:{fontSize:24}}):jsx(zS,{sx:{fontSize:24}})})};var ht={container:"w-full max-w-4xl mx-auto",inputContainer:Ee("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:Ee("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:Ee("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:Ee("bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400","cursor-pointer active:scale-95"),sendButton:Ee("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:Ee("cursor-not-allowed opacity-40 bg-transparent text-gray-400"),stopButton:Ee("cursor-pointer bg-red-500 hover:bg-red-600 text-white shadow-sm active:scale-95")},KS={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},qS=({enabled:e,onClick:t})=>jsx("button",{className:Ee(ht.buttonBase,ht.buttonSmall,ht.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(GS,{sx:{fontSize:24}})}),_S=()=>jsxs("button",{className:Ee(ht.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",ht.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(US,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),jS=({canSend:e,isResponding:t,onSend:o,onStop:a})=>t?jsx("button",{className:Ee(ht.buttonBase,ht.buttonSmall,ht.stopButton),onClick:a,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:Ee(ht.buttonBase,ht.buttonSmall,e?ht.sendButton:ht.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(HS,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),cg=({onSend:e,onStop:t,isResponding:o=false,placeholder:a,getText:r})=>{let[n,i]=useState(""),[l,p]=useState([]),[s,c]=useState(false),[g,f]=useState(false),u=useRef(null),h=a||(r?r("00019","Type a message..."):"Type a message..."),T=(n.trim().length>0||l.length>0)&&!o,d={enabled:true},C=useCallback(D=>{i(D.target.value),D.target.style.height="auto",D.target.style.height=`${Math.min(D.target.scrollHeight,200)}px`;},[]),m=useCallback(D=>{if(D.target.files&&D.target.files.length>0){let G=Array.from(D.target.files);p($=>{let ee=G.filter(oe=>$.some(re=>re.name===oe.name&&re.size===oe.size));ee.length>0&&console.warn("Duplicate files ignored:",ee.map(oe=>oe.name));let me=G.filter(oe=>!$.some(re=>re.name===oe.name&&re.size===oe.size));return [...$,...me]}),u.current&&(u.current.value="");}},[]),y=useCallback(D=>{p(G=>G.filter(($,ee)=>ee!==D));},[]),x=useCallback(()=>{u.current?.click();},[]),S=useCallback(async()=>{if(!T)return;let D=n,G=[...l];i(""),p([]),u.current&&(u.current.value="");try{await e(D,G);}catch($){console.error("Failed to send message:",$),i(D),p(G);}},[n,T,e,l]),A=useCallback(D=>{D.key==="Enter"&&!D.shiftKey&&!s&&(D.preventDefault(),S());},[S,s]),R=useCallback(()=>{c(true);},[]),w=useCallback(()=>{c(false);},[]),E=useCallback(D=>{i(D);},[]),P=useCallback(D=>{i(D);},[]),v=useCallback(()=>{},[]),M=useCallback(D=>{D.preventDefault(),f(true);},[]),k=useCallback(D=>{D.preventDefault(),f(false);},[]),I=useCallback(D=>{if(D.preventDefault(),f(false),D.dataTransfer.files&&D.dataTransfer.files.length>0){let G=Array.from(D.dataTransfer.files);p($=>[...$,...G]);}},[]);return jsx("div",{className:ht.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:u,onChange:m}),jsxs("div",{className:Ee(ht.inputContainer,g&&ht.dragActive),style:{borderRadius:"32px"},onDragOver:M,onDragLeave:k,onDrop:I,children:[l.length>0&&jsx("div",{className:ht.filePreviewArea,children:l.map((D,G)=>jsxs("div",{className:ht.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:D.name}),jsx("button",{onClick:()=>y(G),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${D.name}-${G}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:Ee(ht.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:Ee(ht.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:C,onKeyDown:A,onCompositionStart:R,onCompositionEnd:w,style:KS,"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(qS,{enabled:d.enabled,onClick:x}),jsx(_S,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(lg,{onTextUpdate:E,onComplete:P,onCancel:v,disabled:o,className:ht.buttonSmall}),jsx(jS,{canSend:T,isResponding:o,onSend:S,onStop:t})]})]})]})]})]})})};var ug=({messages:e,onSend:t,onStop:o,onRegenerate:a,isResponding:r=false,className:n,placeholder:i,streamIntervalMs:l,streamChunkSize:p,onMessageStreamingComplete:s,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:Ee("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,T)=>{let d=h.type==="assistant"&&T===e.length-1,C=h.type==="assistant"?{isLatestAssistant:d,onRegenerate:a?()=>a(h.id):void 0}:void 0;return jsx(il,{message:h,assistantActions:C,onStreamingComplete:()=>s?.(h.id),streamIntervalMs:l,streamChunkSize:p,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(cg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:r,placeholder:i})})]})};var ho={};var YS={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},hz=({title:e="AI Agent",description:t,headerActions:o,className:a,agentStatus:r,showInput:n=false,...i})=>{let l=r??(i.isResponding?"running":"idle");return jsxs("div",{className:Ee("relative flex h-full w-full",ho.agentPanel,a),"data-status":l,children:[jsx("div",{className:ho.colorHalo,"data-status":l,"aria-hidden":"true"}),jsxs("div",{className:ho.marqueeBorder,"data-status":l,"aria-hidden":"true",children:[jsx("span",{className:Ee(ho.edge,ho.top)}),jsx("span",{className:Ee(ho.edge,ho.right)}),jsx("span",{className:Ee(ho.edge,ho.bottom)}),jsx("span",{className:Ee(ho.edge,ho.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:ho.statusDot,"data-status":l}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:YS[l]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(ug,{...i,showInput:n})})]})]})};var ow={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},wz=({messages:e,onSend:t,onRegenerate:o,isResponding:a=false,className:r,placeholder:n,title:i="Copilot",corner:l="bottom-right",onCollapse:p,onHeaderPointerDown:s,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:u,onMessageStreamingComplete:h,cardHooks:T})=>{let[d,C]=useState(""),[m,y]=useState(false),x=useRef(null),S=ow[l];useEffect(()=>{x.current?.scrollIntoView({behavior:"smooth"});},[e,a]);let A=useCallback(async()=>{let w=d.trim();!w||a||(C(""),await t(w));},[a,t,d]),R=useCallback(async w=>{w.key==="Enter"&&!m&&(w.preventDefault(),await A());},[A,m]);return jsxs("div",{className:Ee("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:[p&&jsx("button",{onClick:p,className:Ee("absolute z-20 flex h-10 w-10 items-center justify-center rounded-full transition-colors hover:bg-transparent dark:hover:bg-transparent",S==="top-left"&&"-left-2 -top-2",S==="top-right"&&"-right-2 -top-2",S==="bottom-left"&&"-bottom-2 -left-2",S==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:Ee("block h-4 w-4 border-[#21BCFF]",S==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",S==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",S==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",S==="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:s,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((w,E)=>{let P=w.type==="assistant"&&E===e.length-1,v=w.type==="assistant"?{isLatestAssistant:P,onRegenerate:o?()=>o(w.id):void 0}:void 0;return jsx(il,{message:w,assistantActions:v,onStreamingComplete:()=>h?.(w.id),streamIntervalMs:f,streamChunkSize:u,cardHooks:T},w.id)}),jsx("div",{ref:x})]}),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:d,onChange:w=>C(w.target.value),onCompositionStart:()=>y(true),onCompositionEnd:()=>y(false),onKeyDown:R,"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 Rz=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:a}={})=>{let[r,n]=useState(e),[i,l]=useState(false),p=useCallback(async u=>{l(true);try{await u?.();}finally{l(false);}},[]),s=useCallback(u=>p(()=>t?.(u)),[t,p]),c=useCallback(u=>p(()=>o?.(u)),[o,p]),g=useCallback(u=>p(()=>a?.(u)),[a,p]),f=useMemo(()=>({mode:r,loading:i,onModeChange:n,onLogin:s,onRegister:c,onForgotPassword:g}),[g,s,c,i,r]);return {mode:r,loading:i,setMode:n,authPageProps:f}};var od=({label:e,...t})=>jsx(FormControlLabel,{control:jsx(Checkbox,{...t}),label:e});var bi=forwardRef((e,t)=>jsx(Paper,{ref:t,...e,elevation:e.elevation||1,sx:{p:2,mb:2,...e.sx}}));bi.displayName="CPaper";var fw={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."},jz=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:a,onRegister:r,onForgotPassword:n,loading:i=false,logo:l,copy:p,sx:s})=>{let c=useTheme(),g=e!==void 0,[f,u]=useState(t),h=e??f,T=useMemo(()=>({...fw,...p}),[p]),[d,C]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[m,y]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[x,S]=useState({email:""}),[A,R]=useState(""),w=I=>{g||u(I),R(""),o?.(I);},E=async I=>{I.preventDefault(),await a?.(d),R("Demo login accepted. No real authentication request was sent.");},P=async I=>{I.preventDefault(),await r?.(m),R("Demo registration saved locally for this screen.");},v=async I=>{I.preventDefault(),await n?.(x),R("Demo reset link request created. No email was sent.");},M=h==="login"?T.loginTitle:h==="register"?T.registerTitle:T.forgotTitle,k=h==="login"?T.loginSubtitle:h==="register"?T.registerSubtitle:T.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%)",...s},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:l}),jsxs(Stack,{spacing:2,children:[jsx(Typography,{sx:{fontSize:14,fontWeight:700,color:"primary.main",textTransform:"uppercase"},children:T.productName}),jsx(Typography,{sx:{fontSize:{md:34,lg:42},lineHeight:1.06,fontWeight:800},children:T.headline}),jsx(Typography,{sx:{maxWidth:460,color:"text.secondary",fontSize:16,lineHeight:1.7},children:T.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(bi,{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:l}),jsx(Typography,{sx:{fontSize:28,fontWeight:800},children:M}),jsx(Typography,{sx:{color:"text.secondary"},children:k})]}),A&&jsx(Alert,{severity:"success",children:A}),h==="login"&&jsx(Box,{component:"form",onSubmit:E,children:jsxs(Stack,{spacing:2,children:[jsx(qt,{label:"Email or user ID",value:d.username,onChange:I=>C(D=>({...D,username:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(bg,{fontSize:"small"})})}}),jsx(qt,{label:"Password",type:"password",value:d.password,onChange:I=>C(D=>({...D,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(mw,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(od,{label:"Remember me",checked:d.remember,onChange:I=>C(D=>({...D,remember:I.target.checked}))}),jsx(Mo,{type:"button",variant:"text",size:"small",onClick:()=>w("forgot"),children:"Forgot?"})]}),jsx(Mo,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(Mo,{type:"button",variant:"text",size:"small",onClick:()=>w("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:P,children:jsxs(Stack,{spacing:2,children:[jsx(qt,{label:"Full name",value:m.name,onChange:I=>y(D=>({...D,name:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(bg,{fontSize:"small"})})}}),jsx(qt,{label:"Work email",type:"email",value:m.email,onChange:I=>y(D=>({...D,email:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yg,{fontSize:"small"})})}}),jsx(qt,{label:"Password",type:"password",value:m.password,onChange:I=>y(D=>({...D,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(gw,{fontSize:"small"})})}}),jsx(qt,{label:"Confirm password",type:"password",value:m.confirmPassword,onChange:I=>y(D=>({...D,confirmPassword:I.target.value}))}),jsx(od,{label:"I accept the demo workspace terms",checked:m.acceptedTerms,onChange:I=>y(D=>({...D,acceptedTerms:I.target.checked}))}),jsx(Mo,{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(Mo,{type:"button",variant:"text",size:"small",onClick:()=>w("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:v,children:jsxs(Stack,{spacing:2,children:[jsx(qt,{label:"Work email",type:"email",value:x.email,onChange:I=>S({email:I.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(yg,{fontSize:"small"})})}}),jsx(Mo,{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(Mo,{type:"button",variant:"text",size:"small",onClick:()=>w("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 bw={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},xw=[{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"}],xg=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:a,filterFields:r,filterAppId:n="planning-gantt-filter",filterTableKey:i="planning",columns:l,onFilterSearch:p,onFilterVariantLoad:s,enableRowReorder:c,onTaskReorder:g})=>{let[f,u]=useState(t),[h,T]=useState(o??e[0]?.id??""),[d,C]=useState({...bw,...a}),m=useMemo(()=>{let A=String(d.keyword?.value??"").trim().toLowerCase(),R=String(d.status?.value??"").trim(),w=String(d.owner?.value??"").trim().toLowerCase(),E=String(d.workCenter?.value??"").trim().toLowerCase(),P=d.dateRange?.value,v=P?.[0]?Qo(P[0]):null,M=P?.[1]?Qo(P[1]):null;return e.filter(k=>{if(A&&![k.id,k.code,k.title,k.project,k.workCenter,k.owner?.name].join(" ").toLowerCase().includes(A)||R&&k.status!==R||w&&!String(k.owner?.name??"").toLowerCase().includes(w)||E&&!String(k.workCenter??"").toLowerCase().includes(E))return false;if(v||M){let I=Qo(k.startDate),D=Qo(k.endDate),G=v?D.isAfter(v)||D.isSame(v,"day"):true,$=M?I.isBefore(M)||I.isSame(M,"day"):true;if(!G||!$)return false}return true})},[d,e]);useEffect(()=>{m.length!==0&&(m.some(A=>A.id===h)||T(m[0].id));},[m,h]);let y=useCallback(A=>{T(A.id);},[]),x=useMemo(()=>({appId:n,tableKey:i,fields:r??xw,filters:d,onFilterChange:C,onVariantLoad:s??(()=>{}),onSearch:p??(()=>{})}),[n,r,i,d,p,s]),S=useMemo(()=>({tasks:m,columns:l,scale:f,onScaleChange:u,selectedTaskId:h,onTaskSelect:y,enableRowReorder:c,onTaskReorder:g}),[l,c,m,g,y,f,h]);return {scale:f,setScale:u,selectedTaskId:h,setSelectedTaskId:T,filters:d,setFilters:C,filteredTasks:m,smartFilterProps:x,planningGanttProps:S}};var oN=e=>{let t=xg(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var vg=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var ja=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});ja.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))})]});Qo.extend(Aw);var id=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],sd=56,Pr=58,ld=8,cd=260,jw=320,Za="220ms cubic-bezier(0.2, 0, 0, 1)",Ig={"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"}},Zw=e=>e?Ig[e]?.label??e:"Planned",Xw=e=>e?Ig[e]?.color??"default":"info",Pg=e=>Math.min(100,Math.max(0,e??0)),Rg=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...Rg(o.children??[],t+1)]),Yw=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:Zw(e.status),statusTone:e.status??"planned",progress:Pg(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),Dg=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Mg=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),Qw=(e,t,o)=>{let a=[],r=Dg(e,o),n=Mg(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},dd=(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},Ag=({title:e="Project Plan",subtitle:t="Task table and timeline view",extraTools:o,bodyHeight:a=560,tasks:r,columns:n,scale:i="week",onScaleChange:l,timelineStart:p,timelineEnd:s,selectedTaskId:c,onTaskSelect:g,enableRowReorder:f=true,onTaskReorder:u,emptyLabel:h="No planning tasks available.",sx:T})=>{let d=useTheme(),C=useRef(null),m=useRef(null),y=useRef(null),x=useRef(false),[S,A]=useState(null),[R,w]=useState(null),[E,P]=useState({}),[v,M]=useState(sd),[k,I]=useState([]),[D,G]=useState({activeId:null,overId:null}),$=useRef(null),ee=useMemo(()=>Rg(r),[r]),me=useMemo(()=>{if(k.length===0)return ee;let L=new Map(ee.map(J=>[J.id,J])),H=k.map(J=>L.get(J)).filter(J=>!!J),_=new Set(H.map(J=>J.id));return [...H,...ee.filter(J=>!_.has(J.id))]},[ee,k]),oe=useMemo(()=>new Map(me.map(L=>[L.id,L])),[me]),re=useMemo(()=>me.map(L=>Yw(L)),[me]),X=useMemo(()=>new Map(re.map(L=>[L.id,L])),[re]),qe=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(L,H)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:H.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:H.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(L,H)=>jsx(vg,{label:H.status,color:Xw(H.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:L=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[L,"%"]}),jsx(LinearProgress,{variant:"determinate",value:L,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),nt=useMemo(()=>{if(!n||n.length===0)return qe;let L=new Map(qe.map(H=>[H.id,H]));return n.map(H=>{let _=L.get(H.id),J=H.width??_?.minWidth??120,ve={id:H.id,label:H.label,minWidth:J};if(_?.numeric&&(ve.numeric=true),H.render){let z=H.render;return ve.render=(V,N)=>{let ae=oe.get(N.id);return z(ae||N)},ve}return _?.render?(ve.render=_.render,ve):(ve.render=(z,V)=>{let N=V[H.id];if(N!=null&&String(N).length>0)return String(N);let ie=oe.get(V.id)?.[H.id];return ie!=null&&String(ie).length>0?String(ie):"-"},ve)})},[n,qe,oe]),Y=Qr({appId:"planning-gantt",title:e,columns:nt,rows:re,rowKey:"id",rowsPerPage:-1,rowsPerPageOptions:[-1],count:re.length,showSummary:false}),le=Y.visibleRows;useEffect(()=>{let L=ee.map(H=>H.id);I(H=>{let _=new Set(L),J=H.filter(N=>_.has(N)),ve=new Set(J),z=L.filter(N=>!ve.has(N)),V=[...J,...z];return V.length===H.length&&V.every((N,ae)=>N===H[ae])?H:V});},[ee]);let Ve=L=>L.type==="group"?`group-${L.id}`:`row-${(L.data||L)?.id}`,Le=useMemo(()=>{let L=re.map(ae=>Qo(ae.startDate)),H=re.map(ae=>Qo(ae.endDate)),_=p?Qo(p):L.reduce((ae,ie)=>ie.isBefore(ae)?ie:ae,L[0]??Qo()),J=s?Qo(s):H.reduce((ae,ie)=>ie.isAfter(ae)?ie:ae,H[0]??Qo().add(30,"day")),ve=i==="month"?"month":i==="week"?"week":i==="day"?"day":"hour",z=i==="month"?"month":i==="week"?"week":i==="day"?"day":"hour",V=i==="hour"?12:1,N=i==="hour"?12:1;return {start:Dg(_.subtract(V,ve),i),end:Mg(J.add(N,z),i)}},[re,i,s,p]),Oe=id.find(L=>L.value===i)??id[1],tt=Array.isArray(o)?o:o?[o]:[],ze=useMemo(()=>Qw(Le.start,Le.end,i),[Le.end,Le.start,i]),Xe=ze.length*Oe.width,Pt=(Y.columns||[]).filter(L=>Y.visibleColumns.includes(L.id)).reduce((L,H)=>L+(Y.columnWidths?.[H.id]||H.minWidth||100),0),Rt=S??Pt,_e=R==="table",yt=R==="timeline",Dt=yt?0:_e?"100%":Rt,et=R==="timeline",U=R==="table",fe=!et&&!U,he=_e?"minmax(0, 1fr) 0px 0px":yt?"0px 0px minmax(0, 1fr)":`${Rt}px ${ld}px minmax(0, 1fr)`;useEffect(()=>{A(L=>L===null?null:Math.min(Math.max(L,cd),Pt));},[Pt]);let Te=L=>{L.preventDefault(),L.currentTarget.setPointerCapture(L.pointerId),w(null),$.current={startX:L.clientX,startWidth:Rt};let H=J=>{let ve=$.current;if(!ve)return;let z=C.current?.clientWidth??0,V=z>0?Math.max(cd,z-ld-jw):Pt,N=Math.min(Math.max(ve.startWidth+J.clientX-ve.startX,cd),V);A(N);},_=()=>{$.current=null,window.removeEventListener("pointermove",H),window.removeEventListener("pointerup",_),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",H),window.addEventListener("pointerup",_);},je=()=>{w(null),A(null);},Ne=L=>!f||!L?false:X.get(L)?.reorderable!==false,Ct=(L,H)=>{if(!L||!H||L===H||!Ne(L)||!Ne(H))return false;if(Y.grouping.length===0)return true;let _=X.get(L),J=X.get(H);return !_||!J?false:Y.grouping.every(ve=>_[ve]===J[ve])},ao=(L,H)=>{if(!Ct(L,H))return;let _=le.filter(te=>te.type!=="group").map(te=>String((te.data||te)?.id)),J=_.indexOf(L),ve=_.indexOf(H);if(J<0||ve<0)return;let z=[..._];[z[J],z[ve]]=[z[ve],z[J]];let V=new Set(_),N=me.map(te=>te.id),ae=[...z,...N.filter(te=>!V.has(te))],ie=oe.get(L),ke=oe.get(H);if(Y.setOrder("asc"),Y.setOrderBy(""),I(ae),ie&&ke){let{level:te,...Pe}=ie,{level:Se,...Me}=ke,we=ae.reduce((Ie,Ae)=>{let kt=oe.get(Ae);if(kt){let{level:bo,...ut}=kt;Ie.push(ut);}return Ie},[]);u?.(we,{activeTask:Pe,targetTask:Me});}},Xt=(L,H)=>{if(!Ne(H.id)){L.preventDefault();return}L.stopPropagation(),L.dataTransfer.effectAllowed="move",L.dataTransfer.setData("text/plain",H.id),G({activeId:H.id,overId:null}),g?.(oe.get(H.id)||H);},Ot=(L,H)=>{if(!Ct(D.activeId,H)){G(_=>_.overId===null?_:{..._,overId:null});return}L.preventDefault(),L.stopPropagation(),L.dataTransfer.dropEffect="move",G(_=>_.overId===H?_:{..._,overId:H});},Yt=(L,H)=>{let _=D.activeId||L.dataTransfer.getData("text/plain");if(!Ct(_,H)){G({activeId:null,overId:null});return}L.preventDefault(),L.stopPropagation(),ao(_,H),G({activeId:null,overId:null});},De=()=>{G({activeId:null,overId:null});},xe=L=>{if(x.current)return;let H=L==="table"?m.current:y.current,_=L==="table"?y.current:m.current;!H||!_||(x.current=true,_.scrollTop=H.scrollTop,window.requestAnimationFrame(()=>{x.current=false;}));};return useLayoutEffect(()=>{if(!c||U)return;let L=y.current,H=m.current;if(!L)return;let _=`row-${c}`,J=Array.from(L.querySelectorAll("[data-planning-timeline-row-key]")).find(V=>V.dataset.planningTimelineRowKey===_),ve=X.get(c);if(!J||!ve)return;let z=window.requestAnimationFrame(()=>{let V=L.getBoundingClientRect(),N=J.getBoundingClientRect(),ae=Math.max(1,L.clientHeight-v),ie=L.scrollTop+N.top-V.top-v-(ae-N.height)/2;x.current=true,L.scrollTop=Math.max(0,ie),H&&!et&&(H.scrollTop=L.scrollTop);let ke=dd(Qo(ve.startDate),ze,Oe.width),te=Math.max(0,ke-Oe.width);L.scrollLeft=Math.min(te,Math.max(0,Xe-L.clientWidth)),window.requestAnimationFrame(()=>{x.current=false;});});return ()=>window.cancelAnimationFrame(z)},[Oe.width,v,c,et,X,U,le,Xe,ze]),useLayoutEffect(()=>{let L=m.current;if(!L)return;let H=0,_=()=>{let N=L.querySelector("thead"),ae=Array.from(L.querySelectorAll("tbody tr[data-planning-row-key]"));if(ae.length===0)return;let ie=N?.getBoundingClientRect().height||sd,ke={};ae.forEach(te=>{let Pe=te.dataset.planningRowKey;Pe&&(ke[Pe]=te.getBoundingClientRect().height);}),M(te=>Math.abs(te-ie)<.01?te:ie),P(te=>{let Pe=Object.keys(te),Se=Object.keys(ke);return Pe.length===Se.length&&Se.every(Me=>Math.abs((te[Me]??0)-ke[Me])<.01)?te:ke});},J=()=>{window.cancelAnimationFrame(H),H=window.requestAnimationFrame(_);};if(_(),typeof ResizeObserver>"u")return window.addEventListener("resize",J),()=>{window.cancelAnimationFrame(H),window.removeEventListener("resize",J);};let ve=new ResizeObserver(J),z=L.querySelector("table"),V=L.querySelector("thead");return z&&ve.observe(z),V&&ve.observe(V),L.querySelectorAll("tbody tr[data-planning-row-key]").forEach(N=>ve.observe(N)),window.addEventListener("resize",J),()=>{window.cancelAnimationFrame(H),ve.disconnect(),window.removeEventListener("resize",J);}},[le,Y.visibleColumns,Y.grouping,Y.columnWidths]),jsxs(bi,{elevation:0,sx:{m:0,p:0,display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden",borderRadius:3,border:`1px solid ${d.palette.divider}`,backgroundColor:d.palette.background.paper,...T},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 ${d.palette.divider}`},children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[jsx(Box,{sx:{width:38,height:38,borderRadius:2,display:"grid",placeItems:"center",backgroundColor:"primary.main",color:"primary.contrastText"},children:jsx(Ow,{fontSize:"small"})}),jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:18,fontWeight:800},children:e}),jsx(Typography,{variant:"body2",sx:{color:"text.secondary"},children:t})]})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[tt.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:tt.map((L,H)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:L},`planning-extra-tool-${H}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ja,{tooltip:"Column visibility",onClick:L=>Y.setAnchorEl(L.currentTarget),color:"default",children:jsx(Df,{fontSize:"small"})}),jsx(ja,{tooltip:"Group by",onClick:L=>Y.setGroupAnchorEl(L.currentTarget),color:"default",children:jsx(Bf,{fontSize:"small"})}),jsx(ja,{tooltip:"Sort by first visible column",onClick:()=>{let L=(Y.columns||[]).find(H=>Y.visibleColumns.includes(H.id));L&&Y.handleRequestSort(L.id);},color:Y.orderBy?"primary":"default",children:jsx(qw,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(ja,{tooltip:"Expand task table",onClick:()=>w("table"),color:R==="table"?"primary":"default",children:jsx(Uw,{fontSize:"small"})}),jsx(ja,{tooltip:"Reset split",onClick:je,color:R===null?"primary":"default",children:jsx(Kw,{fontSize:"small"})}),jsx(ja,{tooltip:"Expand timeline",onClick:()=>w("timeline"),color:R==="timeline"?"primary":"default",children:jsx(Gw,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(kg,{label:"",value:i,options:id.map(L=>({value:L.value,label:L.label})),onChange:L=>l?.(L.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),re.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:h}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:C,sx:{height:"100%",display:"grid",gridTemplateColumns:he,transition:`grid-template-columns ${Za}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:m,onScroll:()=>xe("table"),sx:{width:Dt,height:a,overflowX:"auto",overflowY:"auto",opacity:et?0:1,transform:et?"translateX(-10px)":"translateX(0)",pointerEvents:et?"none":"auto",transition:`opacity ${Za}, transform ${Za}, width ${Za}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:Pt,"& thead .MuiTableCell-root":{height:sd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(wi,{columns:Y.columns,visibleColumns:Y.visibleColumns,order:Y.order,orderBy:Y.orderBy,onRequestSort:Y.handleRequestSort,grouping:Y.grouping,isAllExpanded:Y.isAllExpanded,handleToggleAll:Y.handleToggleAll,columnWidths:Y.columnWidths,onColumnResize:Y.handleColumnResize}),jsx(TableBody,{children:le.map(L=>{let H=Ve(L);if(L.type==="group")return jsxs(TableRow,{"data-planning-row-key":H,sx:{height:Pr,backgroundColor:d.palette.action.hover},children:[Y.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Pr,py:0,borderBottom:`1px solid ${d.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>Y.toggleGroupExpand(L.id),children:L.isExpanded?jsx(oh,{fontSize:"small"}):jsx(Of,{fontSize:"small"})})}),jsx(TableCell,{colSpan:Y.visibleColumns.length,sx:{height:Pr,py:0,borderBottom:`1px solid ${d.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[L.field,": ",L.value," (",L.count,")"]})})]},L.id);let _=L.data||L,J=_.id===c,ve=Ne(_.id),z=D.activeId===_.id,V=D.overId===_.id&&Ct(D.activeId,_.id);return jsxs(TableRow,{"data-planning-row-key":H,draggable:ve,hover:true,selected:J,onDragStart:N=>Xt(N,_),onDragOver:N=>Ot(N,_.id),onDragEnter:N=>Ot(N,_.id),onDrop:N=>Yt(N,_.id),onDragEnd:De,onClick:()=>g?.(oe.get(_.id)||_),sx:{cursor:z?"grabbing":ve?"grab":g?"pointer":"default",height:Pr,opacity:z?.56:1,"& .MuiTableCell-root":V?{borderTop:`2px solid ${d.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[Y.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Pr,py:0,borderBottom:`1px solid ${d.palette.divider}`}}),(Y.columns||[]).filter(N=>Y.visibleColumns.includes(N.id)).map(N=>jsx(TableCell,{sx:{width:Y.columnWidths?.[N.id]||N.minWidth||100,height:Pr,py:0,overflow:"hidden",borderBottom:`1px solid ${d.palette.divider}`},children:N.render?N.render(_[N.id],_):String(_[N.id]??"-")},`${_.id}-${N.id}`))]},_.id)})})]})}),jsx(Box,{onPointerDown:fe?Te:void 0,role:"separator","aria-orientation":"vertical",sx:{width:fe?ld:0,cursor:fe?"col-resize":"default",opacity:fe?1:0,pointerEvents:fe?"auto":"none",borderLeft:fe?`1px solid ${d.palette.divider}`:"0 solid transparent",borderRight:fe?`1px solid ${d.palette.divider}`:"0 solid transparent",backgroundColor:d.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${Za}, opacity ${Za}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:d.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:fe?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:U?0:1,transform:U?"translateX(10px)":"translateX(0)",pointerEvents:U?"none":"auto",transition:`opacity ${Za}, transform ${Za}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:y,onScroll:()=>xe("timeline"),sx:{width:"100%",height:a,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:Xe},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${ze.length}, ${Oe.width}px)`,height:v,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:d.palette.background.paper},children:ze.map(L=>jsxs(Box,{title:L.title,sx:{px:.75,display:"flex",flexDirection:L.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:L.contextLabel?.15:0,borderRight:`1px solid ${d.palette.divider}`,color:L.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[L.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:L.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:L.label})]},L.key))}),jsx(Stack,{sx:{position:"relative"},children:le.map(L=>{let H=Ve(L),_=E[H]??Pr;if(L.type==="group")return jsx(Box,{"data-planning-timeline-row-key":H,sx:{position:"relative",height:_,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,backgroundColor:d.palette.action.hover}},L.id);let J=L.data||L,ve=Qo(J.startDate),z=Qo(J.endDate),V=dd(ve,ze,Oe.width),N=dd(z,ze,Oe.width),ae=Math.max(18,N-V),ie=Pg(J.progress),ke=J.id===c,te=Ne(J.id),Pe=D.activeId===J.id,Se=D.overId===J.id&&Ct(D.activeId,J.id),Me=J.color??(J.statusTone==="blocked"?d.palette.error.main:d.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":H,draggable:te,onDragStart:we=>Xt(we,J),onDragOver:we=>Ot(we,J.id),onDragEnter:we=>Ot(we,J.id),onDrop:we=>Yt(we,J.id),onDragEnd:De,onClick:()=>g?.(oe.get(J.id)||J),sx:{position:"relative",height:_,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,opacity:Pe?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:d.palette.primary.main,opacity:Se?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},backgroundImage:d.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:`${Oe.width}px 100%`,cursor:Pe?"grabbing":te?"grab":g?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${J.title}: ${ve.format("MMM D HH:mm")} - ${z.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:V,top:Math.max(8,(_-24)/2),width:ae,height:24,borderRadius:999,overflow:"hidden",backgroundColor:d.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:ke?`2px solid ${d.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${ie}%`,backgroundColor:Me}}),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(Nr,{groupAnchorEl:Y.groupAnchorEl,setGroupAnchorEl:Y.setGroupAnchorEl,grouping:Y.grouping,setGrouping:Y.setGrouping,columns:Y.columns,toggleGroupField:Y.toggleGroupField}),jsx(Vr,{anchorEl:Y.anchorEl,setAnchorEl:Y.setAnchorEl,columns:Y.columns,visibleColumns:Y.visibleColumns,toggleColumnVisibility:Y.toggleColumnVisibility})]})};var WN=({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(da,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(Ag,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),r]})};var i1={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)"}}},KN=({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:l})=>{let p=useMediaQuery("(prefers-reduced-motion: reduce)"),[s,c]=useState("to"),g=!i&&!p&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=i1[o],u=useMemo(()=>g?s==="from"?f.from:f.to:{opacity:1,transform:"none"},[g,s,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,...l},children:e})},qN={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};
17
- export{hz as AgentPanel,fl as Button,bk as CAINavProvider,ep as CAmapChart,Ss as CAppHeader,m2 as CAppPageLayout,jz as CAuthPage,Bn as CBarChart,Mi as CChartCard,$d as CComboChart,rp as CCustomizeAgent,yA as CDetailInfoPage,eu as CDetailSearchAiBar,ms as CDetailSectionCard,Kd as CFishboneChart,Xd as CGoogleMapChart,tp as CGraphCharts,Nd as CGraphKpiCards,Ki as CGraphReport,Gd as CHeatmapChart,VA as CKanbanBoard,iu as CKanbanBucket,uc as CKanbanCard,Rp as CLayoutManagement,as as CLayoutManager,Wd as CLineChart,Pn as CMessageBox,Td as CPageLayout,KN as CPageTransition,Ni as CPieChart,tE as CPivotTable,Ag as CPlanningGantt,WN as CPlanningLayout,da as CSmartFilter,zD as CSmartTable,GD as CStandardPage,Va as CTable,AD as CTableBody,BD as CTableCell,ED as CTableContainer,FD as CTableHead,LD as CTableRow,Zi as CVariantManagement,gp as CVariantManager,Uc as CVoiceWaveOverlay,_d as CWaterfallChart,Un as CodeBlock,wz as CopilotChat,pT as GlobalMessage,Zn as MarkdownRenderer,Kn as MathBlock,Ql as MermaidBlock,Cd as NavigationIsland,In as ORBCAFE_I18N_MESSAGES,ki as OrbcafeI18nProvider,qN as PAGE_TRANSITION_PRESETS,AF as PAppPageLayout,vE as PBarcodeScanner,wm as PNavIsland,LE as PNumericKeypad,hm as PSmartFilter,YC as PTable,IE as PTouchCard,xm as PWorkloadNav,ju as PivotChartPanel,ug as StdChat,ec as TableBlock,ps as ThinkBlock,yl as TreeMenu,UF as VoiceNavigatorProvider,zF as VoiceWaveOverlay,Wi as buildAmapEmbedUrl,Ln as buildGoogleMapEmbedUrl,UI as buildGoogleMapIframe,Vg as buttonVariants,cu as createKanbanBoardModel,No as findKanbanCard,j1 as message,ia as messageManager,bs as moveKanbanCard,cs as parseMarkdownTable,WM as renderMarkdown,Mp as resolveVariantFilters,rs as resolveVariantLayout,xk as useAINav,rM as useAmapEmbedUrl,Rz as useAuthPage,ou as useDetailInfo,aM as useGoogleMapEmbedUrl,QD as useGraphChartData,_i as useGraphInteraction,jr as useGraphReport,GA as useKanbanBoard,Sd as useNavigationIsland,Q as useOrbcafeI18n,pE as usePadLayout,gE as usePadRecordEditor,xu as usePageLayout,iE as usePivotTable,xg as usePlanningGantt,oN as usePlanningLayout,ZD as useStandardReport,Zs as useVoiceInput,KF as useVoiceNavigator};
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 um=(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},mm=(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}}),gm=({rows:e,dimensionFieldId:t,primaryValue:o,secondaryValue:a})=>{if(!t)return [];let r=new Map;return e.forEach(n=>{let i=ba(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 fm=({rows:e,fieldMap:t,rowFields:o,columnFields:a,valueFields:r,chartDimensionFieldId:n,chartPrimaryValueFieldId:i,chartSecondaryValueFieldId:s,chartType:p,isCollapsed:l,onChartDimensionFieldIdChange:c,onChartPrimaryValueFieldIdChange:g,onChartSecondaryValueFieldIdChange:f,onChartTypeChange:u,onToggleCollapse:h,getAggregationLabel:w})=>{let{t:d}=ee(),C=useMemo(()=>um(o,a,t),[a,t,o]),m=useMemo(()=>mm(r,t,w),[t,w,r]),y=m.find(v=>v.fieldId===i)??m[0],b=m.find(v=>v.fieldId===s&&v.fieldId!==y?.fieldId)??null,T=C.find(v=>v.fieldId===n)??C[0],A=T&&y?d("pivot.chart.subtitleReady",{dimension:T.label,measure:b?`${y.label} / ${b.label}`:y.label}):d("pivot.chart.subtitle"),R=useMemo(()=>!T||!y?[]:gm({rows:e,dimensionFieldId:T.fieldId,primaryValue:y.item,secondaryValue:b?.item}),[y,e,b,T]),S=v=>y?ci(v,y.item,t):v.toLocaleString(),B=v=>b?ci(v,b.item,t):v.toLocaleString(),P=C.length>1||m.length>1;return jsxs(un,{title:d("pivot.chart.title"),subtitle:A,collapsed:l,onToggleCollapse:h,expandAriaLabel:d("pivot.chart.collapse.ariaExpand"),collapseAriaLabel:d("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:d("pivot.chart.dimension")}),jsx(Select,{value:T?.fieldId??"",onChange:v=>c(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:C.map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.primaryMeasure")}),jsx(Select,{value:y?.fieldId??"",onChange:v=>g(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:m.map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.secondaryMeasure")}),jsxs(Select,{value:b?.fieldId??"",onChange:v=>f(String(v.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:d("common.none")}),m.filter(v=>v.fieldId!==y?.fieldId).map(v=>jsx(MenuItem,{value:v.fieldId,sx:{fontSize:"0.75rem"},children:v.label},v.fieldId))]})]}),jsxs(FormControl,{size:"small",sx:{minWidth:0,width:"100%"},children:[jsx(Typography,{sx:{fontSize:"0.68rem",color:"text.secondary",mb:.45},children:d("pivot.chart.chartType")}),jsxs(Select,{value:p,onChange:v=>u(v.target.value),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"bar-vertical",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.barVertical")}),jsx(MenuItem,{value:"bar-horizontal",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.barHorizontal")}),jsx(MenuItem,{value:"line",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.line")}),jsx(MenuItem,{value:"scatter",sx:{fontSize:"0.75rem"},children:d("pivot.chart.style.scatter")})]})]})]}),jsx(Box,{children:T?y?R.length===0?jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("pivot.chart.emptyNoData")})}):p==="scatter"?jsx(cm,{data:R,primaryLabel:y.label,secondaryLabel:b?.label,formatPrimaryValue:S,formatSecondaryValue:B}):jsx(pm,{data:R,chartType:p,primaryLabel:y.label,secondaryLabel:b?.label,formatPrimaryValue:S,formatSecondaryValue:B}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("pivot.chart.emptyNoValue")})}):jsx(Box,{sx:{py:5,textAlign:"center"},children:jsx(Typography,{sx:{fontSize:"0.86rem",color:"text.secondary"},children:d("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),p=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:[p&&!l&&jsx(IconButton,{size:"small",onClick:()=>n(e.key),sx:{p:.2,mr:.5,ml:-1},children:s?jsx(Wh,{sx:{fontSize:16}}):jsx(wh,{sx:{fontSize:16}})}),!p&&!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 Gc=(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??"",Uc=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",km=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},wm=(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,wm(r.children,t,o+1)),o),FC=(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},Z5=({title:e,rows:t,fields:o,initialLayout:a,initialChart:r,emptyText:n,maxPreviewHeight:i=520,initialChartCollapsed:s=false,initialTableCollapsed:p=false,model:l,enablePresetManagement:c=false,presets:g,defaultPresets:f,onPresetsChange:u,initialPresetId:h,onPresetApplied:w})=>{let{t:d}=ee(),C=useSensors(useSensor(PointerSensor,{activationConstraint:{distance:8}})),m=useRef(0),y=useRef(false),b=e??d("pivot.title.default"),T=n??d("pivot.empty"),A=useMemo(()=>({sum:d("pivot.agg.sum"),count:d("pivot.agg.count"),avg:d("pivot.agg.avg"),min:d("pivot.agg.min"),max:d("pivot.agg.max")}),[d]),R=useCallback(x=>A[x]??Uu[x],[A]),S=useMemo(()=>new Set(o.map(x=>x.id)),[o]),B=useMemo(()=>new Map(o.map(x=>[x.id,x])),[o]),[P,v]=useState(()=>Rt(a?.rows,S)),[M,k]=useState(()=>Rt(a?.columns,S)),[I,D]=useState(()=>Rt(a?.filters,S)),[G,V]=useState(()=>{let x=a?.values??[],E=new Set,F=[];return x.forEach(K=>{if(!S.has(K.fieldId)||E.has(K.fieldId))return;E.add(K.fieldId),m.current+=1;let ce=B.get(K.fieldId);F.push({tokenId:`v${m.current}`,fieldId:K.fieldId,aggregation:jt(K.aggregation,ce)});}),F}),[X,de]=useState({}),[oe,re]=useState(true),[_,qe]=useState(false),[it,Y]=useState(()=>Gc(Rt(a?.rows,S),Rt(a?.columns,S),r?.dimensionFieldId)),[le,Be]=useState(()=>{let x=(a?.values??[]).filter((E,F,K)=>S.has(E.fieldId)&&K.findIndex(ce=>ce.fieldId===E.fieldId)===F).map(E=>({tokenId:E.fieldId,fieldId:E.fieldId,aggregation:jt(E.aggregation,B.get(E.fieldId))}));return Zl(x,r?.primaryValueFieldId)}),[Ee,Ue]=useState(()=>{let x=(a?.values??[]).filter((F,K,ce)=>S.has(F.fieldId)&&ce.findIndex(Se=>Se.fieldId===F.fieldId)===K).map(F=>({tokenId:F.fieldId,fieldId:F.fieldId,aggregation:jt(F.aggregation,B.get(F.fieldId))})),E=Zl(x,r?.primaryValueFieldId);return Uc(x,E,r?.secondaryValueFieldId)}),[ot,Fe]=useState(r?.chartType??"bar-vertical"),[_e,ht]=useState(s),[j,pe]=useState(p),[De,Le]=useState(()=>f??[]),[We,U]=useState(""),[ye,be]=useState(false),[Pe,et]=useState(""),[Ge,Tt]=useState(null),[ro,Yt]=useState(new Set(["__grand_total__"])),[Ht,Qt]=useState(new Set),ze=l?.rowFields??P,Ce=l?.columnFields??M,L=l?.filterFields??I,$=l?.valueFields??G,Z=l?.filterSelections??X,te=l?.showGrandTotal??oe,ke=l?.isConfiguratorCollapsed??_,z=l?.chartDimensionFieldId??it,O=l?.chartPrimaryValueFieldId??le,N=l?.chartSecondaryValueFieldId??Ee,ne=l?.chartType??ot,se=l?.isChartCollapsed??_e,we=l?.isTableCollapsed??j,ae=g??De,Me=c||ae.length>0||!!u,Te=useCallback(x=>{if(l?.setRowFields){l.setRowFields(x);return}v(x);},[l]),Ne=useCallback(x=>{if(l?.setColumnFields){l.setColumnFields(x);return}k(x);},[l]),Ie=useCallback(x=>{if(l?.setFilterFields){l.setFilterFields(x);return}D(x);},[l]),Re=useCallback(x=>{if(l?.setValueFields){l.setValueFields(x);return}V(x);},[l]),Ve=useCallback(x=>{if(l?.setFilterSelections){l.setFilterSelections(x);return}de(x);},[l]),It=useCallback(x=>{if(l?.setShowGrandTotal){l.setShowGrandTotal(x);return}re(x);},[l]),xo=useCallback(x=>{if(l?.setIsConfiguratorCollapsed){l.setIsConfiguratorCollapsed(x);return}qe(x);},[l]),yt=useCallback(x=>{if(l?.setChartDimensionFieldId){l.setChartDimensionFieldId(x);return}Y(x);},[l]),At=useCallback(x=>{if(l?.setChartPrimaryValueFieldId){l.setChartPrimaryValueFieldId(x);return}Be(x);},[l]),vo=useCallback(x=>{if(l?.setChartSecondaryValueFieldId){l.setChartSecondaryValueFieldId(x);return}Ue(x);},[l]),Ra=useCallback(x=>{if(l?.setChartType){l.setChartType(x);return}Fe(x);},[l]),Br=useCallback(x=>{if(l?.setIsChartCollapsed){l.setIsChartCollapsed(x);return}ht(x);},[l]),Do=useCallback(x=>{if(l?.setIsTableCollapsed){l.setIsTableCollapsed(x);return}pe(x);},[l]),no=useCallback(x=>{let E=typeof x=="function"?x(ae):x;g||Le(E),u?.(E);},[u,ae,g]),er=useMemo(()=>new Set([...ze,...Ce,...L]),[ze,Ce,L]),oa=useMemo(()=>o.filter(x=>!er.has(x.id)),[o,er]),Kt=useMemo(()=>{let x=[...ze,...Ce,...L],E=new Set,F=[];return x.forEach(K=>{E.has(K)||(E.add(K),F.push(K));}),F},[Ce,L,ze]);useEffect(()=>{Te(x=>{let E=x.filter(F=>S.has(F));return xa(x,E)?x:E}),Ne(x=>{let E=x.filter(F=>S.has(F));return xa(x,E)?x:E}),Ie(x=>{let E=x.filter(F=>S.has(F));return xa(x,E)?x:E}),Re(x=>{let E=x.filter(F=>S.has(F.fieldId)).map(F=>({...F,aggregation:jt(F.aggregation,B.get(F.fieldId))}));return Ll(x,E)?x:E});},[B,S]);let io=useMemo(()=>{let x={};return Kt.forEach(E=>{let F=new Set;t.forEach(K=>{F.add(ba(K[E]));}),x[E]=Array.from(F).sort((K,ce)=>K.localeCompare(ce));}),x},[Kt,t]);useEffect(()=>{Ve(x=>{let E={};return Kt.forEach(F=>{let K=io[F]??[],Se=(x[F]??[]).filter(J=>K.includes(J)),H=Object.prototype.hasOwnProperty.call(x,F);E[F]=H?Se:K;}),Xu(x,E)?x:E});},[Kt,io]),useEffect(()=>{yt(x=>Gc(ze,Ce,x));},[Ce,ze,yt]),useEffect(()=>{At(x=>Zl($,x));},[At,$]),useEffect(()=>{vo(x=>Uc($,O,x));},[O,vo,$]);let Wt=useMemo(()=>t.filter(x=>Kt.every(E=>{let F=Z[E]??[],K=io[E]??[];if(F.length===K.length)return true;if(F.length===0)return false;let ce=ba(x[E]);return F.includes(ce)})),[Kt,io,Z,t]),je=useMemo(()=>{if($.length===0)return null;let x=new Map;if(Wt.forEach(H=>{let J=Ce.length>0?Ce.map(at=>ba(H[at])):[d("pivot.valueLabel")],Q=Cr(J);x.set(Q,J);}),x.size===0){let H=Ce.length>0?Ce.map(()=>El):[d("pivot.valueLabel")];x.set(Cr(H),H);}let E=Array.from(x.entries()).sort((H,J)=>Zu(H[1],J[1])),F=E.flatMap(([H,J])=>$.map(Q=>{let at=B.get(Q.fieldId),W=`${R(Q.aggregation)} ${at?.label??Q.fieldId}`,ie=Ce.length===0||$.length>1?`${J.join(" / ")} \u2022 ${W}`:J.join(" / ");return {id:`${H}::${Q.tokenId}`,colKey:H,valueItem:Q,label:ie}})),K=[];Ce.length>0&&E.forEach(([H,J])=>{let Q=F.filter(ie=>ie.colKey===H),at=K,W=[];J.forEach((ie,q)=>{W.push(`d${q}:${ie}`);let ge=`col::${Cr(W)}`,Ze=at.find(_o=>_o.key===ge);Ze||(Ze={key:ge,label:ie,children:[],leafColumnIds:[],path:J.slice(0,q+1),depth:q},at.push(Ze)),Q.forEach(_o=>{Ze.leafColumnIds.includes(_o.id)||Ze.leafColumnIds.push(_o.id);}),at=Ze.children;});});let ce=H=>{let J={};return F.forEach(Q=>{let at=H.filter(W=>{let ie=Ce.length>0?Ce.map(q=>ba(W[q])):[d("pivot.valueLabel")];return Cr(ie)===Q.colKey});J[Q.id]=ln(at,Q.valueItem.fieldId,Q.valueItem.aggregation);}),J},Se=[];if(ze.length===0)Se.push({key:"root",value:d("pivot.resultLabel")||$u,children:[],isLeaf:true,aggregatedValues:ce(Wt),path:[],depth:0});else {let H=(J,Q,at)=>{if(Q>=ze.length)return [];let W=ze[Q],ie=new Map;return J.forEach(q=>{let ge=ba(q[W]);ie.has(ge)||ie.set(ge,[]),ie.get(ge).push(q);}),Array.from(ie.keys()).sort().map(q=>{let ge=ie.get(q),Ze=[...at,q];return {key:Cr(Ze),value:q,fieldId:W,aggregatedValues:ce(ge),children:H(ge,Q+1,Ze),isLeaf:Q===ze.length-1,path:Ze,depth:Q}})};Se.push(...H(Wt,0,[]));}return {dataColumns:F,columnTree:K,rowTree:Se}},[Ce,B,Wt,R,ze,d,$]),aa=useCallback((x,E)=>(m.current+=1,{tokenId:`v${m.current}`,fieldId:x,aggregation:jt(E,B.get(x))}),[B]),Go=useCallback(x=>{if(x==="rows")return Te([]);if(x==="columns")return Ne([]);if(x==="filters")return Ie([]);Re([]);},[]),ra=useCallback((x,E)=>{if(x==="rows")return Te(F=>F.filter(K=>K!==E));if(x==="columns")return Ne(F=>F.filter(K=>K!==E));if(x==="filters")return Ie(F=>F.filter(K=>K!==E));Re(F=>F.filter(K=>K.tokenId!==E));},[]),tr=useCallback((x,E)=>{Re(F=>F.map(K=>K.tokenId===x?{...K,aggregation:jt(E,B.get(K.fieldId))}:K));},[B]),Uo=useCallback(x=>{Tt(String(x.active.id));},[]),or=useCallback(x=>{if(Tt(null),!x.over)return;let E=Fl(String(x.active.id)),F=Fl(String(x.over.id));if(!E||!F||E.kind!=="item"||!E.key)return;if(E.zone===F.zone&&F.kind==="item"){if(E.zone==="rows"){let q=ze.indexOf(E.key),ge=ze.indexOf(F.key??"");q!==-1&&ge!==-1&&q!==ge&&Te(Ze=>arrayMove(Ze,q,ge));return}if(E.zone==="columns"){let q=Ce.indexOf(E.key),ge=Ce.indexOf(F.key??"");q!==-1&&ge!==-1&&q!==ge&&Ne(Ze=>arrayMove(Ze,q,ge));return}if(E.zone==="filters"){let q=L.indexOf(E.key),ge=L.indexOf(F.key??"");q!==-1&&ge!==-1&&q!==ge&&Ie(Ze=>arrayMove(Ze,q,ge));return}if(E.zone==="values"){let q=$.findIndex(Ze=>Ze.tokenId===E.key),ge=$.findIndex(Ze=>Ze.tokenId===(F.key??""));q!==-1&&ge!==-1&&q!==ge&&Re(Ze=>arrayMove(Ze,q,ge));}return}let K=F.zone,ce=[...ze],Se=[...Ce],H=[...L],J=[...$],Q="",at=null;if(E.zone==="palette")Q=E.key;else if(E.zone==="values"){let q=J.find(ge=>ge.tokenId===E.key);if(!q)return;Q=q.fieldId,at=q,J=J.filter(ge=>ge.tokenId!==E.key);}else E.zone==="rows"?(Q=E.key,ce=ce.filter(q=>q!==Q)):E.zone==="columns"?(Q=E.key,Se=Se.filter(q=>q!==Q)):E.zone==="filters"&&(Q=E.key,H=H.filter(q=>q!==Q));if(!Q)return;let W=()=>{ce=ce.filter(q=>q!==Q),Se=Se.filter(q=>q!==Q),H=H.filter(q=>q!==Q);},ie=q=>{if(F.kind!=="item"||!F.key)return q==="rows"?ce.length:q==="columns"?Se.length:q==="filters"?H.length:q==="values"?J.length:0;if(q==="rows"){let ge=ce.indexOf(F.key);return ge>=0?ge:ce.length}if(q==="columns"){let ge=Se.indexOf(F.key);return ge>=0?ge:Se.length}if(q==="filters"){let ge=H.indexOf(F.key);return ge>=0?ge:H.length}if(q==="values"){let ge=J.findIndex(Ze=>Ze.tokenId===F.key);return ge>=0?ge:J.length}return 0};if(K==="palette"){Te(ce),Ne(Se),Ie(H),Re(J);return}if(K==="values"){let q=ie("values"),ge=at??aa(Q);J.splice(q,0,ge),Te(ce),Ne(Se),Ie(H),Re(J);return}if(ju(K)){W();let q=ie(K);K==="rows"?ce.splice(q,0,Q):K==="columns"?Se.splice(q,0,Q):H.splice(q,0,Q),Te(ce),Ne(Se),Ie(H),Re(J);}},[Ce,aa,L,ze,$]),ar=useCallback((x,E)=>{Ve(F=>({...F,[x]:E}));},[]),Ko=useCallback(x=>{Yt(E=>{let F=new Set(E);return F.has(x)?F.delete(x):F.add(x),F});},[]),na=useCallback(x=>{Qt(E=>{let F=new Set(E);return F.has(x)?F.delete(x):F.add(x),F});},[]),Da=useCallback(x=>{let E=B.get(x.fieldId),F=Mc(E);return jsx(FormControl,{size:"small",sx:{minWidth:98},children:jsx(Select,{value:x.aggregation,onChange:K=>tr(x.tokenId,K.target.value),onClick:K=>K.stopPropagation(),onMouseDown:K=>K.stopPropagation(),sx:{fontSize:"0.72rem",height:26,"& .MuiSelect-select":{py:.35}},children:F.map(K=>jsx(MenuItem,{value:K,sx:{fontSize:"0.75rem"},children:R(K)},K))})})},[B,R,tr]),qt=useCallback(x=>{let E=io[x]??[],F=Z[x]??E;return E.length===0?d("pivot.filter.noValues"):F.length===0?d("pivot.filter.noneSelected"):F.length===E.length?d("pivot.filter.allValues"):d("pivot.filter.selectedCount",{selected:F.length,total:E.length})},[io,Z,d]),Mo=useCallback(x=>{let E=io[x]??[],F=Z[x]??E;return jsx(Ju,{options:E,selectedValues:F,onChange:K=>ar(x,K)})},[io,Z,ar]),ia=useCallback(()=>`pivot-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,[]),Co=useCallback(()=>{let x={};return new Set([...Kt,...Object.keys(Z)]).forEach(F=>{if(!S.has(F))return;let K=Z[F]??[];x[F]=[...K];}),{layout:{rows:[...ze],columns:[...Ce],filters:[...L],values:$.map(F=>({fieldId:F.fieldId,aggregation:F.aggregation}))},filterSelections:x,showGrandTotal:te,chart:{dimensionFieldId:z,primaryValueFieldId:O,secondaryValueFieldId:N,chartType:ne}}},[Kt,z,O,N,ne,Ce,L,Z,ze,te,S,$]),qo=useCallback(x=>{let E=Rt(x.layout.rows,S),F=Rt(x.layout.columns,S),K=Rt(x.layout.filters,S),ce=new Set,Se=(x.layout.values??[]).filter(Q=>!S.has(Q.fieldId)||ce.has(Q.fieldId)?false:(ce.add(Q.fieldId),true)).map(Q=>aa(Q.fieldId,Q.aggregation)),H={};Object.entries(x.filterSelections??{}).forEach(([Q,at])=>{!S.has(Q)||!Array.isArray(at)||(H[Q]=Array.from(new Set(at.map(W=>String(W)))));}),Te(E),Ne(F),Ie(K),Re(Se),Ve(H),typeof x.showGrandTotal=="boolean"&&It(x.showGrandTotal),yt(Gc(E,F,x.chart?.dimensionFieldId));let J=Zl(Se,x.chart?.primaryValueFieldId);At(J),vo(Uc(Se,J,x.chart?.secondaryValueFieldId)),Ra(x.chart?.chartType??"bar-vertical"),U(x.id),w?.(x);},[aa,w,yt,At,vo,Ra,Ne,Ie,Ve,Te,It,Re,S]),rr=useCallback(x=>{if(!x){U("");return}let E=ae.find(F=>F.id===x);if(!E){U("");return}qo(E);},[qo,ae]),Er=useCallback(()=>{let x=d("pivot.preset.defaultName",{index:ae.length+1});et(x),be(true);},[ae.length,d]),Ma=useCallback(()=>{let x=Pe.trim();if(!x)return;let E={id:ia(),name:x,...Co()};no(F=>[...F,E]),U(E.id),be(false);},[Co,ia,Pe,no]),nr=useCallback(()=>{We&&(no(x=>x.filter(E=>E.id!==We)),U(""));},[We,no]);useEffect(()=>{if(!h||y.current)return;let x=ae.find(E=>E.id===h);x&&(y.current=true,qo(x));},[qo,h,ae]),useEffect(()=>{We&&(ae.some(x=>x.id===We)||U(""));},[We,ae]);let la=useMemo(()=>{if(!te||!je||!ze.length)return null;let x={};return je.dataColumns.forEach(E=>{let F=Wt.filter(K=>{let ce=Ce.length>0?Ce.map(Se=>ba(K[Se])):[d("pivot.valueLabel")];return Cr(ce)===E.colKey});x[E.id]=ln(F,E.valueItem.fieldId,E.valueItem.aggregation);}),{key:"__grand_total__",value:d("pivot.grandTotal")||Gu,children:[],isLeaf:false,isGrandTotal:true,aggregatedValues:x,path:[],depth:-1}},[te,je,Wt,Ce,ze.length,d]),Jt=useMemo(()=>km(je?.rowTree??[]),[je]),Ao=useMemo(()=>km(je?.columnTree??[]),[je]);useEffect(()=>{Yt(x=>{let E=new Set;return x.has("__grand_total__")&&E.add("__grand_total__"),Jt.forEach(F=>{x.has(F)&&E.add(F);}),E});},[Jt]),useEffect(()=>{Qt(x=>{let E=new Set;return Ao.forEach(F=>{x.has(F)&&E.add(F);}),E});},[Ao]);let Fr=useCallback(()=>{Yt(x=>{let E=new Set(x);return Jt.forEach(F=>E.add(F)),E});},[Jt]),ir=useCallback(()=>{Yt(x=>{let E=new Set;return x.has("__grand_total__")&&E.add("__grand_total__"),E});},[]),Lr=useCallback(()=>{Qt(new Set(Ao));},[Ao]),zr=useCallback(()=>{Qt(new Set);},[]),Nr=useMemo(()=>!je||Ce.length===0?[]:FC(je.columnTree,Ht),[Ce.length,Ht,je]),lo=useMemo(()=>{if(!je)return [];if(Ce.length===0)return je.dataColumns.map(E=>({id:E.id,label:E.label,leafColumnIds:[E.id],valueItem:E.valueItem}));let x=new Map(je.dataColumns.map(E=>[E.id,E]));return Nr.flatMap(E=>{let F=new Map;return E.leafColumnIds.forEach(K=>{let ce=x.get(K);if(!ce)return;let Se=ce.valueItem.tokenId,H=`${R(ce.valueItem.aggregation)} ${B.get(ce.valueItem.fieldId)?.label??ce.valueItem.fieldId}`,J=F.get(Se);if(J){J.leafColumnIds.push(K);return}F.set(Se,{id:`${E.key}::${Se}`,label:$.length>1?H:E.label,leafColumnIds:[K],valueItem:ce.valueItem});}),Array.from(F.values())})},[Ce.length,B,R,je,$.length,Nr]),Vr=useMemo(()=>new Map(lo.map(x=>[x.id,x])),[lo]),Or=useMemo(()=>lo.map(x=>({id:x.id,colKey:x.id,valueItem:x.valueItem,label:x.label})),[lo]),lr=useMemo(()=>{if(!je||Ce.length===0)return [];let x=[],E=wm(je.columnTree,Ht),F=E+($.length>1?1:0),K=(ce,Se)=>{x[Se]??(x[Se]=[]),ce.forEach(H=>{let J=H.children.length>0&&Ht.has(H.key),Q=lo.filter(W=>H.leafColumnIds.some(ie=>W.leafColumnIds.includes(ie))).length,at=J||$.length>1?1:F-Se;x[Se].push({key:H.key,label:H.label,colSpan:Q,rowSpan:at,expandable:H.children.length>0,expanded:J}),J&&K(H.children,Se+1);});};return K(je.columnTree,0),$.length>1&&(x[E]=lo.map(ce=>({key:ce.id,label:ce.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))),x},[Ce.length,Ht,je,$.length,lo]),sa=useCallback((x,E)=>E.leafColumnIds.reduce((F,K)=>F+(x.aggregatedValues[K]??0),0),[]),Aa=useMemo(()=>jsxs(Fragment,{children:[jsx(Button,{size:"small",variant:"text",onClick:Fr,disabled:Jt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.expandRowsAll")}),jsx(Button,{size:"small",variant:"text",onClick:ir,disabled:Jt.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.collapseRowsAll")}),jsx(Divider,{orientation:"vertical",flexItem:true}),jsx(Button,{size:"small",variant:"text",onClick:Lr,disabled:Ao.size===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.expandColumnsAll")}),jsx(Button,{size:"small",variant:"text",onClick:zr,disabled:Ce.length===0,sx:{minWidth:"auto",px:.8,fontSize:"0.72rem"},children:d("pivot.table.collapseColumnsAll")})]}),[Ce.length,Ao.size,Jt.size,zr,ir,Lr,Fr,d]),Ba=()=>{if(!Ge)return null;let x=Fl(Ge);if(!x||x.kind!=="item"||!x.key)return null;if(x.zone==="palette"){let ce=B.get(x.key);return ce?jsx(Bc,{label:ce.label,subtitle:ce.type}):null}if(x.zone==="values"){let ce=$.find(Q=>Q.tokenId===x.key);if(!ce)return null;let H=B.get(ce.fieldId)?.label??ce.fieldId,J=`${R(ce.aggregation)}(${H})`;return jsx(Hl,{label:H,caption:J})}let F=B.get(x.key)?.label??x.key,K=qt(x.key);return jsx(Hl,{label:F,caption:K})};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:d("pivot.subtitle.default")})]}),jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[Me&&jsxs(Fragment,{children:[jsx(FormControl,{size:"small",sx:{minWidth:200},children:jsxs(Select,{value:We,displayEmpty:true,onChange:x=>rr(String(x.target.value)),sx:{fontSize:"0.75rem",height:32},children:[jsx(MenuItem,{value:"",sx:{fontSize:"0.75rem",color:"text.secondary"},children:d("pivot.preset.selectPlaceholder")}),ae.map(x=>jsx(MenuItem,{value:x.id,sx:{fontSize:"0.75rem"},children:x.name},x.id))]})}),jsx(Tooltip,{title:d("pivot.preset.save"),children:jsx(IconButton,{size:"small",onClick:Er,"aria-label":d("pivot.preset.save"),children:jsx(jp,{sx:{fontSize:18}})})}),jsx(Tooltip,{title:d("pivot.preset.delete"),children:jsx("span",{children:jsx(IconButton,{size:"small",onClick:nr,disabled:!We,"aria-label":d("pivot.preset.delete"),children:jsx(TC,{sx:{fontSize:18}})})})}),jsx(Divider,{flexItem:true,orientation:"vertical"})]}),jsxs(Typography,{sx:{fontSize:"0.74rem",color:"text.secondary"},children:[d("pivot.records"),": ",jsx("strong",{children:t.length.toLocaleString()})," / ",d("pivot.afterFilter"),":"," ",jsx("strong",{children:Wt.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:d("pivot.grandTotal")}),jsx(Switch,{size:"small",checked:te,onChange:x=>It(x.target.checked)})]})]})]}),jsx(Divider,{}),jsxs(DndContext,{sensors:C,collisionDetection:closestCenter,onDragStart:Uo,onDragEnd:or,children:[jsx(lm,{isConfiguratorCollapsed:ke,onToggleCollapse:()=>xo(x=>!x),availableFields:oa,fieldMap:B,filterFields:L,columnFields:Ce,rowFields:ze,valueFields:$,clearZone:Go,removeFieldFromZone:ra,getFilterSelectionSummary:qt,renderDimensionFilterSelect:Mo,renderAggregationSelect:Da,getAggregationLabel:R}),jsx(Portal,{children:jsx(DragOverlay,{dropAnimation:{duration:250,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:Ba()})})]}),jsx(fm,{rows:Wt,fieldMap:B,rowFields:ze,columnFields:Ce,valueFields:$,chartDimensionFieldId:z,chartPrimaryValueFieldId:O,chartSecondaryValueFieldId:N,chartType:ne,isCollapsed:se,onChartDimensionFieldIdChange:x=>yt(x),onChartPrimaryValueFieldIdChange:x=>At(x),onChartSecondaryValueFieldIdChange:x=>vo(x),onChartTypeChange:x=>Ra(x),onToggleCollapse:()=>Br(x=>!x),getAggregationLabel:R}),jsx(un,{title:d("pivot.table.sectionTitle"),subtitle:ze.length>0?ze.map(x=>B.get(x)?.label??x).join(" > "):d("pivot.table.dimensions"),collapsed:we,onToggleCollapse:()=>Do(x=>!x),expandAriaLabel:d("pivot.table.collapse.ariaExpand"),collapseAriaLabel:d("pivot.table.collapse.ariaCollapse"),bodySx:{p:0},headerActions:Aa,children:je===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:T})}):jsx(TableContainer,{sx:{maxHeight:i},children:jsxs(Table,{size:"small",stickyHeader:true,children:[jsx(TableHead,{children:(lr.length>0?lr:[[]]).map((x,E)=>jsxs(TableRow,{children:[E===0&&jsx(TableCell,{rowSpan:Math.max(lr.length,1),sx:F=>({fontWeight:800,fontSize:"0.76rem",color:"text.primary",bgcolor:F.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${F.palette.divider}`,pl:2,minWidth:220,verticalAlign:"middle"}),children:ze.length>0?ze.map(F=>B.get(F)?.label).join(" > "):d("pivot.table.dimensions")}),(x.length>0?x:lo.map(F=>({key:F.id,label:F.label,colSpan:1,rowSpan:1,expandable:false,expanded:false}))).map(F=>jsx(TableCell,{align:"center",colSpan:F.colSpan,rowSpan:F.rowSpan,sx:K=>({fontWeight:800,fontSize:"0.75rem",color:"text.primary",bgcolor:K.palette.mode==="dark"?"#000000":"#f5f5f5",borderBottom:`1px solid ${K.palette.divider}`,minWidth:148,verticalAlign:"middle"}),children:jsxs(Box,{sx:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:.4},children:[F.expandable&&jsx(IconButton,{size:"small",onClick:()=>na(F.key),sx:{p:.1,ml:-0.3},children:F.expanded?jsx(Wh,{sx:{fontSize:16}}):jsx(wh,{sx:{fontSize:16}})}),jsx(Box,{component:"span",children:F.label})]})},F.key))]},`pivot-header-row-${E}`))}),jsxs(TableBody,{children:[je.rowTree.map(x=>jsx(ql,{node:x,dataColumns:Or,fieldMap:B,level:0,expandedKeys:ro,onToggle:Ko,getValue:(E,F)=>{let K=Vr.get(F);return K?sa(E,K):0}},x.key)),la&&jsx(ql,{node:la,dataColumns:Or,fieldMap:B,level:0,expandedKeys:ro,onToggle:Ko,getValue:(x,E)=>{let F=Vr.get(E);return F?sa(x,F):0}})]})]})})}),jsxs(Dialog,{open:ye,onClose:()=>be(false),maxWidth:"xs",fullWidth:true,children:[jsx(DialogTitle,{children:d("pivot.preset.saveDialogTitle")}),jsx(DialogContent,{children:jsx(TextField,{autoFocus:true,fullWidth:true,margin:"dense",label:d("pivot.preset.nameLabel"),value:Pe,onChange:x=>et(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),Ma());}})}),jsxs(DialogActions,{children:[jsx(Button,{onClick:()=>be(false),children:d("common.cancel")}),jsx(Button,{variant:"contained",onClick:Ma,disabled:!Pe.trim(),children:d("common.save")})]})]})]})};var Tm=(e,t,o)=>{let a=[...e,...t];return o&&a.includes(o)?o:a[0]??""},qc=(e,t)=>t&&e.some(o=>o.fieldId===t)?t:e[0]?.fieldId??"",Im=(e,t,o)=>o===""?"":o&&o!==t&&e.some(a=>a.fieldId===o)?o:e.find(a=>a.fieldId!==t)?.fieldId??"",eE=({fields:e,initialLayout:t,initialFilterSelections:o={},initialShowGrandTotal:a=true,initialConfiguratorCollapsed:r=false,initialChart:n,initialChartCollapsed:i=false,initialTableCollapsed:s=false})=>{let p=useRef(0),l=useMemo(()=>new Set(e.map(U=>U.id)),[e]),c=useMemo(()=>new Map(e.map(U=>[U.id,U])),[e]),[g,f]=useState(()=>Rt(t?.rows,l)),[u,h]=useState(()=>Rt(t?.columns,l)),[w,d]=useState(()=>Rt(t?.filters,l)),[C,m]=useState(()=>{let U=t?.values??[],ye=new Set,be=[];return U.forEach(Pe=>{!l.has(Pe.fieldId)||ye.has(Pe.fieldId)||(ye.add(Pe.fieldId),p.current+=1,be.push({tokenId:`v${p.current}`,fieldId:Pe.fieldId,aggregation:jt(Pe.aggregation,c.get(Pe.fieldId))}));}),be}),[y,b]=useState(o),[T,A]=useState(a),[R,S]=useState(r),[B,P]=useState(()=>Tm(Rt(t?.rows,l),Rt(t?.columns,l),n?.dimensionFieldId)),[v,M]=useState(()=>{let U=(()=>{let ye=t?.values??[],be=new Set,Pe=[];return ye.forEach(et=>{!l.has(et.fieldId)||be.has(et.fieldId)||(be.add(et.fieldId),Pe.push({tokenId:et.fieldId,fieldId:et.fieldId,aggregation:jt(et.aggregation,c.get(et.fieldId))}));}),Pe})();return qc(U,n?.primaryValueFieldId)}),[k,I]=useState(()=>{let U=(()=>{let be=t?.values??[],Pe=new Set,et=[];return be.forEach(Ge=>{!l.has(Ge.fieldId)||Pe.has(Ge.fieldId)||(Pe.add(Ge.fieldId),et.push({tokenId:Ge.fieldId,fieldId:Ge.fieldId,aggregation:jt(Ge.aggregation,c.get(Ge.fieldId))}));}),et})(),ye=qc(U,n?.primaryValueFieldId);return Im(U,ye,n?.secondaryValueFieldId)}),[D,G]=useState(n?.chartType??"bar-vertical"),[V,X]=useState(i),[de,oe]=useState(s);useEffect(()=>{f(U=>{let ye=U.filter(be=>l.has(be));return xa(U,ye)?U:ye}),h(U=>{let ye=U.filter(be=>l.has(be));return xa(U,ye)?U:ye}),d(U=>{let ye=U.filter(be=>l.has(be));return xa(U,ye)?U:ye}),m(U=>{let ye=U.filter(be=>l.has(be.fieldId)).map(be=>({...be,aggregation:jt(be.aggregation,c.get(be.fieldId))}));return Ll(U,ye)?U:ye});},[c,l]),useEffect(()=>{P(U=>Tm(g,u,U));},[u,g]),useEffect(()=>{M(U=>qc(C,U));},[C]),useEffect(()=>{I(U=>Im(C,v,U));},[v,C]);let re=useCallback(U=>{f(Rt(U,l));},[l]),_=useCallback(U=>{h(Rt(U,l));},[l]),qe=useCallback(U=>{d(Rt(U,l));},[l]),it=useCallback(U=>{m(ye=>{let be=U??[],Pe=new Set,et=[];return be.forEach(Ge=>{if(!l.has(Ge.fieldId)||Pe.has(Ge.fieldId))return;Pe.add(Ge.fieldId);let Tt=ye.find(ro=>ro.fieldId===Ge.fieldId);if(Tt){et.push({...Tt,aggregation:jt(Ge.aggregation??Tt.aggregation,c.get(Ge.fieldId))});return}p.current+=1,et.push({tokenId:`v${p.current}`,fieldId:Ge.fieldId,aggregation:jt(Ge.aggregation,c.get(Ge.fieldId))});}),et});},[c,l]),Y=useCallback(U=>{re(U.rows??[]),_(U.columns??[]),qe(U.filters??[]),it(U.values??[]);},[_,qe,re,it]),le=useCallback(U=>{if(U==="rows")return f([]);if(U==="columns")return h([]);if(U==="filters")return d([]);m([]);},[]),Be=useCallback((U,ye)=>{if(U==="rows")return f(be=>be.filter(Pe=>Pe!==ye));if(U==="columns")return h(be=>be.filter(Pe=>Pe!==ye));if(U==="filters")return d(be=>be.filter(Pe=>Pe!==ye));m(be=>be.filter(Pe=>Pe.tokenId!==ye));},[]),Ee=useCallback((U,ye)=>{m(be=>be.map(Pe=>Pe.tokenId===U?{...Pe,aggregation:jt(ye,c.get(Pe.fieldId))}:Pe));},[c]),Ue=useCallback((U,ye)=>{b(be=>({...be,[U]:ye}));},[]),ot=useCallback(()=>{b({});},[]),Fe=useCallback(()=>{A(U=>!U);},[]),_e=useCallback(()=>{S(U=>!U);},[]),ht=useCallback(U=>{P(U);},[]),j=useCallback(U=>{M(U);},[]),pe=useCallback(U=>{I(U);},[]),De=useCallback(()=>{X(U=>!U);},[]),Le=useCallback(()=>{oe(U=>!U);},[]);return {model:useMemo(()=>({rowFields:g,setRowFields:f,columnFields:u,setColumnFields:h,filterFields:w,setFilterFields:d,valueFields:C,setValueFields:m,filterSelections:y,setFilterSelections:b,showGrandTotal:T,setShowGrandTotal:A,isConfiguratorCollapsed:R,setIsConfiguratorCollapsed:S,chartDimensionFieldId:B,setChartDimensionFieldId:P,chartPrimaryValueFieldId:v,setChartPrimaryValueFieldId:M,chartSecondaryValueFieldId:k,setChartSecondaryValueFieldId:I,chartType:D,setChartType:G,isChartCollapsed:V,setIsChartCollapsed:X,isTableCollapsed:de,setIsTableCollapsed:oe}),[B,v,k,D,u,w,y,V,R,de,g,T,C]),actions:{setRows:re,setColumns:_,setFilters:qe,setValues:it,setLayout:Y,clearZone:le,removeFieldFromZone:Be,setAggregationForValue:Ee,setFilterSelection:Ue,resetFilterSelections:ot,toggleGrandTotal:Fe,toggleConfigurator:_e,setChartDimension:ht,setChartPrimaryValue:j,setChartSecondaryValue:pe,setChartType:G,toggleChart:De,toggleTable:Le}}};var nE=({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,p]=useState(t??i==="landscape");useEffect(()=>{p(t??i==="landscape");},[t,i]);let l=g=>{p(g),o?.(g);};return {resolvedOrientation:i,isPortraitViewport:r,isCompactViewport:n,navigationOpen:s,setNavigationOpen:l,toggleNavigationOpen:()=>l(!s)}};var WC=e=>{let t=Number(e||0);return Number.isFinite(t)?t:0},sE=({rows:e,rowKey:t="id",numericField:o,defaultSelectedId:a})=>{let n=e[0]?.[t],[i,s]=useState(a??n),p=useMemo(()=>e.find(u=>u[t]===i)||e[0],[t,e,i]),[l,c]=useState(()=>{let u=p?.[o];return u==null?"0":String(u)});return {selectedId:i,selectedRecord:p,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=WC(l),w=e.map(d=>d[t]===i?{...d,[o]:h}:d);u(w);}}};var QC=["code_128","ean_13","ean_8","qr_code","upc_a","upc_e"],Bm=(e,t,o,a)=>{t?.(e),a&&o?.();},gE=({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=QC,facingMode:n="environment",manualEntry:i=true,autoCloseOnDetect:s=true,scanIntervalMs:p=600,confirmLabel:l="Use code",cancelLabel:c="Close",manualPlaceholder:g="Enter barcode manually",onDetected:f,onError:u,sx:h})=>{let w=vt__default.useRef(null),d=vt__default.useRef(null),C=vt__default.useRef(null),m=vt__default.useRef(null),[y,b]=vt__default.useState("idle"),[T,A]=vt__default.useState(""),[R,S]=vt__default.useState(null),[B,P]=vt__default.useState(null),v=vt__default.useCallback(()=>{C.current!==null&&(window.clearInterval(C.current),C.current=null),d.current&&(d.current.getTracks().forEach(I=>I.stop()),d.current=null),w.current&&(w.current.srcObject=null);},[]),M=vt__default.useCallback(I=>{P(I),b("error"),u?.(I);},[u]);vt__default.useEffect(()=>{if(!e){v(),b("idle"),P(null),A("");return}let I=false;return (async()=>{if(!(typeof window>"u"||typeof navigator>"u")){if(!navigator.mediaDevices?.getUserMedia){b("unsupported"),P("Camera access is not supported in this browser.");return}b("starting"),P(null);try{let G=await navigator.mediaDevices.getUserMedia({audio:!1,video:{facingMode:{ideal:n}}});if(I){G.getTracks().forEach(V=>V.stop());return}if(d.current=G,w.current&&(w.current.srcObject=G,await w.current.play()),!window.BarcodeDetector){b("unsupported"),P("BarcodeDetector is not available. Camera preview is ready and manual entry is enabled.");return}m.current=new window.BarcodeDetector({formats:r}),b("ready"),C.current=window.setInterval(async()=>{if(!(!w.current||!m.current)&&!(w.current.readyState<HTMLMediaElement.HAVE_CURRENT_DATA))try{let X=(await m.current.detect(w.current)).find(oe=>oe.rawValue);if(!X?.rawValue)return;let de={rawValue:X.rawValue,format:X.format};S(de),v(),Bm(de,f,t,s);}catch(V){M(V instanceof Error?V.message:"Failed to detect barcode.");}},p);}catch(G){M(G instanceof Error?G.message:"Unable to start camera.");}}})(),()=>{I=true,v();}},[s,n,r,t,f,e,M,p,v]);let k=()=>{let I=T.trim();if(!I)return;let D={rawValue:I,format:"manual"};S(D),Bm(D,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: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: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(XC,{}),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"}),R?jsx(Chip,{icon:jsx(YC,{}),label:`${R.format||"barcode"}: ${R.rawValue}`,size:"small",color:"success",variant:"filled"}):null]})]}),B?jsx(Alert,{severity:y==="unsupported"?"info":"warning",children:B}):null,i?jsxs(Stack,{direction:{xs:"column",sm:"row"},spacing:1.25,children:[jsx(TextField,{fullWidth:true,label:"Barcode",placeholder:g,value:T,onChange:I=>A(I.target.value)}),jsx(Button,{variant:"contained",onClick:k,sx:{minHeight:56,px:2.5},children:l})]}):null]})}),jsx(DialogActions,{sx:{px:3,pb:2},children:jsx(Button,{onClick:t,children:c})})]})};var ok={default:"#475569",primary:"#1d4ed8",success:"#047857",warning:"#b45309",error:"#b91c1c",info:"#0369a1"},vE=({title:e,description:t,kicker:o,icon:a,badges:r=[],metrics:n=[],footer:i,children:s,selected:p=false,draggable:l=false,isDragging:c=false,swipeThreshold:g=88,startAction:f,endAction:u,dragHandleProps:h,onClick:w,onSwipe:d,sx:C})=>{let[m,y]=useState(0),[b,T]=useState(false),A=useRef(null),R=useRef(0),S=useRef(0),B=!!(f||u),P=132,v=()=>{y(0),T(false),A.current=null,R.current=0,S.current=0;},M=V=>{(V==="start"?f:u)?.onTrigger?.(),d?.(V),v();},k=V=>{!B||V.target.closest('button, a, input, textarea, [data-no-swipe="true"]')||(A.current=V.pointerId,R.current=V.clientX,S.current=V.clientX,T(true),V.currentTarget.setPointerCapture(V.pointerId));},I=V=>{if(!b||A.current!==V.pointerId)return;S.current=V.clientX;let X=S.current-R.current,de=Math.max(-P,Math.min(P,X));y(de);},D=V=>{if(!b||A.current!==V.pointerId)return;let X=S.current-R.current;if(X>=g&&f){M("start");return}if(X<=-g&&u){M("end");return}Math.abs(X)<12&&w?.(),v();},G=(V,X)=>{if(!V)return null;let de=V.backgroundColor||ok[V.tone||"default"];return jsx(Box,{sx:{position:"absolute",top:0,bottom:0,[X]:0,width:P,px:2,display:"flex",alignItems:"center",justifyContent:X==="left"?"flex-start":"flex-end",color:"#fff",background:`linear-gradient(135deg, ${de}, rgba(15,23,42,0.92))`},children:jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[V.icon,jsx(Typography,{sx:{fontWeight:700,fontSize:"0.95rem"},children:V.label})]})})};return jsxs(Box,{sx:{position:"relative",overflow:"hidden",borderRadius:4,...C},children:[G(f,"left"),G(u,"right"),jsx(Paper,{elevation:0,onPointerDown:k,onPointerMove:I,onPointerUp:D,onPointerCancel:v,sx:V=>({position:"relative",zIndex:1,p:2,borderRadius:4,border:"1px solid",borderColor:p?"primary.main":"divider",background:V.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:p?"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(tk,{})})}):null]}),r.length>0?jsx(Stack,{direction:"row",spacing:1,useFlexGap:true,flexWrap:"wrap",children:r.map((V,X)=>jsx(Chip,{label:V,size:"small",sx:{borderRadius:999,fontWeight:700,bgcolor:"action.hover",color:"text.primary"}},X))}):null,n.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(110px, 1fr))",gap:1},children:n.map(V=>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:V.label}),jsx(Typography,{sx:{fontSize:"1rem",fontWeight:800,lineHeight:1.2},children:V.value})]},V.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}),DE=({value:e,defaultValue:t="",title:o,subtitle:a,placeholder:r="0",allowDecimal:n=false,allowNegative:i=false,maxLength:s,confirmLabel:p,clearLabel:l,backspaceLabel:c,onChange:g,onSubmit:f,onClose:u,sx:h})=>{let{t:w}=ee(),[d,C]=useState(t),m=e??d,y=v=>{e===void 0&&C(v),g?.(v);},b=v=>{s&&m.length>=s||y(`${m}${v}`);},T=v=>{if(v==="00"){if(!m){y("0");return}b("00");return}b(v);},A=()=>{!n||m.includes(".")||y(m?`${m}.`:"0.");},R=()=>{if(i){if(m.startsWith("-")){y(m.slice(1));return}y(m?`-${m}`:"-");}},S=()=>{y(m.slice(0,-1));},B=()=>{y("");},P=()=>{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(ik,{})}):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(v=>jsx(xi,{label:v,onPress:()=>T(v)},v)),jsx(xi,{label:i?"+/-":"00",onPress:i?R:()=>T("00")}),jsx(xi,{label:"0",onPress:()=>T("0")}),jsx(xi,{label:n?".":c?String(c):"DEL",onPress:n?A: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(nk,{}),jsx(Typography,{sx:{fontWeight:700},children:c||"DEL"})]})}),jsx(xi,{label:String(l||"CLR"),onPress:B,emphasis:"danger"}),jsx(Box,{component:"button",type:"button",onClick:P,sx:v=>({minHeight:64,borderRadius:3,border:"1px solid",borderColor:"primary.main",background:v.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(lk,{}),jsx(Typography,{sx:{fontWeight:800},children:p||w("common.ok")})]})})]})]})})};var Nm=({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(ma,{...o})})};var gk=(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);}},Hm=({items:e,selectedId:t,orientation:o="auto",onItemSelect:a,sx:r})=>{let n=useTheme$1(),[i,s]=useState(false);useEffect(()=>{s(true);},[]);let p=useMediaQuery("(orientation: portrait)",{noSsr:true}),l=useMediaQuery(n.breakpoints.down("md"),{noSsr:true}),c=o==="auto"?p||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:()=>gk(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 Um=(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?Um(a.children,t):[];return (r||n.length>0)&&o.push({...a,children:n.length>0?n:a.children}),o},[]):e,Pk=e=>{let t=new Set,o=a=>{a.forEach(r=>{r.children?.length&&(t.add(r.id),o(r.children));});};return o(e),t},Km=({collapsed:e=false,onToggle:t,className:o="",maxHeight:a,menuData:r=[],colorMode:n="light",orientation:i="auto",headerSlot:s,footerSlot:p,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,d=n==="dark",C=useRouter(),m=usePathname(),[y,b]=useState(""),[T,A]=useState(new Set),R=useMemo(()=>Um(r,y),[r,y]),S=useMemo(()=>y.trim()?Pk(R):T,[T,R,y]);useEffect(()=>{e&&A(new Set);},[e]);let B=I=>I.appurl||I.href||"",P=I=>{c?.(I);let D=B(I);if(D){if(D.startsWith("http://")||D.startsWith("https://")){window.open(D,"_blank");return}C.push(D);}},v=I=>{let D=!!I.children?.length;if(e&&D){t?.();return}if(D){A(G=>{let V=new Set(G);return V.has(I.id)?V.delete(I.id):V.add(I.id),V});return}P(I);},M=I=>{let D=l||m,G=B(I);return !!(G&&D===G)},k=(I,D=0)=>{let G=!!I.children?.length,V=S.has(I.id),X=M(I);return jsx(Box,{sx:{pl:D===0?0:1.5},children:jsxs(Paper,{elevation:0,sx:{mb:1,overflow:"hidden",borderRadius:3,border:"1px solid",borderColor:X?"primary.main":"divider",bgcolor:X?"action.selected":"background.paper"},children:[jsxs(Box,{component:"button",type:"button",onClick:()=>v(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:X?"primary.main":"action.hover",color:X?"#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]}),G?jsx(Tk,{sx:{transform:V?"rotate(180deg)":"rotate(0deg)",transition:"transform 180ms ease"}}):jsx(Ik,{color:"action"})]}),G?jsx(Collapse,{in:V,children:jsx(Box,{sx:{px:1.25,pb:1.25},children:I.children?.map(de=>k(de,D+1))})}):null]})},I.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:d?"#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(wk,{})}),r.map(I=>jsx(IconButton,{onClick:()=>v(I),sx:{width:56,height:56,alignSelf:"center",borderRadius:3,bgcolor:M(I)?"primary.main":"action.hover",color:M(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:w==="portrait"?"100%":320,p:1.25,borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:d?"#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:I=>b(I.target.value),placeholder:g("navigation.searchPlaceholder"),size:"small",fullWidth:true,InputProps:{startAdornment:jsx(kk,{fontSize:"small",color:"action"})}}),w==="landscape"&&!e?jsx(IconButton,{onClick:t,sx:{bgcolor:"action.hover"},children:jsx(Sk,{})}):null]}),s,jsx(Box,{sx:{flex:1,minHeight:0,overflowY:"auto",pr:.25},children:R.length>0?R.map(I=>k(I)):jsx(Typography,{sx:{p:2,fontSize:"0.88rem",color:"text.secondary",textAlign:"center"},children:g("navigation.noMatch")})}),p]})})};var Jm=(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)},Ek=e=>vt__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}),Fk=(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)},Lk=({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}`))})]})})},zk=e=>{let{t}=ee(),o=useTheme$1(),{title:a,showToolbar:r=true,selectionMode:n,selected:i=[],onSelectionChange:s,actions:p,extraTools:l,fitContainer:c=false,fullWidth:g=false,maxHeight:f,loading:u=false,rowsPerPageOptions:h=[20,50,100,-1],onLayoutSave:w,filterConfig:d,rowKey:C,tableKey:m="default",graphReport:y,quickCreate:b,quickEdit:T,quickDelete:A,serviceUrl:R,orientation:S="auto",cardTitleField:B,cardSubtitleFields:P,toolbarSlot:v,emptyState:M,rowHeight:k="comfortable",cardActionSlot:I,renderCardFooter:D,onRowClick:G}=e,V=a||t("table.title.default"),X=useMediaQuery("(orientation: portrait)"),de=useMediaQuery(o.breakpoints.down("md")),oe=S==="auto"?X||de?"portrait":"landscape":S,{columns:re,filterText:_,setFilterText:qe,visibleColumns:it,showSummary:Y,setShowSummary:le,summaryColumns:Be,grouping:Ee,setGrouping:Ue,expandedGroups:ot,groupAnchorEl:Fe,setGroupAnchorEl:_e,summaryAnchorEl:ht,setSummaryAnchorEl:j,anchorEl:pe,setAnchorEl:De,contextMenu:Le,sortedAndFilteredRows:We,summaryRow:U,visibleRows:ye,page:be,setPage:Pe,rowsPerPage:et,setRowsPerPage:Ge,totalDisplayCount:Tt,setSelected:ro,handleClick:Yt,toggleSummaryColumn:Ht,handleExport:Qt,handleCloseContextMenu:ze,toggleColumnVisibility:Ce,toggleGroupExpand:L,toggleGroupField:$,handleExpandGroupRecursively:Z,handleCollapseGroupRecursively:te,handleLayoutLoad:ke,handleVariantLoad:z,handleLayoutSave:O,effectiveAppId:N,currentLayoutData:ne,currentLayoutId:se,layoutIdToLoad:we,graphReportOpen:ae,handleOpenGraphReport:Me,handleCloseGraphReport:Te}=on(e),Ne=y?.enabled??false,Ie=Ne&&(y?.interaction?.enabled??true),Re=tl(),Ve=C||"id",It=vt__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]),xo=vt__default.useMemo(()=>({...It,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)}),[It,o]),yt=vt__default.useMemo(()=>{let W=new Set(i);return We.filter(ie=>W.has(ie?.[Ve]))},[Ve,i,We]),At=yt.length===1?yt[0]:null,vo=!!b?.enabled,Ra=!!T?.enabled,Br=!!A?.enabled,Do=b?.fields,no=b?.excludeFields||[],er=b?.initialValues||{},oa=T?.fields,Kt=T?.excludeFields||[],io=T?.editableFields||[],Wt=T?.nonEditableFields||[],je=T?.primaryKeys?.length?T.primaryKeys:[Ve],[aa,Go]=vt__default.useState(false),[ra,tr]=vt__default.useState(false),[Uo,or]=vt__default.useState({}),[ar,Ko]=vt__default.useState(false),[na,Da]=vt__default.useState(false),[qt,Mo]=vt__default.useState({}),[ia,Co]=vt__default.useState(false),[qo,rr]=vt__default.useState(false),Er=u||ra||na||qo,Ma=vt__default.useMemo(()=>{let W=[...re];if(Array.isArray(Do)&&Do.length>0){let ie=new Set(Do);W=W.filter(q=>ie.has(q.id));}if(no.length>0){let ie=new Set(no);W=W.filter(q=>!ie.has(q.id));}return W.filter(ie=>!!ie?.id)},[re,no,Do]),nr=vt__default.useMemo(()=>{let W=[...re];if(Array.isArray(oa)&&oa.length>0){let ie=new Set(oa);W=W.filter(q=>ie.has(q.id));}if(Kt.length>0){let ie=new Set(Kt);W=W.filter(q=>!ie.has(q.id));}return W.filter(ie=>!!ie?.id)},[re,Kt,oa]),la=vt__default.useMemo(()=>new Set(je),[je]),Jt=vt__default.useMemo(()=>new Set(io),[io]),Ao=vt__default.useMemo(()=>new Set(Wt),[Wt]),Fr=vt__default.useCallback(W=>Jt.size>0?Jt.has(W):!(Ao.has(W)||la.has(W)),[Jt,Ao,la]);vt__default.useEffect(()=>{!ae&&Re.hasActiveFilters&&Re.clearAll();},[Re,ae]);let ir=()=>{let W={};Ma.forEach(ie=>{W[ie.id]=er[ie.id]??"";}),or(W),Go(true);},Lr=(W,ie)=>{or(q=>({...q,[W]:ie}));},zr=async()=>{if(!b?.onSubmit){Go(false);return}try{tr(!0),await b.onSubmit(Uo),Go(!1);}finally{tr(false);}},Nr=()=>{if(!At)return;let W={};nr.forEach(q=>{W[q.id]=At[q.id]??"";});let ie=T?.getInitialValues?{...W,...T.getInitialValues(At)}:W;Mo(ie),Ko(true);},lo=(W,ie)=>{Mo(q=>({...q,[W]:ie}));},Vr=async()=>{if(At){if(!T?.onSubmit){Ko(false);return}try{Da(!0),await T.onSubmit(qt,At),Ko(!1);}finally{Da(false);}}},Or=()=>{yt.length!==0&&Co(true);},lr=async()=>{if(yt.length===0){Co(false);return}if(!A?.onConfirm){Co(false),ro([]),s?.([]);return}try{rr(!0),await A.onConfirm(yt),Co(!1),ro([]),s?.([]);}finally{rr(false);}},sa=We,{fieldMapping:Aa}=Qr({rows:sa,config:{...y,title:y?.title||`${V} ${t("graph.reportTitle")}`}}),Ba=vt__default.useMemo(()=>Ie?Re.applyRows(sa,Aa):sa,[Aa,Re,Ie,sa]),{model:x}=Qr({rows:Ba,config:{...y,title:y?.title||`${V} ${t("graph.reportTitle")}`,fieldMapping:Aa}}),E=x.table.columns.map(W=>({id:W.id,label:W.label,align:W.align||"left",minWidth:120,numeric:W.align==="right"})),F=N?jsx(pl,{appId:N,tableKey:m,currentLayoutData:ne,onLayoutLoad:ke,targetLayoutId:we,activeLayoutId:se,serviceUrl:R??d?.serviceUrl}):null,K=re.filter(W=>it.includes(W.id)),ce=K.find(W=>W.id===B)||K[0],Se=P?.map(W=>K.find(ie=>ie.id===W)).filter(Boolean)||K.filter(W=>W.id!==ce?.id).slice(0,oe==="portrait"?2:3),H=K.filter(W=>W.id!==ce?.id&&!Se.some(ie=>ie.id===W.id)),J=[v,l].filter(Boolean),Q=jsxs(Fragment,{children:[jsx(Wr,{groupAnchorEl:Fe,setGroupAnchorEl:_e,grouping:Ee,setGrouping:Ue,columns:re,toggleGroupField:$}),jsx($r,{anchorEl:pe,setAnchorEl:De,columns:re,visibleColumns:it,toggleColumnVisibility:Ce}),jsx(zi,{anchorEl:ht,setAnchorEl:j,showSummary:Y,setShowSummary:le,columns:re,summaryColumns:Be,toggleSummaryColumn:Ht}),jsx(Ni,{contextMenu:Le,handleCloseContextMenu:ze,columns:re,visibleColumns:it,toggleColumnVisibility:Ce})]}),at=(W,ie,q)=>{let ge=i.includes(ie),Ze=oe==="portrait"?"repeat(2, minmax(0, 1fr))":"repeat(auto-fit, minmax(140px, 1fr))",_o=q%2===0?alpha(o.palette.primary.main,o.palette.mode==="dark"?.09:.04):alpha(o.palette.primary.main,o.palette.mode==="dark"?.05:.022),ef=alpha(o.palette.divider,.22);return jsx(Paper,{elevation:0,onClick:()=>{Yt({},W),G?.(W);},sx:{p:k==="compact"?1.25:1.5,borderRadius:4,border:"0.5px solid",borderColor:ge?alpha(o.palette.primary.main,.38):ef,background:ge?`linear-gradient(135deg, ${alpha(o.palette.primary.main,.13)}, ${alpha(o.palette.primary.main,.06)})`:`linear-gradient(135deg, ${_o}, ${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:q%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:so=>so.stopPropagation(),onChange:()=>Yt({},W),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:Jm(ce,W)}):null,Se.length>0?jsx(Stack,{direction:"row",spacing:.75,useFlexGap:true,flexWrap:"wrap",sx:{mt:.75},children:Se.map(so=>jsx(Chip,{label:`${so.label}: ${Fk(so,W)}`,size:"small",variant:"outlined",sx:It},`${ie}-${so.id}`))}):null]}),I?jsx(Box,{onClick:so=>so.stopPropagation(),children:I(W)}):null]}),H.length>0?jsx(Box,{sx:{display:"grid",gridTemplateColumns:Ze,gap:1},children:H.map(so=>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:so.label}),Ek(Jm(so,W))]},`${ie}-${so.id}-detail`))}):null,D?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{onClick:so=>so.stopPropagation(),children:D(W)})]}):null]})},ie)};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:[d?jsx(Box,{sx:{mb:2},children:jsx(Nm,{...d,onVariantLoad:W=>{z(W),d.onVariantLoad?.(W);},appId:d.appId,tableKey:m,currentLayout:[{tableKey:m,layoutData:ne}],currentLayoutId:se,layoutRefs:[{tableKey:m,layoutId:se}],variantService:d.variantService,serviceUrl:R??d.serviceUrl,touchMode:oe==="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:qe,onRowsPerPageChange:Ge,rowsPerPage:et,rowsPerPageOptions:h,page:be,count:Tt,onPageChange:Pe,actions:p,extraTools:J,grouping:Ee,setGroupAnchorEl:_e,showSummary:Y,setShowSummary:le,setAnchorEl:De,setSummaryAnchorEl:j,handleExport:Qt,showCreateButton:vo,onOpenCreateDialog:ir,showEditButton:Ra,onOpenEditDialog:Nr,editDisabled:yt.length!==1,showDeleteButton:Br,onOpenDeleteConfirm:Or,deleteDisabled:yt.length===0,onLayoutSave:w||d?.variantService&&d?.appId?O:void 0,loading:u,layoutManager:F,onOpenGraphReport:Ne?Me: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?M||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((W,ie)=>{if(W.type==="group"){let Ze=ot.has(W.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:()=>L(W.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:[Ze?jsx(Tk,{}):jsx(Ik,{}),jsxs(Box,{sx:{flex:1,minWidth:0},children:[jsxs(Typography,{sx:{fontSize:"0.94rem",fontWeight:800},children:[W.field,": ",W.value]}),jsxs(Typography,{sx:{mt:.2,fontSize:"0.76rem",color:"text.secondary"},children:[W.count," records"]})]}),Ee.length>1&&W.level<Ee.length-1?jsxs(Stack,{direction:"row",spacing:.5,children:[jsx(Chip,{size:"small",label:t("table.group.expandAll"),onClick:_o=>{_o.stopPropagation(),Z(W.id);},sx:xo}),jsx(Chip,{size:"small",label:t("table.group.collapseAll"),onClick:_o=>{_o.stopPropagation(),te(W.id);},sx:xo})]}):null]})},W.id)}let q=W.data||W,ge=W.id||q[Ve]||ie;return at(q,ge,ie)}),Y?jsx(Lk,{summaryRow:U,visibleColumns:it,columns:re}):null,u?jsx(Typography,{sx:{py:1,fontSize:"0.84rem",color:"text.secondary",textAlign:"center"},children:t("common.loading")}):null]})})]}),vo?jsxs(Dialog,{open:aa,onClose:()=>!ra&&Go(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:b?.title||t("quickCreate.createWithTitle",{title:V})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[Ma.map(W=>{let ie=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text";return jsx(TextField,{label:W.label||W.id,value:Uo[W.id]??"",onChange:q=>Lr(W.id,q.target.value),type:ie,fullWidth:true,InputLabelProps:{shrink:ie==="date"?true:void 0}},`quick-create-${W.id}`)}),b?.description?jsx(Alert,{severity:"info",children:b.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Go(false),disabled:ra,children:b?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:zr,variant:"contained",disabled:ra,children:b?.submitLabel||t("common.save")})]})]}):null,Ra?jsxs(Dialog,{open:ar,onClose:()=>!na&&Ko(false),fullWidth:true,maxWidth:"sm",children:[jsx(DialogTitle,{sx:{fontSize:"1rem",fontWeight:800},children:T?.title||t("quickEdit.editWithTitle",{title:V})}),jsx(DialogContent,{sx:{pt:"8px !important"},children:jsxs(Box,{sx:{display:"flex",flexDirection:"column",gap:1.25},children:[nr.map(W=>{let ie=W.type==="number"||W.numeric?"number":W.type==="date"?"date":"text";return jsx(TextField,{label:W.label||W.id,value:qt[W.id]??"",onChange:q=>lo(W.id,q.target.value),type:ie,disabled:!Fr(W.id),fullWidth:true,InputLabelProps:{shrink:ie==="date"?true:void 0}},`quick-edit-${W.id}`)}),T?.description?jsx(Alert,{severity:"info",children:T.description}):null]})}),jsxs(DialogActions,{sx:{px:3,pb:2},children:[jsx(Button,{onClick:()=>Ko(false),disabled:na,children:T?.cancelLabel||t("common.cancel")}),jsx(Button,{onClick:Vr,variant:"contained",disabled:na||!At,children:T?.submitLabel||t("common.save")})]})]}):null,Br?jsx(An,{open:ia,type:"warning",title:A?.title||t("quickDelete.confirmTitle"),message:A?.message||(yt.length>1?t("quickDelete.confirmMessageMultiple",{count:yt.length}):t("quickDelete.confirmMessageSingle")),confirmText:A?.confirmText||t("common.delete"),cancelText:A?.cancelText||t("common.cancel"),onClose:()=>!qo&&Co(false),onConfirm:lr}):null,Q,Ne?jsx(Ji,{open:ae,onClose:Te,model:x,aiAssistant:y?.aiAssistant,interaction:Ie?{enabled:true,filters:Re.filters,fieldMapping:Aa,onPrimaryDimensionClick:W=>Re.setFilter("primaryDimension",W),onSecondaryDimensionClick:W=>Re.setFilter("secondaryDimension",W),onStatusClick:W=>Re.setFilter("status",W),onClearFilter:Re.clearFilter,onClearAll:Re.clearAll}:void 0,tableContent:jsx(zk,{appId:N||"graph-report-internal",title:t("graph.dataBody"),columns:E,rows:x.table.rows,rowKey:"id",fullWidth:true,maxHeight:"420px",rowsPerPage:20,rowsPerPageOptions:[20,50,100],graphReport:{enabled:false},showSummary:false})}):null]})};var TF=({appTitle:e,children:t,menuData:o=[],workloadItems:a=[],workloadSelectedId:r,showNavigation:n=true,showWorkloadNav:i=true,orientation:s="auto",logo:p,headerSlot:l,actionSlot:c,portraitBottomSlot:g,contentSx:f,containerSx:u,user:h,onSearch:w,defaultNavigationOpen:d,navOpen:C,onNavOpenChange:m,onWorkloadSelect:y,locale:b="en",localeLabel:T,localeOptions:A,onLocaleChange:R,onUserSetting:S,onUserLogout:B,userMenuItems:P,leftHeaderSlot:v,rightHeaderSlot:M})=>{let k="orbcafe:page-layout-mode",[I,D]=useState("system"),[G,V]=useState("light"),[X,de]=useState(false),[oe,re]=useState(false),_=I==="system"?oe?G:"light":I;useEffect(()=>{de(true);},[]),useEffect(()=>{try{let Le=window.localStorage.getItem(k);(Le==="light"||Le==="dark"||Le==="system")&&D(Le);}catch{}re(true);let pe=window.matchMedia("(prefers-color-scheme: dark)"),De=()=>{V(pe.matches?"dark":"light");};return De(),pe.addEventListener("change",De),()=>pe.removeEventListener("change",De)},[]),useEffect(()=>{if(oe)try{window.localStorage.setItem(k,I);}catch{}},[oe,I]),useEffect(()=>{_==="dark"?(document.documentElement.classList.add("dark"),document.documentElement.style.colorScheme="dark"):(document.documentElement.classList.remove("dark"),document.documentElement.style.colorScheme="light");},[_]);let qe=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"}}}}}),[_]),it=useMediaQuery("(orientation: portrait)"),Y=useMediaQuery(qe.breakpoints.down("md")),le=s==="auto"?!X||it||Y?"portrait":"landscape":s,[Be,Ee]=useState({landscape:d??true,portrait:false}),Ue=Be[le],ot=C??Ue,Fe=pe=>{C===void 0&&Ee(De=>({...De,[le]:pe})),m?.(pe);},_e=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[!X||n&&le==="portrait"?jsx(IconButton,{onClick:()=>Fe(!ot),sx:{bgcolor:"action.hover"},children:jsx(wk,{})}):null,v]}),ht=jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",children:[c,M]}),j=jsx(Km,{collapsed:le==="landscape"?!ot:false,onToggle:()=>Fe(!ot),menuData:o,orientation:le,colorMode:_,maxHeight:le==="landscape"?900:void 0});return jsx(ThemeProvider$1,{theme:qe,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:p===void 0?null:p,mode:I,onToggleMode:()=>D(pe=>pe==="system"?"dark":pe==="dark"?"light":"system"),locale:b,localeLabel:T,localeOptions:A,onLocaleChange:R,user:h,onUserSetting:S,onUserLogout:B,userMenuItems:P,onSearch:w,leftSlot:_e,rightSlot:ht}),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:[X&&n&&le==="landscape"?jsx(Box,{sx:{p:1.5,pr:0,flexShrink:0},children:j}):null,!X||n&&le==="portrait"?jsx(Drawer,{open:ot,onClose:()=>Fe(false),PaperProps:{sx:{width:"min(88vw, 360px)",p:1.25,bgcolor:"transparent",boxShadow:"none"}},children:j}):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(Hm,{items:a,selectedId:r,orientation:le,onItemSelect:y}):null,jsx(Paper,{elevation:0,sx:{flex:1,minHeight:le==="portrait"?420:560,p:{xs:1.25,md:1.5},borderRadius:5,border:"1px solid",borderColor:"divider",bgcolor:qe.palette.mode==="dark"?"rgba(15,23,42,0.72)":"rgba(255,255,255,0.72)",backdropFilter:"blur(12px)",color:"text.primary"},children:t})]})})]}),le==="portrait"&&g?jsxs(Fragment,{children:[jsx(Divider,{}),jsx(Box,{sx:{p:1.5},children:g})]}):null]})})})};var og=qk(()=>import('./COrbCanvas-EGX5NO3Y.mjs').then(e=>e.COrbCanvas),{ssr:false,loading:()=>jsx("div",{className:"h-full w-full bg-transparent"})});function td({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(og,{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(og,{hue:10,hoverIntensity:.8,rotateOnHover:true,forceHoverState:true,backgroundColor:"transparent"})})]})})})}var MF=td;function as({onTextUpdate:e,onComplete:t,onError:o,wsUrl:a="ws://localhost:8765",silenceThresholdMs:r=2e3,minVolumeRms:n=.015}){let[i,s]=useState(false),p=useRef(null),l=useRef(null),c=useRef(null),g=useRef(null),f=useRef(null),u=useRef(0),h=useRef(false),w=useRef(false),d=useCallback(()=>{p.current&&(p.current.close(),p.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);},[]),C=useCallback(()=>{h.current||(h.current=true,p.current?.readyState===WebSocket.OPEN&&p.current.send(JSON.stringify({type:"stop"})),setTimeout(d,500));},[d]),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);p.current=b,b.onopen=()=>{s(!0),w.current=!1;},b.onmessage=B=>{try{let P=JSON.parse(B.data);if(P.type==="recognition")P.is_final?t(P.text):e?.(P.text);else if(P.type==="error"){let v=P.message||"Voice recognition error";o?.(v),C();}}catch{o?.("Failed to parse voice message");}},b.onerror=()=>{o?.("Voice service connection failed"),d();},b.onclose=()=>{d();};let T=window.AudioContext||window.webkitAudioContext;if(!T)throw new Error("AudioContext is not supported in this browser");let A=new T({sampleRate:16e3});c.current=A;let R=A.createMediaStreamSource(y);f.current=R;let S=A.createScriptProcessor(4096,1,1);g.current=S,S.onaudioprocess=B=>{if(p.current?.readyState!==WebSocket.OPEN)return;let P=B.inputBuffer.getChannelData(0),v=0;for(let I=0;I<P.length;I+=1)v+=P[I]*P[I];if(Math.sqrt(v/P.length)>n)u.current=Date.now();else if(Date.now()-u.current>r&&!h.current){C();return}let k=new Int16Array(P.length);for(let I=0;I<P.length;I+=1){let D=Math.max(-1,Math.min(1,P[I]));k[I]=D<0?D*32768:D*32767;}p.current.send(k.buffer);},R.connect(S),S.connect(A.destination);}catch{o?.("Cannot access microphone"),d();}}},[d,i,n,t,o,e,r,C,a]);return useEffect(()=>d,[d]),{isRecording:i,startRecording:m,stopRecording:C}}var rg=createContext(null);function oS(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 aS({children:e,onVoiceSubmit:t,onVoicePartial:o,onVoiceError:a,longPressMs:r=200,disableSpaceTrigger:n=false,ignoreWhenFocusedInput:i=true,renderOverlay:s=true,wsUrl:p,silenceThresholdMs:l,minVolumeRms:c}){let[g,f]=useState(false),[u,h]=useState(false),w=useRef(null),d=useRef(false),C=useRef(false),m=useCallback(()=>{C.current=false,f(false);},[]),{isRecording:y,startRecording:b,stopRecording:T}=as({wsUrl:p,silenceThresholdMs:l,minVolumeRms:c,onTextUpdate:B=>{o?.(B);},onComplete:async B=>{try{B.trim()&&(h(!0),await t(B.trim()));}catch(P){let v=P instanceof Error?P.message:"Failed to process voice command";a?.(v);}finally{h(!1),m();}},onError:B=>{a?.(B),h(!1),d.current||m();}}),A=useCallback(async()=>{C.current=false,await b();},[b]),R=useCallback(()=>{T();},[T]);useEffect(()=>{if(n)return;let B=v=>{v.isComposing||(v.code==="Space"||v.key===" ")&&(d.current||v.repeat||i&&oS(document.activeElement)||(d.current=true,v.preventDefault(),w.current=setTimeout(()=>{C.current=true,f(true),b();},r)));},P=v=>{(v.code==="Space"||v.key===" ")&&(w.current&&(clearTimeout(w.current),w.current=null),d.current=false,C.current&&(v.preventDefault(),f(false),T()));};return window.addEventListener("keydown",B),window.addEventListener("keyup",P),()=>{window.removeEventListener("keydown",B),window.removeEventListener("keyup",P),w.current&&(clearTimeout(w.current),w.current=null);}},[n,i,r,b,T]);let S=useMemo(()=>({isRecording:y,isHotkeyRecording:g,isSubmitting:u,startRecording:A,stopRecording:R}),[g,y,u,A,R]);return jsxs(rg.Provider,{value:S,children:[s?jsx(td,{isRecording:g}):null,e]})}function rS(){let e=useContext(rg);if(!e)throw new Error("useAINav must be used within CAINavProvider");return e}var VF=aS,OF=rS;function He(...e){return twMerge(clsx(e))}var pS=({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})]})},ng=pS;var xS=({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);}},p=r==="dark"?oneDark:oneLight;return jsxs("div",{className:He("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:p,customStyle:{margin:0,padding:"16px",fontSize:"14px",lineHeight:"1.5",backgroundColor:r==="dark"?"#1f2937":"#ffffff"},wrapLongLines:true,children:e})})]})},lg=xS;var SS=({content:e,isLoading:t,className:o="",style:a})=>{let r=useRef(null),[n,i]=useState(false),[s,p]=useState(null),{theme:l}=useTheme$2();return useEffect(()=>{let c=async()=>{if(!(!e.trim()||!r.current)){i(true),p(null);try{cg.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 cg.render(f,u);r.current&&(r.current.innerHTML=h);}catch(f){console.error("Mermaid render failed:",f),p(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})},pg=SS;var DS=({title:e="\u53D1\u751F\u9519\u8BEF",content:t,errorCode:o,stack:a,icon:r,closable:n=true,onClose:i,onRetry:s,className:p="",...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 ${p}`,...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=DS;var LS=({title:e="\u8B66\u544A",content:t,warningType:o,severity:a="warning",warnings:r=[],icon:n,closable:i=true,onClose:s,onConfirm:p,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,d)=>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})]},d))})]}),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"})})]}),p&&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:p,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=LS;var OS=({title:e="\u76F8\u5173\u63A8\u8350",content:t,suggestions:o,onSuggestionClick:a,maxDisplay:r=5,icon:n,closable:i=false,onClose:s,className:p="",...l})=>{let[c,g]=useState(false),[f,u]=useState(""),[h,w]=useState(false),d=useMemo(()=>f.trim()?o.filter(y=>y.toLowerCase().includes(f.toLowerCase())):o,[o,f]),C=useMemo(()=>c?d:d.slice(0,r),[d,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 ${p}`,...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:C.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))}),d.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 (${d.length})`}),d.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=OS;var qS=({title:e,content:t,toolName:o,parameters:a,result:r,status:n,duration:i,icon:s,closable:p=false,onClose:l,onAction:c,actionText:g,className:f="",...u})=>{let[h,w]=useState(false),[d,C]=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=R=>R?R<1e3?`${R}ms`:`${(R/1e3).toFixed(2)}s`:"",T=m(),A=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 ${T.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:A}),jsx("span",{className:`text-[10px] font-medium px-1.5 py-0.5 rounded ${T.badgeBg} ${T.badgeText}`,children:T.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)]}),p&&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:()=>C(!d),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:[d?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"]}),d&&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=qS;var jS=({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($a,{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=jS;var aw=({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(lp,{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),p=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:p,variant:r.variant||"donut",size:r.size,colors:r.colors});case "combo-chart-card":return jsx(sp,{data:o,barColor:r.barColor,lineColor:r.lineColor});case "heatmap-chart-card":return jsx(dp,{data:o});case "fishbone-chart-card":return jsx(up,{branches:o,effect:r.effect||e||"Problem"});case "waterfall-chart-card":return jsx(gp,{data:o,height:r.height});case "google-map-card":return jsx(yp,{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(Cp,{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=aw;var nw=({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=nw;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 pw=({content:e,theme:t,size:o="base",className:a,enableCodeHighlight:r=true,enableMermaid:n=true,messageId:i,cardHooks:s})=>{let p=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,d)=>{s?.onCardEvent?.({messageId:i,cardType:f,action:u,title:h,payload:w,rawData:d});},c=(f,u,h,w,d,C)=>{if(!(!d&&!s?.onCardEvent))return (...m)=>{let y=d?.(...m),b=C?C(...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(ng,{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 d=/language-([\w-]+)/.exec(u||""),C=d?d[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&&C==="mermaid")return jsx(pg,{content:m});if(C==="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,T=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:T})}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,T=>({suggestion:T}))})}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(lg,{content:m,language:C,className:"not-prose"}):jsx("code",{className:u,...w,children:h})}}),[t,o,n,r,s,i]);return jsx("div",{className:He("markdown-body prose dark:prose-invert max-w-none",a),children:jsx(iw,{remarkPlugins:[lw,sw],rehypePlugins:[cw,dw],components:g,children:p})})},ms=pw;var uw=({content:e,messageId:t,cardHooks:o})=>{let a=(i,s,p,l,c)=>{o?.onCardEvent?.({messageId:t,cardType:i,action:s,title:p,payload:l,rawData:c});},r=(i,s,p,l,c,g)=>{if(!(!c&&!o?.onCardEvent))return (...f)=>{let u=c?.(...f),h=g?g(...f):void 0;return a(i,s,p,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})})},Cg=uw;var dd=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"}}},gw=({content:e,className:t="",messageId:o,cardHooks:a})=>{let r=vt__default.useMemo(()=>dd.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(Cg,{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}`))})},kg=gw;var fw=({content:e,isStreaming:t=true,onComplete:o,className:a="",streamIntervalMs:r=24,streamChunkSize:n=3,messageId:i,cardHooks:s})=>{let[p,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(p>=e.length){g(true),o?.();return}let d=window.setTimeout(()=>{l(C=>Math.min(C+n,e.length));},r);return ()=>{window.clearTimeout(d);}},[e.length,c,t,o,n,r,p]);let f=()=>{t&&!c&&(l(e.length),g(true),o?.());},u=t?e.slice(0,p):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(kg,{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"})]})},Ig=fw;var Pg=({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:He("flex items-center gap-1",t),children:e.map((a,r)=>jsx("button",{onClick:a.onClick,disabled:a.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",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(Ig,{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(Pg,{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 Dg=({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: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",a&&"opacity-50 cursor-not-allowed",r),title:n?"Stop recording":"Start recording",type:"button",children:n?jsx(kw,{sx:{fontSize:24}}):jsx(Cw,{sx:{fontSize:24}})})};var Ct={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")},Mw={padding:0,lineHeight:"1.5",border:"none !important",boxShadow:"none !important",backgroundColor:"transparent",height:"auto",fontFeatureSettings:'"liga" 1, "kern" 1',WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},Aw=({enabled:e,onClick:t})=>jsx("button",{className:He(Ct.buttonBase,Ct.buttonSmall,Ct.buttonNormal),onClick:t,disabled:!e,"aria-label":"Upload file",type:"button",children:jsx(Rw,{sx:{fontSize:24}})}),Bw=()=>jsxs("button",{className:He(Ct.buttonBase,"h-10 px-3 py-2 gap-1.5 rounded-full",Ct.buttonNormal),"aria-label":"Tools",type:"button",children:[jsx(Dw,{sx:{fontSize:20}}),jsx("span",{className:"text-sm font-medium",children:"Tools"})]}),Ew=({canSend:e,isResponding:t,onSend:o,onStop:a})=>t?jsx("button",{className:He(Ct.buttonBase,Ct.buttonSmall,Ct.stopButton),onClick:a,"aria-label":"Stop generating",type:"button",children:jsx(Stop,{sx:{fontSize:20}})}):jsx("button",{className:He(Ct.buttonBase,Ct.buttonSmall,e?Ct.sendButton:Ct.sendButtonDisabled),onClick:o,disabled:!e,"aria-label":"Send message",type:"button",children:jsx(Pw,{sx:{fontSize:24},className:e?"text-gray-500 dark:text-gray-400":"text-gray-300 dark:text-gray-600"})}),Mg=({onSend:e,onStop:t,isResponding:o=false,placeholder:a,getText:r})=>{let[n,i]=useState(""),[s,p]=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,d={enabled:true},C=useCallback(D=>{i(D.target.value),D.target.style.height="auto",D.target.style.height=`${Math.min(D.target.scrollHeight,200)}px`;},[]),m=useCallback(D=>{if(D.target.files&&D.target.files.length>0){let G=Array.from(D.target.files);p(V=>{let X=G.filter(oe=>V.some(re=>re.name===oe.name&&re.size===oe.size));X.length>0&&console.warn("Duplicate files ignored:",X.map(oe=>oe.name));let de=G.filter(oe=>!V.some(re=>re.name===oe.name&&re.size===oe.size));return [...V,...de]}),u.current&&(u.current.value="");}},[]),y=useCallback(D=>{p(G=>G.filter((V,X)=>X!==D));},[]),b=useCallback(()=>{u.current?.click();},[]),T=useCallback(async()=>{if(!w)return;let D=n,G=[...s];i(""),p([]),u.current&&(u.current.value="");try{await e(D,G);}catch(V){console.error("Failed to send message:",V),i(D),p(G);}},[n,w,e,s]),A=useCallback(D=>{D.key==="Enter"&&!D.shiftKey&&!l&&(D.preventDefault(),T());},[T,l]),R=useCallback(()=>{c(true);},[]),S=useCallback(()=>{c(false);},[]),B=useCallback(D=>{i(D);},[]),P=useCallback(D=>{i(D);},[]),v=useCallback(()=>{},[]),M=useCallback(D=>{D.preventDefault(),f(true);},[]),k=useCallback(D=>{D.preventDefault(),f(false);},[]),I=useCallback(D=>{if(D.preventDefault(),f(false),D.dataTransfer.files&&D.dataTransfer.files.length>0){let G=Array.from(D.dataTransfer.files);p(V=>[...V,...G]);}},[]);return jsx("div",{className:Ct.container,children:jsxs("div",{className:"relative",children:[jsx("input",{type:"file",multiple:true,className:"hidden",ref:u,onChange:m}),jsxs("div",{className:He(Ct.inputContainer,g&&Ct.dragActive),style:{borderRadius:"32px"},onDragOver:M,onDragLeave:k,onDrop:I,children:[s.length>0&&jsx("div",{className:Ct.filePreviewArea,children:s.map((D,G)=>jsxs("div",{className:Ct.fileTag,children:[jsx(InsertDriveFile,{sx:{fontSize:16},className:"text-blue-500"}),jsx("span",{className:"truncate max-w-[150px]",children:D.name}),jsx("button",{onClick:()=>y(G),className:"ml-1 hover:text-red-500 focus:outline-none",type:"button",children:jsx(Close,{sx:{fontSize:16}})})]},`${D.name}-${G}`))}),jsxs("div",{className:"flex flex-col w-full p-2",children:[jsx("div",{className:He(Ct.textareaWrapper,"px-3 pt-2 pb-3 min-h-[60px]"),children:jsx("textarea",{className:He(Ct.textarea,"min-h-[24px] py-0 px-0"),placeholder:h,value:n,onChange:C,onKeyDown:A,onCompositionStart:R,onCompositionEnd:S,style:Mw,"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(Aw,{enabled:d.enabled,onClick:b}),jsx(Bw,{})]}),jsxs("div",{className:"flex items-center gap-2",children:[jsx(Dg,{onTextUpdate:B,onComplete:P,onCancel:v,disabled:o,className:Ct.buttonSmall}),jsx(Ew,{canSend:w,isResponding:o,onSend:T,onStop:t})]})]})]})]})]})})};var Eg=({messages:e,onSend:t,onStop:o,onRegenerate:a,isResponding:r=false,className:n,placeholder:i,streamIntervalMs:s,streamChunkSize:p,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: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((h,w)=>{let d=h.type==="assistant"&&w===e.length-1,C=h.type==="assistant"?{isLatestAssistant:d,onRegenerate:a?()=>a(h.id):void 0}:void 0;return jsx(gs,{message:h,assistantActions:C,onStreamingComplete:()=>l?.(h.id),streamIntervalMs:s,streamChunkSize:p,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(Mg,{onSend:t||(async()=>{}),onStop:o||(()=>{}),isResponding:r,placeholder:i})})]})};var yo={};var zw={idle:"Idle",running:"Running",success:"Success",error:"Error",pending:"Pending"},dN=({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:He("relative flex h-full w-full",yo.agentPanel,a),"data-status":s,children:[jsx("div",{className:yo.colorHalo,"data-status":s,"aria-hidden":"true"}),jsxs("div",{className:yo.marqueeBorder,"data-status":s,"aria-hidden":"true",children:[jsx("span",{className:He(yo.edge,yo.top)}),jsx("span",{className:He(yo.edge,yo.right)}),jsx("span",{className:He(yo.edge,yo.bottom)}),jsx("span",{className:He(yo.edge,yo.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:yo.statusDot,"data-status":s}),jsx("span",{className:"text-[11px] font-medium uppercase tracking-wide text-gray-600 dark:text-gray-300",children:zw[s]})]}),o]})]}),jsx("div",{className:"flex-1 min-h-0 relative z-10",children:jsx(Eg,{...i,showInput:n})})]})]})};var Ww={"top-left":"bottom-right","top-right":"bottom-left","bottom-left":"top-right","bottom-right":"top-left"},bN=({messages:e,onSend:t,onRegenerate:o,isResponding:a=false,className:r,placeholder:n,title:i="Copilot",corner:s="bottom-right",onCollapse:p,onHeaderPointerDown:l,onPlusClick:c,onMicClick:g,streamIntervalMs:f,streamChunkSize:u,onMessageStreamingComplete:h,cardHooks:w})=>{let[d,C]=useState(""),[m,y]=useState(false),b=useRef(null),T=Ww[s];useEffect(()=>{b.current?.scrollIntoView({behavior:"smooth"});},[e,a]);let A=useCallback(async()=>{let S=d.trim();!S||a||(C(""),await t(S));},[a,t,d]),R=useCallback(async S=>{S.key==="Enter"&&!m&&(S.preventDefault(),await A());},[A,m]);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",r),children:[p&&jsx("button",{onClick:p,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",T==="top-left"&&"-left-2 -top-2",T==="top-right"&&"-right-2 -top-2",T==="bottom-left"&&"-bottom-2 -left-2",T==="bottom-right"&&"-bottom-2 -right-2"),type:"button","aria-label":"Collapse Copilot",children:jsx("span",{className:He("block h-4 w-4 border-[#21BCFF]",T==="top-left"&&"rounded-tl-full border-l-[3px] border-t-[3px]",T==="top-right"&&"rounded-tr-full border-r-[3px] border-t-[3px]",T==="bottom-left"&&"rounded-bl-full border-b-[3px] border-l-[3px]",T==="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,B)=>{let P=S.type==="assistant"&&B===e.length-1,v=S.type==="assistant"?{isLatestAssistant:P,onRegenerate:o?()=>o(S.id):void 0}:void 0;return jsx(gs,{message:S,assistantActions:v,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:d,onChange:S=>C(S.target.value),onCompositionStart:()=>y(true),onCompositionEnd:()=>y(false),onKeyDown:R,"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 kN=({defaultMode:e="login",onLogin:t,onRegister:o,onForgotPassword:a}={})=>{let[r,n]=useState(e),[i,s]=useState(false),p=useCallback(async u=>{s(true);try{await u?.();}finally{s(false);}},[]),l=useCallback(u=>p(()=>t?.(u)),[t,p]),c=useCallback(u=>p(()=>o?.(u)),[o,p]),g=useCallback(u=>p(()=>a?.(u)),[a,p]),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 md=({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 e1={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."},$N=({mode:e,defaultMode:t="login",onModeChange:o,onLogin:a,onRegister:r,onForgotPassword:n,loading:i=false,logo:s,copy:p,sx:l})=>{let c=useTheme(),g=e!==void 0,[f,u]=useState(t),h=e??f,w=useMemo(()=>({...e1,...p}),[p]),[d,C]=useState({username:"demo@orbcafe.local",password:"orbcafe-demo",remember:true}),[m,y]=useState({name:"",email:"",password:"",confirmPassword:"",acceptedTerms:false}),[b,T]=useState({email:""}),[A,R]=useState(""),S=I=>{g||u(I),R(""),o?.(I);},B=async I=>{I.preventDefault(),await a?.(d),R("Demo login accepted. No real authentication request was sent.");},P=async I=>{I.preventDefault(),await r?.(m),R("Demo registration saved locally for this screen.");},v=async I=>{I.preventDefault(),await n?.(b),R("Demo reset link request created. No email was sent.");},M=h==="login"?w.loginTitle:h==="register"?w.registerTitle:w.forgotTitle,k=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:M}),jsx(Typography,{sx:{color:"text.secondary"},children:k})]}),A&&jsx(Alert,{severity:"success",children:A}),h==="login"&&jsx(Box,{component:"form",onSubmit:B,children:jsxs(Stack,{spacing:2,children:[jsx(_t,{label:"Email or user ID",value:d.username,onChange:I=>C(D=>({...D,username:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Og,{fontSize:"small"})})}}),jsx(_t,{label:"Password",type:"password",value:d.password,onChange:I=>C(D=>({...D,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Qw,{fontSize:"small"})})}}),jsxs(Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:2},children:[jsx(md,{label:"Remember me",checked:d.remember,onChange:I=>C(D=>({...D,remember:I.target.checked}))}),jsx(Bo,{type:"button",variant:"text",size:"small",onClick:()=>S("forgot"),children:"Forgot?"})]}),jsx(Bo,{type:"submit",size:"large",disabled:i,children:"Sign in"}),jsxs(Typography,{variant:"body2",sx:{color:"text.secondary",textAlign:"center"},children:["New user?"," ",jsx(Bo,{type:"button",variant:"text",size:"small",onClick:()=>S("register"),sx:{minWidth:0,p:0},children:"Register"})]})]})}),h==="register"&&jsx(Box,{component:"form",onSubmit:P,children:jsxs(Stack,{spacing:2,children:[jsx(_t,{label:"Full name",value:m.name,onChange:I=>y(D=>({...D,name:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Og,{fontSize:"small"})})}}),jsx(_t,{label:"Work email",type:"email",value:m.email,onChange:I=>y(D=>({...D,email:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Vg,{fontSize:"small"})})}}),jsx(_t,{label:"Password",type:"password",value:m.password,onChange:I=>y(D=>({...D,password:I.target.value})),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Jw,{fontSize:"small"})})}}),jsx(_t,{label:"Confirm password",type:"password",value:m.confirmPassword,onChange:I=>y(D=>({...D,confirmPassword:I.target.value}))}),jsx(md,{label:"I accept the demo workspace terms",checked:m.acceptedTerms,onChange:I=>y(D=>({...D,acceptedTerms:I.target.checked}))}),jsx(Bo,{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(Bo,{type:"button",variant:"text",size:"small",onClick:()=>S("login"),sx:{minWidth:0,p:0},children:"Sign in"})]})]})}),h==="forgot"&&jsx(Box,{component:"form",onSubmit:v,children:jsxs(Stack,{spacing:2,children:[jsx(_t,{label:"Work email",type:"email",value:b.email,onChange:I=>T({email:I.target.value}),InputProps:{startAdornment:jsx(InputAdornment,{position:"start",children:jsx(Vg,{fontSize:"small"})})}}),jsx(Bo,{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(Bo,{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 a1={keyword:{value:"",operator:"contains"},status:{value:"",operator:"equals"},owner:{value:"",operator:"contains"},workCenter:{value:"",operator:"contains"}},r1=[{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"}],Hg=({tasks:e,defaultScale:t="week",defaultSelectedTaskId:o,initialFilters:a,filterFields:r,filterAppId:n="planning-gantt-filter",filterTableKey:i="planning",columns:s,onFilterSearch:p,onFilterVariantLoad:l,enableRowReorder:c,onTaskReorder:g})=>{let[f,u]=useState(t),[h,w]=useState(o??e[0]?.id??""),[d,C]=useState({...a1,...a}),m=useMemo(()=>{let A=String(d.keyword?.value??"").trim().toLowerCase(),R=String(d.status?.value??"").trim(),S=String(d.owner?.value??"").trim().toLowerCase(),B=String(d.workCenter?.value??"").trim().toLowerCase(),P=d.dateRange?.value,v=P?.[0]?ta(P[0]):null,M=P?.[1]?ta(P[1]):null;return e.filter(k=>{if(A&&![k.id,k.code,k.title,k.project,k.workCenter,k.owner?.name].join(" ").toLowerCase().includes(A)||R&&k.status!==R||S&&!String(k.owner?.name??"").toLowerCase().includes(S)||B&&!String(k.workCenter??"").toLowerCase().includes(B))return false;if(v||M){let I=ta(k.startDate),D=ta(k.endDate),G=v?D.isAfter(v)||D.isSame(v,"day"):true,V=M?I.isBefore(M)||I.isSame(M,"day"):true;if(!G||!V)return false}return true})},[d,e]);useEffect(()=>{m.length!==0&&(m.some(A=>A.id===h)||w(m[0].id));},[m,h]);let y=useCallback(A=>{w(A.id);},[]),b=useMemo(()=>({appId:n,tableKey:i,fields:r??r1,filters:d,onFilterChange:C,onVariantLoad:l??(()=>{}),onSearch:p??(()=>{})}),[n,r,i,d,p,l]),T=useMemo(()=>({tasks:m,columns:s,scale:f,onScaleChange:u,selectedTaskId:h,onTaskSelect:y,enableRowReorder:c,onTaskReorder:g}),[s,c,m,g,y,f,h]);return {scale:f,setScale:u,selectedTaskId:h,setSelectedTaskId:w,filters:d,setFilters:C,filteredTasks:m,smartFilterProps:b,planningGanttProps:T}};var XN=e=>{let t=Hg(e),o=useMemo(()=>({filterProps:t.smartFilterProps,ganttProps:t.planningGanttProps}),[t.planningGanttProps,t.smartFilterProps]);return {...t,layoutProps:o}};var Wg=e=>jsx(Chip,{...e,size:e.size||"small",variant:e.variant||"outlined"});var Qa=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});Qa.displayName="CIconButton";var Gg=({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))})]});ta.extend(h1);var yd=[{value:"hour",label:"Hour",width:56},{value:"day",label:"Day",width:46},{value:"week",label:"Week",width:78},{value:"month",label:"Month",width:104}],bd=56,Ar=58,xd=8,vd=260,E1=320,Ja="220ms cubic-bezier(0.2, 0, 0, 1)",_g={"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"}},F1=e=>e?_g[e]?.label??e:"Planned",L1=e=>e?_g[e]?.color??"default":"info",jg=e=>Math.min(100,Math.max(0,e??0)),Zg=(e,t=0)=>e.flatMap(o=>[{...o,level:t},...Zg(o.children??[],t+1)]),z1=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:F1(e.status),statusTone:e.status??"planned",progress:jg(e.progress),startDate:e.startDate,endDate:e.endDate,color:e.color,reorderable:e.reorderable!==false}),Xg=(e,t)=>t==="month"?e.startOf("month"):t==="week"?e.startOf("week"):t==="day"?e.startOf("day"):e.startOf("hour"),Yg=(e,t)=>t==="month"?e.endOf("month"):t==="week"?e.endOf("week"):t==="day"?e.endOf("day"):e.endOf("hour"),N1=(e,t,o)=>{let a=[],r=Xg(e,o),n=Yg(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},Cd=(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},Qg=({title:e="Project Plan",subtitle:t="Task table and timeline view",extraTools:o,bodyHeight:a=560,tasks:r,columns:n,scale:i="week",onScaleChange:s,timelineStart:p,timelineEnd:l,selectedTaskId:c,onTaskSelect:g,enableRowReorder:f=true,onTaskReorder:u,emptyLabel:h="No planning tasks available.",sx:w})=>{let d=useTheme(),C=useRef(null),m=useRef(null),y=useRef(null),b=useRef(false),[T,A]=useState(null),[R,S]=useState(null),[B,P]=useState({}),[v,M]=useState(bd),[k,I]=useState([]),[D,G]=useState({activeId:null,overId:null}),V=useRef(null),X=useMemo(()=>Zg(r),[r]),de=useMemo(()=>{if(k.length===0)return X;let L=new Map(X.map(te=>[te.id,te])),$=k.map(te=>L.get(te)).filter(te=>!!te),Z=new Set($.map(te=>te.id));return [...$,...X.filter(te=>!Z.has(te.id))]},[X,k]),oe=useMemo(()=>new Map(de.map(L=>[L.id,L])),[de]),re=useMemo(()=>de.map(L=>z1(L)),[de]),_=useMemo(()=>new Map(re.map(L=>[L.id,L])),[re]),qe=useMemo(()=>[{id:"code",label:"ID",minWidth:90},{id:"title",label:"Task",minWidth:260,render:(L,$)=>jsxs(Stack,{spacing:.2,children:[jsx(Typography,{sx:{fontSize:15,fontWeight:700,lineHeight:1.2},children:$.title}),jsx(Typography,{sx:{fontSize:13,color:"text.secondary"},children:$.titleSub})]})},{id:"owner",label:"Owner",minWidth:170},{id:"status",label:"Status",minWidth:130,render:(L,$)=>jsx(Wg,{label:$.status,color:L1($.statusTone),size:"small"})},{id:"progress",label:"Progress",minWidth:140,numeric:true,render:L=>jsxs(Stack,{spacing:.6,children:[jsxs(Typography,{variant:"caption",sx:{color:"text.secondary"},children:[L,"%"]}),jsx(LinearProgress,{variant:"determinate",value:L,sx:{height:6,borderRadius:999}})]})},{id:"startDate",label:"Start",minWidth:120},{id:"endDate",label:"End",minWidth:120}],[]),it=useMemo(()=>{if(!n||n.length===0)return qe;let L=new Map(qe.map($=>[$.id,$]));return n.map($=>{let Z=L.get($.id),te=$.width??Z?.minWidth??120,ke={id:$.id,label:$.label,minWidth:te};if(Z?.numeric&&(ke.numeric=true),$.render){let z=$.render;return ke.render=(O,N)=>{let ne=oe.get(N.id);return z(ne||N)},ke}return Z?.render?(ke.render=Z.render,ke):(ke.render=(z,O)=>{let N=O[$.id];if(N!=null&&String(N).length>0)return String(N);let se=oe.get(O.id)?.[$.id];return se!=null&&String(se).length>0?String(se):"-"},ke)})},[n,qe,oe]),Y=on({appId:"planning-gantt",title:e,columns:it,rows:re,rowKey:"id",rowsPerPage:-1,rowsPerPageOptions:[-1],count:re.length,showSummary:false}),le=Y.visibleRows;useEffect(()=>{let L=X.map($=>$.id);I($=>{let Z=new Set(L),te=$.filter(N=>Z.has(N)),ke=new Set(te),z=L.filter(N=>!ke.has(N)),O=[...te,...z];return O.length===$.length&&O.every((N,ne)=>N===$[ne])?$:O});},[X]);let Be=L=>L.type==="group"?`group-${L.id}`:`row-${(L.data||L)?.id}`,Ee=useMemo(()=>{let L=re.map(ne=>ta(ne.startDate)),$=re.map(ne=>ta(ne.endDate)),Z=p?ta(p):L.reduce((ne,se)=>se.isBefore(ne)?se:ne,L[0]??ta()),te=l?ta(l):$.reduce((ne,se)=>se.isAfter(ne)?se:ne,$[0]??ta().add(30,"day")),ke=i==="month"?"month":i==="week"?"week":i==="day"?"day":"hour",z=i==="month"?"month":i==="week"?"week":i==="day"?"day":"hour",O=i==="hour"?12:1,N=i==="hour"?12:1;return {start:Xg(Z.subtract(O,ke),i),end:Yg(te.add(N,z),i)}},[re,i,l,p]),Ue=yd.find(L=>L.value===i)??yd[1],ot=Array.isArray(o)?o:o?[o]:[],Fe=useMemo(()=>N1(Ee.start,Ee.end,i),[Ee.end,Ee.start,i]),_e=Fe.length*Ue.width,ht=(Y.columns||[]).filter(L=>Y.visibleColumns.includes(L.id)).reduce((L,$)=>L+(Y.columnWidths?.[$.id]||$.minWidth||100),0),j=T??ht,pe=R==="table",De=R==="timeline",Le=De?0:pe?"100%":j,We=R==="timeline",U=R==="table",ye=!We&&!U,be=pe?"minmax(0, 1fr) 0px 0px":De?"0px 0px minmax(0, 1fr)":`${j}px ${xd}px minmax(0, 1fr)`;useEffect(()=>{A(L=>L===null?null:Math.min(Math.max(L,vd),ht));},[ht]);let Pe=L=>{L.preventDefault(),L.currentTarget.setPointerCapture(L.pointerId),S(null),V.current={startX:L.clientX,startWidth:j};let $=te=>{let ke=V.current;if(!ke)return;let z=C.current?.clientWidth??0,O=z>0?Math.max(vd,z-xd-E1):ht,N=Math.min(Math.max(ke.startWidth+te.clientX-ke.startX,vd),O);A(N);},Z=()=>{V.current=null,window.removeEventListener("pointermove",$),window.removeEventListener("pointerup",Z),document.body.style.cursor="",document.body.style.userSelect="";};document.body.style.cursor="col-resize",document.body.style.userSelect="none",window.addEventListener("pointermove",$),window.addEventListener("pointerup",Z);},et=()=>{S(null),A(null);},Ge=L=>!f||!L?false:_.get(L)?.reorderable!==false,Tt=(L,$)=>{if(!L||!$||L===$||!Ge(L)||!Ge($))return false;if(Y.grouping.length===0)return true;let Z=_.get(L),te=_.get($);return !Z||!te?false:Y.grouping.every(ke=>Z[ke]===te[ke])},ro=(L,$)=>{if(!Tt(L,$))return;let Z=le.filter(ae=>ae.type!=="group").map(ae=>String((ae.data||ae)?.id)),te=Z.indexOf(L),ke=Z.indexOf($);if(te<0||ke<0)return;let z=[...Z];[z[te],z[ke]]=[z[ke],z[te]];let O=new Set(Z),N=de.map(ae=>ae.id),ne=[...z,...N.filter(ae=>!O.has(ae))],se=oe.get(L),we=oe.get($);if(Y.setOrder("asc"),Y.setOrderBy(""),I(ne),se&&we){let{level:ae,...Me}=se,{level:Te,...Ne}=we,Ie=ne.reduce((Re,Ve)=>{let It=oe.get(Ve);if(It){let{level:xo,...yt}=It;Re.push(yt);}return Re},[]);u?.(Ie,{activeTask:Me,targetTask:Ne});}},Yt=(L,$)=>{if(!Ge($.id)){L.preventDefault();return}L.stopPropagation(),L.dataTransfer.effectAllowed="move",L.dataTransfer.setData("text/plain",$.id),G({activeId:$.id,overId:null}),g?.(oe.get($.id)||$);},Ht=(L,$)=>{if(!Tt(D.activeId,$)){G(Z=>Z.overId===null?Z:{...Z,overId:null});return}L.preventDefault(),L.stopPropagation(),L.dataTransfer.dropEffect="move",G(Z=>Z.overId===$?Z:{...Z,overId:$});},Qt=(L,$)=>{let Z=D.activeId||L.dataTransfer.getData("text/plain");if(!Tt(Z,$)){G({activeId:null,overId:null});return}L.preventDefault(),L.stopPropagation(),ro(Z,$),G({activeId:null,overId:null});},ze=()=>{G({activeId:null,overId:null});},Ce=L=>{if(b.current)return;let $=L==="table"?m.current:y.current,Z=L==="table"?y.current:m.current;!$||!Z||(b.current=true,Z.scrollTop=$.scrollTop,window.requestAnimationFrame(()=>{b.current=false;}));};return useLayoutEffect(()=>{if(!c||U)return;let L=y.current,$=m.current;if(!L)return;let Z=`row-${c}`,te=Array.from(L.querySelectorAll("[data-planning-timeline-row-key]")).find(O=>O.dataset.planningTimelineRowKey===Z),ke=_.get(c);if(!te||!ke)return;let z=window.requestAnimationFrame(()=>{let O=L.getBoundingClientRect(),N=te.getBoundingClientRect(),ne=Math.max(1,L.clientHeight-v),se=L.scrollTop+N.top-O.top-v-(ne-N.height)/2;b.current=true,L.scrollTop=Math.max(0,se),$&&!We&&($.scrollTop=L.scrollTop);let we=Cd(ta(ke.startDate),Fe,Ue.width),ae=Math.max(0,we-Ue.width);L.scrollLeft=Math.min(ae,Math.max(0,_e-L.clientWidth)),window.requestAnimationFrame(()=>{b.current=false;});});return ()=>window.cancelAnimationFrame(z)},[Ue.width,v,c,We,_,U,le,_e,Fe]),useLayoutEffect(()=>{let L=m.current;if(!L)return;let $=0,Z=()=>{let N=L.querySelector("thead"),ne=Array.from(L.querySelectorAll("tbody tr[data-planning-row-key]"));if(ne.length===0)return;let se=N?.getBoundingClientRect().height||bd,we={};ne.forEach(ae=>{let Me=ae.dataset.planningRowKey;Me&&(we[Me]=ae.getBoundingClientRect().height);}),M(ae=>Math.abs(ae-se)<.01?ae:se),P(ae=>{let Me=Object.keys(ae),Te=Object.keys(we);return Me.length===Te.length&&Te.every(Ne=>Math.abs((ae[Ne]??0)-we[Ne])<.01)?ae:we});},te=()=>{window.cancelAnimationFrame($),$=window.requestAnimationFrame(Z);};if(Z(),typeof ResizeObserver>"u")return window.addEventListener("resize",te),()=>{window.cancelAnimationFrame($),window.removeEventListener("resize",te);};let ke=new ResizeObserver(te),z=L.querySelector("table"),O=L.querySelector("thead");return z&&ke.observe(z),O&&ke.observe(O),L.querySelectorAll("tbody tr[data-planning-row-key]").forEach(N=>ke.observe(N)),window.addEventListener("resize",te),()=>{window.cancelAnimationFrame($),ke.disconnect(),window.removeEventListener("resize",te);}},[le,Y.visibleColumns,Y.grouping,Y.columnWidths]),jsxs(Ti,{elevation:0,sx:{m:0,p:0,display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden",borderRadius:3,border:`1px solid ${d.palette.divider}`,backgroundColor:d.palette.background.paper,...w},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 ${d.palette.divider}`},children:[jsxs(Stack,{direction:"row",spacing:1.5,alignItems:"center",children:[jsx(Box,{sx:{width:38,height:38,borderRadius:2,display:"grid",placeItems:"center",backgroundColor:"primary.main",color:"primary.contrastText"},children:jsx(w1,{fontSize:"small"})}),jsxs(Box,{children:[jsx(Typography,{sx:{fontSize:18,fontWeight:800},children:e}),jsx(Typography,{variant:"body2",sx:{color:"text.secondary"},children:t})]})]}),jsxs(Stack,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap"},children:[ot.length>0&&jsx(Stack,{direction:"row",spacing:.75,alignItems:"center",children:ot.map((L,$)=>jsx(Box,{sx:{display:"flex",alignItems:"center"},children:L},`planning-extra-tool-${$}`))}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Qa,{tooltip:"Column visibility",onClick:L=>Y.setAnchorEl(L.currentTarget),color:"default",children:jsx(gh,{fontSize:"small"})}),jsx(Qa,{tooltip:"Group by",onClick:L=>Y.setGroupAnchorEl(L.currentTarget),color:"default",children:jsx(yh,{fontSize:"small"})}),jsx(Qa,{tooltip:"Sort by first visible column",onClick:()=>{let L=(Y.columns||[]).find($=>Y.visibleColumns.includes($.id));L&&Y.handleRequestSort(L.id);},color:Y.orderBy?"primary":"default",children:jsx(A1,{fontSize:"small"})})]}),jsxs(Stack,{direction:"row",spacing:.25,sx:{p:.5,borderRadius:2,backgroundColor:"action.hover"},children:[jsx(Qa,{tooltip:"Expand task table",onClick:()=>S("table"),color:R==="table"?"primary":"default",children:jsx(D1,{fontSize:"small"})}),jsx(Qa,{tooltip:"Reset split",onClick:et,color:R===null?"primary":"default",children:jsx(M1,{fontSize:"small"})}),jsx(Qa,{tooltip:"Expand timeline",onClick:()=>S("timeline"),color:R==="timeline"?"primary":"default",children:jsx(R1,{fontSize:"small"})})]}),jsx(Box,{sx:{minWidth:120},children:jsx(Gg,{label:"",value:i,options:yd.map(L=>({value:L.value,label:L.label})),onChange:L=>s?.(L.target.value),sx:{"& .MuiSelect-select":{fontSize:"0.92rem",py:.65},"& .MuiSvgIcon-root":{fontSize:20}}})})]})]}),re.length===0?jsx(Box,{sx:{minHeight:240,display:"grid",placeItems:"center",color:"text.secondary"},children:h}):jsx(Box,{sx:{overflow:"hidden",flex:1,minHeight:0},children:jsxs(Box,{ref:C,sx:{height:"100%",display:"grid",gridTemplateColumns:be,transition:`grid-template-columns ${Ja}`},children:[jsx(TableContainer,{"data-planning-scroll-pane":"table",ref:m,onScroll:()=>Ce("table"),sx:{width:Le,height:a,overflowX:"auto",overflowY:"auto",opacity:We?0:1,transform:We?"translateX(-10px)":"translateX(0)",pointerEvents:We?"none":"auto",transition:`opacity ${Ja}, transform ${Ja}, width ${Ja}`},children:jsxs(Table,{size:"small",stickyHeader:true,sx:{tableLayout:"fixed",width:ht,"& thead .MuiTableCell-root":{height:bd,py:0,lineHeight:1.15,boxSizing:"border-box"}},children:[jsx(Bi,{columns:Y.columns,visibleColumns:Y.visibleColumns,order:Y.order,orderBy:Y.orderBy,onRequestSort:Y.handleRequestSort,grouping:Y.grouping,isAllExpanded:Y.isAllExpanded,handleToggleAll:Y.handleToggleAll,columnWidths:Y.columnWidths,onColumnResize:Y.handleColumnResize}),jsx(TableBody,{children:le.map(L=>{let $=Be(L);if(L.type==="group")return jsxs(TableRow,{"data-planning-row-key":$,sx:{height:Ar,backgroundColor:d.palette.action.hover},children:[Y.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ar,py:0,borderBottom:`1px solid ${d.palette.divider}`},children:jsx(IconButton,{size:"small",onClick:()=>Y.toggleGroupExpand(L.id),children:L.isExpanded?jsx(Wh,{fontSize:"small"}):jsx(wh,{fontSize:"small"})})}),jsx(TableCell,{colSpan:Y.visibleColumns.length,sx:{height:Ar,py:0,borderBottom:`1px solid ${d.palette.divider}`},children:jsxs(Typography,{sx:{fontSize:13,fontWeight:700},children:[L.field,": ",L.value," (",L.count,")"]})})]},L.id);let Z=L.data||L,te=Z.id===c,ke=Ge(Z.id),z=D.activeId===Z.id,O=D.overId===Z.id&&Tt(D.activeId,Z.id);return jsxs(TableRow,{"data-planning-row-key":$,draggable:ke,hover:true,selected:te,onDragStart:N=>Yt(N,Z),onDragOver:N=>Ht(N,Z.id),onDragEnter:N=>Ht(N,Z.id),onDrop:N=>Qt(N,Z.id),onDragEnd:ze,onClick:()=>g?.(oe.get(Z.id)||Z),sx:{cursor:z?"grabbing":ke?"grab":g?"pointer":"default",height:Ar,opacity:z?.56:1,"& .MuiTableCell-root":O?{borderTop:`2px solid ${d.palette.primary.main}`}:void 0,transition:"background-color 120ms ease, opacity 120ms ease"},children:[Y.grouping.length>0&&jsx(TableCell,{sx:{width:44,height:Ar,py:0,borderBottom:`1px solid ${d.palette.divider}`}}),(Y.columns||[]).filter(N=>Y.visibleColumns.includes(N.id)).map(N=>jsx(TableCell,{sx:{width:Y.columnWidths?.[N.id]||N.minWidth||100,height:Ar,py:0,overflow:"hidden",borderBottom:`1px solid ${d.palette.divider}`},children:N.render?N.render(Z[N.id],Z):String(Z[N.id]??"-")},`${Z.id}-${N.id}`))]},Z.id)})})]})}),jsx(Box,{onPointerDown:ye?Pe:void 0,role:"separator","aria-orientation":"vertical",sx:{width:ye?xd:0,cursor:ye?"col-resize":"default",opacity:ye?1:0,pointerEvents:ye?"auto":"none",borderLeft:ye?`1px solid ${d.palette.divider}`:"0 solid transparent",borderRight:ye?`1px solid ${d.palette.divider}`:"0 solid transparent",backgroundColor:d.palette.mode==="dark"?"rgba(148,163,184,0.10)":"rgba(15,23,42,0.04)",transition:`width ${Ja}, opacity ${Ja}, background-color 120ms ease`,position:"relative","&:hover":{backgroundColor:d.palette.action.selected},"&::before":{content:'""',position:"absolute",top:0,bottom:0,left:-6,right:-6,cursor:ye?"col-resize":"default"}}}),jsx(Box,{sx:{minWidth:0,overflow:"hidden",opacity:U?0:1,transform:U?"translateX(10px)":"translateX(0)",pointerEvents:U?"none":"auto",transition:`opacity ${Ja}, transform ${Ja}`},children:jsx(Box,{"data-planning-scroll-pane":"timeline",ref:y,onScroll:()=>Ce("timeline"),sx:{width:"100%",height:a,overflowX:"auto",overflowY:"auto"},children:jsxs(Box,{sx:{width:_e},children:[jsx(Box,{sx:{display:"grid",gridTemplateColumns:`repeat(${Fe.length}, ${Ue.width}px)`,height:v,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,position:"sticky",top:0,zIndex:2,backgroundColor:d.palette.background.paper},children:Fe.map(L=>jsxs(Box,{title:L.title,sx:{px:.75,display:"flex",flexDirection:L.contextLabel?"column":"row",alignItems:"center",justifyContent:"center",gap:L.contextLabel?.15:0,borderRight:`1px solid ${d.palette.divider}`,color:L.contextLabel?"text.primary":"text.secondary",overflow:"hidden"},children:[L.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:L.contextLabel}),jsx(Typography,{component:"span",sx:{maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:700,lineHeight:1.15},children:L.label})]},L.key))}),jsx(Stack,{sx:{position:"relative"},children:le.map(L=>{let $=Be(L),Z=B[$]??Ar;if(L.type==="group")return jsx(Box,{"data-planning-timeline-row-key":$,sx:{position:"relative",height:Z,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,backgroundColor:d.palette.action.hover}},L.id);let te=L.data||L,ke=ta(te.startDate),z=ta(te.endDate),O=Cd(ke,Fe,Ue.width),N=Cd(z,Fe,Ue.width),ne=Math.max(18,N-O),se=jg(te.progress),we=te.id===c,ae=Ge(te.id),Me=D.activeId===te.id,Te=D.overId===te.id&&Tt(D.activeId,te.id),Ne=te.color??(te.statusTone==="blocked"?d.palette.error.main:d.palette.primary.main);return jsx(Box,{"data-planning-timeline-row-key":$,draggable:ae,onDragStart:Ie=>Yt(Ie,te),onDragOver:Ie=>Ht(Ie,te.id),onDragEnter:Ie=>Ht(Ie,te.id),onDrop:Ie=>Qt(Ie,te.id),onDragEnd:ze,onClick:()=>g?.(oe.get(te.id)||te),sx:{position:"relative",height:Z,boxSizing:"border-box",borderBottom:`1px solid ${d.palette.divider}`,opacity:Me?.56:1,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:2,backgroundColor:d.palette.primary.main,opacity:Te?1:0,transition:"opacity 120ms ease",pointerEvents:"none",zIndex:3},backgroundImage:d.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:`${Ue.width}px 100%`,cursor:Me?"grabbing":ae?"grab":g?"pointer":"default",transition:"opacity 120ms ease"},children:jsx(Tooltip,{title:`${te.title}: ${ke.format("MMM D HH:mm")} - ${z.format("MMM D HH:mm")}`,children:jsxs(Box,{sx:{position:"absolute",left:O,top:Math.max(8,(Z-24)/2),width:ne,height:24,borderRadius:999,overflow:"hidden",backgroundColor:d.palette.mode==="dark"?"rgba(148,163,184,0.18)":"rgba(15,23,42,0.10)",outline:we?`2px solid ${d.palette.warning.main}`:"none",outlineOffset:2},children:[jsx(Box,{sx:{height:"100%",width:`${se}%`,backgroundColor:Ne}}),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:te.code})]})})},te.id)})})]})})})]})}),jsx(Wr,{groupAnchorEl:Y.groupAnchorEl,setGroupAnchorEl:Y.setGroupAnchorEl,grouping:Y.grouping,setGrouping:Y.setGrouping,columns:Y.columns,toggleGroupField:Y.toggleGroupField}),jsx($r,{anchorEl:Y.anchorEl,setAnchorEl:Y.setAnchorEl,columns:Y.columns,visibleColumns:Y.visibleColumns,toggleColumnVisibility:Y.toggleColumnVisibility})]})};var FV=({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(ma,{...e})}),jsx(Box,{sx:{flex:1,minHeight:0,overflow:"hidden"},children:jsx(Qg,{...t,bodyHeight:t.bodyHeight??"100%",sx:i})}),r]})};var K1={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)"}}},OV=({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 p=useMediaQuery("(prefers-reduced-motion: reduce)"),[l,c]=useState("to"),g=!i&&!p&&o!=="none";useEffect(()=>{if(!g){c("to");return}c("from");let h=requestAnimationFrame(()=>{h=requestAnimationFrame(()=>{c("to");});});return ()=>cancelAnimationFrame(h)},[t,g]);let f=K1[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})},HV={subtle:{variant:"fade",durationMs:180},smooth:{variant:"slide-up",durationMs:220},snappy:{variant:"scale",durationMs:160}};
17
+ export{dN as AgentPanel,Ss as Button,aS as CAINavProvider,Cp as CAmapChart,Al as CAppHeader,lB as CAppPageLayout,$N as CAuthPage,On as CBarChart,Vi as CChartCard,sp as CComboChart,Tp as CCustomizeAgent,p2 as CDetailInfoPage,Cu as CDetailSearchAiBar,Cl as CDetailSectionCard,up as CFishboneChart,yp as CGoogleMapChart,kp as CGraphCharts,rp as CGraphKpiCards,Ji as CGraphReport,dp as CHeatmapChart,B2 as CKanbanBoard,Pu as CKanbanBucket,Sc as CKanbanCard,Zp as CLayoutManagement,pl as CLayoutManager,lp as CLineChart,An as CMessageBox,qd as CPageLayout,OV as CPageTransition,Ki as CPieChart,Z5 as CPivotTable,Qg as CPlanningGantt,FV as CPlanningLayout,ma as CSmartFilter,MM as CSmartTable,NM as CStandardPage,$a as CTable,TM as CTableBody,IM as CTableCell,PM as CTableContainer,RM as CTableHead,DM as CTableRow,Kd as CValueHelp,al as CVariantManagement,Lp as CVariantManager,td as CVoiceWaveOverlay,gp as CWaterfallChart,Yn as CodeBlock,bN as CopilotChat,XT as GlobalMessage,oi as MarkdownRenderer,Qn as MathBlock,cc as MermaidBlock,Bd as NavigationIsland,Mn as ORBCAFE_I18N_MESSAGES,Di as OrbcafeI18nProvider,HV as PAGE_TRANSITION_PRESETS,TF as PAppPageLayout,gE as PBarcodeScanner,Km as PNavIsland,DE as PNumericKeypad,Nm as PSmartFilter,zk as PTable,vE as PTouchCard,Hm as PWorkloadNav,fm as PivotChartPanel,Eg as StdChat,pc as TableBlock,xl as ThinkBlock,Ts as TreeMenu,VF as VoiceNavigatorProvider,MF as VoiceWaveOverlay,ji as buildAmapEmbedUrl,$n as buildGoogleMapEmbedUrl,NP as buildGoogleMapIframe,nf as buttonVariants,Mu as createKanbanBoardModel,Oo as findKanbanCard,ET as message,ca as messageManager,Il as moveKanbanCard,yl as parseMarkdownTable,FA as renderMarkdown,Yp as resolveVariantFilters,ul as resolveVariantLayout,rS as useAINav,QM as useAmapEmbedUrl,kN as useAuthPage,Su as useDetailInfo,YM as useGoogleMapEmbedUrl,qM as useGraphChartData,tl as useGraphInteraction,Qr as useGraphReport,N2 as useKanbanBoard,Fd as useNavigationIsland,ee as useOrbcafeI18n,nE as usePadLayout,sE as usePadRecordEditor,Hu as usePageLayout,eE as usePivotTable,Hg as usePlanningGantt,XN as usePlanningLayout,GM as useStandardReport,as as useVoiceInput,OF as useVoiceNavigator};